@font-face {
    font-family: 'Dana';
    src: url('../fonts/dana/farsi-numral/Dana-FaNum-Black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
}

@font-face {
    font-family: 'Dana';
    src: url('../fonts/dana/farsi-numral/Dana-FaNum-UltraBold.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
}

@font-face {
    font-family: 'Dana';
    src: url('../fonts/dana/farsi-numral/Dana-FaNum-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'Dana';
    src: url('../fonts/dana/farsi-numral/Dana-FaNum-DemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: 'Dana';
    src: url('../fonts/dana/farsi-numral/Dana-FaNum-Regular.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'Dana';
    src: url('../fonts/dana/farsi-numral/Dana-FaNum-Medium.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Dana';
    src: url('../fonts/dana/farsi-numral/Dana-FaNum-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Dana';
    src: url('../fonts/dana/farsi-numral/Dana-FaNum-ExtraLight.ttf') format('truetype');
    font-weight: 200;
    font-style: normal;
}


@font-face {
    font-family: 'Dana';
    src: url('../fonts/dana/farsi-numral/Dana-FaNum-Thin.ttf') format('truetype');
    font-weight: 100;
    font-style: normal;
}


@font-face {
    font-family: 'kalameh';
    src: url('../fonts/kalameh/Kalameh-Black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
}

@font-face {
    font-family: 'kalameh';
    src: url('../fonts/kalameh/Kalameh_Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'kalameh';
    src: url('../fonts/kalameh/Kalameh-Regular.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'kalameh';
    src: url('../fonts/kalameh/Kalameh_thin.ttf') format('truetype');
    font-weight: 200;
    font-style: normal;
}


@font-face {
    font-family: 'payda';
    src: url('../fonts/payda/PeydaWebFaNum-Black.woff2');
    font-weight: 900;
    font-style: normal;
}


@font-face {
    font-family: 'payda';
    src: url('../fonts/payda/PeydaWebFaNum-ExtraBold.woff2');
    font-weight: 800;
    font-style: normal;
}


@font-face {
    font-family: 'payda';
    src: url('../fonts/payda/PeydaWebFaNum-Bold.woff2');
    font-weight: 700;
    font-style: normal;
}


@font-face {
    font-family: 'payda';
    src: url('../fonts/payda/PeydaWebFaNum-Medium.woff2');
    font-weight: 500;
    font-style: normal;
}


@font-face {
    font-family: 'payda';
    src: url('../fonts/payda/PeydaWebFaNum-Regular.woff2');
    font-weight: 300;
    font-style: normal;
}


.persian-site {
    font-family: 'payda', 'Dana', sans-serif !important;
    direction: rtl !important;
    font-feature-settings: "ss02" !important;
}

.persian-site * {
    direction: inherit !important;
    font-family: inherit !important;
}


html,
body {
    font-family: 'payda', 'Dana', sans-serif;
    direction: rtl;
    font-feature-settings: "ss02" on;
    unicode-bidi: plaintext;
}


body {
    font-family: 'payda', 'Dana', sans-serif !important;
}


@layer theme, base, components, utilities;

@layer theme {

    :root,
    :host {
        --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
        "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
        --font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
        --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
        "Courier New", monospace;
        --color-red-50: oklch(0.971 0.013 17.38);
        --color-red-100: oklch(0.936 0.032 17.717);
        --color-red-200: oklch(0.885 0.062 18.334);
        --color-red-300: oklch(0.808 0.114 19.571);
        --color-red-400: oklch(0.704 0.191 22.216);
        --color-red-500: oklch(0.637 0.237 25.331);
        --color-red-600: oklch(0.577 0.245 27.325);
        --color-red-700: oklch(0.505 0.213 27.518);
        --color-red-800: oklch(0.444 0.177 26.899);
        --color-red-900: oklch(0.396 0.141 25.723);
        --color-red-950: oklch(0.258 0.092 26.042);
        --color-orange-50: oklch(0.98 0.016 73.684);
        --color-orange-100: oklch(0.954 0.038 75.164);
        --color-orange-200: oklch(0.901 0.076 70.697);
        --color-orange-300: oklch(0.837 0.128 66.29);
        --color-orange-400: oklch(0.75 0.183 55.934);
        --color-orange-500: oklch(0.705 0.213 47.604);
        --color-orange-600: oklch(0.646 0.222 41.116);
        --color-orange-700: oklch(0.553 0.195 38.402);
        --color-orange-800: oklch(0.47 0.157 37.304);
        --color-orange-900: oklch(0.408 0.123 38.172);
        --color-orange-950: oklch(0.266 0.079 36.259);
        --color-amber-50: oklch(0.987 0.022 95.277);
        --color-amber-100: oklch(0.962 0.059 95.617);
        --color-amber-200: oklch(0.924 0.12 95.746);
        --color-amber-300: oklch(0.879 0.169 91.605);
        --color-amber-400: oklch(0.828 0.189 84.429);
        --color-amber-500: oklch(0.769 0.188 70.08);
        --color-amber-600: oklch(0.666 0.179 58.318);
        --color-amber-700: oklch(0.555 0.163 48.998);
        --color-amber-800: oklch(0.473 0.137 46.201);
        --color-amber-900: oklch(0.414 0.112 45.904);
        --color-amber-950: oklch(0.279 0.077 45.635);
        --color-yellow-50: oklch(0.987 0.026 102.212);
        --color-yellow-100: oklch(0.973 0.071 103.193);
        --color-yellow-200: oklch(0.945 0.129 101.54);
        --color-yellow-300: oklch(0.905 0.182 98.111);
        --color-yellow-400: oklch(0.852 0.199 91.936);
        --color-yellow-500: oklch(0.795 0.184 86.047);
        --color-yellow-600: oklch(0.681 0.162 75.834);
        --color-yellow-700: oklch(0.554 0.135 66.442);
        --color-yellow-800: oklch(0.476 0.114 61.907);
        --color-yellow-900: oklch(0.421 0.095 57.708);
        --color-yellow-950: oklch(0.286 0.066 53.813);
        --color-lime-50: oklch(0.986 0.031 120.757);
        --color-lime-100: oklch(0.967 0.067 122.328);
        --color-lime-200: oklch(0.938 0.127 124.321);
        --color-lime-300: oklch(0.897 0.196 126.665);
        --color-lime-400: oklch(0.841 0.238 128.85);
        --color-lime-500: oklch(0.768 0.233 130.85);
        --color-lime-600: oklch(0.648 0.2 131.684);
        --color-lime-700: oklch(0.532 0.157 131.589);
        --color-lime-800: oklch(0.453 0.124 130.933);
        --color-lime-900: oklch(0.405 0.101 131.063);
        --color-lime-950: oklch(0.274 0.072 132.109);
        --color-green-50: oklch(0.982 0.018 155.826);
        --color-green-100: oklch(0.962 0.044 156.743);
        --color-green-200: oklch(0.925 0.084 155.995);
        --color-green-300: oklch(0.871 0.15 154.449);
        --color-green-400: oklch(0.792 0.209 151.711);
        --color-green-500: oklch(0.723 0.219 149.579);
        --color-green-600: oklch(0.627 0.194 149.214);
        --color-green-700: oklch(0.527 0.154 150.069);
        --color-green-800: oklch(0.448 0.119 151.328);
        --color-green-900: oklch(0.393 0.095 152.535);
        --color-green-950: oklch(0.266 0.065 152.934);
        --color-emerald-50: oklch(0.979 0.021 166.113);
        --color-emerald-100: oklch(0.95 0.052 163.051);
        --color-emerald-200: oklch(0.905 0.093 164.15);
        --color-emerald-300: oklch(0.845 0.143 164.978);
        --color-emerald-400: oklch(0.765 0.177 163.223);
        --color-emerald-500: oklch(0.696 0.17 162.48);
        --color-emerald-600: oklch(0.596 0.145 163.225);
        --color-emerald-700: oklch(0.508 0.118 165.612);
        --color-emerald-800: oklch(0.432 0.095 166.913);
        --color-emerald-900: oklch(0.378 0.077 168.94);
        --color-emerald-950: oklch(0.262 0.051 172.552);
        --color-teal-50: oklch(0.984 0.014 180.72);
        --color-teal-100: oklch(0.953 0.051 180.801);
        --color-teal-200: oklch(0.91 0.096 180.426);
        --color-teal-300: oklch(0.855 0.138 181.071);
        --color-teal-400: oklch(0.777 0.152 181.912);
        --color-teal-500: oklch(0.704 0.14 182.503);
        --color-teal-600: oklch(0.6 0.118 184.704);
        --color-teal-700: oklch(0.511 0.096 186.391);
        --color-teal-800: oklch(0.437 0.078 188.216);
        --color-teal-900: oklch(0.386 0.063 188.416);
        --color-teal-950: oklch(0.277 0.046 192.524);
        --color-cyan-50: oklch(0.984 0.019 200.873);
        --color-cyan-100: oklch(0.956 0.045 203.388);
        --color-cyan-200: oklch(0.917 0.08 205.041);
        --color-cyan-300: oklch(0.865 0.127 207.078);
        --color-cyan-400: oklch(0.789 0.154 211.53);
        --color-cyan-500: oklch(0.715 0.143 215.221);
        --color-cyan-600: oklch(0.609 0.126 221.723);
        --color-cyan-700: oklch(0.52 0.105 223.128);
        --color-cyan-800: oklch(0.45 0.085 224.283);
        --color-cyan-900: oklch(0.398 0.07 227.392);
        --color-cyan-950: oklch(0.302 0.056 229.695);
        --color-sky-50: oklch(0.977 0.013 236.62);
        --color-sky-100: oklch(0.951 0.026 236.824);
        --color-sky-200: oklch(0.901 0.058 230.902);
        --color-sky-300: oklch(0.828 0.111 230.318);
        --color-sky-400: oklch(0.746 0.16 232.661);
        --color-sky-500: oklch(0.685 0.169 237.323);
        --color-sky-600: oklch(0.588 0.158 241.966);
        --color-sky-700: oklch(0.5 0.134 242.749);
        --color-sky-800: oklch(0.443 0.11 240.79);
        --color-sky-900: oklch(0.391 0.09 240.876);
        --color-sky-950: oklch(0.293 0.066 243.157);
        --color-blue-50: oklch(0.97 0.014 254.604);
        --color-blue-100: oklch(0.932 0.032 255.585);
        --color-blue-200: oklch(0.882 0.059 254.128);
        --color-blue-300: oklch(0.809 0.105 251.813);
        --color-blue-400: oklch(0.707 0.165 254.624);
        --color-blue-500: oklch(0.623 0.214 259.815);
        --color-blue-600: oklch(0.546 0.245 262.881);
        --color-blue-700: oklch(0.488 0.243 264.376);
        --color-blue-800: oklch(0.424 0.199 265.638);
        --color-blue-900: oklch(0.379 0.146 265.522);
        --color-blue-950: oklch(0.282 0.091 267.935);
        --color-indigo-50: oklch(0.962 0.018 272.314);
        --color-indigo-100: oklch(0.93 0.034 272.788);
        --color-indigo-200: oklch(0.87 0.065 274.039);
        --color-indigo-300: oklch(0.785 0.115 274.713);
        --color-indigo-400: oklch(0.673 0.182 276.935);
        --color-indigo-500: oklch(0.585 0.233 277.117);
        --color-indigo-600: oklch(0.511 0.262 276.966);
        --color-indigo-700: oklch(0.457 0.24 277.023);
        --color-indigo-800: oklch(0.398 0.195 277.366);
        --color-indigo-900: oklch(0.359 0.144 278.697);
        --color-indigo-950: oklch(0.257 0.09 281.288);
        --color-violet-50: oklch(0.969 0.016 293.756);
        --color-violet-100: oklch(0.943 0.029 294.588);
        --color-violet-200: oklch(0.894 0.057 293.283);
        --color-violet-300: oklch(0.811 0.111 293.571);
        --color-violet-400: oklch(0.702 0.183 293.541);
        --color-violet-500: oklch(0.606 0.25 292.717);
        --color-violet-600: oklch(0.541 0.281 293.009);
        --color-violet-700: oklch(0.491 0.27 292.581);
        --color-violet-800: oklch(0.432 0.232 292.759);
        --color-violet-900: oklch(0.38 0.189 293.745);
        --color-violet-950: oklch(0.283 0.141 291.089);
        --color-purple-50: oklch(0.977 0.014 308.299);
        --color-purple-100: oklch(0.946 0.033 307.174);
        --color-purple-200: oklch(0.902 0.063 306.703);
        --color-purple-300: oklch(0.827 0.119 306.383);
        --color-purple-400: oklch(0.714 0.203 305.504);
        --color-purple-500: oklch(0.627 0.265 303.9);
        --color-purple-600: oklch(0.558 0.288 302.321);
        --color-purple-700: oklch(0.496 0.265 301.924);
        --color-purple-800: oklch(0.438 0.218 303.724);
        --color-purple-900: oklch(0.381 0.176 304.987);
        --color-purple-950: oklch(0.291 0.149 302.717);
        --color-fuchsia-50: oklch(0.977 0.017 320.058);
        --color-fuchsia-100: oklch(0.952 0.037 318.852);
        --color-fuchsia-200: oklch(0.903 0.076 319.62);
        --color-fuchsia-300: oklch(0.833 0.145 321.434);
        --color-fuchsia-400: oklch(0.74 0.238 322.16);
        --color-fuchsia-500: oklch(0.667 0.295 322.15);
        --color-fuchsia-600: oklch(0.591 0.293 322.896);
        --color-fuchsia-700: oklch(0.518 0.253 323.949);
        --color-fuchsia-800: oklch(0.452 0.211 324.591);
        --color-fuchsia-900: oklch(0.401 0.17 325.612);
        --color-fuchsia-950: oklch(0.293 0.136 325.661);
        --color-pink-50: oklch(0.971 0.014 343.198);
        --color-pink-100: oklch(0.948 0.028 342.258);
        --color-pink-200: oklch(0.899 0.061 343.231);
        --color-pink-300: oklch(0.823 0.12 346.018);
        --color-pink-400: oklch(0.718 0.202 349.761);
        --color-pink-500: oklch(0.656 0.241 354.308);
        --color-pink-600: oklch(0.592 0.249 0.584);
        --color-pink-700: oklch(0.525 0.223 3.958);
        --color-pink-800: oklch(0.459 0.187 3.815);
        --color-pink-900: oklch(0.408 0.153 2.432);
        --color-pink-950: oklch(0.284 0.109 3.907);
        --color-rose-50: oklch(0.969 0.015 12.422);
        --color-rose-100: oklch(0.941 0.03 12.58);
        --color-rose-200: oklch(0.892 0.058 10.001);
        --color-rose-300: oklch(0.81 0.117 11.638);
        --color-rose-400: oklch(0.712 0.194 13.428);
        --color-rose-500: oklch(0.645 0.246 16.439);
        --color-rose-600: oklch(0.586 0.253 17.585);
        --color-rose-700: oklch(0.514 0.222 16.935);
        --color-rose-800: oklch(0.455 0.188 13.697);
        --color-rose-900: oklch(0.41 0.159 10.272);
        --color-rose-950: oklch(0.271 0.105 12.094);
        --color-slate-50: oklch(0.984 0.003 247.858);
        --color-slate-100: oklch(0.968 0.007 247.896);
        --color-slate-200: oklch(0.929 0.013 255.508);
        --color-slate-300: oklch(0.869 0.022 252.894);
        --color-slate-400: oklch(0.704 0.04 256.788);
        --color-slate-500: oklch(0.554 0.046 257.417);
        --color-slate-600: oklch(0.446 0.043 257.281);
        --color-slate-700: oklch(0.372 0.044 257.287);
        --color-slate-800: oklch(0.279 0.041 260.031);
        --color-slate-900: oklch(0.208 0.042 265.755);
        --color-slate-950: oklch(0.129 0.042 264.695);
        --color-gray-50: oklch(0.985 0.002 247.839);
        --color-gray-100: oklch(0.967 0.003 264.542);
        --color-gray-200: oklch(0.928 0.006 264.531);
        --color-gray-300: oklch(0.872 0.01 258.338);
        --color-gray-400: oklch(0.707 0.022 261.325);
        --color-gray-500: oklch(0.551 0.027 264.364);
        --color-gray-600: oklch(0.446 0.03 256.802);
        --color-gray-700: oklch(0.373 0.034 259.733);
        --color-gray-800: oklch(0.278 0.033 256.848);
        --color-gray-900: oklch(0.21 0.034 264.665);
        --color-gray-950: oklch(0.13 0.028 261.692);
        --color-zinc-50: oklch(0.985 0 0);
        --color-zinc-100: oklch(0.967 0.001 286.375);
        --color-zinc-200: oklch(0.92 0.004 286.32);
        --color-zinc-300: oklch(0.871 0.006 286.286);
        --color-zinc-400: oklch(0.705 0.015 286.067);
        --color-zinc-500: oklch(0.552 0.016 285.938);
        --color-zinc-600: oklch(0.442 0.017 285.786);
        --color-zinc-700: oklch(0.37 0.013 285.805);
        --color-zinc-800: oklch(0.274 0.006 286.033);
        --color-zinc-900: oklch(0.21 0.006 285.885);
        --color-zinc-950: oklch(0.141 0.005 285.823);
        --color-neutral-50: oklch(0.985 0 0);
        --color-neutral-100: oklch(0.97 0 0);
        --color-neutral-200: oklch(0.922 0 0);
        --color-neutral-300: oklch(0.87 0 0);
        --color-neutral-400: oklch(0.708 0 0);
        --color-neutral-500: oklch(0.556 0 0);
        --color-neutral-600: oklch(0.439 0 0);
        --color-neutral-700: oklch(0.371 0 0);
        --color-neutral-800: oklch(0.269 0 0);
        --color-neutral-900: oklch(0.205 0 0);
        --color-neutral-950: oklch(0.145 0 0);
        --color-stone-50: oklch(0.985 0.001 106.423);
        --color-stone-100: oklch(0.97 0.001 106.424);
        --color-stone-200: oklch(0.923 0.003 48.717);
        --color-stone-300: oklch(0.869 0.005 56.366);
        --color-stone-400: oklch(0.709 0.01 56.259);
        --color-stone-500: oklch(0.553 0.013 58.071);
        --color-stone-600: oklch(0.444 0.011 73.639);
        --color-stone-700: oklch(0.374 0.01 67.558);
        --color-stone-800: oklch(0.268 0.007 34.298);
        --color-stone-900: oklch(0.216 0.006 56.043);
        --color-stone-950: oklch(0.147 0.004 49.25);
        --color-black: #000;
        --color-white: #fff;
        --spacing: 0.2rem;
        --breakpoint-sm: 40rem;
        --breakpoint-md: 48rem;
        --breakpoint-lg: 64rem;
        --breakpoint-xl: 80rem;
        --breakpoint-2xl: 96rem;
        --container-3xs: 16rem;
        --container-2xs: 18rem;
        --container-xs: 20rem;
        --container-sm: 24rem;
        --container-md: 28rem;
        --container-lg: 32rem;
        --container-xl: 36rem;
        --container-2xl: 42rem;
        --container-3xl: 48rem;
        --container-4xl: 56rem;
        --container-5xl: 64rem;
        --container-6xl: 72rem;
        --container-7xl: 80rem;
        --text-xs: 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: 0.8rem;
        --text-base--line-height: calc(1.5 / 1);
        --text-lg: 1.125rem;
        --text-lg--line-height: calc(1.75 / 1.125);
        --text-xl: 1.25rem;
        --text-xl--line-height: calc(1.75 / 1.25);
        --text-2xl: 1.5rem;
        --text-2xl--line-height: calc(2 / 1.5);
        --text-3xl: 1.875rem;
        --text-3xl--line-height: calc(2.25 / 1.875);
        --text-4xl: 2.25rem;
        --text-4xl--line-height: calc(2.5 / 2.25);
        --text-5xl: 3rem;
        --text-5xl--line-height: 1;
        --text-6xl: 3.75rem;
        --text-6xl--line-height: 1;
        --text-7xl: 4.5rem;
        --text-7xl--line-height: 1;
        --text-8xl: 6rem;
        --text-8xl--line-height: 1;
        --text-9xl: 8rem;
        --text-9xl--line-height: 1;
        --font-weight-thin: 100;
        --font-weight-extralight: 200;
        --font-weight-light: 300;
        --font-weight-normal: 400;
        --font-weight-medium: 500;
        --font-weight-semibold: 600;
        --font-weight-bold: 700;
        --font-weight-extrabold: 800;
        --font-weight-black: 900;
        --tracking-tighter: -0.05em;
        --tracking-tight: -0.025em;
        --tracking-normal: 0em;
        --tracking-wide: 0.025em;
        --tracking-wider: 0.05em;
        --tracking-widest: 0.1em;
        --leading-tight: 1.25;
        --leading-snug: 1.375;
        --leading-normal: 1.5;
        --leading-relaxed: 1.625;
        --leading-loose: 2;
        --radius-xs: 0.125rem;
        --radius-sm: 0.25rem;
        --radius-md: 0.375rem;
        --radius-lg: 0.5rem;
        --radius-xl: 1rem;
        --radius-2xl: 1rem;
        --radius-3xl: 1.5rem;
        --radius-4xl: 2rem;
        --shadow-2xs: 0 1px rgb(0 0 0 / 0.05);
        --shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 0.05);
        --shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
        --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
        --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
        --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
        --shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / 0.25);
        --inset-shadow-2xs: inset 0 1px rgb(0 0 0 / 0.05);
        --inset-shadow-xs: inset 0 1px 1px rgb(0 0 0 / 0.05);
        --inset-shadow-sm: inset 0 2px 4px rgb(0 0 0 / 0.05);
        --drop-shadow-xs: 0 1px 1px rgb(0 0 0 / 0.05);
        --drop-shadow-sm: 0 1px 2px rgb(0 0 0 / 0.15);
        --drop-shadow-md: 0 3px 3px rgb(0 0 0 / 0.12);
        --drop-shadow-lg: 0 4px 4px rgb(0 0 0 / 0.15);
        --drop-shadow-xl: 0 9px 7px rgb(0 0 0 / 0.1);
        --drop-shadow-2xl: 0 25px 25px rgb(0 0 0 / 0.15);
        --ease-in: cubic-bezier(0.4, 0, 1, 1);
        --ease-out: cubic-bezier(0, 0, 0.2, 1);
        --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
        --animate-spin: spin 1s linear infinite;
        --animate-ping: ping 1s cubic-bezier(0, 0, 0.2, 1) infinite;
        --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
        --animate-bounce: bounce 1s infinite;
        --blur-xs: 4px;
        --blur-sm: 8px;
        --blur-md: 12px;
        --blur-lg: 16px;
        --blur-xl: 24px;
        --blur-2xl: 40px;
        --blur-3xl: 64px;
        --perspective-dramatic: 100px;
        --perspective-near: 300px;
        --perspective-normal: 500px;
        --perspective-midrange: 800px;
        --perspective-distant: 1200px;
        --aspect-video: 16 / 9;
        --default-transition-duration: 150ms;
        --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        --default-font-family: payda;
        --default-font-feature-settings: var(--font-sans--font-feature-settings);
        --default-font-variation-settings: var(--font-sans--font-variation-settings);
        --default-mono-font-family: var(--font-mono);
        --default-mono-font-feature-settings: var(--font-mono--font-feature-settings);
        --default-mono-font-variation-settings: var(--font-mono--font-variation-settings);
        --breakpoint-tablet: 60;
        --breakpoint-laptop: 75rem;
        --breakpoint-desktop: 90rem;
        --color-primary: #d20707;
        --color-primary-20: oklch(0.95 0.03 16.4);
        --color-primary-50: oklch(0.94 0.04 16.49);
        --color-primary-100: oklch(0.89 0.06 16.97);
        --color-primary-200: oklch(0.82 0.11 18.27);
        --color-primary-300: oklch(0.75 0.17 20.12);
        --color-primary-400: oklch(0.69 0.21 22.49);
        --color-primary-500: oklch(0.65 0.25 25.03);
        --color-primary-600: oklch(0.63 0.26 26.59);
        --color-primary-700: oklch(0.52 0.22 26.56);
        --color-primary-800: #c53c09;
        /*--color-primary-800: oklch(0.41 0.17 26.52);*/
        --color-primary-900: oklch(32.841% 0.08751 49.451);
        --color-primary-950: oklch(25.684% 0.06589 52.179);
        --color-secondary: #272C48FF;
        --color-secondary-50: oklch(60.319% 0.08313 275.57);
        --color-secondary-100: oklch(56.464% 0.0923 275);
        --color-secondary-200: oklch(49.562% 0.09363 274.35);
        --color-secondary-300: oklch(43.266% 0.08152 275.43);
        --color-secondary-400: oklch(36.823% 0.06607 274.77);
        --color-secondary-500: oklch(30.235% 0.05113 275.21);
        --color-secondary-600: oklch(20.437% 0.02838 274.35);
        --color-secondary-700: oklch(0% 0 none);
        --color-secondary-800: oklch(0% 0 none);
        --color-secondary-900: oklch(0% 0 none);
        --color-secondary-950: oklch(0% 0 none);
        --color-tertiary: oklch(65.347% 0.23281 28.509);
        --color-tertiary-50: oklch(100% 0 none);
        --color-tertiary-100: oklch(99.336% 0.00319 17.211);
        --color-tertiary-200: oklch(90.813% 0.04734 21.274);
        --color-tertiary-300: oklch(82.761% 0.09584 22.471);
        --color-tertiary-400: oklch(75.673% 0.14543 24.1);
        --color-tertiary-500: oklch(69.625% 0.19409 26.276);
        --color-tertiary-600: oklch(65.347% 0.23281 28.509);
        --color-tertiary-700: oklch(61.517% 0.24944 29.631);
        --color-tertiary-800: #ff4500;
        /*--color-tertiary-800: oklch(50.769% 0.20506 29.761);*/
        --color-tertiary-900: oklch(39.458% 0.15771 30.117);
        --color-tertiary-950: oklch(33.452% 0.13309 30.274);
        --color-primary-light: #d20707;
        --color-primary-dark: #b72222;
        --color-secondary-light: #272C48FF;
        --color-secondary-dark: #3d4487;
        --color-dark: #1E293B;
        --color-dark-light: #1E293B;
        --color-dark-dark: #F8FAFC;
        --color-light: #F8FAFC;
        --color-light-light: #F8FAFC;
        --color-light-dark: #1E293B;
        --color-success: #10B981;
        --color-success-light: #10B981;
        --color-success-dark: #34D399;
        --color-danger: #EF4444;
        --color-danger-light: #EF4444;
        --color-danger-dark: #F87171;
        --color-warning: #f50b0b;
        --color-warning-light: #f50b0b;
        --color-warning-dark: #fb2424;
        --color-background-light: #F8FAFC;
        --color-background-dark: #0F172A;
        --color-card-light: #FFFFFF;
        --color-card-dark: #1E293B;
        --color-text-primary-light: #1E293B;
        --color-text-primary-dark: #F8FAFC;
        --color-text-secondary-light: #64748B;
        --color-text-secondary-dark: #94A3B8;
        --shadow-soft: 0 4px 24px 0 rgba(0, 0, 0, 0.08);
        --shadow-soft-dark: 0 4px 24px 0 rgba(0, 0, 0, 0.2);
        --shadow-hard: 0 4px 12px 0 rgba(0, 0, 0, 0.15);
        --color-grad-font: linear-gradient(to right, #ff3c3c, #ff2600);
    }
}


@layer base {

    *,
    ::after,
    ::before,
    ::backdrop,
    ::file-selector-button {
        box-sizing: border-box;
        margin: 0;
        padding: 0;
        border: 0 solid;
    }

    html,
    :host {
        line-height: 1.5;
        -webkit-text-size-adjust: 100%;
        tab-size: 4;
        font-feature-settings: var(--default-font-feature-settings, normal);
        font-variation-settings: var(--default-font-variation-settings, normal);
        -webkit-tap-highlight-color: transparent;
    }

    body {
        line-height: inherit;
    }

    hr {
        height: 0;
        color: inherit;
        border-top-width: 1px;
    }

    abbr:where([title]) {
        -webkit-text-decoration: underline dotted;
        text-decoration: underline dotted;
    }

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        font-size: inherit;
        font-weight: inherit;
    }

    a {
        color: inherit;
        -webkit-text-decoration: inherit;
        text-decoration: inherit;
    }

    b,
    strong {
        font-weight: bolder;
    }

    code,
    kbd,
    samp,
    pre {
        font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
        font-feature-settings: var(--default-mono-font-feature-settings, normal);
        font-variation-settings: var(--default-mono-font-variation-settings, normal);
        font-size: 1em;
    }

    small {
        font-size: 80%;
    }

    sub,
    sup {
        font-size: 75%;
        line-height: 0;
        position: relative;
        vertical-align: baseline;
    }

    sub {
        bottom: -0.25em;
    }

    sup {
        top: -0.5em;
    }

    table {
        text-indent: 0;
        border-color: inherit;
        border-collapse: collapse;
    }

    :-moz-focusring {
        outline: auto;
    }

    progress {
        vertical-align: baseline;
    }

    summary {
        display: list-item;
    }

    ol,
    ul,
    menu {
        list-style: none;
    }

    img,
    svg,
    video,
    canvas,
    audio,
    iframe,
    embed,
    object {
        display: block;
        vertical-align: middle;
    }

    img,
    video {
        max-width: 100%;
        height: auto;
    }

    button,
    input,
    select,
    optgroup,
    textarea,
    ::file-selector-button {
        font: inherit;
        font-feature-settings: inherit;
        font-variation-settings: inherit;
        letter-spacing: inherit;
        color: inherit;
        border-radius: 0;
        background-color: transparent;
        opacity: 1;
    }

    :where(select:is([multiple], [size])) optgroup {
        font-weight: bolder;
    }

    :where(select:is([multiple], [size])) optgroup option {
        padding-inline-start: 20px;
    }

    ::file-selector-button {
        margin-inline-end: 4px;
    }

    ::placeholder {
        opacity: 1;
        color: color-mix(in oklab, currentColor 50%, transparent);
    }

    textarea {
        resize: vertical;
    }

    ::-webkit-search-decoration {
        -webkit-appearance: none;
    }

    ::-webkit-date-and-time-value {
        min-height: 1lh;
        text-align: inherit;
    }

    ::-webkit-datetime-edit {
        display: inline-flex;
    }

    ::-webkit-datetime-edit-fields-wrapper {
        padding: 0;
    }

    ::-webkit-datetime-edit,
    ::-webkit-datetime-edit-year-field,
    ::-webkit-datetime-edit-month-field,
    ::-webkit-datetime-edit-day-field,
    ::-webkit-datetime-edit-hour-field,
    ::-webkit-datetime-edit-minute-field,
    ::-webkit-datetime-edit-second-field,
    ::-webkit-datetime-edit-millisecond-field,
    ::-webkit-datetime-edit-meridiem-field {
        padding-block: 0;
    }

    :-moz-ui-invalid {
        box-shadow: none;
    }

    button,
    input:where([type="button"], [type="reset"], [type="submit"]),
    ::file-selector-button {
        appearance: button;
    }

    ::-webkit-inner-spin-button,
    ::-webkit-outer-spin-button {
        height: auto;
    }

    [hidden]:where(:not([hidden="until-found"])) {
        display: none !important;
    }
}

@layer utilities {
    .\@container {
        container-type: inline-size;
    }

    .\@container-\[inline-size\] {
        container-type: inline-size;
    }

    .pointer-events-auto {
        pointer-events: auto;
    }

    .pointer-events-none {
        pointer-events: none;
    }

    .collapse {
        visibility: collapse;
    }

    .invisible {
        visibility: hidden;
    }

    .visible {
        visibility: visible;
    }

    .sr-only {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border-width: 0;
    }

    .not-sr-only {
        position: static;
        width: auto;
        height: auto;
        padding: 0;
        margin: 0;
        overflow: visible;
        clip: auto;
        white-space: normal;
    }

    .\!relative {
        position: relative !important;
    }

    .absolute {
        position: absolute;
    }

    .fixed {
        position: fixed;
    }

    .relative {
        position: relative;
    }

    .static {
        position: static;
    }

    .sticky {
        position: sticky;
    }

    .inset-0 {
        inset: calc(var(--spacing) * 0);
    }

    .inset-y-0 {
        inset-block: calc(var(--spacing) * 0);
    }

    .start-0 {
        inset-inline-start: calc(var(--spacing) * 0);
    }

    .-end-2 {
        inset-inline-end: calc(var(--spacing) * -2);
    }

    .end-0 {
        inset-inline-end: calc(var(--spacing) * 0);
    }

    .end-1 {
        inset-inline-end: calc(var(--spacing) * 1);
    }

    .end-2 {
        inset-inline-end: calc(var(--spacing) * 2);
    }

    .-top-3 {
        top: calc(var(--spacing) * -3);
    }

    .-top-4 {
        top: calc(var(--spacing) * -4);
    }

    .-top-12 {
        top: calc(var(--spacing) * -12);
    }

    .-top-2 {
        top: calc(var(--spacing) * -2);
    }

    .top-0 {
        top: calc(var(--spacing) * 0);
    }

    .top-1 {
        top: calc(var(--spacing) * 1);
    }

    .top-1\/2 {
        top: calc(1 / 2 * 100%);
    }

    .top-1\/3 {
        top: calc(1 / 3 * 100%);
    }

    .top-2 {
        top: calc(var(--spacing) * 2);
    }

    .top-2\.5 {
        top: calc(var(--spacing) * 2.5);
    }

    .top-3 {
        top: calc(var(--spacing) * 3);
    }

    .top-4 {
        top: calc(var(--spacing) * 4);
    }

    .top-5 {
        top: calc(var(--spacing) * 5);
    }

    .top-20 {
        top: calc(var(--spacing) * 20);
    }

    .top-\[90\%\] {
        top: 90%;
    }

    .-right-12 {
        right: calc(var(--spacing) * -12);
    }

    .-right-5 {
        right: calc(var(--spacing) * -5);
    }

    .right-0 {
        right: calc(var(--spacing) * 0);
    }

    .right-1 {
        right: calc(var(--spacing) * 1);
    }

    .right-2 {
        right: calc(var(--spacing) * 2);
    }

    .right-3 {
        right: calc(var(--spacing) * 3);
    }

    .right-5 {
        right: calc(var(--spacing) * 5);
    }

    .right-full {
        right: 100%;
    }

    .\!bottom-0 {
        bottom: calc(var(--spacing) * 0) !important;
    }

    .-bottom-8 {
        bottom: calc(var(--spacing) * -8);
    }

    .-bottom-\[10px\] {
        bottom: calc(10px * -1);
    }

    .bottom-0 {
        bottom: calc(var(--spacing) * 0);
    }

    .bottom-2 {
        bottom: calc(var(--spacing) * 2);
    }

    .-left-5 {
        left: calc(var(--spacing) * -5);
    }

    .-left-8 {
        left: calc(var(--spacing) * -8);
    }

    .left-0 {
        left: calc(var(--spacing) * 0);
    }

    .left-1 {
        left: calc(var(--spacing) * 1);
    }

    .left-1\/2 {
        left: calc(1 / 2 * 100%);
    }

    .left-2 {
        left: calc(var(--spacing) * 2);
    }

    .left-3 {
        left: calc(var(--spacing) * 3);
    }

    .left-4 {
        left: calc(var(--spacing) * 4);
    }

    .left-full {
        left: 100%;
    }

    .isolate {
        isolation: isolate;
    }

    .isolation-auto {
        isolation: auto;
    }

    .\!z-30 {
        z-index: 30 !important;
    }

    .z-10 {
        z-index: 10;
    }

    .z-20 {
        z-index: 20;
    }

    .z-40 {
        z-index: 40;
    }

    .z-50 {
        z-index: 50;
    }

    .z-auto {
        z-index: auto;
    }

    .order-2 {
        order: 2;
    }

    .order-3 {
        order: 3;
    }

    .order-4 {
        order: 4;
    }

    .order-first {
        order: -9999;
    }

    .order-last {
        order: 9999;
    }

    .order-none {
        order: 0;
    }

    .col-auto {
        grid-column: auto;
    }

    .col-span-1 {
        grid-column: span 1 / span 1;
    }

    .col-span-2 {
        grid-column: span 2 / span 2;
    }

    .col-span-3 {
        grid-column: span 3 / span 3;
    }

    .col-span-35 {
        grid-column: span 3.5 / span 3.5;
    }

    .col-span-4 {
        grid-column: span 4 / span 4;
    }

    .col-span-4 {
        grid-column: span 4 / span 4;
    }

    .col-span-5 {
        grid-column: span 5 / span 5;
    }

    .col-span-6 {
        grid-column: span 6 / span 6;
    }

    .col-span-8 {
        grid-column: span 8 / span 8;
    }

    .col-span-75 {
        grid-column: span 7.5 / span 7.5;
    }

    .col-span-9 {
        grid-column: span 9 / span 9;
    }

    .col-span-10 {
        grid-column: span 10 / span 10;
    }

    .col-span-12 {
        grid-column: span 12 / span 12;
    }

    .col-span-full {
        grid-column: 1 / -1;
    }

    .col-start-auto {
        grid-column-start: auto;
    }

    .col-end-auto {
        grid-column-end: auto;
    }

    .row-auto {
        grid-row: auto;
    }

    .row-span-full {
        grid-row: 1 / -1;
    }

    .row-start-auto {
        grid-row-start: auto;
    }

    .row-end-auto {
        grid-row-end: auto;
    }

    .float-end {
        float: inline-end;
    }

    .float-left {
        float: left;
    }

    .float-none {
        float: none;
    }

    .float-right {
        float: right;
    }

    .float-start {
        float: inline-start;
    }

    .clear-both {
        clear: both;
    }

    .clear-end {
        clear: inline-end;
    }

    .clear-left {
        clear: left;
    }

    .clear-none {
        clear: none;
    }

    .clear-right {
        clear: right;
    }

    .clear-start {
        clear: inline-start;
    }

    .container {
        width: 100%;

        @media (width >= 60) {
            max-width: 60;
        }

        @media (width >= 40rem) {
            max-width: 40rem;
        }

        @media (width >= 48rem) {
            max-width: 48rem;
        }

        @media (width >= 64rem) {
            max-width: 64rem;
        }

        @media (width >= 75rem) {
            max-width: 75rem;
        }

        @media (width >= 80rem) {
            max-width: 80rem;
        }

        @media (width >= 90rem) {
            max-width: 90rem;
        }

        @media (width >= 96rem) {
            max-width: 96rem;
        }
    }

    .container\! {
        width: 100% !important;

        @media (width >= 60) {
            max-width: 60 !important;
        }

        @media (width >= 40rem) {
            max-width: 40rem !important;
        }

        @media (width >= 48rem) {
            max-width: 48rem !important;
        }

        @media (width >= 64rem) {
            max-width: 64rem !important;
        }

        @media (width >= 75rem) {
            max-width: 75rem !important;
        }

        @media (width >= 80rem) {
            max-width: 80rem !important;
        }

        @media (width >= 90rem) {
            max-width: 90rem !important;
        }

        @media (width >= 96rem) {
            max-width: 96rem !important;
        }
    }

    .m-3 {
        margin: calc(var(--spacing) * 3);
    }

    .m-2 {
        margin: calc(var(--spacing) * 2);
    }

    .m-auto {
        margin: auto;
    }

    .mx-1 {
        margin-inline: calc(var(--spacing) * 1);
    }

    .mx-2 {
        margin-inline: calc(var(--spacing) * 2);
    }

    .mx-3 {
        margin-inline: calc(var(--spacing) * 3);
    }

    .mx-auto {
        margin-inline: auto;
    }

    .my-2 {
        margin-block: calc(var(--spacing) * 2);
    }

    .my-3 {
        margin-block: calc(var(--spacing) * 3);
    }

    .my-4 {
        margin-block: calc(var(--spacing) * 4);
    }

    .my-5 {
        margin-block: calc(var(--spacing) * 5);
    }

    .my-6 {
        margin-block: calc(var(--spacing) * 6);
    }

    .my-7 {
        margin-block: calc(var(--spacing) * 7);
    }

    .my-10 {
        margin-block: calc(var(--spacing) * 10);
    }

    .ms-1 {
        margin-inline-start: calc(var(--spacing) * 1);
    }

    .ms-2 {
        margin-inline-start: calc(var(--spacing) * 2);
    }

    .ms-3 {
        margin-inline-start: calc(var(--spacing) * 3);
    }

    .ms-4 {
        margin-inline-start: calc(var(--spacing) * 4);
    }

    .me-2 {
        margin-inline-end: calc(var(--spacing) * 2);
    }

    .me-2\.5 {
        margin-inline-end: calc(var(--spacing) * 2.5);
    }

    .me-3 {
        margin-inline-end: calc(var(--spacing) * 3);
    }

    .mt-0\.5 {
        margin-top: calc(var(--spacing) * 0.5);
    }

    .mt-1 {
        margin-top: calc(var(--spacing) * 1);
    }

    .mt-1\.5 {
        margin-top: calc(var(--spacing) * 1.5);
    }

    .mt-2 {
        margin-top: calc(var(--spacing) * 2);
    }

    .mt-3 {
        margin-top: calc(var(--spacing) * 3);
    }

    .mt-4 {
        margin-top: calc(var(--spacing) * 4);
    }

    .mt-5 {
        margin-top: calc(var(--spacing) * 5);
    }

    .mt-6 {
        margin-top: calc(var(--spacing) * 6);
    }

    .mt-8 {
        margin-top: calc(var(--spacing) * 8);
    }

    .mt-10 {
        margin-top: calc(var(--spacing) * 10);
    }

    .mt-12 {
        margin-top: calc(var(--spacing) * 12);
    }

    .mt-16 {
        margin-top: calc(var(--spacing) * 16);
    }

    .mt-40 {
        margin-top: calc(var(--spacing) * 40);
    }

    .mt-\[5\%\] {
        margin-top: 5%;
    }

    .mt-auto {
        margin-top: auto;
    }

    .mr-1 {
        margin-right: calc(var(--spacing) * 1);
    }

    .mr-2 {
        margin-right: calc(var(--spacing) * 2);
    }

    .mr-3 {
        margin-right: calc(var(--spacing) * 3);
    }

    .mr-4 {
        margin-right: calc(var(--spacing) * 4);
    }

    .mr-6 {
        margin-right: calc(var(--spacing) * 6);
    }

    .mr-7 {
        margin-right: calc(var(--spacing) * 7);
    }

    .mr-auto {
        margin-right: auto;
    }

    .-mb-3 {
        margin-bottom: calc(var(--spacing) * -3);
    }

    .-mb-px {
        margin-bottom: -1px;
    }

    .mb-1 {
        margin-bottom: calc(var(--spacing) * 1);
    }

    .mb-2 {
        margin-bottom: calc(var(--spacing) * 2);
    }

    .mb-3 {
        margin-bottom: calc(var(--spacing) * 3);
    }

    .mb-4 {
        margin-bottom: calc(var(--spacing) * 4);
    }

    .mb-5 {
        margin-bottom: calc(var(--spacing) * 5);
    }

    .mb-6 {
        margin-bottom: calc(var(--spacing) * 6);
    }

    .mb-8 {
        margin-bottom: calc(var(--spacing) * 8);
    }

    .mb-10 {
        margin-bottom: calc(var(--spacing) * 10);
    }

    .mb-12 {
        margin-bottom: calc(var(--spacing) * 12);
    }

    .mb-16 {
        margin-bottom: calc(var(--spacing) * 16);
    }

    .mb-20 {
        margin-bottom: calc(var(--spacing) * 20);
    }

    .\!ml-0 {
        margin-left: calc(var(--spacing) * 0) !important;
    }

    .ml-1 {
        margin-left: calc(var(--spacing) * 1);
    }

    .ml-2 {
        margin-left: calc(var(--spacing) * 2);
    }

    .ml-3 {
        margin-left: calc(var(--spacing) * 3);
    }

    .ml-4 {
        margin-left: calc(var(--spacing) * 4);
    }

    .ml-6 {
        margin-left: calc(var(--spacing) * 6);
    }

    .ml-10 {
        margin-left: calc(var(--spacing) * 10);
    }

    .ml-14 {
        margin-left: calc(var(--spacing) * 14);
    }

    .box-border {
        box-sizing: border-box;
    }

    .box-content {
        box-sizing: content-box;
    }

    .line-clamp-1 {
        overflow: hidden;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 1;
    }

    .line-clamp-2 {
        overflow: hidden;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }

    .line-clamp-3 {
        overflow: hidden;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
    }

    .line-clamp-4 {
        overflow: hidden;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 4;
    }

    .line-clamp-none {
        overflow: visible;
        display: block;
        -webkit-box-orient: horizontal;
        -webkit-line-clamp: unset;
    }

    .\!contents {
        display: contents !important;
    }

    .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;
    }

    .field-sizing-fixed {
        field-sizing: fixed;
    }

    .aspect-auto {
        aspect-ratio: auto;
    }

    .aspect-square {
        aspect-ratio: 1 / 1;
    }

    .\!size-12 {
        width: calc(var(--spacing) * 12) !important;
        height: calc(var(--spacing) * 12) !important;
    }

    .size-1 {
        width: calc(var(--spacing) * 1);
        height: calc(var(--spacing) * 1);
    }

    .size-3\.5 {
        width: calc(var(--spacing) * 3.5);
        height: calc(var(--spacing) * 3.5);
    }

    .size-4 {
        width: calc(var(--spacing) * 4);
        height: calc(var(--spacing) * 4);
    }

    .size-5 {
        width: calc(var(--spacing) * 5);
        height: calc(var(--spacing) * 5);
    }

    .size-6 {
        width: calc(var(--spacing) * 6);
        height: calc(var(--spacing) * 6);
    }

    .size-7 {
        width: calc(var(--spacing) * 7);
        height: calc(var(--spacing) * 7);
    }

    .size-8 {
        width: calc(var(--spacing) * 8);
        height: calc(var(--spacing) * 8);
    }

    .size-10 {
        width: calc(var(--spacing) * 10);
        height: calc(var(--spacing) * 10);
    }

    .size-15 {
        width: calc(var(--spacing) * 15);
        height: calc(var(--spacing) * 15);
    }

    .size-20 {
        width: calc(var(--spacing) * 20);
        height: calc(var(--spacing) * 20);
    }

    .size-25 {
        width: calc(var(--spacing) * 25);
        height: calc(var(--spacing) * 25);
    }

    .size-35 {
        width: calc(var(--spacing) * 35);
        height: calc(var(--spacing) * 35);
    }

    .size-40 {
        width: calc(var(--spacing) * 40);
        height: calc(var(--spacing) * 40);
    }

    .size-60 {
        width: calc(var(--spacing) * 60);
        height: calc(var(--spacing) * 60);
    }

    .h-0 {
        height: calc(var(--spacing) * 0);
    }

    .h-0\.5 {
        height: calc(var(--spacing) * 0.5);
    }

    .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-2\/5 {
        height: calc(2 / 5 * 100%);
    }

    .h-3 {
        height: calc(var(--spacing) * 3);
    }

    .h-4 {
        height: calc(var(--spacing) * 4);
    }

    .h-5 {
        height: calc(var(--spacing) * 5);
    }

    .h-6 {
        height: calc(var(--spacing) * 6);
    }

    .h-8 {
        height: calc(var(--spacing) * 8);
    }

    .h-10 {
        height: calc(var(--spacing) * 10);
    }

    .h-12 {
        height: calc(var(--spacing) * 12);
    }

    .h-13 {
        height: calc(var(--spacing) * 13);
    }

    .h-15 {
        height: calc(var(--spacing) * 15);
    }

    .h-16 {
        height: calc(var(--spacing) * 16);
    }

    .h-20 {
        height: calc(var(--spacing) * 20);
    }

    .h-22 {
        height: calc(var(--spacing) * 22);
    }

    .h-24 {
        height: calc(var(--spacing) * 24);
    }

    .h-25 {
        height: calc(var(--spacing) * 25);
    }

    .h-32 {
        height: calc(var(--spacing) * 32);
    }

    .h-40 {
        height: calc(var(--spacing) * 40);
    }

    .h-42 {
        height: calc(var(--spacing) * 42);
    }

    .h-48 {
        height: calc(var(--spacing) * 48);
    }

    .h-50 {
        height: calc(var(--spacing) * 50);
    }

    .h-64 {
        height: calc(var(--spacing) * 64);
    }

    .h-80 {
        height: calc(var(--spacing) * 80);
    }

    .h-90 {
        height: calc(var(--spacing) * 90);
    }

    .h-\[400px\] {
        height: 400px;
    }

    .h-\[300px\] {
        height: 300px;
    }

    .h-\[500px\] {
        height: 500px;
    }

    .h-\[calc\(100vh-160px\)\] {
        height: calc(100vh - 160px);
    }

    .h-auto {
        height: auto;
    }

    .h-full {
        height: 100%;
    }

    .h-screen {
        height: 100vh;
    }

    .max-h-0 {
        max-height: calc(var(--spacing) * 0);
    }

    .max-h-40 {
        max-height: calc(var(--spacing) * 40);
    }

    .max-h-60 {
        max-height: calc(var(--spacing) * 60);
    }

    .max-h-\[500px\] {
        max-height: 500px;
    }


    .max-h-\[700px\] {
        max-height: 700px;
    }

    .max-h-\[900px\] {
        max-height: 900px;
    }

    .max-h-\[1300px\] {
        max-height: 1300px;
    }

    .max-h-none {
        max-height: none;
    }

    .max-h-screen {
        max-height: 100vh;
    }

    .min-h-9\.5 {
        min-height: calc(var(--spacing) * 9.5);
    }

    .min-h-\[50px\] {
        min-height: 50px;
    }

    .min-h-\[200px\] {
        min-height: 200px;
    }

    .min-h-screen {
        min-height: 100vh;
    }

    .\!w-40 {
        width: calc(var(--spacing) * 40) !important;
    }

    .\!w-auto {
        width: auto !important;
    }

    .w-0 {
        width: calc(var(--spacing) * 0);
    }

    .w-0\.5 {
        width: calc(var(--spacing) * 0.5);
    }

    .w-1\/2 {
        width: calc(1 / 2 * 100%);
    }

    .w-1\/3 {
        width: calc(1 / 3 * 100%);
    }

    .w-1\/5 {
        width: calc(1 / 5 * 100%);
    }

    .w-1\/6 {
        width: calc(1 / 6 * 100%);
    }

    .w-1\/12 {
        width: calc(1 / 12 * 100%);
    }

    .w-1\/20 {
        width: calc(1 / 20 * 100%);
    }

    .w-2 {
        width: calc(var(--spacing) * 2);
    }

    .w-2\.5 {
        width: calc(var(--spacing) * 2.5);
    }

    .w-2\/3 {
        width: calc(2 / 3 * 100%);
    }

    .w-2\/6 {
        width: calc(2 / 6 * 100%);
    }

    .w-3 {
        width: calc(var(--spacing) * 3);
    }

    .w-3\/4 {
        width: calc(3 / 4 * 100%);
    }

    .w-3\/6 {
        width: calc(3 / 6 * 100%);
    }

    .w-4 {
        width: calc(var(--spacing) * 4);
    }

    .w-4\/12 {
        width: calc(4 / 12 * 100%);
    }

    .w-5 {
        width: calc(var(--spacing) * 5);
    }

    .w-6 {
        width: calc(var(--spacing) * 6);
    }

    .w-7\/12 {
        width: calc(7 / 12 * 100%);
    }

    .w-8 {
        width: calc(var(--spacing) * 8);
    }

    .w-10 {
        width: calc(var(--spacing) * 10);
    }

    .w-11\/12 {
        width: calc(11 / 12 * 100%);
    }

    .w-12 {
        width: calc(var(--spacing) * 12);
    }

    .w-16 {
        width: calc(var(--spacing) * 16);
    }

    .w-20 {
        width: calc(var(--spacing) * 20);
    }

    .w-23 {
        width: calc(var(--spacing) * 23);
    }

    .w-24 {
        width: calc(var(--spacing) * 24);
    }

    .w-32 {
        width: calc(var(--spacing) * 32);
    }

    .w-40 {
        width: calc(var(--spacing) * 40);
    }

    .w-48 {
        width: calc(var(--spacing) * 48);
    }

    .w-64 {
        width: calc(var(--spacing) * 64);
    }

    .w-72 {
        width: calc(var(--spacing) * 72);
    }

    .w-75 {
        width: calc(var(--spacing) * 75);
    }

    .w-80 {
        width: calc(var(--spacing) * 80);
    }

    .w-90 {
        width: calc(var(--spacing) * 90);
    }

    .w-180 {
        width: calc(var(--spacing) * 180);
    }

    .w-\[80\%\] {
        width: 80%;
    }

    .w-\[90\%\] {
        width: 90%;
    }

    .w-\[96\%\] {
        width: 96%;
    }

    .w-fit {
        width: fit-content;
    }

    .w-full {
        width: 100%;
    }

    .w-px {
        width: 1px;
    }

    .w-screen {
        width: 100vw;
    }

    .max-w-2xl {
        max-width: var(--container-2xl);
    }

    .max-w-3xl {
        max-width: var(--container-3xl);
    }

    .max-w-4xl {
        max-width: var(--container-4xl);
    }

    .max-w-\[70\%\] {
        max-width: 70%;
    }

    .max-w-\[800px\] {
        max-width: 800px;
    }

    .max-w-\[1920px\] {
        max-width: 1920px;
    }

    .max-w-full {
        max-width: 100%;
    }

    .max-w-md {
        max-width: var(--container-md);
    }

    .max-w-none {
        max-width: none;
    }

    .max-w-screen {
        max-width: 100vw;
    }

    .max-w-screen-lg {
        max-width: var(--breakpoint-lg);
    }

    .max-w-sm {
        max-width: var(--container-sm);
    }

    .max-w-xs {
        max-width: var(--container-xs);
    }

    .min-w-9\.5 {
        min-width: calc(var(--spacing) * 9.5);
    }

    .min-w-\[150px\] {
        min-width: 150px;
    }

    .min-w-\[200px\] {
        min-width: 200px;
    }

    .min-w-\[250px\] {
        min-width: 250px;
    }

    .min-w-full {
        min-width: 100%;
    }

    .min-w-md {
        min-width: var(--container-md);
    }

    .min-w-screen {
        min-width: 100vw;
    }

    .flex-1 {
        flex: 1;
    }

    .flex-auto {
        flex: auto;
    }

    .flex-initial {
        flex: 0 auto;
    }

    .flex-none {
        flex: none;
    }

    .flex-shrink {
        flex-shrink: 1;
    }

    .flex-shrink-0 {
        flex-shrink: 0;
    }

    .shrink {
        flex-shrink: 1;
    }

    .shrink-0 {
        flex-shrink: 0;
    }

    .flex-grow {
        flex-grow: 1;
    }

    .grow {
        flex-grow: 1;
    }

    .basis-auto {
        flex-basis: auto;
    }

    .basis-full {
        flex-basis: 100%;
    }

    .table-auto {
        table-layout: auto;
    }

    .table-fixed {
        table-layout: fixed;
    }

    .caption-bottom {
        caption-side: bottom;
    }

    .caption-top {
        caption-side: top;
    }

    .border-collapse {
        border-collapse: collapse;
    }

    .border-separate {
        border-collapse: separate;
    }

    .origin-bottom {
        transform-origin: bottom;
    }

    .origin-bottom-left {
        transform-origin: bottom left;
    }

    .origin-bottom-right {
        transform-origin: bottom right;
    }

    .origin-center {
        transform-origin: center;
    }

    .origin-left {
        transform-origin: left;
    }

    .origin-right {
        transform-origin: right;
    }

    .origin-top {
        transform-origin: top;
    }

    .origin-top-left {
        transform-origin: top left;
    }

    .origin-top-right {
        transform-origin: top right;
    }

    .-translate-full {
        --tw-translate-x: -100%;
        --tw-translate-y: -100%;
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }

    .translate-full {
        --tw-translate-x: 100%;
        --tw-translate-y: 100%;
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }

    .-translate-x-1\/2 {
        --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }

    .-translate-x-full {
        --tw-translate-x: -100%;
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }

    .-translate-y-1\/2 {
        --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }

    .-translate-y-full {
        --tw-translate-y: -100%;
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }

    .translate-x-full {
        --tw-translate-x: 100%;
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }

    .translate-y-full {
        --tw-translate-y: 100%;
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }

    .-translate-z-px {
        --tw-translate-z: -1px;
        translate: var(--tw-translate-x) var(--tw-translate-y) var(--tw-translate-z);
    }

    .-translate-z-px {
        --tw-translate-z: -1px;
        translate: var(--tw-translate-x) var(--tw-translate-y) var(--tw-translate-z);
    }

    .translate-3d {
        translate: var(--tw-translate-x) var(--tw-translate-y) var(--tw-translate-z);
    }

    .translate-none {
        translate: none;
    }

    .translate-z-px {
        --tw-translate-z: 1px;
        translate: var(--tw-translate-x) var(--tw-translate-y) var(--tw-translate-z);
    }

    .translate-z-px {
        --tw-translate-z: 1px;
        translate: var(--tw-translate-x) var(--tw-translate-y) var(--tw-translate-z);
    }

    .scale-3d {
        scale: var(--tw-scale-x) var(--tw-scale-y) var(--tw-scale-z);
    }

    .scale-none {
        scale: none;
    }

    .rotate-180 {
        rotate: 180deg;
    }

    .rotate-\[90deg\] {
        rotate: 90deg;
    }

    .rotate-none {
        rotate: none;
    }

    .transform {
        transform: var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y);
    }

    .transform-cpu {
        transform: var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y);
    }

    .transform-gpu {
        transform: translateZ(0) var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y);
    }

    .transform-none {
        transform: none;
    }

    .animate-\[modalopen_0\.4s_ease\] {
        animation: modalopen 0.4s ease;
    }

    .animate-none {
        animation: none;
    }

    .animate-pulse {
        animation: var(--animate-pulse);
    }

    .cursor-not-allowed {
        cursor: not-allowed;
    }

    .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,);
    }

    .resize {
        resize: both;
    }

    .resize-none {
        resize: none;
    }

    .resize-x {
        resize: horizontal;
    }

    .resize-y {
        resize: vertical;
    }

    .snap-none {
        scroll-snap-type: none;
    }

    .snap-mandatory {
        --tw-scroll-snap-strictness: mandatory;
    }

    .snap-proximity {
        --tw-scroll-snap-strictness: proximity;
    }

    .snap-align-none {
        scroll-snap-align: none;
    }

    .snap-center {
        scroll-snap-align: center;
    }

    .snap-end {
        scroll-snap-align: end;
    }

    .snap-start {
        scroll-snap-align: start;
    }

    .snap-always {
        scroll-snap-stop: always;
    }

    .snap-normal {
        scroll-snap-stop: normal;
    }

    .list-inside {
        list-style-position: inside;
    }

    .list-outside {
        list-style-position: outside;
    }

    .list-decimal {
        list-style-type: decimal;
    }

    .list-disc {
        list-style-type: disc;
    }

    .list-none {
        list-style-type: none;
    }

    .list-image-none {
        list-style-image: none;
    }

    .appearance-auto {
        appearance: auto;
    }

    .appearance-none {
        appearance: none;
    }

    .columns-auto {
        columns: auto;
    }

    .auto-cols-auto {
        grid-auto-columns: auto;
    }

    .auto-cols-fr {
        grid-auto-columns: minmax(0, 1fr);
    }

    .auto-cols-max {
        grid-auto-columns: max-content;
    }

    .auto-cols-min {
        grid-auto-columns: min-content;
    }

    .grid-flow-col {
        grid-auto-flow: column;
    }

    .grid-flow-col-dense {
        grid-auto-flow: column dense;
    }

    .grid-flow-dense {
        grid-auto-flow: dense;
    }

    .grid-flow-row {
        grid-auto-flow: row;
    }

    .grid-flow-row-dense {
        grid-auto-flow: row dense;
    }

    .auto-rows-auto {
        grid-auto-rows: auto;
    }

    .auto-rows-fr {
        grid-auto-rows: minmax(0, 1fr);
    }

    .auto-rows-max {
        grid-auto-rows: max-content;
    }

    .auto-rows-min {
        grid-auto-rows: min-content;
    }

    .grid-cols-1 {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }

    .grid-cols-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .grid-cols-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .grid-cols-4 {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .grid-cols-5 {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }

    .grid-cols-6 {
        grid-template-columns: repeat(6, minmax(0, 1fr));
    }

    .grid-cols-8 {
        grid-template-columns: repeat(8, minmax(0, 1fr));
    }

    .grid-cols-9 {
        grid-template-columns: repeat(9, minmax(0, 1fr));
    }

    .grid-cols-10 {
        grid-template-columns: repeat(10, minmax(0, 1fr));
    }

    .grid-cols-12 {
        grid-template-columns: repeat(12, minmax(0, 1fr));
    }

    .grid-cols-none {
        grid-template-columns: none;
    }

    .grid-cols-subgrid {
        grid-template-columns: subgrid;
    }

    .grid-rows-none {
        grid-template-rows: none;
    }

    .grid-rows-subgrid {
        grid-template-rows: subgrid;
    }

    .flex-col {
        flex-direction: column;
    }

    .flex-col-reverse {
        flex-direction: column-reverse;
    }

    .flex-row {
        flex-direction: row;
    }

    .flex-row-reverse {
        flex-direction: row-reverse;
    }

    .flex-nowrap {
        flex-wrap: nowrap;
    }

    .flex-wrap {
        flex-wrap: wrap;
    }

    .flex-wrap-reverse {
        flex-wrap: wrap-reverse;
    }

    .place-content-around {
        place-content: space-around;
    }

    .place-content-baseline {
        place-content: baseline;
    }

    .place-content-between {
        place-content: space-between;
    }

    .place-content-center {
        place-content: center;
    }

    .place-content-end {
        place-content: end;
    }

    .place-content-evenly {
        place-content: space-evenly;
    }

    .place-content-start {
        place-content: start;
    }

    .place-content-stretch {
        place-content: stretch;
    }

    .place-items-baseline {
        place-items: baseline;
    }

    .place-items-center {
        place-items: center;
    }

    .place-items-end {
        place-items: end;
    }

    .place-items-start {
        place-items: start;
    }

    .place-items-stretch {
        place-items: stretch;
    }

    .content-around {
        align-content: space-around;
    }

    .content-baseline {
        align-content: baseline;
    }

    .content-between {
        align-content: space-between;
    }

    .content-center {
        align-content: center;
    }

    .content-end {
        align-content: flex-end;
    }

    .content-evenly {
        align-content: space-evenly;
    }

    .content-normal {
        align-content: normal;
    }

    .content-start {
        align-content: flex-start;
    }

    .content-stretch {
        align-content: stretch;
    }

    .items-baseline {
        align-items: baseline;
    }

    .items-center {
        align-items: center;
    }

    .items-end {
        align-items: flex-end;
    }

    .items-start {
        align-items: flex-start;
    }

    .items-stretch {
        align-items: stretch;
    }

    .justify-around {
        justify-content: space-around;
    }

    .justify-baseline {
        justify-content: baseline;
    }

    .justify-between {
        justify-content: space-between;
    }

    .justify-center {
        justify-content: center;
    }

    .justify-end {
        justify-content: flex-end;
    }

    .justify-evenly {
        justify-content: space-evenly;
    }

    .justify-normal {
        justify-content: normal;
    }

    .justify-start {
        justify-content: flex-start;
    }

    .justify-stretch {
        justify-content: stretch;
    }

    .justify-items-center {
        justify-items: center;
    }

    .justify-items-end {
        justify-items: end;
    }

    .justify-items-normal {
        justify-items: normal;
    }

    .justify-items-start {
        justify-items: start;
    }

    .justify-items-stretch {
        justify-items: stretch;
    }

    .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-5 {
        gap: calc(var(--spacing) * 5);
    }

    .gap-6 {
        gap: calc(var(--spacing) * 6);
    }

    .gap-8 {
        gap: calc(var(--spacing) * 8);
    }

    .gap-10 {
        gap: calc(var(--spacing) * 10);
    }

    .gap-12 {
        gap: calc(var(--spacing) * 12);
    }

    .gap-x-1 {
        column-gap: calc(var(--spacing) * 1);
    }

    .gap-x-1\.5 {
        column-gap: calc(var(--spacing) * 1.5);
    }

    .gap-x-4 {
        column-gap: calc(var(--spacing) * 4);
    }

    .gap-x-9 {
        column-gap: calc(var(--spacing) * 9);
    }

    .space-y-1 {
        :where(& > :not(:last-child)) {
            --tw-space-y-reverse: 0;
            margin-block-start: calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));
            margin-block-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)));
        }
    }

    .space-y-2 {
        :where(& > :not(:last-child)) {
            --tw-space-y-reverse: 0;
            margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));
            margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)));
        }
    }

    .space-y-3 {
        :where(& > :not(:last-child)) {
            --tw-space-y-reverse: 0;
            margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
            margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
        }
    }

    .space-y-4 {
        :where(& > :not(:last-child)) {
            --tw-space-y-reverse: 0;
            margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));
            margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));
        }
    }

    .space-y-5 {
        :where(& > :not(:last-child)) {
            --tw-space-y-reverse: 0;
            margin-block-start: calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));
            margin-block-end: calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)));
        }
    }

    .space-y-6 {
        :where(& > :not(:last-child)) {
            --tw-space-y-reverse: 0;
            margin-block-start: calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));
            margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)));
        }
    }

    .space-y-8 {
        :where(& > :not(:last-child)) {
            --tw-space-y-reverse: 0;
            margin-block-start: calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));
            margin-block-end: calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)));
        }
    }

    .space-y-10 {
        :where(& > :not(:last-child)) {
            --tw-space-y-reverse: 0;
            margin-block-start: calc(calc(var(--spacing) * 10) * var(--tw-space-y-reverse));
            margin-block-end: calc(calc(var(--spacing) * 10) * calc(1 - var(--tw-space-y-reverse)));
        }
    }

    .space-y-reverse {
        :where(& > :not(:last-child)) {
            --tw-space-y-reverse: 1;
        }
    }

    .gap-y-4 {
        row-gap: calc(var(--spacing) * 4);
    }

    .gap-y-8 {
        row-gap: calc(var(--spacing) * 8);
    }

    .gap-y-10 {
        row-gap: calc(var(--spacing) * 10);
    }

    .space-x-1 {
        :where(& > :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)));
        }
    }

    .space-x-2 {
        :where(& > :not(:last-child)) {
            --tw-space-x-reverse: 0;
            margin-inline-start: calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));
            margin-inline-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)));
        }
    }

    .space-x-3 {
        :where(& > :not(:last-child)) {
            --tw-space-x-reverse: 0;
            margin-inline-start: calc(calc(var(--spacing) * 3) * var(--tw-space-x-reverse));
            margin-inline-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-x-reverse)));
        }
    }

    .space-x-4 {
        :where(& > :not(:last-child)) {
            --tw-space-x-reverse: 0;
            margin-inline-start: calc(calc(var(--spacing) * 4) * var(--tw-space-x-reverse));
            margin-inline-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-x-reverse)));
        }
    }

    .space-x-5 {
        :where(& > :not(:last-child)) {
            --tw-space-x-reverse: 0;
            margin-inline-start: calc(calc(var(--spacing) * 5) * var(--tw-space-x-reverse));
            margin-inline-end: calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-x-reverse)));
        }
    }

    .space-x-6 {
        :where(& > :not(:last-child)) {
            --tw-space-x-reverse: 0;
            margin-inline-start: calc(calc(var(--spacing) * 6) * var(--tw-space-x-reverse));
            margin-inline-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-x-reverse)));
        }
    }

    .space-x-7 {
        :where(& > :not(:last-child)) {
            --tw-space-x-reverse: 0;
            margin-inline-start: calc(calc(var(--spacing) * 7) * var(--tw-space-x-reverse));
            margin-inline-end: calc(calc(var(--spacing) * 7) * calc(1 - var(--tw-space-x-reverse)));
        }
    }

    .space-x-8 {
        :where(& > :not(:last-child)) {
            --tw-space-x-reverse: 0;
            margin-inline-start: calc(calc(var(--spacing) * 8) * var(--tw-space-x-reverse));
            margin-inline-end: calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-x-reverse)));
        }
    }

    .space-x-10 {
        :where(& > :not(:last-child)) {
            --tw-space-x-reverse: 0;
            margin-inline-start: calc(calc(var(--spacing) * 10) * var(--tw-space-x-reverse));
            margin-inline-end: calc(calc(var(--spacing) * 10) * calc(1 - var(--tw-space-x-reverse)));
        }
    }

    .space-x-reverse {
        :where(& > :not(:last-child)) {
            --tw-space-x-reverse: 1;
        }
    }

    .divide-x {
        :where(& > :not(:last-child)) {
            --tw-divide-x-reverse: 0;
            border-inline-style: var(--tw-border-style);
            border-inline-start-width: calc(1px * var(--tw-divide-x-reverse));
            border-inline-end-width: calc(1px * calc(1 - var(--tw-divide-x-reverse)));
        }
    }

    .divide-x-2 {
        :where(& > :not(:last-child)) {
            --tw-divide-x-reverse: 0;
            border-inline-style: var(--tw-border-style);
            border-inline-start-width: calc(2px * var(--tw-divide-x-reverse));
            border-inline-end-width: calc(2px * calc(1 - var(--tw-divide-x-reverse)));
        }
    }

    .divide-y {
        :where(& > :not(:last-child)) {
            --tw-divide-y-reverse: 0;
            border-bottom-style: var(--tw-border-style);
            border-top-style: var(--tw-border-style);
            border-top-width: calc(1px * var(--tw-divide-y-reverse));
            border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
        }
    }

    .divide-y-reverse {
        :where(& > :not(:last-child)) {
            --tw-divide-y-reverse: 1;
        }
    }

    .divide-gray-200 {
        :where(& > :not(:last-child)) {
            border-color: var(--color-gray-200);
        }
    }

    .divide-transparent {
        :where(& > :not(:last-child)) {
            border-color: transparent;
        }
    }

    .place-self-auto {
        place-self: auto;
    }

    .place-self-center {
        place-self: center;
    }

    .place-self-end {
        place-self: end;
    }

    .place-self-start {
        place-self: start;
    }

    .place-self-stretch {
        place-self: stretch;
    }

    .self-auto {
        align-self: auto;
    }

    .self-baseline {
        align-self: baseline;
    }

    .self-center {
        align-self: center;
    }

    .self-end {
        align-self: flex-end;
    }

    .self-start {
        align-self: flex-start;
    }

    .self-stretch {
        align-self: stretch;
    }

    .justify-self-auto {
        justify-self: auto;
    }

    .justify-self-center {
        justify-self: center;
    }

    .justify-self-end {
        justify-self: flex-end;
    }

    .justify-self-start {
        justify-self: flex-start;
    }

    .justify-self-stretch {
        justify-self: stretch;
    }

    .truncate {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .overflow-auto {
        overflow: auto;
    }

    .overflow-hidden {
        overflow: hidden;
    }

    .overflow-x-auto {
        overflow-x: auto;
    }

    .overflow-x-scroll {
        overflow-x: scroll;
    }

    .overflow-y-auto {
        overflow-y: auto;
    }

    .overflow-y-scroll {
        overflow-y: scroll;
    }

    .scroll-auto {
        scroll-behavior: auto;
    }

    .scroll-smooth {
        scroll-behavior: smooth;
    }

    .rounded {
        border-radius: 0.25rem;
    }

    .rounded-2xl {
        border-radius: var(--radius-2xl);
    }

    .rounded-3xl {
        border-radius: var(--radius-3xl);
    }

    .rounded-4xl {
        border-radius: var(--radius-4xl);
    }

    .rounded-full {
        border-radius: calc(infinity * 1px);
    }

    .rounded-lg {
        border-radius: var(--radius-lg);
    }

    .rounded-md {
        border-radius: var(--radius-md);
    }

    .rounded-sm {
        border-radius: var(--radius-sm);
    }

    .rounded-xl {
        border-radius: var(--radius-xl);
    }

    .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-l {
        border-top-left-radius: 0.25rem;
        border-bottom-left-radius: 0.25rem;
    }

    .rounded-l-lg {
        border-top-left-radius: var(--radius-lg);
        border-bottom-left-radius: var(--radius-lg);
    }

    .rounded-l-md {
        border-top-left-radius: var(--radius-md);
        border-bottom-left-radius: var(--radius-md);
    }

    .rounded-l-xl {
        border-top-left-radius: var(--radius-xl);
        border-bottom-left-radius: var(--radius-xl);
    }

    .rounded-l-none {
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
    }

    .rounded-t {
        border-top-left-radius: 0.25rem;
        border-top-right-radius: 0.25rem;
    }

    .rounded-t-lg {
        border-top-left-radius: var(--radius-lg);
        border-top-right-radius: var(--radius-lg);
    }

    .rounded-t-xl {
        border-top-left-radius: var(--radius-xl);
        border-top-right-radius: var(--radius-xl);
    }

    .rounded-tl {
        border-top-left-radius: 0.25rem;
    }

    .rounded-tl-3xl {
        border-top-left-radius: var(--radius-3xl);
    }

    .rounded-r {
        border-top-right-radius: 0.25rem;
        border-bottom-right-radius: 0.25rem;
    }

    .rounded-r-lg {
        border-top-right-radius: var(--radius-lg);
        border-bottom-right-radius: var(--radius-lg);
    }

    .rounded-r-xl {
        border-top-right-radius: var(--radius-xl);
        border-bottom-right-radius: var(--radius-xl);
    }

    .rounded-r-md {
        border-top-right-radius: var(--radius-md);
        border-bottom-right-radius: var(--radius-md);
    }

    .rounded-r-none {
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
    }

    .rounded-tr {
        border-top-right-radius: 0.25rem;
    }

    .rounded-b {
        border-bottom-right-radius: 0.25rem;
        border-bottom-left-radius: 0.25rem;
    }

    .rounded-b-xl {
        border-bottom-right-radius: var(--radius-xl);
        border-bottom-left-radius: var(--radius-xl);
    }

    .rounded-b-md {
        border-bottom-right-radius: var(--radius-md);
        border-bottom-left-radius: var(--radius-md);
    }

    .rounded-br {
        border-bottom-right-radius: 0.25rem;
    }

    .rounded-bl {
        border-bottom-left-radius: 0.25rem;
    }

    .rounded-bl-3xl {
        border-bottom-left-radius: var(--radius-3xl);
    }

    .rounded-bl-none {
        border-bottom-left-radius: 0;
    }

    .border {
        border-style: var(--tw-border-style);
        border-width: 1px;
    }

    .border-0 {
        border-style: var(--tw-border-style);
        border-width: 0px;
    }

    .border-1 {
        border-style: var(--tw-border-style);
        border-width: 1px;
    }

    .border-2 {
        border-style: var(--tw-border-style);
        border-width: 2px;
    }

    .border-4 {
        border-style: var(--tw-border-style);
        border-width: 4px;
    }

    .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-y-4 {
        border-block-style: var(--tw-border-style);
        border-block-width: 4px;
    }

    .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-r-2 {
        border-right-style: var(--tw-border-style);
        border-right-width: 2px;
    }

    .border-r-4 {
        border-right-style: var(--tw-border-style);
        border-right-width: 4px;
    }

    .border-b {
        border-bottom-style: var(--tw-border-style);
        border-bottom-width: 1px;
    }

    .border-b-2 {
        border-bottom-style: var(--tw-border-style);
        border-bottom-width: 2px;
    }

    .border-l {
        border-left-style: var(--tw-border-style);
        border-left-width: 1px;
    }

    .border-l-2 {
        border-left-style: var(--tw-border-style);
        border-left-width: 2px;
    }

    .border-l-4 {
        border-left-style: var(--tw-border-style);
        border-left-width: 4px;
    }

    .border-dashed {
        --tw-border-style: dashed;
        border-style: dashed;
    }

    .border-dotted {
        --tw-border-style: dotted;
        border-style: dotted;
    }

    .border-double {
        --tw-border-style: double;
        border-style: double;
    }

    .border-hidden {
        --tw-border-style: hidden;
        border-style: hidden;
    }

    .border-none {
        --tw-border-style: none;
        border-style: none;
    }

    .border-solid {
        --tw-border-style: solid;
        border-style: solid;
    }

    .border-blue-100 {
        border-color: var(--color-blue-100);
    }

    .border-blue-200 {
        border-color: var(--color-blue-200);
    }

    .border-blue-500 {
        border-color: var(--color-blue-500);
    }

    .border-blue-600 {
        border-color: var(--color-blue-600);
    }

    .border-danger {
        border-color: var(--color-danger);
    }

    .border-danger\/20 {
        border-color: color-mix(in oklab, var(--color-danger) 20%, transparent);
    }

    .border-gray-100 {
        border-color: var(--color-gray-100);
    }

    .border-gray-200 {
        border-color: var(--color-gray-200);
    }

    .border-gray-200\/50 {
        border-color: color-mix(in oklab, var(--color-gray-200) 50%, transparent);
    }

    .border-gray-300 {
        border-color: var(--color-gray-300);
    }

    .border-gray-400 {
        border-color: var(--color-gray-400);
    }

    .border-gray-500 {
        border-color: var(--color-gray-500);
    }

    .border-green-100 {
        border-color: var(--color-green-100);
    }

    .border-green-200 {
        border-color: var(--color-green-200);
    }

    .border-green-500 {
        border-color: var(--color-green-500);
    }

    .border-primary {
        border-color: var(--color-primary);
    }

    .border-primary-100 {
        border-color: var(--color-primary-100);
    }

    .border-primary-200 {
        border-color: var(--color-primary-200);
    }

    .border-primary-500 {
        border-color: var(--color-primary-500);
    }

    .border-primary-600 {
        border-color: var(--color-primary-600);
    }

    .border-primary\/10 {
        border-color: color-mix(in oklab, var(--color-primary) 10%, transparent);
    }

    .border-red-100 {
        border-color: var(--color-red-100);
    }

    .border-red-200 {
        border-color: var(--color-red-200);
    }

    .border-secondary {
        border-color: var(--color-secondary);
    }

    .border-secondary-300 {
        border-color: var(--color-secondary-300);
    }

    .border-transparent {
        border-color: transparent;
    }

    .border-white {
        border-color: var(--color-white);
    }

    .border-white\/20 {
        border-color: color-mix(in oklab, var(--color-white) 20%, transparent);
    }

    .border-yellow-200 {
        border-color: var(--color-yellow-200);
    }

    .border-yellow-500 {
        border-color: var(--color-yellow-500);
    }

    .border-y-transparent {
        border-block-color: transparent;
    }

    .border-t-zinc-300 {
        border-top-color: var(--color-zinc-300);
    }

    .border-b-gray-200 {
        border-bottom-color: var(--color-gray-200);
    }

    .border-t-gray-200 {
        border-top-color: var(--color-gray-200);
    }

    .border-b-gray-300 {
        border-bottom-color: var(--color-gray-300);
    }

    .border-b-gray-400 {
        border-bottom-color: var(--color-gray-400);
    }

    .border-l-gray-900 {
        border-left-color: var(--color-gray-900);
    }

    .border-l-gray-200 {
        border-left-color: var(--color-gray-200);
    }

    .\!bg-transparent {
        background-color: transparent !important;
    }

    .bg-\(--my_variable\) {
        background-color: var(--my_variable);
    }

    .bg-\(color\:--my-color\) {
        background-color: var(--my-color);
    }

    .bg-\[\#0088cc\] {
        background-color: #0088cc;
    }

    .bg-\[color\:var\(--my-color\)\] {
        background-color: var(--my-color);
    }

    .bg-\[var\(--my_variable\)\] {
        background-color: var(--my_variable);
    }

    .bg-amber-300 {
        background-color: var(--color-amber-300);
    }

    .bg-black\/30 {
        background-color: color-mix(in oklab, var(--color-black) 30%, transparent);
    }

    .bg-black\/40 {
        background-color: color-mix(in oklab, var(--color-black) 40%, transparent);
    }

    .bg-black\/50 {
        background-color: color-mix(in oklab, var(--color-black) 50%, transparent);
    }

    .bg-black\/70 {
        background-color: color-mix(in oklab, var(--color-black) 70%, transparent);
    }

    .bg-blue-50 {
        background-color: var(--color-blue-50);
    }

    .bg-blue-100 {
        background-color: var(--color-blue-100);
    }

    .bg-blue-200 {
        background-color: var(--color-blue-200);
    }

    .bg-blue-400 {
        background-color: var(--color-blue-400);
    }

    .bg-blue-500 {
        background-color: var(--color-blue-500);
    }

    .bg-blue-600 {
        background-color: var(--color-blue-600);
    }

    .bg-card-light {
        background-color: var(--color-card-light);
    }

    .bg-danger {
        background-color: var(--color-danger);
    }

    .bg-danger\/5 {
        background-color: color-mix(in oklab, var(--color-danger) 5%, transparent);
    }

    .bg-danger\/10 {
        background-color: color-mix(in oklab, var(--color-danger) 10%, transparent);
    }

    .bg-gray-50 {
        background-color: var(--color-gray-50);
    }

    .bg-gray-100 {
        background-color: var(--color-gray-100);
    }

    .bg-gray-200 {
        background-color: var(--color-gray-200);
    }

    .bg-gray-300 {
        background-color: var(--color-gray-300);
    }

    .bg-gray-400 {
        background-color: var(--color-gray-400);
    }

    .bg-gray-500 {
        background-color: var(--color-gray-500);
    }

    .bg-gray-600 {
        background-color: var(--color-gray-600);
    }

    .bg-gray-700 {
        background-color: var(--color-gray-700);
    }

    .bg-gray-800 {
        background-color: var(--color-gray-800);
    }

    .bg-gray-900 {
        background-color: var(--color-gray-900);
    }

    .bg-green-50 {
        background-color: var(--color-green-50);
    }

    .bg-green-100 {
        background-color: var(--color-green-100);
    }

    .bg-green-200 {
        background-color: var(--color-green-200);
    }

    .bg-green-300 {
        background-color: var(--color-green-300);
    }

    .bg-green-500 {
        background-color: var(--color-green-500);
    }

    .bg-green-600 {
        background-color: var(--color-green-600);
    }

    .bg-light {
        background-color: var(--color-light);
    }

    .bg-neutral-200 {
        background-color: var(--color-neutral-200);
    }

    .bg-orange-50 {
        background-color: var(--color-orange-50);
    }

    .bg-orange-100 {
        background-color: var(--color-orange-100);
    }

    .bg-pink-200 {
        background-color: var(--color-pink-200);
    }

    .bg-primary {
        background-color: var(--color-primary);
    }

    .bg-primary-50 {
        background-color: var(--color-primary-50);
    }

    .bg-primary-100 {
        background-color: var(--color-primary-100);
    }

    .bg-primary-200 {
        background-color: var(--color-primary-200);
    }

    .bg-primary-300 {
        background-color: var(--color-primary-300);
    }

    .bg-primary-400 {
        background-color: var(--color-primary-400);
    }

    .bg-primary-500 {
        background-color: var(--color-primary-500);
    }

    .bg-primary-600 {
        background-color: var(--color-primary-600);
    }

    .bg-primary-light {
        background-color: var(--color-primary-light);
    }

    .bg-primary-light\/10 {
        background-color: color-mix(in oklab, var(--color-primary-light) 10%, transparent);
    }

    .bg-primary\/10 {
        background-color: color-mix(in oklab, var(--color-primary) 10%, transparent);
    }

    .bg-primary\/90 {
        background-color: color-mix(in oklab, var(--color-primary) 90%, transparent);
    }

    .bg-purple-50 {
        background-color: var(--color-purple-50);
    }

    .bg-purple-100 {
        background-color: var(--color-purple-100);
    }

    .bg-purple-200 {
        background-color: var(--color-purple-200);
    }

    .bg-purple-600 {
        background-color: var(--color-purple-600);
    }

    .bg-red-50 {
        background-color: var(--color-red-50);
    }

    .bg-red-100 {
        background-color: var(--color-red-100);
    }

    .bg-red-500 {
        background-color: var(--color-red-500);
    }

    .bg-red-500\/50 {
        background-color: color-mix(in oklab, var(--color-red-500) 50%, transparent);
    }

    .bg-red-500\/\[50\%\] {
        background-color: color-mix(in oklab, var(--color-red-500) 50%, transparent);
    }

    .bg-red-600 {
        background-color: var(--color-red-600);
    }

    .bg-secondary {
        background-color: var(--color-secondary);
    }

    .bg-secondary-200 {
        background-color: var(--color-secondary-200);
    }

    .bg-secondary-500 {
        background-color: var(--color-secondary-500);
    }

    .bg-secondary-light\/10 {
        background-color: color-mix(in oklab, var(--color-secondary-light) 10%, transparent);
    }

    .bg-secondary\/10 {
        background-color: color-mix(in oklab, var(--color-secondary) 10%, transparent);
    }

    .bg-success {
        background-color: var(--color-success);
    }

    .bg-success\/10 {
        background-color: color-mix(in oklab, var(--color-success) 10%, transparent);
    }

    .bg-transparent {
        background-color: transparent;
    }

    .bg-warning {
        background-color: var(--color-warning);
    }

    .bg-warning\/10 {
        background-color: color-mix(in oklab, var(--color-warning) 10%, transparent);
    }

    .bg-white {
        background-color: var(--color-white);
    }

    .bg-white\/20 {
        background-color: color-mix(in oklab, var(--color-white) 20%, transparent);
    }

    .bg-white\/80 {
        background-color: color-mix(in oklab, var(--color-white) 80%, transparent);
    }

    .bg-yellow-50 {
        background-color: var(--color-yellow-50);
    }

    .bg-yellow-100 {
        background-color: var(--color-yellow-100);
    }

    .bg-yellow-200 {
        background-color: var(--color-yellow-200);
    }

    .bg-yellow-500 {
        background-color: var(--color-yellow-500);
    }

    .-bg-conic {
        --tw-gradient-position: in oklab;
        background-image: conic-gradient(var(--tw-gradient-stops));
    }

    .bg-conic {
        --tw-gradient-position: in oklab;
        background-image: conic-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));
    }

    .bg-gradient-to-t {
        --tw-gradient-position: to top in oklab;
        background-image: linear-gradient(var(--tw-gradient-stops));
    }

    .bg-radial {
        --tw-gradient-position: in oklab;
        background-image: radial-gradient(var(--tw-gradient-stops));
    }

    .bg-\[url\(\'\.\.\/images\/blog\/cover\.jpg\'\)\] {
        background-image: url('../images/blog/cover.jpg');
    }

    .bg-\[url\(\.\.\/images\/slider\/patterns\.png\)\] {
        background-image: url(../images/slider/patterns.png);
    }

    .bg-none {
        background-image: none;
    }

    .via-none {
        --tw-gradient-via-stops: initial;
    }

    .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-primary {
        --tw-gradient-from: var(--color-primary);
        --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
    }

    .from-primary-500 {
        --tw-gradient-from: var(--color-primary-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-primary-light {
        --tw-gradient-from: var(--color-primary-light);
        --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-success {
        --tw-gradient-from: var(--color-success);
        --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-warning {
        --tw-gradient-from: var(--color-warning);
        --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-white {
        --tw-gradient-from: 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));
    }

    .to-amber-400 {
        --tw-gradient-to: var(--color-amber-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));
    }

    .to-emerald-400 {
        --tw-gradient-to: var(--color-emerald-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));
    }

    .to-primary-600 {
        --tw-gradient-to: var(--color-primary-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-secondary {
        --tw-gradient-to: var(--color-secondary);
        --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
    }

    .to-secondary-light {
        --tw-gradient-to: var(--color-secondary-light);
        --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\/80 {
        --tw-gradient-to: color-mix(in oklab, var(--color-white) 80%, 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));
    }

    .box-decoration-clone {
        -webkit-box-decoration-break: clone;
        box-decoration-break: clone;
    }

    .box-decoration-slice {
        -webkit-box-decoration-break: slice;
        box-decoration-break: slice;
    }

    .decoration-clone {
        -webkit-box-decoration-break: clone;
        box-decoration-break: clone;
    }

    .decoration-slice {
        -webkit-box-decoration-break: slice;
        box-decoration-break: slice;
    }

    .bg-auto {
        background-size: auto;
    }

    .bg-contain {
        background-size: contain;
    }

    .bg-cover {
        background-size: cover;
    }

    .bg-fixed {
        background-attachment: fixed;
    }

    .bg-local {
        background-attachment: local;
    }

    .bg-scroll {
        background-attachment: scroll;
    }

    .bg-clip-border {
        background-clip: border-box;
    }

    .bg-clip-content {
        background-clip: content-box;
    }

    .bg-clip-padding {
        background-clip: padding-box;
    }

    .bg-clip-text {
        background-clip: text;
    }

    .bg-bottom {
        background-position: bottom;
    }

    .bg-center {
        background-position: center;
    }

    .bg-left {
        background-position: left;
    }

    .bg-left-bottom {
        background-position: left bottom;
    }

    .bg-left-top {
        background-position: left top;
    }

    .bg-right {
        background-position: right;
    }

    .bg-right-bottom {
        background-position: right bottom;
    }

    .bg-right-top {
        background-position: right top;
    }

    .bg-top {
        background-position: top;
    }

    .bg-no-repeat {
        background-repeat: no-repeat;
    }

    .bg-repeat {
        background-repeat: repeat;
    }

    .bg-repeat-round {
        background-repeat: round;
    }

    .bg-repeat-space {
        background-repeat: space;
    }

    .bg-repeat-x {
        background-repeat: repeat-x;
    }

    .bg-repeat-y {
        background-repeat: repeat-y;
    }

    .bg-origin-border {
        background-origin: border-box;
    }

    .bg-origin-content {
        background-origin: content-box;
    }

    .bg-origin-padding {
        background-origin: padding-box;
    }

    .fill-current {
        fill: currentColor;
    }

    .fill-none {
        fill: none;
    }

    .stroke-none {
        stroke: none;
    }

    .object-contain {
        object-fit: contain;
    }

    .object-cover {
        object-fit: cover;
    }

    .object-fill {
        object-fit: fill;
    }

    .object-none {
        object-fit: none;
    }

    .object-scale-down {
        object-fit: scale-down;
    }

    .object-bottom {
        object-position: bottom;
    }

    .object-center {
        object-position: center;
    }

    .object-left {
        object-position: left;
    }

    .object-left-bottom {
        object-position: left bottom;
    }

    .object-left-top {
        object-position: left top;
    }

    .object-right {
        object-position: right;
    }

    .object-right-bottom {
        object-position: right bottom;
    }

    .object-right-top {
        object-position: right top;
    }

    .object-top {
        object-position: top;
    }

    .p-1 {
        padding: calc(var(--spacing) * 1);
    }

    .p-2 {
        padding: calc(var(--spacing) * 2);
    }

    .p-2\.5 {
        padding: calc(var(--spacing) * 2.5);
    }

    .p-3 {
        padding: calc(var(--spacing) * 3);
    }

    .p-4 {
        padding: calc(var(--spacing) * 4);
    }

    .p-5 {
        padding: calc(var(--spacing) * 5);
    }

    .p-6 {
        padding: calc(var(--spacing) * 6);
    }

    .p-8 {
        padding: calc(var(--spacing) * 8);
    }

    .p-10 {
        padding: calc(var(--spacing) * 8);
    }

    .p-12 {
        padding: calc(var(--spacing) * 12);
    }

    .p-16 {
        padding: calc(var(--spacing) * 16);
    }

    .\!px-0 {
        padding-inline: calc(var(--spacing) * 0) !important;
    }

    .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-5 {
        padding-inline: calc(var(--spacing) * 5);
    }

    .px-6 {
        padding-inline: calc(var(--spacing) * 6);
    }

    .px-8 {
        padding-inline: calc(var(--spacing) * 8);
    }

    .px-15 {
        padding-inline: calc(var(--spacing) * 15);
    }

    .px-20 {
        padding-inline: calc(var(--spacing) * 20);
    }

    .px-25 {
        padding-inline: calc(var(--spacing) * 25);
    }

    .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-5 {
        padding-block: calc(var(--spacing) * 5);
    }

    .py-6 {
        padding-block: calc(var(--spacing) * 6);
    }

    .py-10 {
        padding-block: calc(var(--spacing) * 10);
    }

    .py-25 {
        padding-block: calc(var(--spacing) * 25);
    }

    .ps-3 {
        padding-inline-start: calc(var(--spacing) * 3);
    }

    .ps-10 {
        padding-inline-start: calc(var(--spacing) * 10);
    }

    .ps-15 {
        padding-inline-start: calc(var(--spacing) * 15);
    }

    .pt-0\.5 {
        padding-top: calc(var(--spacing) * 0.5);
    }

    .pt-1 {
        padding-top: calc(var(--spacing) * 1);
    }

    .pt-2 {
        padding-top: calc(var(--spacing) * 2);
    }

    .pt-3 {
        padding-top: calc(var(--spacing) * 3);
    }

    .pt-4 {
        padding-top: calc(var(--spacing) * 4);
    }

    .pt-5 {
        padding-top: calc(var(--spacing) * 5);
    }

    .pt-6 {
        padding-top: calc(var(--spacing) * 6);
    }

    .pr-1 {
        padding-right: calc(var(--spacing) * 1);
    }

    .pr-2 {
        padding-right: calc(var(--spacing) * 2);
    }

    .pr-3 {
        padding-right: calc(var(--spacing) * 3);
    }

    .pr-4 {
        padding-right: calc(var(--spacing) * 4);
    }

    .pr-5 {
        padding-right: calc(var(--spacing) * 5);
    }

    .pr-10 {
        padding-right: calc(var(--spacing) * 10);
    }

    .pr-12 {
        padding-right: calc(var(--spacing) * 12);
    }

    .pr-18 {
        padding-right: calc(var(--spacing) * 18);
    }

    .pb-2 {
        padding-bottom: calc(var(--spacing) * 2);
    }

    .pb-3 {
        padding-bottom: calc(var(--spacing) * 3);
    }

    .pb-4 {
        padding-bottom: calc(var(--spacing) * 4);
    }

    .pb-5 {
        padding-bottom: calc(var(--spacing) * 5);
    }

    .pb-6 {
        padding-bottom: calc(var(--spacing) * 6);
    }

    .pb-8 {
        padding-bottom: calc(var(--spacing) * 8);
    }

    .pb-10 {
        padding-bottom: calc(var(--spacing) * 10);
    }

    .pb-20 {
        padding-bottom: calc(var(--spacing) * 20);
    }

    .\!pl-1 {
        padding-left: calc(var(--spacing) * 1) !important;
    }

    .pl-2 {
        padding-left: calc(var(--spacing) * 2);
    }

    .pl-3 {
        padding-left: calc(var(--spacing) * 3);
    }

    .pl-4 {
        padding-left: calc(var(--spacing) * 4);
    }

    .pl-10 {
        padding-left: calc(var(--spacing) * 10);
    }

    .pl-12 {
        padding-left: calc(var(--spacing) * 12);
    }

    .text-center {
        text-align: center;
    }

    .text-end {
        text-align: end;
    }

    .text-justify {
        text-align: justify;
    }

    .text-left {
        text-align: left;
    }

    .text-right {
        text-align: right;
    }

    .text-start {
        text-align: start;
    }

    .align-baseline {
        vertical-align: baseline;
    }

    .align-bottom {
        vertical-align: bottom;
    }

    .align-middle {
        vertical-align: middle;
    }

    .align-sub {
        vertical-align: sub;
    }

    .align-super {
        vertical-align: super;
    }

    .align-text-bottom {
        vertical-align: text-bottom;
    }

    .align-text-top {
        vertical-align: text-top;
    }

    .align-top {
        vertical-align: top;
    }

    .font-mono {
        font-family: var(--font-mono);
    }

    .text-2xl {
        font-size: var(--text-2xl);
        line-height: var(--tw-leading, var(--text-2xl--line-height));
    }

    .text-3xl {
        font-size: var(--text-3xl);
        line-height: var(--tw-leading, var(--text-3xl--line-height));
    }

    .text-4xl {
        font-size: var(--text-4xl);
        line-height: var(--tw-leading, var(--text-4xl--line-height));
    }

    .text-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));
    }

    .leading-3 {
        --tw-leading: calc(var(--spacing) * 3);
        line-height: calc(var(--spacing) * 3);
    }

    .leading-5 {
        --tw-leading: calc(var(--spacing) * 5);
        line-height: calc(var(--spacing) * 5);
    }

    .leading-6 {
        --tw-leading: calc(var(--spacing) * 6);
        line-height: calc(var(--spacing) * 6);
    }

    .leading-7 {
        --tw-leading: calc(var(--spacing) * 7);
        line-height: calc(var(--spacing) * 7);
    }

    .leading-8 {
        --tw-leading: calc(var(--spacing) * 8);
        line-height: calc(var(--spacing) * 8);
    }

    .leading-9 {
        --tw-leading: calc(var(--spacing) * 9);
        line-height: calc(var(--spacing) * 9);
    }

    .leading-loose {
        --tw-leading: var(--leading-loose);
        line-height: var(--leading-loose);
    }

    .leading-none {
        --tw-leading: 1;
        line-height: 1;
    }

    .leading-relaxed {
        --tw-leading: var(--leading-relaxed);
        line-height: var(--leading-relaxed);
    }

    .font-black {
        --tw-font-weight: var(--font-weight-black);
        font-weight: var(--font-weight-black);
    }

    .font-bold {
        --tw-font-weight: var(--font-weight-bold);
        font-weight: var(--font-weight-bold);
    }

    .font-extrabold {
        --tw-font-weight: var(--font-weight-extrabold);
        font-weight: var(--font-weight-extrabold);
    }

    .font-light {
        --tw-font-weight: var(--font-weight-light);
        font-weight: var(--font-weight-light);
    }

    .font-medium {
        --tw-font-weight: var(--font-weight-medium);
        font-weight: var(--font-weight-medium);
    }

    .font-normal {
        --tw-font-weight: var(--font-weight-normal);
        font-weight: var(--font-weight-normal);
    }

    .font-semibold {
        --tw-font-weight: var(--font-weight-semibold);
        font-weight: var(--font-weight-semibold);
    }

    .tracking-tight {
        --tw-tracking: var(--tracking-tight);
        letter-spacing: var(--tracking-tight);
    }

    .tracking-wide {
        --tw-tracking: var(--tracking-wide);
        letter-spacing: var(--tracking-wide);
    }

    .tracking-wider {
        --tw-tracking: var(--tracking-wider);
        letter-spacing: var(--tracking-wider);
    }

    .text-balance {
        text-wrap: balance;
    }

    .text-nowrap {
        text-wrap: nowrap;
    }

    .text-pretty {
        text-wrap: pretty;
    }

    .text-wrap {
        text-wrap: wrap;
    }

    .break-normal {
        overflow-wrap: normal;
        word-break: normal;
    }

    .break-words {
        overflow-wrap: break-word;
    }

    .break-all {
        word-break: break-all;
    }

    .break-keep {
        word-break: keep-all;
    }

    .overflow-ellipsis {
        text-overflow: ellipsis;
    }

    .text-clip {
        text-overflow: clip;
    }

    .text-ellipsis {
        text-overflow: ellipsis;
    }

    .hyphens-auto {
        -webkit-hyphens: auto;
        hyphens: auto;
    }

    .hyphens-manual {
        -webkit-hyphens: manual;
        hyphens: manual;
    }

    .hyphens-none {
        -webkit-hyphens: none;
        hyphens: none;
    }

    .whitespace-break-spaces {
        white-space: break-spaces;
    }

    .whitespace-normal {
        white-space: normal;
    }

    .whitespace-nowrap {
        white-space: nowrap;
    }

    .whitespace-pre {
        white-space: pre;
    }

    .whitespace-pre-line {
        white-space: pre-line;
    }

    .whitespace-pre-wrap {
        white-space: pre-wrap;
    }

    .\[color\:red\] {
        color: red;
    }

    .\[color\:red\]\/50 {
        color: color-mix(in oklab, red 50%, transparent);
    }

    .\[color\:red\]\/50\! {
        color: color-mix(in oklab, red 50%, transparent) !important;
    }

    .text-blue-500 {
        color: var(--color-blue-500);
    }

    .text-blue-600 {
        color: var(--color-blue-600);
    }

    .text-blue-700 {
        color: var(--color-blue-700);
    }

    .text-blue-800 {
        color: var(--color-blue-800);
    }

    .text-danger {
        color: var(--color-danger);
    }

    .text-dark {
        color: var(--color-dark);
    }

    .text-gray-100 {
        color: var(--color-gray-100);
    }

    .text-gray-200 {
        color: var(--color-gray-200);
    }

    .text-gray-300 {
        color: var(--color-gray-300);
    }

    .text-gray-400 {
        color: var(--color-gray-400);
    }

    .text-gray-500 {
        color: var(--color-gray-500);
    }

    .text-gray-600 {
        color: var(--color-gray-600);
    }

    .text-gray-700 {
        color: var(--color-gray-700);
    }

    .text-gray-800 {
        color: var(--color-gray-800);
    }

    .text-gray-900 {
        color: var(--color-gray-900);
    }

    .text-green-100 {
        color: var(--color-green-100);
    }

    .text-green-500 {
        color: var(--color-green-500);
    }

    .text-green-600 {
        color: var(--color-green-600);
    }

    .text-green-700 {
        color: var(--color-green-700);
    }

    .text-green-800 {
        color: var(--color-green-800);
    }

    .text-neutral-500 {
        color: var(--color-neutral-500);
    }

    .text-neutral-600 {
        color: var(--color-neutral-600);
    }

    .text-neutral-700 {
        color: var(--color-neutral-700);
    }

    .text-orange-300 {
        color: var(--color-orange-300);
    }

    .text-orange-400 {
        color: var(--color-orange-400);
    }

    .text-orange-600 {
        color: var(--color-orange-600);
    }

    .text-primary {
        color: var(--color-primary);
    }

    .text-primary-100 {
        color: var(--color-primary-100);
    }

    .text-primary-200 {
        color: var(--color-primary-200);
    }

    .text-primary-300 {
        color: var(--color-primary-300);
    }

    .text-primary-400 {
        color: var(--color-primary-400);
    }

    .text-primary-500 {
        color: var(--color-primary-500);
    }

    .text-primary-600 {
        color: var(--color-primary-600);
    }

    .text-primary-700 {
        color: var(--color-primary-700);
    }

    .text-primary-800 {
        color: var(--color-primary-800);
    }

    .text-primary-900 {
        color: var(--color-primary-900);
    }

    .text-primary-light {
        color: var(--color-primary-light);
    }

    .text-purple-500 {
        color: var(--color-purple-500);
    }

    .text-purple-600 {
        color: var(--color-purple-600);
    }

    .text-purple-800 {
        color: var(--color-purple-800);
    }

    .text-red-100 {
        color: var(--color-red-100);
    }

    .text-red-500 {
        color: var(--color-red-500);
    }

    .text-red-600 {
        color: var(--color-red-600);
    }

    .text-red-700 {
        color: var(--color-red-700);
    }

    .text-red-800 {
        color: var(--color-red-800);
    }

    .text-red-950 {
        color: var(--color-red-950);
    }

    .text-rose-600 {
        color: var(--color-rose-600);
    }

    .text-secondary {
        color: var(--color-secondary);
    }

    .text-secondary-400 {
        color: var(--color-secondary-400);
    }

    .text-secondary-500 {
        color: var(--color-secondary-500);
    }

    .text-secondary-600 {
        color: var(--color-secondary-600);
    }

    .text-secondary-light {
        color: var(--color-secondary-light);
    }

    .text-success {
        color: var(--color-success);
    }

    .text-text-primary-light {
        color: var(--color-text-primary-light);
    }

    .text-warning {
        color: var(--color-warning);
    }

    .text-white {
        color: var(--color-white);
    }

    .text-yellow-400 {
        color: var(--color-yellow-400);
    }

    .text-yellow-500 {
        color: var(--color-yellow-500);
    }

    .text-yellow-600 {
        color: var(--color-yellow-600);
    }

    .text-yellow-700 {
        color: var(--color-yellow-700);
    }

    .text-yellow-800 {
        color: var(--color-yellow-800);
    }

    .text-zinc-400 {
        color: var(--color-zinc-400);
    }

    .text-zinc-500 {
        color: var(--color-zinc-500);
    }

    .text-zinc-800 {
        color: var(--color-zinc-800);
    }

    .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;
    }

    .font-stretch-condensed {
        font-stretch: condensed;
    }

    .font-stretch-expanded {
        font-stretch: expanded;
    }

    .font-stretch-extra-condensed {
        font-stretch: extra-condensed;
    }

    .font-stretch-extra-expanded {
        font-stretch: extra-expanded;
    }

    .font-stretch-normal {
        font-stretch: normal;
    }

    .font-stretch-semi-condensed {
        font-stretch: semi-condensed;
    }

    .font-stretch-semi-expanded {
        font-stretch: semi-expanded;
    }

    .font-stretch-ultra-condensed {
        font-stretch: ultra-condensed;
    }

    .font-stretch-ultra-expanded {
        font-stretch: ultra-expanded;
    }

    .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,);
    }

    .normal-nums {
        font-variant-numeric: normal;
    }

    .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,);
    }

    .line-through {
        text-decoration-line: line-through;
    }

    .no-underline {
        text-decoration-line: none;
    }

    .overline {
        text-decoration-line: overline;
    }

    .underline {
        text-decoration-line: underline;
    }

    .decoration-dashed {
        text-decoration-style: dashed;
    }

    .decoration-dotted {
        text-decoration-style: dotted;
    }

    .decoration-double {
        text-decoration-style: double;
    }

    .decoration-solid {
        text-decoration-style: solid;
    }

    .decoration-wavy {
        text-decoration-style: wavy;
    }

    .decoration-auto {
        text-decoration-thickness: auto;
    }

    .decoration-from-font {
        text-decoration-thickness: from-font;
    }

    .underline-offset-auto {
        text-underline-offset: auto;
    }

    .antialiased {
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }

    .subpixel-antialiased {
        -webkit-font-smoothing: auto;
        -moz-osx-font-smoothing: auto;
    }

    .\!placeholder-gray-100 {
        &::placeholder {
            color: var(--color-gray-100) !important;
        }
    }

    .placeholder-gray-300 {
        &::placeholder {
            color: var(--color-gray-300);
        }
    }

    .placeholder-gray-400 {
        &::placeholder {
            color: var(--color-gray-400);
        }
    }

    .placeholder-gray-500 {
        &::placeholder {
            color: var(--color-gray-500);
        }
    }

    .accent-auto {
        accent-color: auto;
    }

    .scheme-dark {
        color-scheme: dark;
    }

    .scheme-light {
        color-scheme: light;
    }

    .scheme-light-dark {
        color-scheme: light dark;
    }

    .scheme-normal {
        color-scheme: normal;
    }

    .scheme-only-dark {
        color-scheme: only dark;
    }

    .scheme-only-light {
        color-scheme: only light;
    }

    .opacity-0 {
        opacity: 0%;
    }

    .opacity-50 {
        opacity: 50%;
    }

    .opacity-60 {
        opacity: 60%;
    }

    .opacity-70 {
        opacity: 70%;
    }

    .opacity-75 {
        opacity: 75%;
    }

    .opacity-80 {
        opacity: 80%;
    }

    .opacity-90 {
        opacity: 90%;
    }

    .opacity-100 {
        opacity: 100%;
    }

    .mix-blend-multiply {
        mix-blend-mode: multiply;
    }

    .mix-blend-plus-darker {
        mix-blend-mode: plus-darker;
    }

    .mix-blend-plus-lighter {
        mix-blend-mode: plus-lighter;
    }

    .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 {
        --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);
    }

    .shadow {
        --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }

    .shadow-inner {
        --tw-shadow: inset 0 2px 4px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }

    .shadow-lg {
        --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }

    .shadow-md {
        --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }

    .shadow-sm {
        --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }

    .shadow-soft {
        --tw-shadow: 0 4px 24px 0 var(--tw-shadow-color, rgba(0, 0, 0, 0.08));
        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, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }

    .shadow-initial {
        --tw-shadow-color: initial;
    }

    .shadow-primary-200 {
        --tw-shadow-color: var(--color-primary-200);
    }

    .shadow-primary-500\/20 {
        --tw-shadow-color: color-mix(in oklab, var(--color-primary-500) 20%, transparent);
    }

    .inset-shadow-initial {
        --tw-inset-shadow-color: initial;
    }

    .outline-hidden {
        outline-style: none;

        @media (forced-colors: active) {
            outline: 2px solid transparent;
            outline-offset: 2px;
        }
    }

    .outline {
        outline-style: var(--tw-outline-style);
        outline-width: 1px;
    }

    .outline-0 {
        outline-style: var(--tw-outline-style);
        outline-width: 0px;
    }

    .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-none {
        --tw-blur: ;
        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: drop-shadow(0 1px 2px rgb(0 0 0 / 0.1)) drop-shadow(0 1px 1px rgb(0 0 0 / 0.06));
        filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
    }

    .drop-shadow-lg {
        --tw-drop-shadow: drop-shadow(var(--drop-shadow-lg));
        filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
    }

    .drop-shadow-md {
        --tw-drop-shadow: drop-shadow(var(--drop-shadow-md));
        filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
    }

    .drop-shadow-none {
        --tw-drop-shadow: ;
        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-sm {
        --tw-drop-shadow: drop-shadow(var(--drop-shadow-sm));
        filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
    }

    .drop-shadow-xl {
        --tw-drop-shadow: drop-shadow(var(--drop-shadow-xl));
        filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
    }

    .grayscale {
        --tw-grayscale: grayscale(100%);
        filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
    }

    .invert {
        --tw-invert: invert(100%);
        filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
    }

    .sepia {
        --tw-sepia: sepia(100%);
        filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
    }

    .\!filter {
        filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,) !important;
    }

    .filter {
        filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
    }

    .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-none {
        --tw-backdrop-blur: ;
        -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;
        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;
    }

    .transition-discrete {
        transition-behavior: allow-discrete;
    }

    .transition-normal {
        transition-behavior: normal;
    }

    .duration-200 {
        --tw-duration: 200ms;
        transition-duration: 200ms;
    }

    .duration-300 {
        --tw-duration: 300ms;
        transition-duration: 300ms;
    }

    .duration-500 {
        --tw-duration: 500ms;
        transition-duration: 500ms;
    }

    .ease-in {
        --tw-ease: var(--ease-in);
        transition-timing-function: var(--ease-in);
    }

    .ease-in-out {
        --tw-ease: var(--ease-in-out);
        transition-timing-function: var(--ease-in-out);
    }

    .ease-linear {
        --tw-ease: linear;
        transition-timing-function: linear;
    }

    .ease-out {
        --tw-ease: var(--ease-out);
        transition-timing-function: var(--ease-out);
    }

    .will-change-auto {
        will-change: auto;
    }

    .will-change-contents {
        will-change: contents;
    }

    .will-change-scroll {
        will-change: scroll-position;
    }

    .will-change-transform {
        will-change: transform;
    }

    .contain-content {
        contain: content;
    }

    .contain-inline-size {
        --tw-contain-size: inline-size;
        contain: var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,);
    }

    .contain-layout {
        --tw-contain-layout: layout;
        contain: var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,);
    }

    .contain-none {
        contain: none;
    }

    .contain-paint {
        --tw-contain-paint: paint;
        contain: var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,);
    }

    .contain-size {
        --tw-contain-size: size;
        contain: var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,);
    }

    .contain-strict {
        contain: strict;
    }

    .contain-style {
        --tw-contain-style: style;
        contain: var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,);
    }

    .content-none {
        --tw-content: none;
        content: none;
    }

    .forced-color-adjust-auto {
        forced-color-adjust: auto;
    }

    .forced-color-adjust-none {
        forced-color-adjust: none;
    }

    .\[keywords\:node-addon-api\] {
        keywords: node-addon-api;
    }

    .backface-hidden {
        backface-visibility: hidden;
    }

    .backface-visible {
        backface-visibility: visible;
    }

    .divide-x-reverse {
        :where(& > :not(:last-child)) {
            --tw-divide-x-reverse: 1;
        }
    }

    .duration-initial {
        --tw-duration: initial;
    }

    .ease-initial {
        --tw-ease: initial;
    }

    .outline-dashed {
        --tw-outline-style: dashed;
        outline-style: dashed;
    }

    .outline-dotted {
        --tw-outline-style: dotted;
        outline-style: dotted;
    }

    .outline-double {
        --tw-outline-style: double;
        outline-style: double;
    }

    .outline-none {
        --tw-outline-style: none;
        outline-style: none;
    }

    .outline-solid {
        --tw-outline-style: solid;
        outline-style: solid;
    }

    .perspective-none {
        perspective: none;
    }

    .perspective-origin-bottom {
        perspective-origin: bottom;
    }

    .perspective-origin-bottom-left {
        perspective-origin: bottom left;
    }

    .perspective-origin-bottom-right {
        perspective-origin: bottom right;
    }

    .perspective-origin-center {
        perspective-origin: center;
    }

    .perspective-origin-left {
        perspective-origin: left;
    }

    .perspective-origin-right {
        perspective-origin: right;
    }

    .perspective-origin-top {
        perspective-origin: top;
    }

    .perspective-origin-top-left {
        perspective-origin: top left;
    }

    .perspective-origin-top-right {
        perspective-origin: top right;
    }

    .ring-inset {
        --tw-ring-inset: inset;
    }

    .select-none {
        -webkit-user-select: none;
        user-select: none;
    }

    .transform-3d {
        transform-style: preserve-3d;
    }

    .transform-border {
        transform-box: border-box;
    }

    .transform-content {
        transform-box: content-box;
    }

    .transform-fill {
        transform-box: fill-box;
    }

    .transform-flat {
        transform-style: flat;
    }

    .transform-stroke {
        transform-box: stroke-box;
    }

    .transform-view {
        transform-box: view-box;
    }

    .group-hover\:block {
        &:is(:where(.group):hover *) {
            @media (hover: hover) {
                display: block;
            }
        }
    }

    .group-hover\:bg-primary-light\/20 {
        &:is(:where(.group):hover *) {
            @media (hover: hover) {
                background-color: color-mix(in oklab, var(--color-primary-light) 20%, transparent);
            }
        }
    }

    .group-hover\:bg-secondary-light\/20 {
        &:is(:where(.group):hover *) {
            @media (hover: hover) {
                background-color: color-mix(in oklab, var(--color-secondary-light) 20%, transparent);
            }
        }
    }

    .group-hover\:text-primary-600 {
        &:is(:where(.group):hover *) {
            @media (hover: hover) {
                color: var(--color-primary-600);
            }
        }
    }

    .group-hover\:text-primary-light {
        &:is(:where(.group):hover *) {
            @media (hover: hover) {
                color: var(--color-primary-light);
            }
        }
    }

    .group-hover\:text-secondary-light {
        &:is(:where(.group):hover *) {
            @media (hover: hover) {
                color: var(--color-secondary-light);
            }
        }
    }

    .peer-checked\:block {
        &:is(:where(.peer):checked ~ *) {
            display: block;
        }
    }

    .peer-checked\:border-blue-600 {
        &:is(:where(.peer):checked ~ *) {
            border-color: var(--color-blue-600);
        }
    }

    .peer-checked\:border-primary-500 {
        &:is(:where(.peer):checked ~ *) {
            border-color: var(--color-primary-500);
        }
    }

    .peer-checked\:bg-blue-600 {
        &:is(:where(.peer):checked ~ *) {
            background-color: var(--color-blue-600);
        }
    }

    .peer-checked\:text-gray-900 {
        &:is(:where(.peer):checked ~ *) {
            color: var(--color-gray-900);
        }
    }

    .file\:mr-4 {
        &::file-selector-button {
            margin-right: calc(var(--spacing) * 4);
        }
    }

    .file\:rounded-lg {
        &::file-selector-button {
            border-radius: var(--radius-lg);
        }
    }

    .file\:border-0 {
        &::file-selector-button {
            border-style: var(--tw-border-style);
            border-width: 0px;
        }
    }

    .file\:bg-primary-50 {
        &::file-selector-button {
            background-color: var(--color-primary-50);
        }
    }

    .file\:px-4 {
        &::file-selector-button {
            padding-inline: calc(var(--spacing) * 4);
        }
    }

    .file\:py-2 {
        &::file-selector-button {
            padding-block: calc(var(--spacing) * 2);
        }
    }

    .file\:text-sm {
        &::file-selector-button {
            font-size: var(--text-sm);
            line-height: var(--tw-leading, var(--text-sm--line-height));
        }
    }

    .file\:font-semibold {
        &::file-selector-button {
            --tw-font-weight: var(--font-weight-semibold);
            font-weight: var(--font-weight-semibold);
        }
    }

    .file\:text-primary-700 {
        &::file-selector-button {
            color: var(--color-primary-700);
        }
    }

    .before\:absolute {
        &::before {
            content: var(--tw-content);
            position: absolute;
        }
    }

    .before\:top-1\/2 {
        &::before {
            content: var(--tw-content);
            top: calc(1 / 2 * 100%);
        }
    }

    .before\:top-20 {
        &::before {
            content: var(--tw-content);
            top: calc(var(--spacing) * 20);
        }
    }

    .before\:right-0 {
        &::before {
            content: var(--tw-content);
            right: calc(var(--spacing) * 0);
        }
    }

    .before\:-bottom-5 {
        &::before {
            content: var(--tw-content);
            bottom: calc(var(--spacing) * -5);
        }
    }

    .before\:bottom-0 {
        &::before {
            content: var(--tw-content);
            bottom: calc(var(--spacing) * 0);
        }
    }

    .before\:left-0 {
        &::before {
            content: var(--tw-content);
            left: calc(var(--spacing) * 0);
        }
    }

    .before\:left-1\/2 {
        &::before {
            content: var(--tw-content);
            left: calc(1 / 2 * 100%);
        }
    }

    .before\:z-\[-1\] {
        &::before {
            content: var(--tw-content);
            z-index: -1;
        }
    }

    .before\:size-2 {
        &::before {
            content: var(--tw-content);
            width: calc(var(--spacing) * 2);
            height: calc(var(--spacing) * 2);
        }
    }

    .before\:h-1 {
        &::before {
            content: var(--tw-content);
            height: calc(var(--spacing) * 1);
        }
    }

    .before\:h-0\.5 {
        &::before {
            content: var(--tw-content);
            height: calc(var(--spacing) * 0.5);
        }
    }

    .before\:h-\[320px\] {
        &::before {
            content: var(--tw-content);
            height: 320px;
        }
    }

    .before\:h-px {
        &::before {
            content: var(--tw-content);
            height: 1px;
        }
    }

    .before\:w-22 {
        &::before {
            content: var(--tw-content);
            width: calc(var(--spacing) * 22);
        }
    }

    .before\:w-full {
        &::before {
            content: var(--tw-content);
            width: 100%;
        }
    }

    .before\:-translate-x-1\/2 {
        &::before {
            content: var(--tw-content);
            --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
            translate: var(--tw-translate-x) var(--tw-translate-y);
        }
    }

    .before\:-translate-y-1\/2 {
        &::before {
            content: var(--tw-content);
            --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
            translate: var(--tw-translate-x) var(--tw-translate-y);
        }
    }

    .before\:animate-pulse {
        &::before {
            content: var(--tw-content);
            animation: var(--animate-pulse);
        }
    }

    .before\:rounded {
        &::before {
            content: var(--tw-content);
            border-radius: 0.25rem;
        }
    }

    .before\:rounded-full {
        &::before {
            content: var(--tw-content);
            border-radius: calc(infinity * 1px);
        }
    }

    .before\:rounded-lg {
        &::before {
            content: var(--tw-content);
            border-radius: var(--radius-lg);
        }
    }

    .before\:rounded-l {
        &::before {
            content: var(--tw-content);
            border-top-left-radius: 0.25rem;
            border-bottom-left-radius: 0.25rem;
        }
    }

    .before\:bg-gray-300 {
        &::before {
            content: var(--tw-content);
            background-color: var(--color-gray-300);
        }
    }

    .before\:bg-primary {
        &::before {
            content: var(--tw-content);
            background-color: var(--color-primary);
        }
    }

    .before\:bg-primary-500 {
        &::before {
            content: var(--tw-content);
            background-color: var(--color-primary-500);
        }
    }

    .before\:bg-primary-600 {
        &::before {
            content: var(--tw-content);
            background-color: var(--color-primary-600);
        }
    }

    .before\:bg-gradient-to-b {
        &::before {
            content: var(--tw-content);
            --tw-gradient-position: to bottom in oklab;
            background-image: linear-gradient(var(--tw-gradient-stops));
        }
    }

    .before\:from-orange-300 {
        &::before {
            content: var(--tw-content);
            --tw-gradient-from: var(--color-orange-300);
            --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
        }
    }

    .before\:from-secondary-500 {
        &::before {
            content: var(--tw-content);
            --tw-gradient-from: var(--color-secondary-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));
        }
    }

    .before\:to-transparent {
        &::before {
            content: var(--tw-content);
            --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));
        }
    }

    .after\:absolute {
        &::after {
            content: var(--tw-content);
            position: absolute;
        }
    }

    .after\:right-4 {
        &::after {
            content: var(--tw-content);
            right: calc(var(--spacing) * 4);
        }
    }

    .after\:bottom-0 {
        &::after {
            content: var(--tw-content);
            bottom: calc(var(--spacing) * 0);
        }
    }

    .after\:h-2 {
        &::after {
            content: var(--tw-content);
            height: calc(var(--spacing) * 2);
        }
    }

    .after\:w-40 {
        &::after {
            content: var(--tw-content);
            width: calc(var(--spacing) * 40);
        }
    }

    .after\:rounded-lg {
        &::after {
            content: var(--tw-content);
            border-radius: var(--radius-lg);
        }
    }

    .after\:bg-primary {
        &::after {
            content: var(--tw-content);
            background-color: var(--color-primary);
        }
    }

    .after\:bg-primary-600 {
        &::after {
            content: var(--tw-content);
            background-color: var(--color-primary-600);
        }
    }

    .after\:\!text-xl {
        &::after {
            content: var(--tw-content);
            font-size: var(--text-xl) !important;
            line-height: var(--tw-leading, var(--text-xl--line-height)) !important;
        }
    }

    .after\:text-primary {
        &::after {
            content: var(--tw-content);
            color: var(--color-primary);
        }
    }

    .last\:mb-0 {
        &:last-child {
            margin-bottom: calc(var(--spacing) * 0);
        }
    }

    .last\:mb-20 {
        &:last-child {
            margin-bottom: calc(var(--spacing) * 20);
        }
    }

    .last\:mb-35 {
        &:last-child {
            margin-bottom: calc(var(--spacing) * 35);
        }
    }

    .last\:border-0 {
        &:last-child {
            border-style: var(--tw-border-style);
            border-width: 0px;
        }
    }

    .last\:border-none {
        &:last-child {
            --tw-border-style: none;
            border-style: none;
        }
    }

    .last\:pb-0 {
        &:last-child {
            padding-bottom: calc(var(--spacing) * 0);
        }
    }

    .focus-within\:outline-none {
        &:focus-within {
            --tw-outline-style: none;
            outline-style: none;
        }
    }

    .hover\:-translate-y-2 {
        &:hover {
            @media (hover: hover) {
                --tw-translate-y: calc(var(--spacing) * -2);
                translate: var(--tw-translate-x) var(--tw-translate-y);
            }
        }
    }

    .hover\:border-blue-500 {
        &:hover {
            @media (hover: hover) {
                border-color: var(--color-blue-500);
            }
        }
    }

    .hover\:border-gray-300 {
        &:hover {
            @media (hover: hover) {
                border-color: var(--color-gray-300);
            }
        }
    }

    .hover\:border-green-500 {
        &:hover {
            @media (hover: hover) {
                border-color: var(--color-green-500);
            }
        }
    }

    .hover\:border-primary-300 {
        &:hover {
            @media (hover: hover) {
                border-color: var(--color-primary-300);
            }
        }
    }

    .hover\:border-primary-500 {
        &:hover {
            @media (hover: hover) {
                border-color: var(--color-primary-500);
            }
        }
    }

    .hover\:border-purple-500 {
        &:hover {
            @media (hover: hover) {
                border-color: var(--color-purple-500);
            }
        }
    }

    .hover\:bg-blue-200 {
        &:hover {
            @media (hover: hover) {
                background-color: var(--color-blue-200);
            }
        }
    }

    .hover\:bg-blue-500 {
        &:hover {
            @media (hover: hover) {
                background-color: var(--color-blue-500);
            }
        }
    }

    .hover\:bg-blue-700 {
        &:hover {
            @media (hover: hover) {
                background-color: var(--color-blue-700);
            }
        }
    }

    .hover\:bg-danger\/10 {
        &:hover {
            @media (hover: hover) {
                background-color: color-mix(in oklab, var(--color-danger) 10%, transparent);
            }
        }
    }

    .hover\:bg-danger\/90 {
        &:hover {
            @media (hover: hover) {
                background-color: color-mix(in oklab, var(--color-danger) 90%, transparent);
            }
        }
    }

    .hover\:bg-gray-50 {
        &:hover {
            @media (hover: hover) {
                background-color: var(--color-gray-50);
            }
        }
    }

    .hover\:bg-gray-100 {
        &:hover {
            @media (hover: hover) {
                background-color: var(--color-gray-100);
            }
        }
    }

    .hover\:bg-gray-200 {
        &:hover {
            @media (hover: hover) {
                background-color: var(--color-gray-200);
            }
        }
    }

    .hover\:bg-gray-300 {
        &:hover {
            @media (hover: hover) {
                background-color: var(--color-gray-300);
            }
        }
    }

    .hover\:bg-gray-400 {
        &:hover {
            @media (hover: hover) {
                background-color: var(--color-gray-400);
            }
        }
    }

    .hover\:bg-gray-900 {
        &:hover {
            @media (hover: hover) {
                background-color: var(--color-gray-900);
            }
        }
    }

    .hover\:bg-green-200 {
        &:hover {
            @media (hover: hover) {
                background-color: var(--color-green-200);
            }
        }
    }

    .hover\:bg-green-700 {
        &:hover {
            @media (hover: hover) {
                background-color: var(--color-green-700);
            }
        }
    }

    .hover\:bg-primary-50 {
        &:hover {
            @media (hover: hover) {
                background-color: var(--color-primary-50);
            }
        }
    }

    .hover\:bg-primary-100 {
        &:hover {
            @media (hover: hover) {
                background-color: var(--color-primary-100);
            }
        }
    }

    .hover\:bg-primary-500 {
        &:hover {
            @media (hover: hover) {
                background-color: var(--color-primary-500);
            }
        }
    }

    .hover\:bg-primary-600 {
        &:hover {
            @media (hover: hover) {
                background-color: var(--color-primary-600);
            }
        }
    }

    .hover\:bg-primary-700 {
        &:hover {
            @media (hover: hover) {
                background-color: var(--color-primary-700);
            }
        }
    }

    .hover\:bg-primary\/10 {
        &:hover {
            @media (hover: hover) {
                background-color: color-mix(in oklab, var(--color-primary) 10%, transparent);
            }
        }
    }

    .hover\:bg-primary\/20 {
        &:hover {
            @media (hover: hover) {
                background-color: color-mix(in oklab, var(--color-primary) 20%, transparent);
            }
        }
    }

    .hover\:bg-primary\/85 {
        &:hover {
            @media (hover: hover) {
                background-color: color-mix(in oklab, var(--color-primary) 85%, transparent);
            }
        }
    }

    .hover\:bg-primary\/90 {
        &:hover {
            @media (hover: hover) {
                background-color: color-mix(in oklab, var(--color-primary) 90%, transparent);
            }
        }
    }

    .hover\:bg-red-50 {
        &:hover {
            @media (hover: hover) {
                background-color: var(--color-red-50);
            }
        }
    }

    .hover\:bg-red-200 {
        &:hover {
            @media (hover: hover) {
                background-color: var(--color-red-200);
            }
        }
    }

    .hover\:bg-red-700 {
        &:hover {
            @media (hover: hover) {
                background-color: var(--color-red-700);
            }
        }
    }

    .hover\:bg-secondary {
        &:hover {
            @media (hover: hover) {
                background-color: var(--color-secondary);
            }
        }
    }

    .hover\:bg-secondary-50 {
        &:hover {
            @media (hover: hover) {
                background-color: var(--color-secondary-50);
            }
        }
    }

    .hover\:bg-secondary-400 {
        &:hover {
            @media (hover: hover) {
                background-color: var(--color-secondary-400);
            }
        }
    }

    .hover\:bg-white {
        &:hover {
            @media (hover: hover) {
                background-color: var(--color-white);
            }
        }
    }

    .hover\:bg-white\/30 {
        &:hover {
            @media (hover: hover) {
                background-color: color-mix(in oklab, var(--color-white) 30%, transparent);
            }
        }
    }

    .hover\:bg-yellow-200 {
        &:hover {
            @media (hover: hover) {
                background-color: var(--color-yellow-200);
            }
        }
    }

    .hover\:bg-zinc-800 {
        &:hover {
            @media (hover: hover) {
                background-color: var(--color-zinc-800);
            }
        }
    }

    .hover\:text-blue-400 {
        &:hover {
            @media (hover: hover) {
                color: var(--color-blue-400);
            }
        }
    }

    .hover\:text-blue-500 {
        &:hover {
            @media (hover: hover) {
                color: var(--color-blue-500);
            }
        }
    }

    .hover\:text-blue-600 {
        &:hover {
            @media (hover: hover) {
                color: var(--color-blue-600);
            }
        }
    }

    .hover\:text-blue-700 {
        &:hover {
            @media (hover: hover) {
                color: var(--color-blue-700);
            }
        }
    }

    .hover\:text-blue-800 {
        &:hover {
            @media (hover: hover) {
                color: var(--color-blue-800);
            }
        }
    }

    .hover\:text-blue-900 {
        &:hover {
            @media (hover: hover) {
                color: var(--color-blue-900);
            }
        }
    }

    .hover\:text-danger {
        &:hover {
            @media (hover: hover) {
                color: var(--color-danger);
            }
        }
    }

    .hover\:text-danger\/80 {
        &:hover {
            @media (hover: hover) {
                color: color-mix(in oklab, var(--color-danger) 80%, transparent);
            }
        }
    }

    .hover\:text-gray-400 {
        &:hover {
            @media (hover: hover) {
                color: var(--color-gray-400);
            }
        }
    }

    .hover\:text-gray-500 {
        &:hover {
            @media (hover: hover) {
                color: var(--color-gray-500);
            }
        }
    }

    .hover\:text-gray-600 {
        &:hover {
            @media (hover: hover) {
                color: var(--color-gray-600);
            }
        }
    }

    .hover\:text-gray-700 {
        &:hover {
            @media (hover: hover) {
                color: var(--color-gray-700);
            }
        }
    }

    .hover\:text-gray-800 {
        &:hover {
            @media (hover: hover) {
                color: var(--color-gray-800);
            }
        }
    }

    .hover\:text-gray-900 {
        &:hover {
            @media (hover: hover) {
                color: var(--color-gray-900);
            }
        }
    }

    .hover\:text-green-700 {
        &:hover {
            @media (hover: hover) {
                color: var(--color-green-700);
            }
        }
    }

    .hover\:text-primary {
        &:hover {
            @media (hover: hover) {
                color: var(--color-primary);
            }
        }
    }

    .hover\:text-primary-500 {
        &:hover {
            @media (hover: hover) {
                color: var(--color-primary-500);
            }
        }
    }

    .hover\:text-primary-600 {
        &:hover {
            @media (hover: hover) {
                color: var(--color-primary-600);
            }
        }
    }

    .hover\:text-primary-700 {
        &:hover {
            @media (hover: hover) {
                color: var(--color-primary-700);
            }
        }
    }

    .hover\:text-primary-800 {
        &:hover {
            @media (hover: hover) {
                color: var(--color-primary-800);
            }
        }
    }

    .hover\:text-primary-900 {
        &:hover {
            @media (hover: hover) {
                color: var(--color-primary-900);
            }
        }
    }

    .hover\:text-primary\/80 {
        &:hover {
            @media (hover: hover) {
                color: color-mix(in oklab, var(--color-primary) 80%, transparent);
            }
        }
    }

    .hover\:text-primary\/90 {
        &:hover {
            @media (hover: hover) {
                color: color-mix(in oklab, var(--color-primary) 90%, transparent);
            }
        }
    }

    .hover\:text-red-500 {
        &:hover {
            @media (hover: hover) {
                color: var(--color-red-500);
            }
        }
    }

    .hover\:text-red-600 {
        &:hover {
            @media (hover: hover) {
                color: var(--color-red-600);
            }
        }
    }

    .hover\:text-red-700 {
        &:hover {
            @media (hover: hover) {
                color: var(--color-red-700);
            }
        }
    }

    .hover\:text-red-800 {
        &:hover {
            @media (hover: hover) {
                color: var(--color-red-800);
            }
        }
    }

    .hover\:text-secondary-900 {
        &:hover {
            @media (hover: hover) {
                color: var(--color-secondary-900);
            }
        }
    }

    .hover\:text-white {
        &:hover {
            @media (hover: hover) {
                color: var(--color-white);
            }
        }
    }

    .hover\:text-yellow-500 {
        &:hover {
            @media (hover: hover) {
                color: var(--color-yellow-500);
            }
        }
    }

    .hover\:underline {
        &:hover {
            @media (hover: hover) {
                text-decoration-line: underline;
            }
        }
    }

    .hover\:opacity-90 {
        &:hover {
            @media (hover: hover) {
                opacity: 90%;
            }
        }
    }

    .hover\:shadow-lg {
        &:hover {
            @media (hover: hover) {
                --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
                box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
            }
        }
    }

    .hover\:shadow-md {
        &:hover {
            @media (hover: hover) {
                --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
                box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
            }
        }
    }

    .hover\:shadow-xl {
        &:hover {
            @media (hover: hover) {
                --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
                box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
            }
        }
    }

    .hover\:shadow-primary-300 {
        &:hover {
            @media (hover: hover) {
                --tw-shadow-color: var(--color-primary-300);
            }
        }
    }

    .hover\:drop-shadow-lg {
        &:hover {
            @media (hover: hover) {
                --tw-drop-shadow: drop-shadow(var(--drop-shadow-lg));
                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,);
            }
        }
    }

    .hover\:drop-shadow-sm {
        &:hover {
            @media (hover: hover) {
                --tw-drop-shadow: drop-shadow(var(--drop-shadow-sm));
                filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
            }
        }
    }

    .hover\:file\:bg-primary-100 {
        &:hover {
            @media (hover: hover) {
                &::file-selector-button {
                    background-color: var(--color-primary-100);
                }
            }
        }
    }

    .focus\:border-blue-500 {
        &:focus {
            border-color: var(--color-blue-500);
        }
    }

    .focus\:border-primary {
        &:focus {
            border-color: var(--color-primary);
        }
    }

    .focus\:border-primary-300 {
        &:focus {
            border-color: var(--color-primary-300);
        }
    }

    .focus\:border-primary-500 {
        &:focus {
            border-color: var(--color-primary-500);
        }
    }

    .focus\:border-transparent {
        &:focus {
            border-color: transparent;
        }
    }

    .focus\:bg-gray-100 {
        &:focus {
            background-color: var(--color-gray-100);
        }
    }

    .focus\:bg-gray-300 {
        &:focus {
            background-color: var(--color-gray-300);
        }
    }

    .focus\:ring-0 {
        &: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);
        }
    }

    .focus\:ring-1 {
        &:focus {
            --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentColor);
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
        }
    }

    .focus\:ring-2 {
        &:focus {
            --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentColor);
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
        }
    }

    .focus\:ring-blue-500 {
        &:focus {
            --tw-ring-color: var(--color-blue-500);
        }
    }

    .focus\:ring-danger {
        &:focus {
            --tw-ring-color: var(--color-danger);
        }
    }

    .focus\:ring-primary {
        &:focus {
            --tw-ring-color: var(--color-primary);
        }
    }

    .focus\:ring-primary-400 {
        &:focus {
            --tw-ring-color: var(--color-primary-400);
        }
    }

    .focus\:ring-primary-500 {
        &:focus {
            --tw-ring-color: var(--color-primary-500);
        }
    }

    .focus\:ring-primary-light {
        &:focus {
            --tw-ring-color: var(--color-primary-light);
        }
    }

    .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 {
            outline-style: none;

            @media (forced-colors: active) {
                outline: 2px solid transparent;
                outline-offset: 2px;
            }
        }
    }

    .focus\:outline-none {
        &:focus {
            --tw-outline-style: none;
            outline-style: none;
        }
    }

    .disabled\:pointer-events-none {
        &:disabled {
            pointer-events: none;
        }
    }

    .disabled\:opacity-50 {
        &:disabled {
            opacity: 50%;
        }
    }

    .max-xl\:min-w-70 {
        @media (width < 80rem) {
            min-width: calc(var(--spacing) * 70);
        }
    }

    .max-lg\:hidden {
        @media (width < 64rem) {
            display: none;
        }
    }

    .max-sm\:mb-4 {
        @media (width < 40rem) {
            margin-bottom: calc(var(--spacing) * 4);
        }
    }

    .max-sm\:hidden {
        @media (width < 40rem) {
            display: none;
        }
    }

    .max-sm\:w-full {
        @media (width < 40rem) {
            width: 100%;
        }
    }

    .max-sm\:min-w-20 {
        @media (width < 40rem) {
            min-width: calc(var(--spacing) * 20);
        }
    }

    .max-sm\:min-w-150 {
        @media (width < 40rem) {
            min-width: calc(var(--spacing) * 150);
        }
    }

    .max-sm\:space-y-3 {
        @media (width < 40rem) {
            :where(& > :not(:last-child)) {
                --tw-space-y-reverse: 0;
                margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
                margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
            }
        }
    }

    .max-sm\:overflow-x-scroll {
        @media (width < 40rem) {
            overflow-x: scroll;
        }
    }

    .sm\:col-span-1 {
        @media (width >= 40rem) {
            grid-column: span 1 / span 1;
        }
    }

    .sm\:col-span-2 {
        @media (width >= 40rem) {
            grid-column: span 2 / span 2;
        }
    }

    .sm\:col-span-3 {
        @media (width >= 40rem) {
            grid-column: span 3 / span 3;
        }
    }

    .sm\:col-span-4 {
        @media (width >= 40rem) {
            grid-column: span 4 / span 4;
        }
    }

    .sm\:col-span-5 {
        @media (width >= 40rem) {
            grid-column: span 5 / span 5;
        }
    }

    .sm\:col-span-6 {
        @media (width >= 40rem) {
            grid-column: span 6 / span 6;
        }
    }

    .sm\:mx-0 {
        @media (width >= 40rem) {
            margin-inline: calc(var(--spacing) * 0);
        }
    }

    .sm\:my-8 {
        @media (width >= 40rem) {
            margin-block: calc(var(--spacing) * 8);
        }
    }

    .sm\:ms-2 {
        @media (width >= 40rem) {
            margin-inline-start: calc(var(--spacing) * 2);
        }
    }

    .sm\:ms-3 {
        @media (width >= 40rem) {
            margin-inline-start: calc(var(--spacing) * 3);
        }
    }

    .sm\:ms-4 {
        @media (width >= 40rem) {
            margin-inline-start: calc(var(--spacing) * 4);
        }
    }

    .sm\:me-3 {
        @media (width >= 40rem) {
            margin-inline-end: calc(var(--spacing) * 3);
        }
    }

    .sm\:mt-0 {
        @media (width >= 40rem) {
            margin-top: calc(var(--spacing) * 0);
        }
    }

    .sm\:mr-3 {
        @media (width >= 40rem) {
            margin-right: calc(var(--spacing) * 3);
        }
    }

    .sm\:mr-4 {
        @media (width >= 40rem) {
            margin-right: calc(var(--spacing) * 4);
        }
    }

    .sm\:mb-0 {
        @media (width >= 40rem) {
            margin-bottom: calc(var(--spacing) * 0);
        }
    }

    .sm\:block {
        @media (width >= 40rem) {
            display: block;
        }
    }

    .sm\:flex {
        @media (width >= 40rem) {
            display: flex;
        }
    }

    .sm\:inline-block {
        @media (width >= 40rem) {
            display: inline-block;
        }
    }

    .sm\:inline-flex {
        @media (width >= 40rem) {
            display: inline-flex;
        }
    }

    .sm\:h-10 {
        @media (width >= 40rem) {
            height: calc(var(--spacing) * 10);
        }
    }

    .sm\:h-screen {
        @media (width >= 40rem) {
            height: 100vh;
        }
    }

    .sm\:w-10 {
        @media (width >= 40rem) {
            width: calc(var(--spacing) * 10);
        }
    }

    .sm\:w-100 {
        @media (width >= 40rem) {
            width: calc(var(--spacing) * 100);
        }
    }

    .sm\:w-auto {
        @media (width >= 40rem) {
            width: auto;
        }
    }

    .sm\:w-full {
        @media (width >= 40rem) {
            width: 100%;
        }
    }

    .sm\:max-w-lg {
        @media (width >= 40rem) {
            max-width: var(--container-lg);
        }
    }

    .sm\:grid-cols-2 {
        @media (width >= 40rem) {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }
    }

    .sm\:grid-cols-4 {
        @media (width >= 40rem) {
            grid-template-columns: repeat(4, minmax(0, 1fr));
        }
    }

    .sm\:flex-row {
        @media (width >= 40rem) {
            flex-direction: row;
        }
    }

    .sm\:flex-row-reverse {
        @media (width >= 40rem) {
            flex-direction: row-reverse;
        }
    }

    .sm\:items-start {
        @media (width >= 40rem) {
            align-items: flex-start;
        }
    }

    .sm\:justify-end {
        @media (width >= 40rem) {
            justify-content: flex-end;
        }
    }

    .sm\:space-y-0 {
        @media (width >= 40rem) {
            :where(& > :not(:last-child)) {
                --tw-space-y-reverse: 0;
                margin-block-start: calc(calc(var(--spacing) * 0) * var(--tw-space-y-reverse));
                margin-block-end: calc(calc(var(--spacing) * 0) * calc(1 - var(--tw-space-y-reverse)));
            }
        }
    }

    .sm\:space-x-4 {
        @media (width >= 40rem) {
            :where(& > :not(:last-child)) {
                --tw-space-x-reverse: 0;
                margin-inline-start: calc(calc(var(--spacing) * 4) * var(--tw-space-x-reverse));
                margin-inline-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-x-reverse)));
            }
        }
    }

    .sm\:divide-neutral-600 {
        @media (width >= 40rem) {
            :where(& > :not(:last-child)) {
                border-color: var(--color-neutral-600);
            }
        }
    }

    .sm\:p-0 {
        @media (width >= 40rem) {
            padding: calc(var(--spacing) * 0);
        }
    }

    .sm\:p-4 {
        @media (width >= 40rem) {
            padding: calc(var(--spacing) * 4);
        }
    }

    .sm\:p-6 {
        @media (width >= 40rem) {
            padding: calc(var(--spacing) * 6);
        }
    }

    .sm\:px-6 {
        @media (width >= 40rem) {
            padding-inline: calc(var(--spacing) * 6);
        }
    }

    .sm\:pr-24 {
        @media (width >= 40rem) {
            padding-right: calc(var(--spacing) * 24);
        }
    }

    .sm\:pb-4 {
        @media (width >= 40rem) {
            padding-bottom: calc(var(--spacing) * 4);
        }
    }

    .sm\:text-end {
        @media (width >= 40rem) {
            text-align: end;
        }
    }

    .sm\:text-right {
        @media (width >= 40rem) {
            text-align: right;
        }
    }

    .sm\:align-middle {
        @media (width >= 40rem) {
            vertical-align: middle;
        }
    }

    .sm\:text-base {
        @media (width >= 40rem) {
            font-size: var(--text-base);
            line-height: var(--tw-leading, var(--text-base--line-height));
        }
    }

    .sm\:text-sm {
        @media (width >= 40rem) {
            font-size: var(--text-sm);
            line-height: var(--tw-leading, var(--text-sm--line-height));
        }
    }

    .md\:order-last {
        @media (width >= 48rem) {
            order: 9999;
        }
    }

    .md\:col-span-1 {
        @media (width >= 48rem) {
            grid-column: span 1 / span 1;
        }
    }

    .md\:col-span-2 {
        @media (width >= 48rem) {
            grid-column: span 2 / span 2;
        }
    }

    .md\:col-span-3 {
        @media (width >= 48rem) {
            grid-column: span 3 / span 3;
        }
    }

    .md\:col-span-4 {
        @media (width >= 48rem) {
            grid-column: span 4 / span 4;
        }
    }

    .md\:col-span-6 {
        @media (width >= 48rem) {
            grid-column: span 6 / span 6;
        }
    }

    .md\:col-span-9 {
        @media (width >= 48rem) {
            grid-column: span 9 / span 9;
        }
    }

    .md\:ms-2 {
        @media (width >= 48rem) {
            margin-inline-start: calc(var(--spacing) * 2);
        }
    }

    .md\:ms-5 {
        @media (width >= 48rem) {
            margin-inline-start: calc(var(--spacing) * 5);
        }
    }

    .md\:me-5 {
        @media (width >= 48rem) {
            margin-inline-end: calc(var(--spacing) * 5);
        }
    }

    .md\:mt-0 {
        @media (width >= 48rem) {
            margin-top: calc(var(--spacing) * 0);
        }
    }

    .md\:mt-16 {
        @media (width >= 48rem) {
            margin-top: calc(var(--spacing) * 16);
        }
    }

    .md\:mr-6 {
        @media (width >= 48rem) {
            margin-right: calc(var(--spacing) * 6);
        }
    }

    .md\:mb-0 {
        @media (width >= 48rem) {
            margin-bottom: calc(var(--spacing) * 0);
        }
    }

    .md\:mb-16 {
        @media (width >= 48rem) {
            margin-bottom: calc(var(--spacing) * 16);
        }
    }

    .md\:hidden {
        @media (width >= 48rem) {
            display: none;
        }
    }

    .md\:h-12 {
        @media (width >= 48rem) {
            height: calc(var(--spacing) * 12);
        }
    }

    .md\:h-96 {
        @media (width >= 48rem) {
            height: calc(var(--spacing) * 96);
        }
    }

    .md\:w-1\/2 {
        @media (width >= 48rem) {
            width: calc(1 / 2 * 100%);
        }
    }

    .md\:w-40 {
        @media (width >= 48rem) {
            width: calc(var(--spacing) * 40);
        }
    }

    .md\:w-64 {
        @media (width >= 48rem) {
            width: calc(var(--spacing) * 64);
        }
    }

    .md\:w-auto {
        @media (width >= 48rem) {
            width: auto;
        }
    }

    .md\:max-w-md {
        @media (width >= 48rem) {
            max-width: var(--container-md);
        }
    }

    .md\:grid-cols-2 {
        @media (width >= 48rem) {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }
    }

    .md\:grid-cols-3 {
        @media (width >= 48rem) {
            grid-template-columns: repeat(3, minmax(0, 1fr));
        }
    }

    .md\:grid-cols-4 {
        @media (width >= 48rem) {
            grid-template-columns: repeat(4, minmax(0, 1fr));
        }
    }

    .md\:grid-cols-6 {
        @media (width >= 48rem) {
            grid-template-columns: repeat(6, minmax(0, 1fr));
        }
    }

    .md\:flex-row {
        @media (width >= 48rem) {
            flex-direction: row;
        }
    }

    .md\:items-center {
        @media (width >= 48rem) {
            align-items: center;
        }
    }

    .md\:justify-between {
        @media (width >= 48rem) {
            justify-content: space-between;
        }
    }

    .md\:justify-end {
        @media (width >= 48rem) {
            justify-content: flex-end;
        }
    }

    .md\:justify-start {
        @media (width >= 48rem) {
            justify-content: flex-start;
        }
    }

    .md\:space-y-0 {
        @media (width >= 48rem) {
            :where(& > :not(:last-child)) {
                --tw-space-y-reverse: 0;
                margin-block-start: calc(calc(var(--spacing) * 0) * var(--tw-space-y-reverse));
                margin-block-end: calc(calc(var(--spacing) * 0) * calc(1 - var(--tw-space-y-reverse)));
            }
        }
    }

    .md\:space-x-2 {
        @media (width >= 48rem) {
            :where(& > :not(:last-child)) {
                --tw-space-x-reverse: 0;
                margin-inline-start: calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));
                margin-inline-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)));
            }
        }
    }

    .md\:space-x-4 {
        @media (width >= 48rem) {
            :where(& > :not(:last-child)) {
                --tw-space-x-reverse: 0;
                margin-inline-start: calc(calc(var(--spacing) * 4) * var(--tw-space-x-reverse));
                margin-inline-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-x-reverse)));
            }
        }
    }

    .md\:overflow-x-auto {
        @media (width >= 48rem) {
            overflow-x: auto;
        }
    }

    .md\:p-8 {
        @media (width >= 48rem) {
            padding: calc(var(--spacing) * 8);
        }
    }

    .md\:p-12 {
        @media (width >= 48rem) {
            padding: calc(var(--spacing) * 12);
        }
    }

    .md\:text-left {
        @media (width >= 48rem) {
            text-align: left;
        }
    }

    .md\:text-right {
        @media (width >= 48rem) {
            text-align: right;
        }
    }

    .md\:text-3xl {
        @media (width >= 48rem) {
            font-size: var(--text-3xl);
            line-height: var(--tw-leading, var(--text-3xl--line-height));
        }
    }

    .md\:text-4xl {
        @media (width >= 48rem) {
            font-size: var(--text-4xl);
            line-height: var(--tw-leading, var(--text-4xl--line-height));
        }
    }

    .md\:text-5xl {
        @media (width >= 48rem) {
            font-size: var(--text-5xl);
            line-height: var(--tw-leading, var(--text-5xl--line-height));
        }
    }

    .lg\:order-1 {
        @media (width >= 64rem) {
            order: 1;
        }
    }

    .lg\:order-2 {
        @media (width >= 64rem) {
            order: 2;
        }
    }

    .lg\:\!col-span-2 {
        @media (width >= 64rem) {
            grid-column: span 2 / span 2 !important;
        }
    }

    .lg\:\!col-span-3 {
        @media (width >= 64rem) {
            grid-column: span 3 / span 3 !important;
        }
    }

    .lg\:\!col-span-4 {
        @media (width >= 64rem) {
            grid-column: span 4 / span 4 !important;
        }
    }

    .lg\:col-span-1 {
        @media (width >= 64rem) {
            grid-column: span 1 / span 1;
        }
    }

    .lg\:col-span-2 {
        @media (width >= 64rem) {
            grid-column: span 2 / span 2;
        }
    }

    .lg\:col-span-3 {
        @media (width >= 64rem) {
            grid-column: span 3 / span 3;
        }
    }

    .lg\:col-span-4 {
        @media (width >= 64rem) {
            grid-column: span 4 / span 4;
        }
    }

    .lg\:col-span-6 {
        @media (width >= 64rem) {
            grid-column: span 6 / span 6;
        }
    }

    .lg\:col-span-9 {
        @media (width >= 64rem) {
            grid-column: span 9 / span 9;
        }
    }

    .lg\:mt-0 {
        @media (width >= 64rem) {
            margin-top: calc(var(--spacing) * 0);
        }
    }

    .lg\:mr-0 {
        @media (width >= 64rem) {
            margin-right: calc(var(--spacing) * 0);
        }
    }

    .lg\:ml-2 {
        @media (width >= 64rem) {
            margin-left: calc(var(--spacing) * 2);
        }
    }

    .lg\:block {
        @media (width >= 64rem) {
            display: block;
        }
    }

    .lg\:flex {
        @media (width >= 64rem) {
            display: flex;
        }
    }

    .lg\:hidden {
        @media (width >= 64rem) {
            display: none;
        }
    }

    .lg\:inline-block {
        @media (width >= 64rem) {
            display: inline-block;
        }
    }

    .lg\:size-6 {
        @media (width >= 64rem) {
            width: calc(var(--spacing) * 6);
            height: calc(var(--spacing) * 6);
        }
    }

    .lg\:size-8 {
        @media (width >= 64rem) {
            width: calc(var(--spacing) * 8);
            height: calc(var(--spacing) * 8);
        }
    }

    .lg\:w-1\/2 {
        @media (width >= 64rem) {
            width: calc(1 / 2 * 100%);
        }
    }

    .lg\:w-1\/3 {
        @media (width >= 64rem) {
            width: calc(1 / 3 * 100%);
        }
    }

    .lg\:w-96 {
        @media (width >= 64rem) {
            width: calc(var(--spacing) * 96);
        }
    }

    .lg\:max-w-lg {
        @media (width >= 64rem) {
            max-width: var(--container-lg);
        }
    }

    .lg\:flex-shrink-0 {
        @media (width >= 64rem) {
            flex-shrink: 0;
        }
    }

    .lg\:grid-cols-2 {
        @media (width >= 64rem) {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }
    }

    .lg\:grid-cols-3 {
        @media (width >= 64rem) {
            grid-template-columns: repeat(3, minmax(0, 1fr));
        }
    }

    .lg\:grid-cols-4 {
        @media (width >= 64rem) {
            grid-template-columns: repeat(4, minmax(0, 1fr));
        }
    }

    .lg\:flex-row {
        @media (width >= 64rem) {
            flex-direction: row;
        }
    }

    .lg\:justify-end {
        @media (width >= 64rem) {
            justify-content: flex-end;
        }
    }

    .lg\:justify-start {
        @media (width >= 64rem) {
            justify-content: flex-start;
        }
    }

    .lg\:border {
        @media (width >= 64rem) {
            border-style: var(--tw-border-style);
            border-width: 1px;
        }
    }

    .lg\:border-gray-400 {
        @media (width >= 64rem) {
            border-color: var(--color-gray-400);
        }
    }

    .lg\:px-3 {
        @media (width >= 64rem) {
            padding-inline: calc(var(--spacing) * 3);
        }
    }

    .lg\:py-2 {
        @media (width >= 64rem) {
            padding-block: calc(var(--spacing) * 2);
        }
    }

    .lg\:text-start {
        @media (width >= 64rem) {
            text-align: start;
        }
    }

    .lg\:text-5xl {
        @media (width >= 64rem) {
            font-size: var(--text-5xl);
            line-height: var(--tw-leading, var(--text-5xl--line-height));
        }
    }

    .xl\:\!col-span-1 {
        @media (width >= 80rem) {
            grid-column: span 1 / span 1 !important;
        }
    }

    .xl\:\!col-span-3 {
        @media (width >= 80rem) {
            grid-column: span 3 / span 3 !important;
        }
    }

    .xl\:col-span-1 {
        @media (width >= 80rem) {
            grid-column: span 1 / span 1;
        }
    }

    .xl\:col-span-2 {
        @media (width >= 80rem) {
            grid-column: span 2 / span 2;
        }
    }

    .xl\:col-span-3 {
        @media (width >= 80rem) {
            grid-column: span 3 / span 3;
        }
    }

    .xl\:grid {
        @media (width >= 80rem) {
            display: grid;
        }
    }

    .xl\:w-1\/4 {
        @media (width >= 80rem) {
            width: calc(1 / 4 * 100%);
        }
    }

    .xl\:w-3\/4 {
        @media (width >= 80rem) {
            width: calc(3 / 4 * 100%);
        }
    }

    .xl\:grid-cols-3 {
        @media (width >= 80rem) {
            grid-template-columns: repeat(3, minmax(0, 1fr));
        }
    }

    .xl\:grid-cols-4 {
        @media (width >= 80rem) {
            grid-template-columns: repeat(4, minmax(0, 1fr));
        }
    }

    .xl\:flex-row {
        @media (width >= 80rem) {
            flex-direction: row;
        }
    }

    .xl\:items-end {
        @media (width >= 80rem) {
            align-items: flex-end;
        }
    }

    .xl\:justify-end {
        @media (width >= 80rem) {
            justify-content: flex-end;
        }
    }

    .rtl\:rotate-180 {
        &:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
            rotate: 180deg;
        }
    }

    .rtl\:space-x-reverse {
        &:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
            :where(& > :not(:last-child)) {
                --tw-space-x-reverse: 1;
            }
        }
    }

    .dark\:block {
        &:where(.dark, .dark *) {
            display: block;
        }
    }

    .dark\:hidden {
        &:where(.dark, .dark *) {
            display: none;
        }
    }

    .dark\:divide-gray-600 {
        &:where(.dark, .dark *) {
            :where(& > :not(:last-child)) {
                border-color: var(--color-gray-600);
            }
        }
    }

    .dark\:divide-gray-700 {
        &:where(.dark, .dark *) {
            :where(& > :not(:last-child)) {
                border-color: var(--color-gray-700);
            }
        }
    }

    .dark\:border {
        &:where(.dark, .dark *) {
            border-style: var(--tw-border-style);
            border-width: 1px;
        }
    }

    .dark\:border-0 {
        &:where(.dark, .dark *) {
            border-style: var(--tw-border-style);
            border-width: 0px;
        }
    }

    .dark\:border-1 {
        &:where(.dark, .dark *) {
            border-style: var(--tw-border-style);
            border-width: 1px;
        }
    }

    .dark\:border-blue-400 {
        &:where(.dark, .dark *) {
            border-color: var(--color-blue-400);
        }
    }

    .dark\:border-blue-800 {
        &:where(.dark, .dark *) {
            border-color: var(--color-blue-800);
        }
    }

    .dark\:border-danger-dark {
        &:where(.dark, .dark *) {
            border-color: var(--color-danger-dark);
        }
    }

    .dark\:border-danger\/30 {
        &:where(.dark, .dark *) {
            border-color: color-mix(in oklab, var(--color-danger) 30%, transparent);
        }
    }

    .dark\:border-gray-400 {
        &:where(.dark, .dark *) {
            border-color: var(--color-gray-400);
        }
    }

    .dark\:border-gray-600 {
        &:where(.dark, .dark *) {
            border-color: var(--color-gray-600);
        }
    }

    .dark\:border-gray-700 {
        &:where(.dark, .dark *) {
            border-color: var(--color-gray-700);
        }
    }

    .dark\:border-gray-700\/30 {
        &:where(.dark, .dark *) {
            border-color: color-mix(in oklab, var(--color-gray-700) 30%, transparent);
        }
    }

    .dark\:border-gray-800 {
        &:where(.dark, .dark *) {
            border-color: var(--color-gray-800);
        }
    }

    .dark\:border-green-400 {
        &:where(.dark, .dark *) {
            border-color: var(--color-green-400);
        }
    }

    .dark\:border-green-800 {
        &:where(.dark, .dark *) {
            border-color: var(--color-green-800);
        }
    }

    .dark\:border-primary-400 {
        &:where(.dark, .dark *) {
            border-color: var(--color-primary-400);
        }
    }

    .dark\:border-primary-500 {
        &:where(.dark, .dark *) {
            border-color: var(--color-primary-500);
        }
    }

    .dark\:border-primary-800 {
        &:where(.dark, .dark *) {
            border-color: var(--color-primary-800);
        }
    }

    .dark\:border-primary-dark {
        &:where(.dark, .dark *) {
            border-color: var(--color-primary-dark);
        }
    }

    .dark\:border-primary\/20 {
        &:where(.dark, .dark *) {
            border-color: color-mix(in oklab, var(--color-primary) 20%, transparent);
        }
    }

    .dark\:border-red-900 {
        &:where(.dark, .dark *) {
            border-color: var(--color-red-900);
        }
    }

    .dark\:border-slate-700 {
        &:where(.dark, .dark *) {
            border-color: var(--color-slate-700);
        }
    }

    .dark\:border-transparent {
        &:where(.dark, .dark *) {
            border-color: transparent;
        }
    }

    .dark\:border-white {
        &:where(.dark, .dark *) {
            border-color: var(--color-white);
        }
    }

    .dark\:border-yellow-400 {
        &:where(.dark, .dark *) {
            border-color: var(--color-yellow-400);
        }
    }

    .dark\:border-yellow-800 {
        &:where(.dark, .dark *) {
            border-color: var(--color-yellow-800);
        }
    }

    .dark\:border-b-white {
        &:where(.dark, .dark *) {
            border-bottom-color: var(--color-white);
        }
    }

    .dark\:bg-background-dark {
        &:where(.dark, .dark *) {
            background-color: var(--color-background-dark);
        }
    }

    .dark\:bg-black\/50 {
        &:where(.dark, .dark *) {
            background-color: color-mix(in oklab, var(--color-black) 50%, transparent);
        }
    }

    .dark\:bg-blue-900 {
        &:where(.dark, .dark *) {
            background-color: var(--color-blue-900);
        }
    }

    .dark\:bg-blue-900\/20 {
        &:where(.dark, .dark *) {
            background-color: color-mix(in oklab, var(--color-blue-900) 20%, transparent);
        }
    }

    .dark\:bg-blue-900\/30 {
        &:where(.dark, .dark *) {
            background-color: color-mix(in oklab, var(--color-blue-900) 30%, transparent);
        }
    }

    .dark\:bg-card-dark {
        &:where(.dark, .dark *) {
            background-color: var(--color-card-dark);
        }
    }

    .dark\:bg-danger-dark {
        &:where(.dark, .dark *) {
            background-color: var(--color-danger-dark);
        }
    }

    .dark\:bg-danger\/10 {
        &:where(.dark, .dark *) {
            background-color: color-mix(in oklab, var(--color-danger) 10%, transparent);
        }
    }

    .dark\:bg-danger\/20 {
        &:where(.dark, .dark *) {
            background-color: color-mix(in oklab, var(--color-danger) 20%, transparent);
        }
    }

    .dark\:bg-gray-200 {
        &:where(.dark, .dark *) {
            background-color: var(--color-gray-200);
        }
    }

    .dark\:bg-gray-600 {
        &:where(.dark, .dark *) {
            background-color: var(--color-gray-600);
        }
    }

    .dark\:bg-gray-700 {
        &:where(.dark, .dark *) {
            background-color: var(--color-gray-700);
        }
    }

    .dark\:bg-gray-700\/30 {
        &:where(.dark, .dark *) {
            background-color: color-mix(in oklab, var(--color-gray-700) 30%, transparent);
        }
    }

    .dark\:bg-gray-700\/80 {
        &:where(.dark, .dark *) {
            background-color: color-mix(in oklab, var(--color-gray-700) 80%, transparent);
        }
    }

    .dark\:bg-gray-800 {
        &:where(.dark, .dark *) {
            background-color: var(--color-gray-800);
        }
    }

    .dark\:bg-gray-900 {
        &:where(.dark, .dark *) {
            background-color: var(--color-gray-900);
        }
    }

    .dark\:bg-green-400 {
        &:where(.dark, .dark *) {
            background-color: var(--color-green-400);
        }
    }

    .dark\:bg-green-900 {
        &:where(.dark, .dark *) {
            background-color: var(--color-green-900);
        }
    }

    .dark\:bg-green-900\/20 {
        &:where(.dark, .dark *) {
            background-color: color-mix(in oklab, var(--color-green-900) 20%, transparent);
        }
    }

    .dark\:bg-green-900\/30 {
        &:where(.dark, .dark *) {
            background-color: color-mix(in oklab, var(--color-green-900) 30%, transparent);
        }
    }

    .dark\:bg-green-950 {
        &:where(.dark, .dark *) {
            background-color: var(--color-green-950);
        }
    }

    .dark\:bg-neutral-600 {
        &:where(.dark, .dark *) {
            background-color: var(--color-neutral-600);
        }
    }

    .dark\:bg-orange-900\/20 {
        &:where(.dark, .dark *) {
            background-color: color-mix(in oklab, var(--color-orange-900) 20%, transparent);
        }
    }

    .dark\:bg-primary-400 {
        &:where(.dark, .dark *) {
            background-color: var(--color-primary-400);
        }
    }

    .dark\:bg-primary-500 {
        &:where(.dark, .dark *) {
            background-color: var(--color-primary-500);
        }
    }

    .dark\:bg-primary-900 {
        &:where(.dark, .dark *) {
            background-color: var(--color-primary-900);
        }
    }

    .dark\:bg-primary-900\/20 {
        &:where(.dark, .dark *) {
            background-color: color-mix(in oklab, var(--color-primary-900) 20%, transparent);
        }
    }

    .dark\:bg-primary-900\/30 {
        &:where(.dark, .dark *) {
            background-color: color-mix(in oklab, var(--color-primary-900) 30%, transparent);
        }
    }

    .dark\:bg-primary-dark {
        &:where(.dark, .dark *) {
            background-color: var(--color-primary-dark);
        }
    }

    .dark\:bg-primary-dark\/10 {
        &:where(.dark, .dark *) {
            background-color: color-mix(in oklab, var(--color-primary-dark) 10%, transparent);
        }
    }

    .dark\:bg-primary\/20 {
        &:where(.dark, .dark *) {
            background-color: color-mix(in oklab, var(--color-primary) 20%, transparent);
        }
    }

    .dark\:bg-purple-900 {
        &:where(.dark, .dark *) {
            background-color: var(--color-purple-900);
        }
    }

    .dark\:bg-purple-900\/20 {
        &:where(.dark, .dark *) {
            background-color: color-mix(in oklab, var(--color-purple-900) 20%, transparent);
        }
    }

    .dark\:bg-purple-900\/30 {
        &:where(.dark, .dark *) {
            background-color: color-mix(in oklab, var(--color-purple-900) 30%, transparent);
        }
    }

    .dark\:bg-red-400 {
        &:where(.dark, .dark *) {
            background-color: var(--color-red-400);
        }
    }

    .dark\:bg-red-500 {
        &:where(.dark, .dark *) {
            background-color: var(--color-red-500);
        }
    }

    .dark\:bg-red-900 {
        &:where(.dark, .dark *) {
            background-color: var(--color-red-900);
        }
    }

    .dark\:bg-red-900\/20 {
        &:where(.dark, .dark *) {
            background-color: color-mix(in oklab, var(--color-red-900) 20%, transparent);
        }
    }

    .dark\:bg-red-900\/30 {
        &:where(.dark, .dark *) {
            background-color: color-mix(in oklab, var(--color-red-900) 30%, transparent);
        }
    }

    .dark\:bg-red-950 {
        &:where(.dark, .dark *) {
            background-color: var(--color-red-950);
        }
    }

    .dark\:bg-secondary-300 {
        &:where(.dark, .dark *) {
            background-color: var(--color-secondary-300);
        }
    }

    .dark\:bg-secondary-500 {
        &:where(.dark, .dark *) {
            background-color: var(--color-secondary-500);
        }
    }

    .dark\:bg-secondary-dark {
        &:where(.dark, .dark *) {
            background-color: var(--color-secondary-dark);
        }
    }

    .dark\:bg-secondary-dark\/10 {
        &:where(.dark, .dark *) {
            background-color: color-mix(in oklab, var(--color-secondary-dark) 10%, transparent);
        }
    }

    .dark\:bg-secondary\/20 {
        &:where(.dark, .dark *) {
            background-color: color-mix(in oklab, var(--color-secondary) 20%, transparent);
        }
    }

    .dark\:bg-success-dark {
        &:where(.dark, .dark *) {
            background-color: var(--color-success-dark);
        }
    }

    .dark\:bg-success\/20 {
        &:where(.dark, .dark *) {
            background-color: color-mix(in oklab, var(--color-success) 20%, transparent);
        }
    }

    .dark\:bg-transparent {
        &:where(.dark, .dark *) {
            background-color: transparent;
        }
    }

    .dark\:bg-warning-dark {
        &:where(.dark, .dark *) {
            background-color: var(--color-warning-dark);
        }
    }

    .dark\:bg-warning\/20 {
        &:where(.dark, .dark *) {
            background-color: color-mix(in oklab, var(--color-warning) 20%, transparent);
        }
    }

    .dark\:bg-white {
        &:where(.dark, .dark *) {
            background-color: var(--color-white);
        }
    }

    .dark\:bg-yellow-400 {
        &:where(.dark, .dark *) {
            background-color: var(--color-yellow-400);
        }
    }

    .dark\:bg-yellow-900 {
        &:where(.dark, .dark *) {
            background-color: var(--color-yellow-900);
        }
    }

    .dark\:bg-yellow-900\/20 {
        &:where(.dark, .dark *) {
            background-color: color-mix(in oklab, var(--color-yellow-900) 20%, transparent);
        }
    }

    .dark\:bg-yellow-900\/30 {
        &:where(.dark, .dark *) {
            background-color: color-mix(in oklab, var(--color-yellow-900) 30%, transparent);
        }
    }

    .dark\:bg-zinc-400 {
        &:where(.dark, .dark *) {
            background-color: var(--color-zinc-400);
        }
    }

    .dark\:bg-zinc-500 {
        &:where(.dark, .dark *) {
            background-color: var(--color-zinc-500);
        }
    }

    .dark\:bg-zinc-700 {
        &:where(.dark, .dark *) {
            background-color: var(--color-zinc-700);
        }
    }

    .dark\:bg-zinc-800 {
        &:where(.dark, .dark *) {
            background-color: var(--color-zinc-800);
        }
    }

    .dark\:bg-zinc-900 {
        &:where(.dark, .dark *) {
            background-color: var(--color-zinc-900);
        }
    }

    .dark\:bg-zinc-950 {
        &:where(.dark, .dark *) {
            background-color: var(--color-zinc-950);
        }
    }

    .dark\:from-gray-800 {
        &:where(.dark, .dark *) {
            --tw-gradient-from: var(--color-gray-800);
            --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
        }
    }

    .dark\:from-primary-dark {
        &:where(.dark, .dark *) {
            --tw-gradient-from: var(--color-primary-dark);
            --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));
        }
    }

    .dark\:to-gray-800\/80 {
        &:where(.dark, .dark *) {
            --tw-gradient-to: color-mix(in oklab, var(--color-gray-800) 80%, 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));
        }
    }

    .dark\:to-secondary-dark {
        &:where(.dark, .dark *) {
            --tw-gradient-to: var(--color-secondary-dark);
            --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));
        }
    }

    .dark\:fill-primary-400 {
        &:where(.dark, .dark *) {
            fill: var(--color-primary-400);
        }
    }

    .dark\:stroke-primary-400 {
        &:where(.dark, .dark *) {
            stroke: var(--color-primary-400);
        }
    }

    .dark\:stroke-secondary-400 {
        &:where(.dark, .dark *) {
            stroke: var(--color-secondary-400);
        }
    }

    .dark\:\!text-white {
        &:where(.dark, .dark *) {
            color: var(--color-white) !important;
        }
    }

    .dark\:text-blue-200 {
        &:where(.dark, .dark *) {
            color: var(--color-blue-200);
        }
    }

    .dark\:text-blue-300 {
        &:where(.dark, .dark *) {
            color: var(--color-blue-300);
        }
    }

    .dark\:text-blue-400 {
        &:where(.dark, .dark *) {
            color: var(--color-blue-400);
        }
    }

    .dark\:text-danger-dark {
        &:where(.dark, .dark *) {
            color: var(--color-danger-dark);
        }
    }

    .dark\:text-gray-100 {
        &:where(.dark, .dark *) {
            color: var(--color-gray-100);
        }
    }

    .dark\:text-gray-200 {
        &:where(.dark, .dark *) {
            color: var(--color-gray-200);
        }
    }

    .dark\:text-gray-300 {
        &:where(.dark, .dark *) {
            color: var(--color-gray-300);
        }
    }

    .dark\:text-gray-400 {
        &:where(.dark, .dark *) {
            color: var(--color-gray-400);
        }
    }

    .dark\:text-gray-500 {
        &:where(.dark, .dark *) {
            color: var(--color-gray-500);
        }
    }

    .dark\:text-gray-600 {
        &:where(.dark, .dark *) {
            color: var(--color-gray-600);
        }
    }

    .dark\:text-gray-700\/50 {
        &:where(.dark, .dark *) {
            color: color-mix(in oklab, var(--color-gray-700) 50%, transparent);
        }
    }

    .dark\:text-gray-900 {
        &:where(.dark, .dark *) {
            color: var(--color-gray-900);
        }
    }

    .dark\:text-green-200 {
        &:where(.dark, .dark *) {
            color: var(--color-green-200);
        }
    }

    .dark\:text-green-300 {
        &:where(.dark, .dark *) {
            color: var(--color-green-300);
        }
    }

    .dark\:text-green-400 {
        &:where(.dark, .dark *) {
            color: var(--color-green-400);
        }
    }

    .dark\:text-light {
        &:where(.dark, .dark *) {
            color: var(--color-light);
        }
    }

    .dark\:text-neutral-300 {
        &:where(.dark, .dark *) {
            color: var(--color-neutral-300);
        }
    }

    .dark\:text-neutral-400 {
        &:where(.dark, .dark *) {
            color: var(--color-neutral-400);
        }
    }

    .dark\:text-orange-400 {
        &:where(.dark, .dark *) {
            color: var(--color-orange-400);
        }
    }

    .dark\:text-primary {
        &:where(.dark, .dark *) {
            color: var(--color-primary);
        }
    }

    .dark\:text-primary-300 {
        &:where(.dark, .dark *) {
            color: var(--color-primary-300);
        }
    }

    .dark\:text-primary-400 {
        &:where(.dark, .dark *) {
            color: var(--color-primary-400);
        }
    }

    .dark\:text-primary-dark {
        &:where(.dark, .dark *) {
            color: var(--color-primary-dark);
        }
    }

    .dark\:text-purple-200 {
        &:where(.dark, .dark *) {
            color: var(--color-purple-200);
        }
    }

    .dark\:text-purple-400 {
        &:where(.dark, .dark *) {
            color: var(--color-purple-400);
        }
    }

    .dark\:text-purple-900 {
        &:where(.dark, .dark *) {
            color: var(--color-purple-900);
        }
    }

    .dark\:text-red-200 {
        &:where(.dark, .dark *) {
            color: var(--color-red-200);
        }
    }

    .dark\:text-red-300 {
        &:where(.dark, .dark *) {
            color: var(--color-red-300);
        }
    }

    .dark\:text-red-400 {
        &:where(.dark, .dark *) {
            color: var(--color-red-400);
        }
    }

    .dark\:text-secondary-50 {
        &:where(.dark, .dark *) {
            color: var(--color-secondary-50);
        }
    }

    .dark\:text-secondary-dark {
        &:where(.dark, .dark *) {
            color: var(--color-secondary-dark);
        }
    }

    .dark\:text-slate-200 {
        &:where(.dark, .dark *) {
            color: var(--color-slate-200);
        }
    }

    .dark\:text-slate-400 {
        &:where(.dark, .dark *) {
            color: var(--color-slate-400);
        }
    }

    .dark\:text-success-dark {
        &:where(.dark, .dark *) {
            color: var(--color-success-dark);
        }
    }

    .dark\:text-text-primary-dark {
        &:where(.dark, .dark *) {
            color: var(--color-text-primary-dark);
        }
    }

    .dark\:text-warning-dark {
        &:where(.dark, .dark *) {
            color: var(--color-warning-dark);
        }
    }

    .dark\:text-white {
        &:where(.dark, .dark *) {
            color: var(--color-white);
        }
    }

    .dark\:text-yellow-200 {
        &:where(.dark, .dark *) {
            color: var(--color-yellow-200);
        }
    }

    .dark\:text-yellow-300 {
        &:where(.dark, .dark *) {
            color: var(--color-yellow-300);
        }
    }

    .dark\:text-yellow-400 {
        &:where(.dark, .dark *) {
            color: var(--color-yellow-400);
        }
    }

    .dark\:placeholder-gray-400 {
        &:where(.dark, .dark *) {
            &::placeholder {
                color: var(--color-gray-400);
            }
        }
    }

    .dark\:opacity-90 {
        &:where(.dark, .dark *) {
            opacity: 90%;
        }
    }

    .dark\:mix-blend-screen {
        &:where(.dark, .dark *) {
            mix-blend-mode: screen;
        }
    }

    .dark\:shadow {
        &:where(.dark, .dark *) {
            --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
        }
    }

    .dark\:shadow-soft-dark {
        &:where(.dark, .dark *) {
            --tw-shadow: 0 4px 24px 0 var(--tw-shadow-color, rgba(0, 0, 0, 0.2));
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
        }
    }

    .dark\:shadow-gray-700 {
        &:where(.dark, .dark *) {
            --tw-shadow-color: var(--color-gray-700);
        }
    }

    .dark\:shadow-gray-800\/10 {
        &:where(.dark, .dark *) {
            --tw-shadow-color: color-mix(in oklab, var(--color-gray-800) 10%, transparent);
        }
    }

    .dark\:shadow-primary-600 {
        &:where(.dark, .dark *) {
            --tw-shadow-color: var(--color-primary-600);
        }
    }

    .dark\:shadow-primary-900 {
        &:where(.dark, .dark *) {
            --tw-shadow-color: var(--color-primary-900);
        }
    }

    .dark\:grayscale-\[50\%\] {
        &:where(.dark, .dark *) {
            --tw-grayscale: grayscale(50%);
            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,);
        }
    }

    .dark\:group-hover\:bg-primary-dark\/20 {
        &:where(.dark, .dark *) {
            &:is(:where(.group):hover *) {
                @media (hover: hover) {
                    background-color: color-mix(in oklab, var(--color-primary-dark) 20%, transparent);
                }
            }
        }
    }

    .dark\:group-hover\:bg-secondary-dark\/20 {
        &:where(.dark, .dark *) {
            &:is(:where(.group):hover *) {
                @media (hover: hover) {
                    background-color: color-mix(in oklab, var(--color-secondary-dark) 20%, transparent);
                }
            }
        }
    }

    .dark\:group-hover\:text-primary-400 {
        &:where(.dark, .dark *) {
            &:is(:where(.group):hover *) {
                @media (hover: hover) {
                    color: var(--color-primary-400);
                }
            }
        }
    }

    .dark\:group-hover\:text-primary-dark {
        &:where(.dark, .dark *) {
            &:is(:where(.group):hover *) {
                @media (hover: hover) {
                    color: var(--color-primary-dark);
                }
            }
        }
    }

    .dark\:group-hover\:text-secondary-dark {
        &:where(.dark, .dark *) {
            &:is(:where(.group):hover *) {
                @media (hover: hover) {
                    color: var(--color-secondary-dark);
                }
            }
        }
    }

    .dark\:file\:bg-primary-900 {
        &:where(.dark, .dark *) {
            &::file-selector-button {
                background-color: var(--color-primary-900);
            }
        }
    }

    .dark\:file\:text-primary-300 {
        &:where(.dark, .dark *) {
            &::file-selector-button {
                color: var(--color-primary-300);
            }
        }
    }

    .dark\:hover\:bg-blue-800\/50 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    background-color: color-mix(in oklab, var(--color-blue-800) 50%, transparent);
                }
            }
        }
    }

    .dark\:hover\:bg-danger\/20 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    background-color: color-mix(in oklab, var(--color-danger) 20%, transparent);
                }
            }
        }
    }

    .dark\:hover\:bg-danger\/80 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    background-color: color-mix(in oklab, var(--color-danger) 80%, transparent);
                }
            }
        }
    }

    .dark\:hover\:bg-gray-500 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    background-color: var(--color-gray-500);
                }
            }
        }
    }

    .dark\:hover\:bg-gray-600 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    background-color: var(--color-gray-600);
                }
            }
        }
    }

    .dark\:hover\:bg-gray-700 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    background-color: var(--color-gray-700);
                }
            }
        }
    }

    .dark\:hover\:bg-gray-700\/10 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    background-color: color-mix(in oklab, var(--color-gray-700) 10%, transparent);
                }
            }
        }
    }

    .dark\:hover\:bg-gray-700\/50 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    background-color: color-mix(in oklab, var(--color-gray-700) 50%, transparent);
                }
            }
        }
    }

    .dark\:hover\:bg-gray-800 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    background-color: var(--color-gray-800);
                }
            }
        }
    }

    .dark\:hover\:bg-green-800\/50 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    background-color: color-mix(in oklab, var(--color-green-800) 50%, transparent);
                }
            }
        }
    }

    .dark\:hover\:bg-primary-600 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    background-color: var(--color-primary-600);
                }
            }
        }
    }

    .dark\:hover\:bg-primary-800 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    background-color: var(--color-primary-800);
                }
            }
        }
    }

    .dark\:hover\:bg-primary-dark\/70 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    background-color: color-mix(in oklab, var(--color-primary-dark) 70%, transparent);
                }
            }
        }
    }

    .dark\:hover\:bg-primary\/20 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    background-color: color-mix(in oklab, var(--color-primary) 20%, transparent);
                }
            }
        }
    }

    .dark\:hover\:bg-primary\/30 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    background-color: color-mix(in oklab, var(--color-primary) 30%, transparent);
                }
            }
        }
    }

    .dark\:hover\:bg-primary\/80 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    background-color: color-mix(in oklab, var(--color-primary) 80%, transparent);
                }
            }
        }
    }

    .dark\:hover\:bg-red-600 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    background-color: var(--color-red-600);
                }
            }
        }
    }

    .dark\:hover\:bg-red-800\/50 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    background-color: color-mix(in oklab, var(--color-red-800) 50%, transparent);
                }
            }
        }
    }

    .dark\:hover\:bg-red-900\/30 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    background-color: color-mix(in oklab, var(--color-red-900) 30%, transparent);
                }
            }
        }
    }

    .dark\:hover\:bg-white\/10 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
                }
            }
        }
    }

    .dark\:hover\:bg-yellow-800\/50 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    background-color: color-mix(in oklab, var(--color-yellow-800) 50%, transparent);
                }
            }
        }
    }

    .dark\:hover\:bg-zinc-600 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    background-color: var(--color-zinc-600);
                }
            }
        }
    }

    .dark\:hover\:bg-zinc-700 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    background-color: var(--color-zinc-700);
                }
            }
        }
    }

    .dark\:hover\:text-blue-300 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    color: var(--color-blue-300);
                }
            }
        }
    }

    .dark\:hover\:text-blue-400 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    color: var(--color-blue-400);
                }
            }
        }
    }

    .dark\:hover\:text-danger-dark {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    color: var(--color-danger-dark);
                }
            }
        }
    }

    .dark\:hover\:text-danger-dark\/80 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    color: color-mix(in oklab, var(--color-danger-dark) 80%, transparent);
                }
            }
        }
    }

    .dark\:hover\:text-gray-100 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    color: var(--color-gray-100);
                }
            }
        }
    }

    .dark\:hover\:text-gray-200 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    color: var(--color-gray-200);
                }
            }
        }
    }

    .dark\:hover\:text-gray-300 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    color: var(--color-gray-300);
                }
            }
        }
    }

    .dark\:hover\:text-gray-400 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    color: var(--color-gray-400);
                }
            }
        }
    }

    .dark\:hover\:text-primary-300 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    color: var(--color-primary-300);
                }
            }
        }
    }

    .dark\:hover\:text-primary-400 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    color: var(--color-primary-400);
                }
            }
        }
    }

    .dark\:hover\:text-primary-500 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    color: var(--color-primary-500);
                }
            }
        }
    }

    .dark\:hover\:text-primary-dark {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    color: var(--color-primary-dark);
                }
            }
        }
    }

    .dark\:hover\:text-primary-dark\/80 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    color: color-mix(in oklab, var(--color-primary-dark) 80%, transparent);
                }
            }
        }
    }

    .dark\:hover\:text-primary\/70 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    color: color-mix(in oklab, var(--color-primary) 70%, transparent);
                }
            }
        }
    }

    .dark\:hover\:text-primary\/80 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    color: color-mix(in oklab, var(--color-primary) 80%, transparent);
                }
            }
        }
    }

    .dark\:hover\:text-red-300 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    color: var(--color-red-300);
                }
            }
        }
    }

    .dark\:hover\:text-red-400 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    color: var(--color-red-400);
                }
            }
        }
    }

    .dark\:hover\:text-secondary-100 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    color: var(--color-secondary-100);
                }
            }
        }
    }

    .dark\:hover\:text-white {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    color: var(--color-white);
                }
            }
        }
    }

    .dark\:hover\:text-zinc-950 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    color: var(--color-zinc-950);
                }
            }
        }
    }

    .dark\:hover\:shadow-gray-800\/20 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    --tw-shadow-color: color-mix(in oklab, var(--color-gray-800) 20%, transparent);
                }
            }
        }
    }

    .dark\:hover\:shadow-primary-800 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    --tw-shadow-color: var(--color-primary-800);
                }
            }
        }
    }

    .dark\:hover\:file\:bg-primary-800 {
        &:where(.dark, .dark *) {
            &:hover {
                @media (hover: hover) {
                    &::file-selector-button {
                        background-color: var(--color-primary-800);
                    }
                }
            }
        }
    }

    .dark\:focus\:border-blue-500 {
        &:where(.dark, .dark *) {
            &:focus {
                border-color: var(--color-blue-500);
            }
        }
    }

    .dark\:focus\:border-primary-500 {
        &:where(.dark, .dark *) {
            &:focus {
                border-color: var(--color-primary-500);
            }
        }
    }

    .dark\:focus\:border-primary-700 {
        &:where(.dark, .dark *) {
            &:focus {
                border-color: var(--color-primary-700);
            }
        }
    }

    .dark\:focus\:bg-neutral-500 {
        &:where(.dark, .dark *) {
            &:focus {
                background-color: var(--color-neutral-500);
            }
        }
    }

    .dark\:focus\:bg-white\/10 {
        &:where(.dark, .dark *) {
            &:focus {
                background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
            }
        }
    }

    .dark\:focus\:ring-blue-500 {
        &:where(.dark, .dark *) {
            &:focus {
                --tw-ring-color: var(--color-blue-500);
            }
        }
    }

    .dark\:focus\:ring-blue-600 {
        &:where(.dark, .dark *) {
            &:focus {
                --tw-ring-color: var(--color-blue-600);
            }
        }
    }

    .dark\:focus\:ring-primary-500 {
        &:where(.dark, .dark *) {
            &:focus {
                --tw-ring-color: var(--color-primary-500);
            }
        }
    }

    .dark\:focus\:ring-primary-600 {
        &:where(.dark, .dark *) {
            &:focus {
                --tw-ring-color: var(--color-primary-600);
            }
        }
    }

    .dark\:focus\:ring-primary-dark {
        &:where(.dark, .dark *) {
            &:focus {
                --tw-ring-color: var(--color-primary-dark);
            }
        }
    }

    .dark\:focus\:ring-offset-gray-800 {
        &:where(.dark, .dark *) {
            &:focus {
                --tw-ring-offset-color: var(--color-gray-800);
            }
        }
    }
}

@layer utilities {
    .container {
        margin-inline: auto;
        padding-inline: calc(var(--spacing) * 3);
    }

    .animate-float-slow {
        animation: float 6s ease-in-out infinite;
    }

    .animate-float-fast {
        animation: float 3s ease-in-out infinite 1s;
    }
}

@layer base {
    @font-face {
        font-family: "payda";
        src: url("../fonts/payda/PeydaWebFaNum-Medium.woff2") format("woff2");
        font-weight: normal;
    }

    @font-face {
        font-family: "payda";
        src: url("../fonts/payda/PeydaWebFaNum-Bold.woff2") format('woff2');
        font-weight: 700;
    }

    @font-face {
        font-family: "payda";
        src: url("../fonts/payda/PeydaWebFaNum-Black.woff2") format('woff2');
        font-weight: 900;
    }

    html {
        scroll-behavior: smooth;
    }

    body {
        background-color: #f7f7f7;
    }

    * {
        outline-color: none;
    }

    a,
    button,
    input[type=submit] {
        cursor: pointer;
    }

    [onclick] {
        cursor: pointer;
    }

    .bg-ul-f7 {
        background-color: #f7f7f7;
    }

    input,
    textarea {
        transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter;
        transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
        transition-duration: var(--tw-duration, var(--default-transition-duration));
    }

    .dark textarea {
        &::placeholder {
            color: var(--color-gray-400);
        }
    }

    button {
        transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter;
        transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
        transition-duration: var(--tw-duration, var(--default-transition-duration));
    }

    input:focus,
    textarea:focus {
        outline: none;
        box-shadow: none;
        /* border-color: var(--color-primary) !important; */
        background-clip: padding-box;
    }

    .dir-rtl {
        direction: rtl;
    }

    .dir-ltr {
        direction: ltr;
    }

    .mega-menu-li.bg-gray-100 {
        color: var(--color-zinc-900);
    }

    .article-content {
        line-height: 1.8;
        color: #333;
        font-size: 16px;
    }

    .article-content p {
        margin-bottom: 1.5rem;
        line-height: 1.8;
    }

    .article-content h2,
    .article-content h3,
    .article-content h4 {
        margin: 2rem 0 1rem;
        font-weight: bold;
        color: #222;
    }

    .article-content h2 {
        font-size: 1.8rem;
        border-bottom: 1px solid #eee;
        padding-bottom: 0.5rem;
    }

    .article-content h3 {
        font-size: 1.5rem;
    }

    .article-content h4 {
        font-size: 1.3rem;
    }

    .article-content a {
        color: #3b82f6;
        text-decoration: underline;
    }

    .article-content a:hover {
        color: #2563eb;
    }

    .article-content ul,
    .article-content ol {
        margin-bottom: 1.5rem;
        padding-left: 2rem;
    }

    .article-content li {
        margin-bottom: 0.5rem;
        line-height: 1.7;
    }

    .article-content img {
        max-width: 100%;
        height: auto;
        margin: 1.5rem auto;
        border-radius: 8px;
        display: block;
    }

    .article-content blockquote {
        border-right: 4px solid #3b82f6;
        background-color: #f8fafc;
        padding: 1rem 1.5rem;
        margin: 1.5rem 0;
        font-style: italic;
        color: #555;
    }

    .article-content code {
        font-family: monospace;
        background-color: #f3f4f6;
        padding: 0.2rem 0.4rem;
        border-radius: 4px;
        font-size: 0.9em;
    }

    .article-content pre {
        background-color: #f8fafc;
        padding: 1rem;
        border-radius: 8px;
        overflow-x: auto;
        margin: 1.5rem 0;
        border: 1px solid #e5e7eb;
    }

    .article-content table {
        width: 100%;
        border-collapse: collapse;
        margin: 1.5rem 0;
    }

    .article-content th,
    .article-content td {
        padding: 0.75rem;
        border: 1px solid #e5e7eb;
        text-align: right;
    }

    .article-content th {
        background-color: #f9fafb;
        font-weight: bold;
    }
}

@layer components {
    .swiper-wrapper {
        position: relative;
        height: max-content !important;
        width: 100%;
        /* padding-bottom: 64px !important; */
        --tw-ease: linear !important;
        transition-timing-function: linear !important;
    }

    .swiper-pagination-bullet {
        background-color: #4f46e5;
    }

    .swiper-slide-thumb-active {
        border-radius: var(--radius-lg);
        border-style: var(--tw-border-style);
        border-width: 1px;
        border-color: var(--color-primary);
        padding: calc(var(--spacing) * 0);
    }

    .swiper-slide-thumb-active img {
        border-style: var(--tw-border-style) !important;
        border-width: 0px !important;
    }

    .slider-pagination-bg {
        background-image: url(../images/slider/Vector1.svg);
    }

    .bg-primary-grad {
        --tw-gradient-position: to right in oklab;
        background-image: linear-gradient(var(--tw-gradient-stops));
        /*--tw-gradient-from: #ff4500;*/
        --tw-gradient-from: var(--color-primary-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));
        --tw-gradient-to: var(--color-primary-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));
        transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter;
        transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
        transition-duration: var(--tw-duration, var(--default-transition-duration));
        --tw-duration: 300ms;
        transition-duration: 300ms;
    }

    .bg-primary-grad:hover {
        --tw-gradient-position: to right in oklab;
        background-image: linear-gradient(var(--tw-gradient-stops));
        --tw-gradient-from: var(--color-primary-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));
        --tw-gradient-to: var(--color-tertiary-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));
    }

    .bg-primary-grad.no-hover:hover {
        --tw-gradient-position: to right in oklab;
        background-image: linear-gradient(var(--tw-gradient-stops));
        --tw-gradient-from: var(--color-tertiary-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));
        --tw-gradient-to: var(--color-primary-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));
    }

    .product-box-item {
        position: relative;
    }


    .product-box-item {
        transition: box-shadow 0.3s ease;
    }

    .bg-digi {
        background: rgb(210, 44, 78);
    }

    .h-290 {
        height: 290px;
    }


    .product-box-item .image img {
        display: block;
        margin: auto;
        width: 125px;
        height: 125px;
        object-fit: contain;
        border-radius: 10px;
    }

    .product-box-item .two-image {
        z-index: 1;
        position: absolute;
        top: 30px;
        right: 0;
        left: 0;
        visibility: hidden;
        opacity: 0;
        transition: visibility 0.2s, opacity 0.2s;
    }

    .product-box-item:hover .one-image {
        opacity: 0;
        visibility: hidden;
    }

    .product-box-item:hover .two-image {
        visibility: visible;
        opacity: 1;
    }

    .section-heading {
        position: relative;
    }

    .section-heading::before {
        content: "";
        width: 20px;
        height: 20px;
        position: absolute;
        top: 50%;
        right: 0px;
        transform: translateY(-50%);
        background-image: radial-gradient(#6f6c6c 1px, transparent 2px);
        -webkit-background-size: 20px 20px;
        background-size: 10px 10px;
        border-radius: 0;
        z-index: -1;
    }

    .btn {
        margin-inline-end: calc(var(--spacing) * 2);
        margin-bottom: calc(var(--spacing) * 2);
        border-radius: var(--radius-lg);
        padding-inline: calc(var(--spacing) * 3);
        padding-block: calc(var(--spacing) * 2);
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        --tw-font-weight: var(--font-weight-medium);
        font-weight: var(--font-weight-medium);
        transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter;
        transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
        transition-duration: var(--tw-duration, var(--default-transition-duration));

        &:focus {
            --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 {
            --tw-outline-style: none;
            outline-style: none;
        }
    }

    .slider-container {
        position: relative;
        height: 29px;
    }

    .slider-track {
        position: absolute;
        width: 100%;
        height: 4px;
        background: #ddd;
        top: 50%;
        transform: translateY(-50%);
        border-radius: 2px;
    }

    .slider-range {
        position: absolute;
        height: 2px;
        bottom: 13px;
        background: #3b82f6;
        z-index: 1;
    }

    .slider-thumb {
        position: absolute;
        width: 13px;
        height: 13px;
        background: white;
        border: 2px solid #3b82f6;
        border-radius: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        cursor: pointer;
        z-index: 2;
    }

    .dark .time-slot {
        background: var(--color-zinc-900) !important;
    }

    .dark .time-slot:hover {
        background: var(--color-zinc-900) !important;
    }

    .dark .time-slot.bg-blue-50 {
        background: var(--color-zinc-700) !important;
    }

    .dark .day-option:hover {
        color: #333;
    }

    .success-animation {
        animation: bounce 0.9s ease-in-out infinite alternate;
    }

    @keyframes bounce {
        0% {
            transform: translateY(0);
        }

        100% {
            transform: translateY(-5px);
        }
    }

    .shake-animation {
        animation: shake 0.5s cubic-bezier(.36, .07, .19, .97) both;
    }

    @keyframes shake {

        10%,
        90% {
            transform: translateX(-1px);
        }

        20%,
        80% {
            transform: translateX(2px);
        }

        30%,
        50%,
        70% {
            transform: translateX(-3px);
        }

        40%,
        60% {
            transform: translateX(3px);
        }
    }

    .gift-card {
        background: linear-gradient(135deg, #f6d365 0%, #fda085 100%);
        border-radius: 12px;
        position: relative;
        overflow: hidden;
    }

    .gift-card::before {
        content: "";
        position: absolute;
        top: -50%;
        left: -50%;
        width: 200%;
        height: 200%;
        background: radial-gradient(circle, rgba(255, 255, 255, 0.3) 0%, rgba(255, 255, 255, 0) 70%);
        transform: rotate(30deg);
    }

    .gift-card-dark {
        background: linear-gradient(135deg, #6a11cb 0%, #2575fc 100%);
    }

    .gift-card-code {
        letter-spacing: 3px;
        font-family: monospace;
    }

    .tab-content {
        transition: all 0.3s ease;
    }

    .modal-enter {
        opacity: 0;
        transform: scale(0.9);
    }

    .modal-enter-active {
        opacity: 1;
        transform: scale(1);
        transition: opacity 300ms, transform 300ms;
    }

    .modal-exit {
        opacity: 1;
    }

    .modal-exit-active {
        opacity: 0;
        transform: scale(0.9);
        transition: opacity 300ms, transform 300ms;
    }

    .toggle-switch {
        position: relative;
        display: inline-block;
        width: 3.5rem;
        height: 2rem;
    }

    .toggle-switch input {
        opacity: 0;
        width: 0;
        height: 0;
    }

    .toggle-slider {
        position: absolute;
        cursor: pointer;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: #e2e8f0;
        transition: .4s;
        border-radius: 2rem;
    }

    .toggle-slider:before {
        position: absolute;
        content: "";
        height: 1.5rem;
        width: 1.5rem;
        left: 0.25rem;
        bottom: 0.25rem;
        background-color: white;
        transition: .4s;
        border-radius: 50%;
    }

    input:checked + .toggle-slider {
        background-color: var(--color-primary);
    }

    input:checked + .toggle-slider:before {
        transform: translateX(1.5rem);
    }

    .dark .toggle-slider {
        background-color: #4b5563;
    }

    .dark input:checked + .toggle-slider {
        background-color: var(--color-primary-500);
    }

    .tab-active {
        background-color: rgba(59, 130, 246, 0.1);
        color: #3B82F6;
    }

    .dark .tab-active {
        background-color: rgba(59, 130, 246, 0.2);
        color: #60A5FA;
    }

    .auth-bg {
        background-image: url('../images/auth/background.png');
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
    }

    .input-icon {
        left: 12px;
        right: auto;
    }

    .password-toggle {
        left: 12px;
        right: auto;
        cursor: pointer;
    }

    @media (max-width: 1024px) {
        .auth-bg {
            background-image: none;
        }
    }

    .step {
        display: none;
    }

    .step.active {
        display: block;
        animation: fadeIn 0.5s ease;
    }

    @keyframes fadeIn {
        from {
            opacity: 0;
            transform: translateY(10px);
        }

        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    .step-indicator {
        display: flex;
        justify-content: center;
        margin-bottom: 2rem;
    }

    .step-circle {
        width: 40px;
        height: 40px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-weight: bold;
        margin: 0 0.5rem;
        position: relative;
    }

    .step-circle.active {
        background-color: #3B82F6;
        color: white;
    }

    .step-circle.inactive {
        background-color: #E5E7EB;
        color: #6B7280;
    }

    .step-line {
        height: 2px;
        background-color: #E5E7EB;
        flex-grow: 1;
        margin: auto 0;
        position: relative;
    }

    .step-line.active {
        background-color: #3B82F6;
    }

    .password-strength {
        height: 4px;
        background-color: #E5E7EB;
        margin-top: 8px;
        border-radius: 2px;
        overflow: hidden;
    }

    .password-strength-bar {
        height: 100%;
        width: 0;
        transition: width 0.3s ease, background-color 0.3s ease;
    }

    .password-strength-weak {
        background-color: #EF4444;
        width: 33%;
    }

    .password-strength-medium {
        background-color: #F59E0B;
        width: 66%;
    }

    .password-strength-strong {
        background-color: #10B981;
        width: 100%;
    }

    .password-requirements {
        margin-top: 8px;
        font-size: 0.8rem;
        color: #6B7280;
    }

    .requirement {
        display: flex;
        align-items: center;
        margin-bottom: 4px;
    }

    .requirement-icon {
        margin-left: 4px;
    }

    .requirement.valid {
        color: #10B981;
    }

    .requirement.invalid {
        color: #EF4444;
    }

    .auth-bg {
        background-image: url('../images/panel/photo-1581291518633-83b4ebd1d83e.jpg');
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
    }

    .input-icon {
        left: 12px;
        right: auto;
    }

    .password-toggle {
        left: 12px;
        right: auto;
        cursor: pointer;
    }

    @media (max-width: 1024px) {
        .auth-bg {
            background-image: none;
        }
    }

    @keyframes fadeIn {
        from {
            opacity: 0;
            transform: translateY(10px);
        }

        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    .fade-in {
        animation: fadeIn 0.5s ease;
    }

    .input-error {
        border-color: #EF4444;
    }

    .error-message {
        color: #EF4444;
        font-size: 0.75rem;
        margin-top: 0.25rem;
    }

    .tab-button {
        transition: all 0.3s ease;
    }

    .tab-button.active {
        background-color: #3B82F6;
        color: white;
    }

    .tab-button:not(.active):hover {
        background-color: #EFF6FF;
    }

    .dark .tab-button:not(.active):hover {
        background-color: #1E3A8A;
    }

    .countdown {
        font-family: monospace;
    }

    .accordion-content {
        transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease;
    }

    .gradient-text {
        background-clip: text;
        -webkit-background-clip: text;
        color: transparent;
    }

    .pattern-dots {
        background-image: radial-gradient(currentColor 1px, transparent 1px);
        background-size: 10px 10px;
    }
}

@keyframes float {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-20px);
    }
}

@media print {

    .no-print,
    .sidebar,
    header {
        display: none !important;
    }

    body {
        background: white !important;
        font-size: 12px;
    }

    .invoice-box {
        box-shadow: none !important;
        border: 1px solid #ddd !important;
    }
}

@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}

@keyframes ping {

    75%,
    100% {
        transform: scale(2);
        opacity: 0;
    }
}

@keyframes pulse {
    50% {
        opacity: 0.5;
    }
}

@keyframes bounce {

    0%,
    100% {
        transform: translateY(-25%);
        animation-timing-function: cubic-bezier(0.8, 0, 1, 1);
    }

    50% {
        transform: none;
        animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
    }
}

@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;
    initial-value: rotateX(0);
}

@property --tw-rotate-y {
    syntax: "*";
    inherits: false;
    initial-value: rotateY(0);
}

@property --tw-rotate-z {
    syntax: "*";
    inherits: false;
    initial-value: rotateZ(0);
}

@property --tw-skew-x {
    syntax: "*";
    inherits: false;
    initial-value: skewX(0);
}

@property --tw-skew-y {
    syntax: "*";
    inherits: false;
    initial-value: skewY(0);
}

@property --tw-pan-x {
    syntax: "*";
    inherits: false;
}

@property --tw-pan-y {
    syntax: "*";
    inherits: false;
}

@property --tw-pinch-zoom {
    syntax: "*";
    inherits: false;
}

@property --tw-scroll-snap-strictness {
    syntax: "*";
    inherits: false;
    initial-value: proximity;
}

@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-inset-shadow {
    syntax: "*";
    inherits: false;
    initial-value: 0 0 #0000;
}

@property --tw-inset-shadow-color {
    syntax: "*";
    inherits: false;
}

@property --tw-ring-color {
    syntax: "*";
    inherits: false;
}

@property --tw-ring-shadow {
    syntax: "*";
    inherits: false;
    initial-value: 0 0 #0000;
}

@property --tw-inset-ring-color {
    syntax: "*";
    inherits: false;
}

@property --tw-inset-ring-shadow {
    syntax: "*";
    inherits: false;
    initial-value: 0 0 #0000;
}

@property --tw-ring-inset {
    syntax: "*";
    inherits: false;
}

@property --tw-ring-offset-width {
    syntax: "<length>";
    inherits: false;
    initial-value: 0px;
}

@property --tw-ring-offset-color {
    syntax: "*";
    inherits: false;
    initial-value: #fff;
}

@property --tw-ring-offset-shadow {
    syntax: "*";
    inherits: false;
    initial-value: 0 0 #0000;
}

@property --tw-outline-style {
    syntax: "*";
    inherits: false;
    initial-value: solid;
}

@property --tw-blur {
    syntax: "*";
    inherits: false;
}

@property --tw-brightness {
    syntax: "*";
    inherits: false;
}

@property --tw-contrast {
    syntax: "*";
    inherits: false;
}

@property --tw-grayscale {
    syntax: "*";
    inherits: false;
}

@property --tw-hue-rotate {
    syntax: "*";
    inherits: false;
}

@property --tw-invert {
    syntax: "*";
    inherits: false;
}

@property --tw-opacity {
    syntax: "*";
    inherits: false;
}

@property --tw-saturate {
    syntax: "*";
    inherits: false;
}

@property --tw-sepia {
    syntax: "*";
    inherits: false;
}

@property --tw-drop-shadow {
    syntax: "*";
    inherits: false;
}

@property --tw-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-contain-size {
    syntax: "*";
    inherits: false;
}

@property --tw-contain-layout {
    syntax: "*";
    inherits: false;
}

@property --tw-contain-paint {
    syntax: "*";
    inherits: false;
}

@property --tw-contain-style {
    syntax: "*";
    inherits: false;
}

@property --tw-content {
    syntax: "*";
    initial-value: "";
    inherits: false;
}


.minimal-font {
    font-size: 14px !important;
    font-weight: 400 !important;
}

.discount-plc {
    top: -10px;
    left: 12px;
}

/* .color-blue-link{
  color: var(--color-blue-600);
} */


.nav-ul-x37 {
    display: flex;
    position: relative;
    padding-bottom: 10px;
    direction: rtl;
}

.nav-ul-x37 li {
    list-style: none;
    position: relative;
}

.nav-link-x37 {
    text-decoration: none;
    color: inherit;
    transition: color 0.3s ease;
}


/* خط زیر منو */
.nav-underline-x37 {
    position: absolute;
    bottom: 0;
    height: 1px;
    background-color: rgb(236, 96, 14);
    transition: all 0.3s ease;
    width: 0;
    left: 0;
}


@media (max-width: 640px) {
    .resp-header {
        padding: 0.75rem;
        margin: 0.75rem;
        top: 0.5rem;
        border-radius: 0.75rem;
    }
}


/* .swiper-button-prev, .swiper-rtl .swiper-button-next{
    left: var(--swiper-navigation-sides-offset, 1722px) ;
    right: auto;
    top: 308px;
}


.swiper-button-next, .swiper-rtl .swiper-button-prev{
  right: var(--swiper-navigation-sides-offset, 61px);
    left: auto;
} */


.art-width {
    width: 200px;
}


.eight-card-core {
    background-color: #e5e7eb;
}

.eight-card-svg {
    border: 1px dashed rgb(0, 0, 0);
    border-radius: 0.5rem;
    padding: 10px;
}


.eight-card-svg2 {
    border: 1px dashed rgb(255, 255, 255);
    border-radius: 0.5rem;
    padding: 10px;
}


/*

@media only screen and (max-width: 600px) {
  .hover-eight:hover{
    background-color: red !important;
  }
}
 */

.cat-num {
    font-weight: 600;
    font-size: 26px;
    color: #d20707;
    padding-right: 10px;
}


.cat-img {
    width: 100px;
    /* padding-top: 14px; */
}

.cat-txt {
    width: 100%;
    padding-right: 10px;
}

.containerHeader {
    max-width: 1580px;
    margin: auto;
}

.container {
    max-width: 1428px;
}


.cat2-img {
    width: 80px;
}

.cat2-txt {
    font-size: 15px;
    font-weight: 200;
    padding-top: 25px;
    padding-bottom: 15px;
    padding-right: 15px;
    padding-left: 15px;
}


/* start amazing */

.amazing-slider {
    position: relative;
    padding: 20px 0;
    max-height: 400px;
}

.amazing-slider .parent {
    padding: 0 10px 0 10px;
    min-height: 390px;
    max-height: 390px;
    overflow-y: scroll;
    position: relative;
}

.amazing-slider .parent .item .title {
    height: 90px;
}

.amazing-slider .parent .item {
    cursor: pointer;
    margin-bottom: 20px;
    background-color: #fff;
    padding: 12.5px 10px;
    border-radius: 10px;
    box-shadow: var(--shadow-box);
}

.amazing-slider .parent .item:last-child {
    margin-bottom: 0;
}

.danger-label {
    padding: 5px 10px;
    background-color: #fc6d6d3b;
    border-radius: 5px;
    color: #f21919;
    font-size: 13px;
    display: inline-block;
    font-family: var(--main-font);
    font-weight: normal;
}

.success-label {
    padding: 5px 10px;
    background-color: #6dfc9d3b;
    border-radius: 5px;
    color: #017040;
    font-size: 13px;
    display: inline-block;
    font-family: var(--main-font);
    font-weight: normal;
}

.warning-label {
    padding: 5px 10px;
    background-color: #fcdc3c3b;
    border-radius: 5px;
    color: #705d01;
    font-size: 13px;
    display: inline-block;
    font-family: var(--main-font);
    font-weight: normal;
}

.amazing-slider .slider-item {
    padding: 15px;
}

.amazing-slider .slider-item .meta {
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    padding-top: 10px;
    padding-bottom: 10px;
}


.amazing-slider .countdown-container .seconds-bottom {
    background-color: #ef473a !important;
    color: #fff !important;
}

.amazing-slider .countdown-container .countdown-heading {
    font-size: 12px;
    font-weight: bold;
    margin: 3px 0;
    color: #333333;
}

.amazing-slider .countdown-container .countdown-value {
    background: #eee;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 14px;
    width: 40px;
    height: 40px;
    padding: 10px;
    color: #333333;
    border-radius: 5px;
    font-weight: bold;
    box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
}

.amazing-slider .slider-item .title {
    height: 40px;
    overflow-y: hidden;
}

.amazing-slider .slider-item .short-desc {
    height: 90px;
    overflow-y: hidden;
    margin-bottom: 10px;
}

.amazing .slider-item .meta span.nav-link {
    padding: 0;
}

.amazing-slider-link .swiper-slide {
    width: 100% !important;
    margin: 0;
    margin-bottom: 20px;
}

.amazing-slider-link .swiper-wrapper {
    flex-direction: column !important;
    transform: translate3d(0px, 0px, 0px) !important;
    -webkit-transform: translate3d(0px, 0px, 0px) !important;
    -moz-transform: translate3d(0px, 0px, 0px) !important;
    -ms-transform: translate3d(0px, 0px, 0px) !important;
    -o-transform: translate3d(0px, 0px, 0px) !important;
}

.amazing-slider-link .swiper-slide-thumb-active .item {
    border-right: 4px solid var(--main-color-one);
}


/* end amazing */


.swiper-slidebr {
    width: 160px !important;
}


@media (min-width: 1024px) {
    .py35px {
        padding-top: 35px;
        padding-bottom: 35px;
    }
}


.carousel-spe-back {
    background: linear-gradient(to right, #91000b, #d20707);
    width: 245px;
    height: 131px;
    border-radius: 0.75rem;
    margin-top: 147px;
}

.slider-pagination-bg {
    left: 938px !important;
    bottom: -4px !important;
}


.carousel-spe-back-img {
    position: absolute;
    left: 38px;
    bottom: 90px;
    width: 224px;
}

/* .carousel-spe-back-img2{
    position: absolute;
    bottom: 90px;
    width: 224px;
}


.carousel-spe-text{
    position: absolute;
    left: 128px;
    bottom: 44px;
    text-align: center;
}



.carousel-spe-price{
    position: absolute;
    left: 118px;
    bottom: 22px;
    text-align: center;
} */


.main-hover:hover {
    background-image: linear-gradient(to right, var(--color-tertiary-600), var(--color-primary-600));
    color: white;
}


.suggested-product {
    position: relative;
    padding-right: 10px;
}

.suggested-product::after {
    position: absolute;
    content: '';
    width: 23px;
    height: 3px;
    background: linear-gradient(to right, #ff3a2f, #d20707);
    right: -21px;
    bottom: 14px;
    border-radius: 10%;
    overflow: hidden;
}


.vc-bg {
    background-color: #272c48;
}


.vc-carousel {
    height: 500px;
    overflow-y: auto;
    scroll-snap-type: y mandatory;
    border-radius: 0 0 20px 20px;
    background: #1e293b;
    padding: 1.5rem;

    /* حذف نوار اسکرول */
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.vc-carousel::-webkit-scrollbar {
    display: none;
}

.vc-item {
    scroll-snap-align: center;
    background: #1e293b;
    border: 2px solid transparent;
    /* padding: 15px; */
    margin-bottom: 15px;
    border-radius: 0.75rem;
    /* display: flex; */
    /* justify-content: space-between; */
    /* align-items: center; */
    transition: border 0.3s;
    height: 135px;
}


.vc-item.vc-active {
    border: 1px solid #d20707;
    position: relative;
    background-color: #1e293b;
    /* رنگ زمینه کارت */
    overflow: hidden;
}

.vc-item.vc-active::after {
    position: absolute;
    content: '';
    width: 50px;
    height: 50px;
    border-radius: 10px;
    transform: rotate(90deg);
    right: -42px;
    background: #d20707;
    top: 38px;
}


.vc-item img {
    width: 80px;
    height: 118px !important;
    height: auto;
}

.vc-info {
    flex: 1;
    /* padding-right: 40px; */
}

.vc-price {
    font-weight: black;
    text-align: end;
}

.vc-discount {
    background: #ef4444;
    padding: 2px 6px;
    border-radius: 5px;
    font-size: 12px;
    margin-bottom: 5px;
    display: inline-block;
}

.vc-title {
    font-size: 14px;
    margin-bottom: 5px;
    text-align: start;
}


.img-banner {
    position: relative;
    /* 👈 این خط ضروریه */
}

.img-banner::after {
    position: absolute;
    content: '';
    width: 176px;
    height: 211px;
    text-align: center;
    margin: auto;
    background: linear-gradient(268.76deg, #f1f1f124 .92%, #ffffff38 98.78%);
    border-radius: 0px 129px 129px 0px;
    mix-blend-mode: lighten;
    left: -54px;
    top: 0;
    bottom: 0;
}


.scrollbar-hide::-webkit-scrollbar {
    display: none;
}

.scrollbar-hide {
    -ms-overflow-style: none;
    /* IE and Edge */
    scrollbar-width: none;
    /* Firefox */
}


.my-vertical-tabs {
    display: flex;
    font-family: dana;
    height: 322px;
    border: 1px solid #ececec;
    border-radius: 10px;
    overflow: hidden;
    background-color: #fff;
}

/*.my-tab-buttons {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  width: 400px;*/
/*  background-color: #f9f9f9;*/
/*  border-left: 1px solid #ddd;*/
/*}*/

/*.my-tab-btn {*/
/*  padding: 6px;*/
/*  text-align: right;*/
/*  border: none;*/
/*  background: none;*/
/*  cursor: pointer;*/
/*  font-weight: normal;*/
/*  transition: all 0.2s ease;*/
/*  width: 100%;*/
/*  font-size: 14px;*/
/*  position: relative;*/
/*  z-index: 1;*/
/*  touch-action: manipulation;*/
/*}*/

/*.my-tab-btn:hover {*/
/*  background-color: #eee;*/
/*}*/

/*.my-tab-btn.active {*/
/*  background: linear-gradient(to right, rgb(172, 0, 0), #d20707);*/
/*  color: white;*/
/*  position: relative;*/
/*}*/

/*.my-tab-btn.active::before {*/
/*  content: '';*/
/*  position: absolute;*/
/*  width: 5px;*/
/*  height: 100%;*/
/*  right: -8px;*/
/*  top: 0;*/
/*  border-radius: 30px;*/
/*  background: linear-gradient(to left, rgb(172, 0, 0), #d20707);*/
/*}*/


/*.my-tab-content {*/
/*  flex: 1;*/
/*  !*padding: 20px;*!*/
/*  background-color: #fff;*/
/*  position: relative;*/
/*}*/

/*.my-tab-panel {*/
/*  position: absolute;*/
/*  top: 0;*/
/*  left: 0;*/
/*  width: 100%;*/
/*  opacity: 0;*/
/*  visibility: hidden;*/
/*  animation: myFadeIn 0.3s ease forwards;*/
/*}*/

/*.my-tab-panel.active {*/
/*  opacity: 1;*/
/*  visibility: visible;*/
/*}*/

@keyframes myFadeIn {
    from {
        opacity: 0;
        transform: translateY(5px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}


.panel1-class {
    display: inline-block;
    /* باعث میشه عرض فقط اندازه محتوا بشه */
    background: linear-gradient(to right, #d20707, #92020e);
    padding: 0.5rem 1rem;
    /* کمی فاصله اضافه میکنه که رنگ بهتر دیده بشه */
    border-radius: 0rem 0.67rem 0rem 1.5rem;
    /* اگر دوست دارید گوشه‌ها گرد باشن */
}

.glowww {
    position: absolute;
    bottom: -35px;
    width: 160px;
    height: 50px;
    background: linear-gradient(to left, #d20707, #92020e);
    border-radius: 10023px;
    z-index: 0;
}


.my-tab-buttons {
    position: relative;
    /* برای اینکه دکمه پایین نسبت به این والد موقعیت یابد */
    padding-bottom: 50px;
    /* فضایی برای دکمه پایین ایجاد می‌کند */
}

.bottom-btn {
    position: absolute;
    font-size: 14px;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 40px;
    background: linear-gradient(to left, rgb(172, 0, 0), #d20707);
    color: white;
    border: none;
    cursor: pointer;
    text-align: right;
    display: flex;
    align-items: center;
    gap: 8px;
}


.bottom-btn .ttt {
    width: 30px;
    height: 40px;
    background-color: rgba(255, 255, 255, 0.2);
    /* سفید مات با 20% شفافیت */
    border-radius: 28px 0 0 28px;
    /* گوشه‌های گرد */
    backdrop-filter: blur(5px);
    /* افکت شیشه‌ای */
    -webkit-backdrop-filter: blur(5px);
    /* پشتیبانی برای سافاری */
}


.hover-img-box:hover img {
    filter: grayscale(100%);
    transition: filter 0.3s ease;
}


.eight-card-core:hover {
    background-image: linear-gradient(to right, var(--color-tertiary-600), var(--color-primary-600));
    color: white;
}


.eight-card-core:hover .eight-card-svg {
    border: 1px dashed white;
    filter: grayscale(100%);
}


.swiper-pagination {
    bottom: -5px !important;
}


.swiper-button-next,
.swiper-button-prev {
    color: orange;
    /* یا مثلا #f97316 برای نارنجی Tailwind */
}


.pr-11 {
    padding-right: 5px;
}


.button-cu {

    border-radius: 7px;
    /* border: 2px solid transparent; */

    text-shadow: 1px 1px 1px #00000040;
    box-shadow: 8px 8px 20px 0px #45090059;

    padding: 10px 40px;
    line-height: 20px;
    cursor: pointer;
    transition: all 0.3s;
    color: white;
    font-size: 18px;
    font-weight: 500;
}

.button-cu:hover {
    box-shadow: none;
    opacity: 80%;
}


@media (max-width: 767px) {
    .img-width-height {
        width: 365px;
        height: 200px;

    }
}


@media (max-width: 767px) {
    .hiddenSwipButton {
        display: none !important;
    }

    .resWidthMainImg {
        width: 220px;
    }

    .noBorderBottom {
        border-bottom: none !important;
        border-top: none !important;
        border: none !important;
    }

    .res-button-buy-item-cat {
        width: 15px !important;
        height: 15px !important;

    }


}


@media (max-width: 640px) {
    .sm-no-flex {
        display: block;
        text-align: center;

    }

    .sm-no-flex > * {
        display: inline-block;
        text-align: center;
        margin-left: auto;
        margin-right: auto;
    }

    .sm-no-flex img {
        display: block;
        margin-left: auto;
        margin-right: auto;
    }

    .res-pr-3-spe {
        padding-right: 0;
    }

    .border-r-sm-js {
        border-right: 1px solid #e8e9ed;
    }
}


.res-button-buy-item-cat {
    width: 22px !important;
    height: 22px !important;

}


@media (min-width: 1024px) {
    .hiddenSwipButton2 {
        display: none !important;
    }
}


@media (max-width: 767px) {
    .swiper-slide .slide-caption {
        /* همون تنظیمات انیمیشن */
    }

    .swiper-slide:hover .slide-caption,
    .swiper-slide:focus-within .slide-caption {
        /* فعال کردن انیمیشن روی هاور یا فوکوس */
    }
}


.scroll-container {
    display: flex;
    overflow-x: auto;
    /* فعال کردن اسکرول افقی */
    overflow-y: hidden;
    /* جلوگیری از اسکرول عمودی */
    gap: 16px;
    /* فاصله بین آیتم‌ها */
    padding: 10px;
    scroll-behavior: smooth;
    /* اسکرول نرم */

    scrollbar-width: none;
    /* مخفی کردن اسکرول در فایرفاکس */
    -ms-overflow-style: none;
    /* مخفی کردن اسکرول در IE و Edge */
}

.scroll-container::-webkit-scrollbar {
    display: none;
    /* مخفی کردن اسکرول در مرورگرهای وب‌کیت */
}

.item {
    flex: 0 0 auto;
    width: 200px;
    height: 80px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    user-select: none;
}


.container-cat {
    /* width: 332px; */
    margin: 0px 10px 20px 10px;
}


.container-cat-text {
    font-size: 18px;
    font-weight: 500;
}


.single-card-carousel-height {
    height: 336px;
}

@media (max-width: 767px) {
    .single-card-carousel-height {
        height: 368px;
    }

    .container-cat-text {
        font-size: 14px;
        font-weight: 600;
        margin: 5px 10px;
    }

    .res-font-size-name {
        font-weight: 500;
    }


    .res-font-size-price {
        font-size: 12px;
    }

    .res-font-size-off {
        font-size: 9px;
    }


}


.progressH {
    height: 1px;
}


@media (max-width: 767px) {
    .mobile-scroll-tabs {
        overflow-x: auto;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
        font-size: 13px;
    }

    .mobile-scroll-tabs .tab-btn {
        flex-shrink: 0;
    }


    .res-border-car-card {
        border: 1px solid rgb(236, 236, 236);
    }


    /* .carousel-spe-text{
    position: absolute;
    left: 165px;
    bottom: 94px;
    text-align: center;
}



.carousel-spe-price{
    position: absolute;
    left: 160px;
    bottom: 35px;
    text-align: center;
}


.carousel-spe-off{
    position: absolute;
    left: 146px;
    bottom: 61px;
    text-align: center;
} */


}

/*
.carousel-spe-off{
    position: absolute;
    left: 146px;
    bottom: 65px;
    text-align: center;
} */


@media (min-width: 1024px) {
    .border-gray-main-res {
        border: 1px solid rgb(236, 236, 236);
        border-radius: 0.75rem;
    }
}


.plc-style::placeholder {
    padding-right: 20px;
    font-size: 14px !important;
}


.swiper-button-next:after,
.swiper-button-prev:after {
    font-size: 25px !important;
}


.swiper-pagination-bullet-active {
    background-color: orangered;
    width: 20px;
    border-radius: 4px;
}


.breadcrumbs {
    color: #3b64d3 !important;
}

/* Single product: warranty, highlights and short summary */
.product-info-panels {
    --product-info-border: #e8edf4;
    --product-info-muted: #697386;
    --product-info-surface: #fff;
    display: grid;
    gap: 12px;
    margin-top: 18px;
}

.product-info-card {
    position: relative;
    display: flex;
    gap: 14px;
    padding: 16px;
    overflow: hidden;
    border-radius: 16px;
    background: var(--product-info-surface);
    box-shadow: 0 5px 18px rgba(30, 41, 59, 0.045);
}

.product-info-card::before {
    content: "";
    position: absolute;
    inset: 0 0 0 auto;
    width: 3px;
    border-radius: 0 16px 16px 0;
    background: #3b64d3;
}

.product-info-icon {
    display: inline-flex;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
}

.product-info-icon svg {
    width: 23px;
    height: 23px;
}

.product-info-icon--warranty {
    color: #15803d;
    background: #ecfdf3;
}

.product-info-icon--features {
    color: #315ac7;
    background: #eef3ff;
}

.product-info-icon--summary {
    color: #b45309;
    background: #fff7e8;
}

.product-info-content {
    min-width: 0;
    flex: 1;
}

.product-info-heading {
    display: flex;
    align-items: center;
    gap: 8px;
}

.product-info-card h4 {
    margin: 0;
    color: #1f2937;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.9;
}

.product-info-badge {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 1px 8px;
    border: 1px solid #bbf7d0;
    border-radius: 999px;
    color: #15803d;
    background: #f0fdf4;
    font-size: 10px;
    font-weight: 700;
}

.product-warranty-card::before {
    background: #22a05a;
}

.product-warranty-name {
    margin: 3px 0 0;
    color: var(--product-info-muted);
    font-size: 13px;
    font-weight: 500;
    line-height: 1.9;
}

.product-features-card {
    display: block;
}

.product-info-section-heading {
    display: flex;
    gap: 12px;
    align-items: center;
    margin-bottom: 14px;
}

.product-info-section-heading p {
    margin: 0;
    color: #8a94a6;
    font-size: 11px;
    line-height: 1.7;
}

.product-feature-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.product-feature-grid--extra {
    margin-top: 8px;
}

.product-feature-item {
    display: flex;
    min-width: 0;
    flex-direction: row;
    gap: 10px;
    padding: 10px 12px;
    border: 1px solid #edf0f5;
    border-radius: 12px;
    background: #f8fafc;
    align-items: center;
}

.product-feature-label {
    overflow: hidden;
    color: #7a8495;
    font-size: 11px;
    line-height: 1.7;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.product-feature-value {
    overflow-wrap: anywhere;
    color: #2d3748;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.8;
}

.product-features-toggle {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    gap: 5px;
    margin-top: 10px;
    padding: 5px 10px;
    border: 0;
    border-radius: 9px;
    color: #315ac7;
    background: #f1f5ff;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
    transition: color .2s ease, background-color .2s ease;
}

.product-features-toggle:hover {
    color: #2448a7;
    background: #e7edff;
}

.product-features-toggle svg {
    width: 17px;
    height: 17px;
    transition: transform .2s ease;
}

.product-features-toggle.is-expanded svg {
    transform: rotate(180deg);
}

.product-summary-card::before {
    background: #f59e0b;
}

.product-summary-text {
    margin-top: 3px;
    color: #586274;
    font-size: 13px;
    line-height: 2;
}

.product-summary-text > :first-child {
    margin-top: 0;
}

.product-summary-text > :last-child {
    margin-bottom: 0;
}

.dark .product-info-panels {
    --product-info-border: #3b4250;
    --product-info-muted: #b3bdcc;
    --product-info-surface: #272c35;
}

.dark .product-info-card h4,
.dark .product-feature-value {
    color: #f4f6fa;
}

.dark .product-feature-item {
    border-color: #404754;
    background: #303640;
}

.dark .product-feature-label,
.dark .product-summary-text,
.dark .product-info-section-heading p {
    color: #aeb8c8;
}

@media (max-width: 767px) {
    .product-info-panels {
        gap: 10px;
        margin-top: 14px;
    }

    .product-info-card {
        gap: 11px;
        padding: 13px;
        border-radius: 14px;
        box-shadow: none;
    }

    .product-info-icon {
        flex-basis: 38px;
        width: 38px;
        height: 38px;
        border-radius: 11px;
    }

    .product-info-icon svg {
        width: 21px;
        height: 21px;
    }

    .product-feature-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .product-feature-item {
        display: grid;
        grid-template-columns: minmax(88px, .8fr) minmax(0, 1.2fr);
        align-items: center;
        gap: 10px;
        padding: 9px 11px;
    }

    .product-feature-label {
        white-space: normal;
    }
}


.buyBox {
    border: 1px solid #f3f3f3;
    padding: 18px;
    background-color: #f8f8f8;
    border-radius: 14px;
    margin: 72px 15px 15px 15px;
    /* top, right, bottom, left */
}


@media (max-width: 767px) {
    .buyBox {
        margin: 2px 2px 2px 2px;
        background-color: #fff;
        padding: 12px 12px 0 12px;


    }

    .resButton {
        padding: 6px 12px;
    }

    .resPaddingRight {
        padding-right: 3%;
    }

    .resH2 {
        font-size: 12px;
        text-align: right;
    }

    .containerHeader {
        max-width: 400px;
        margin: auto;
    }

    .buyBoxShopName {
        border-bottom: none;
        padding-bottom: 0;

    }


    .buyBoxguarantee {
        border-bottom: none;
    }

    .buyBoxOrginal {
        border-bottom: none;
    }


    .buyBoxStock {
        border-bottom: none;
    }


}


.buyBoxShopName {
    font-size: 17px;
    border-bottom: 1px solid #e4e4e4;
    padding-bottom: 10px;
}

@media (max-width: 768px) {
    .buyBoxShopName {
        border-bottom: none;
        padding-bottom: 0;
    }

    .product-box-item .image img {
        width: 110px;
        height: 110px;

    }
}


.buyBoxguarantee {
    font-size: 13px;
    font-weight: 500;
    padding-top: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #e4e4e4;
}

/* حذف border در موبایل */
@media (max-width: 768px) {
    .buyBoxguarantee {
        border-bottom: none;
        padding-bottom: 0;
    }
}


.buyBoxOrginal {
    font-size: 13px;
    font-weight: 500;
    padding-top: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #e4e4e4;
}

/* در موبایل border-bottom حذف شود */
@media (max-width: 768px) {
    .buyBoxOrginal {
        border-bottom: none;
        padding-bottom: 0;
    }
}


.buyBoxStock {
    font-size: 13px;
    font-weight: 500;
    padding-top: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #e4e4e4;
}


.shopNameShippingServise {
    font-size: 13px;
    font-weight: 400;
}

.buyBoxOffPerc {
    background-image: linear-gradient(#ff0044, #ff9900) !important;
    color: white;
    border-radius: 7px;
    padding-left: 10px;
    padding-right: 10px;
    font-size: 14px;
    font-weight: 200;
}

.d-flex-buyBoxOffPercDiv {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.buyBoxOffprice {
    color: #ff6a00 !important;
    text-decoration: line-through;
    padding-left: 9px;
    font-size: 15px;
    font-weight: 200;
}

.buyBoxTomanSpan {
    font-size: 15px;
    font-weight: 200;
}

.buyBoxAddToCart {
    background-image: linear-gradient(45deg, #ff0909, #ff9900) !important;
    color: white;
    border-radius: 10px;
    padding: 8px 30px;
    background-size: 400% 400%;
    animation: backgroundMove 5s ease infinite;
}

.selected-green-tag {
    font-weight: 200;
    border: 1px solid white;
    border-radius: 100px;
    background-color: #dfefe6;
    color: green;
    padding: 0px 8px 0px 8px;
    font-size: 15px;
}


.text-green {
    color: #00a049;
}


.pr-8px {
    padding-right: 8px;
}

.buyboxInDecBox {
    border: 1px solid #e4e4e4;
    border-radius: 10px;
    padding: 2px 4px;
}


.btnAddToCartNew {
    color: white;
    border-radius: 10px;
    padding: 6px 28px;
}


.btnAddToCartFooter {
    background-image: linear-gradient(#ff0909, #ff9900) !important;
    color: white;
    border-radius: 10px;
    padding: 8px 22px;
}


.pt-113px {
    padding-top: 113px;
}


.border-b-orange-200 {
    border-bottom: 2px solid orangered;
}


@font-face {
    font-family: cin;
    src: url(../fonts/cinema/Cinema\ Font\ \(\ www.rezagraphic.ir\ \).ttf);
}


.custom-checkbox {
    display: inline-flex;
    align-items: center;
    border: 2px solid #1051ef;
    border-radius: 0.75rem;
    padding: 4px 9px;
    font-family: sans-serif;
    font-size: 14px;
    cursor: pointer;
    transition: border-color 0.3s;
}

.custom-checkbox input[type="checkbox"] {
    display: none;
}

.check-icon {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: 8px;
    transition: background-color 0.3s, border-color 0.3s;
}

.check-icon svg {
    display: none;
}

/* حالت انتخاب‌شده */
.custom-checkbox input[type="checkbox"]:checked + .check-icon svg {
    display: block;
}

.custom-checkbox input[type="checkbox"]:checked + .check-icon {
    background-color: #1051ef;
    border-color: #1051ef;
}

.custom-checkbox span {
    white-space: nowrap;
}

/* ✅ حالت غیرفعال */
.custom-checkbox input[type="checkbox"]:disabled + .check-icon {
    border-color: #ccc;
    background-color: #f5f5f5;
}

.custom-checkbox input[type="checkbox"]:disabled:checked + .check-icon {
    background-color: #ccc;
}

.custom-checkbox input[type="checkbox"]:disabled ~ span {
    color: #999;
}

.custom-checkbox input[type="checkbox"]:disabled ~ .check-icon svg {
    stroke: #fff;
}

.custom-checkbox input[type="checkbox"]:disabled ~ .check-icon {
    cursor: not-allowed;
}

.custom-checkbox input[type="checkbox"]:disabled ~ span,
.custom-checkbox input[type="checkbox"]:disabled ~ .check-icon {
    pointer-events: none;
}

/* خود لیبل غیرفعال */
.custom-checkbox input[type="checkbox"]:disabled ~ .check-icon,
.custom-checkbox input[type="checkbox"]:disabled ~ span {
    opacity: 0.6;
}


/* ظرف اصلی */
.unique-text-wrapper {
    transition: max-height 0.4s ease;
}

/* محدودیت 3 خط */
.max-h-\[4\.5em\] {
    max-height: 4.5em;
    /* تقریبا 3 خط با line-height=1.5em */
}

/* افکت تار پایین متن با گرادیانت */
.unique-fade-overlay {
    background: linear-gradient(to top, white, transparent);
}

/* وقتی باز است، افکت حذف شود */
.unique-text-wrapper.expanded + .unique-toggle-btn + .unique-fade-overlay {
    display: none;
}

/* استایل دکمه */
.unique-toggle-btn {
    cursor: pointer;
    font-weight: 600;
    text-align: center;
}


/* استایل پیش‌فرض چک‌باکس‌ها */
.custom-checkbox {
    appearance: none;
    width: 20px;
    height: 20px;
    border: 2px solid #ccc;
    border-radius: 4px;
    position: relative;
    cursor: pointer;
    transition: all 0.2s ease;
}

/* وقتی چک‌باکس انتخاب شد */
.custom-checkbox:checked {
    background-color: orangered;
    border-color: orangered;
}

/* تیک چک‌باکس */
.custom-checkbox:checked::after {
    content: "";
    position: absolute;
    top: 2px;
    left: 6px;
    width: 5px;
    height: 10px;
    border: solid white;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}


.zoom-container {
    position: relative;
    display: inline-block;
}

.zoom-lens {
    position: absolute;
    border: 2px solid #ff8229;
    width: 100px;
    height: 100px;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease;
    z-index: 10;
}

.zoom-result {
    position: absolute;
    top: 0;
    right: 150%;
    width: 300px;
    height: 300px;
    border: 2px solid #ff8229;
    background-repeat: no-repeat;
    background-size: 800px auto;
    /* بسته به سایز تصویر و بزرگنمایی */
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease;
    z-index: 20;
}

.zoom-container:hover .zoom-lens,
.zoom-container:hover .zoom-result {
    opacity: 1;
}

@media (max-width: 767px) {

    #zoomResult,
    #zoomLens {
        display: none !important;
    }
}


.fancybox__thumb {
    width: 73% !important;
}


@media (max-width: 768px) {
    .breadcrumb-scroll-wrapper {
        overflow-x: auto;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        /* برای فایرفاکس */
    }

    .breadcrumb-scroll-wrapper::-webkit-scrollbar {
        display: none;
        /* برای کروم و سافاری */
    }

    .breadcrumb-scroll-wrapper ol {
        display: inline-flex;
        min-width: max-content;
    }

    .resBorderMainInfo {
        border: 1px solid #f5f5f5;
        border-radius: 0.75rem;
    }


    .resSpecialOffer {
        font-size: 20px;
    }


    .W176H117 {
        width: 126px !important;
        height: 126px !important;
    }

    .gap-cat-res {
        gap: 10px;
    }

    .rounded-cat-item-res {
        border-radius: 1rem;
    }
}


.border-gray-f3f3f3 {
    border: 1px solid #f3f3f3;
}


.resBetterPriceTxt {
    margin-top: 8px;
}


.tab-filter__item {
    padding: 6px 14px;
    border-radius: 8px;
    color: #4a4a4a;
    font-size: 14px;
    background-color: transparent;
    transition: all 0.2s ease-in-out;
}


.tab-filter__item--active {
    background-color: #ff713d;
    color: #fff;
}


.dm-checkbox--wrapper {
    display: flex;
    align-items: center;
    flex-direction: row-reverse;
    justify-content: start;
    gap: 10px;
    padding: 8px 14px;
    border: 1px solid #e5e5e5;
    border-radius: 1rem;
    width: fit-content;
    cursor: pointer;
    transition: background-color 0.2s ease;
    font-family: inherit;
    font-size: 14px;
    color: #333;
    width: 100%;
    padding: 13px;
}

.dm-checkbox__label {
    order: 1;
    font-weight: 500;
    font-size: 18px;
    color: #ff6a00;
}

.dm-checkbox__input {
    appearance: none;
    width: 18px;
    height: 18px;
    background-color: #fff;
    border: 1px solid #999;
    border-radius: 4px;
    cursor: pointer;
    position: relative;
    transition: all 0.2s ease;
    order: 2;
}

.dm-checkbox__input:checked {
    background-color: #ff713d;
    border-color: #ff713d;
}

.dm-checkbox__input:checked::after {
    content: "";
    position: absolute;
    top: 2px;
    right: 5px;
    width: 4px;
    height: 9px;
    border: solid white;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

/* دارک مود */
.dark .dm-checkbox--wrapper {
    background-color: #222;
    border-color: #444;
    color: #fff;
}

.dark .dm-checkbox__input {
    background-color: #1a1a1a;
    border-color: #777;
}

.dark .dm-checkbox__input:checked {
    background-color: #ff713d;
    border-color: #ff713d;
}


.borderR50100 {
    border-radius: 5px 0 10px 0;
}


.W176H117 {
    width: 176px;
    height: 117px;
}


/* برای مرورگرهای مبتنی بر WebKit مثل کروم، سافاری و اج */
::-webkit-scrollbar {
    width: 6px;
    /* عرض اسکرول عمودی */
    height: 6px;
    /* ارتفاع اسکرول افقی */
}

::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, 0.3);
    border-radius: 3px;
}

/* برای فایرفاکس */
* {
    scrollbar-width: thin;
    /* باریک کردن اسکرول */
    scrollbar-color: rgba(0, 0, 0, 0.3) transparent;
    /* رنگ نوار اسکرول و بک‌گراند */
}


/* پنهان کردن نوار اسکرول با کلاس اختصاصی */
.custom-scroll-hide::-webkit-scrollbar {
    display: none;
}

.custom-scroll-hide {
    -ms-overflow-style: none;
    /* IE و Edge */
    scrollbar-width: none;
    /* Firefox */
}


/* مخفی کردن نوار اسکرول در مرورگرهای مختلف */
.hide-scrollbar::-webkit-scrollbar {
    display: none;
    /* برای Chrome, Safari, Opera */
}

.hide-scrollbar {
    -ms-overflow-style: none;
    /* برای IE و Edge */
    scrollbar-width: none;
    /* برای Firefox */
}


.custom-zoom-img-2025 {
    transition: transform 0.3s ease-in-out;
}

.custom-zoom-img-2025:hover {
    transform: scale(1.05);
}


.bg-pattern-spe {
    width: 100%;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    padding-left: 20px;
    padding-right: 20px;

    align-items: center;
    justify-content: center;
    padding-top: 35px;
    padding-bottom: 35px;
    background-image: url(https://pars.parskalas.com/wp-content/themes/parskala/assets/img/faq-pattern.svg);
    background-size: contain;
    background-position: top;
    background-repeat: no-repeat;
}


@media (max-width: 768px) {
    .bg-pattern-spe {
        width: 100%;
        max-width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding-top: 35px;
        padding-bottom: 35px;
        background-image: url(https://pars.parskalas.com/wp-content/themes/parskala/assets/img/faq-pattern.svg);
        background-size: contain;
        background-position: top;
        background-repeat: no-repeat;
    }
}


.bg-pattern-spe-color {
    background: linear-gradient(180deg, #e0e0e2, hsla(0, 0%, 100%, 0));
    width: 100%;
}


.bg-pattern-spe-login {
    width: 100%;
    max-width: 100%;
    display: flex;
    flex-direction: column;

    justify-content: center;
    padding-top: 35px;
    padding-bottom: 35px;
    background-image: url(https://pars.parskalas.com/wp-content/themes/parskala/assets/img/faq-pattern.svg);
    background-size: contain;
    background-position: top;
    background-repeat: no-repeat;
}


@media (max-width: 768px) {
    .bg-pattern-spe-login {
        width: 100%;
        max-width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding-top: 35px;
        padding-bottom: 35px;
        background-image: url(https://pars.parskalas.com/wp-content/themes/parskala/assets/img/faq-pattern.svg);
        background-size: contain;
        background-position: top;
        background-repeat: no-repeat;
    }

    .containermini {
        width: 400px !important;
        margin: auto;
    }
}


.bg-pattern-spe-color-login {
    background: linear-gradient(180deg, #e0e0e2, hsla(0, 0%, 100%, 0));
    width: 100%;
}


.selectable.selected {
    color: #3b82f6;
    /* blue-500 */
}

.selectable.selected p:nth-of-type(2) {
    font-size: 0.75rem;
    /* text-xs */
}

.selectable.selected::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: -12px;
    left: 0;
    height: 4px;
    background-color: #3b82f6;
    border-radius: 5px 5px 0 0;
    transform: scaleX(0);
    animation: underlineGrow 0.2s ease-out forwards;
}

@keyframes underlineGrow {
    from {
        transform: scaleX(0);
    }

    to {
        transform: scaleX(1);
    }
}


.cc-checkbox {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
    margin: 0;
    padding: 0;
}

.cc-label {
    position: relative;
    display: flex;
    justify-content: start;
    align-items: center;
    border: 2px solid #ccc;
    border-radius: 12px;
    padding: 7px 5px;
    cursor: pointer;
    user-select: none;
    transition: border-color 0.3s ease;
    direction: rtl;
    width: 126px;
}

.cc-text {
    font-size: 14px;
    color: #333;
}

.cc-circle {
    width: 24px;
    height: 24px;
    border: 2px solid #ccc;
    border-radius: 50%;
    background-color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: border-color 0.3s ease, background-color 0.3s ease;
}

.cc-checkbox:checked + .cc-label {
    border-color: #007bff;
}

.cc-checkbox:checked + .cc-label .cc-circle {
    border-color: #007bff;
    background-color: #007bff;
}

.cc-checkbox:checked + .cc-label .cc-circle .cc-checkmark {
    display: block;
}


.paybox-space {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.paybox-label {
    width: 100%;
    padding: 1rem;
    border-radius: 0.5rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
    border: 1px solid #e5e7eb;
    /* gray-200 */
    transition: background-color 0.2s ease-in-out, border-color 0.2s;
}

.paybox-label:hover {
    background-color: #f3f4f6;
    /* gray-100 */
}


.paybox-label-inner {
    display: flex;
    align-items: center;
    gap: 1.25rem;
}

.paybox-method {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.paybox-title {
    font-size: 1.125rem;
    margin: 0;
    font-weight: 600;
    color: #111827;
    /* gray-900 */
}

.paybox-icon {
    width: 1rem;
    height: 1rem;
    color: #374151;
    /* gray-700 */
}

.paybox-radio {
    width: 1.25rem;
    height: 1.25rem;
    appearance: none;
    border: 1px solid #cbd5e1;
    /* slate-300 */
    border-radius: 50%;
    position: relative;
    transition: border-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
    cursor: pointer;
}

.paybox-radio:checked {
    border-color: #f97316;
    /* orange-500 */
    box-shadow: 0 0 0 2px #f97316;
    /* orange-500 دورش */
}


.paybox-radio:checked::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 0.625rem;
    /* نصف اندازه داخلی دایره */
    height: 0.625rem;
    background-color: #f97316;
    /* نارنجی */
    border-radius: 50%;
}


/* تغییرات اصلی برای انیمیشن نرم */
.custom-dropdown-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease, padding 0.4s ease;
    color: #333;
    font-size: 14px;
    line-height: 1.6;
    background: #f4f4f4;
    padding: 0 10px;
    /* فقط padding افقی در حالت بسته */
    border-radius: 5px;
}

.custom-payment-option input[type="radio"]:checked ~ .custom-dropdown-content {
    max-height: 500px;
    /* حدأکثر ارتفاع مورد انتظار برای متن */
    padding: 10px;
}


.mytabs-tab-btn {
    transition: all 0.3s ease;
    color: #4b5563;
    border-bottom: 2px solid transparent;
    /* خط پایین مخفی در حالت عادی */
}

.mytabs-active {
    border-bottom-color: #ff8229;
    /* رنگ آبی وقتی تب فعاله */
    color: #ff8229;
}


.mytabs-hidden {
    display: none;
}


.eight-card-core:hover .group-text {
    color: white !important;
}


.active-link-panel {
    position: relative;
}

.active-link-panel::before {
    content: "";
    position: absolute;
    right: -17px;
    top: 0px;
    bottom: 8px;
    width: 4px;
    background-color: #1051ef;
    border-radius: 4px;
    height: 55px;
}


.order-input-wrapper {
    position: relative;
}

.order-input-field {
    width: 100%;
    padding: 13px 40px 13px 10px;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    font-size: 16px;
    box-sizing: border-box;
}

.order-input-icon {
    position: absolute;
    right: 10px;
    top: 48%;
    transform: translateY(-50%);
    color: #888;
    pointer-events: none;
    font-size: 18px;
}

.order-input-field::placeholder {
    color: #888;
}


.containermini {
    width: 1200px;
    margin: auto;
}


.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: -6px var(--swiper-pagination-bullet-horizontal-gap, 4px);
}


/*

  .swiper-pagination-bullet{
    width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 6px));
    height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 6px));
  } */

.fs13 {
    font-size: 13px !important;
}

.fs11 {
    font-size: 11px !important;
}

.p-story-section {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

@media (min-width: 992px) {
    .p-story-section {
        padding-top: 1.5rem;
        padding-bottom: 1.5rem;
    }
}

.category-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 10px 5px;
}

.category-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-decoration: none;
}

.category-icon {
    width: 62px;
    height: 62px;
    border-radius: 50%;
    background: #f8f9fb;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: .25s;
}

.category-icon img {
    width: 42px;
    height: 42px;
    object-fit: contain;
}

.category-item span {
    margin-top: 5px;
    font-size: 11px;
    color: #444;
    text-align: center;
    line-height: 1.4;
}

.category-item:active .category-icon,
.category-item:hover .category-icon {
    background: #eef4ff;
    transform: translateY(-2px);
}

@media (min-width: 768px) {
    .category-grid {
        grid-template-columns: repeat(6, 1fr);
    }

    .category-icon {
        width: 80px;
        height: 80px;
    }

    .category-icon img {
        width: 55px;
        height: 55px;
    }

    .category-item span {
        font-size: 14px;
    }
}

.py-section {
    padding: 40px 0px;
}

.pb-slider {
    padding-bottom: 40px;
}

@media (max-width: 768px) {
    .py-section {
        padding: 15px 0px;
    }

    .cat-img {
        width: 60px;
    }

    .size-8 {
        width: calc(var(--spacing) * 6);
        height: calc(var(--spacing) * 6);
    }


    .pb-slider {
        padding-bottom: 10px;
    }

}

/* Auth Modal Backdrop */
.alvand-auth-backdrop {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 9998;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(4px);
}

.alvand-auth-backdrop.active {
    display: block;
}

/* Auth Modal Card (#alvand-auth-root) */
#alvand-auth-root {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 9999;
    background: #fff;
    border-radius: 16px;
    max-width: 440px;
    width: 90%;
    max-height: 90vh;
    overflow-y: auto;
    padding: 2.5rem;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}

#alvand-auth-root.active {
    display: block;
}

:root.dark #alvand-auth-root,
.dark #alvand-auth-root {
    background: #1a1a2e;
}

/* Auth Modal – styles for content generated by frontEndHandel.js */
#alvand-auth-root .login__title {
    font-size: 1.25rem;
    font-weight: 700;
    color: #28303F;
    margin-bottom: 1.5rem;
}

:root.dark #alvand-auth-root .login__title,
.dark #alvand-auth-root .login__title {
    color: #e5e7eb;
}

#alvand-auth-root .login__section-inputs label {
    display: block;
    font-size: 0.875rem;
    font-weight: 500;
    color: #374151;
    margin-bottom: 0.375rem;
}

:root.dark #alvand-auth-root .login__section-inputs label,
.dark #alvand-auth-root .login__section-inputs label {
    color: #d1d5db;
}

#alvand-auth-root .login__input {
    width: 100%;
    padding: 0.75rem 1rem;
    border: 1px solid #e5e7eb;
    border-radius: 0.75rem;
    font-size: 0.875rem;
    outline: none;
    transition: border-color 0.2s;
    background: #fff;
    color: #1f2937;
}

#alvand-auth-root .login__input:focus {
    border-color: #fa591b;
    box-shadow: 0 0 0 3px rgba(250, 89, 27, 0.1);
}

:root.dark #alvand-auth-root .login__input,
.dark #alvand-auth-root .login__input {
    background: #16213e;
    border-color: #2d2d44;
    color: #e5e7eb;
}

:root.dark #alvand-auth-root .login__input:focus,
.dark #alvand-auth-root .login__input:focus {
    border-color: #fa591b;
}

#alvand-auth-root .login__button,
#alvand-auth-root .btn {
    width: 100%;
    padding: 0.75rem 1rem;
    background: linear-gradient(135deg, #fa591b, #ff8c42);
    color: #fff;
    border: none;
    border-radius: 0.75rem;
    font-size: 0.9375rem;
    font-weight: 600;
    cursor: pointer;
    transition: opacity 0.2s, transform 0.1s;
}

#alvand-auth-root .login__button:hover,
#alvand-auth-root .btn:hover {
    opacity: 0.9;
}

#alvand-auth-root .login__button:active,
#alvand-auth-root .btn:active {
    transform: scale(0.98);
}

#alvand-auth-root .secondary-actions {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    margin-top: 1rem;
}

#alvand-auth-root .secondary-btn {
    background: none;
    border: none;
    color: #6b7280;
    font-size: 0.8125rem;
    cursor: pointer;
    transition: color 0.2s;
}

#alvand-auth-root .secondary-btn:hover {
    color: #fa591b;
}

#alvand-auth-root .secondary-separator {
    color: #d1d5db;
    font-size: 0.75rem;
}

#alvand-auth-root .login__logo {
    max-height: 48px;
}

#alvand-auth-root .captcha-row {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.75rem;
}

#alvand-auth-root .captcha-row img {
    border-radius: 0.5rem;
    height: 42px;
    cursor: pointer;
}

#alvand-auth-root .message-box {
    padding: 0.75rem 1rem;
    border-radius: 0.75rem;
    margin-bottom: 1rem;
    font-size: 0.8125rem;
}

#alvand-auth-root .message-box.error {
    background: #fef2f2;
    color: #dc2626;
    border: 1px solid #fecaca;
}

:root.dark #alvand-auth-root .message-box.error,
.dark #alvand-auth-root .message-box.error {
    background: #451a1a;
    border-color: #7f1d1d;
    color: #fca5a5;
}

#alvand-auth-root .message-box.success {
    background: #f0fdf4;
    color: #16a34a;
    border: 1px solid #bbf7d0;
}

:root.dark #alvand-auth-root .message-box.success,
.dark #alvand-auth-root .message-box.success {
    background: #14532d;
    border-color: #166534;
    color: #86efac;
}

#alvand-auth-root .login-form-container {
    width: 100%;
}

#alvand-auth-root .login-phone-btn {
    font-size: 0.875rem;
    color: #6b7280;
    margin-bottom: 0.75rem;
}

#alvand-auth-root .w-full1 {
    width: 100%;
}

#alvand-auth-root .second-button {
    background: none;
    border: none;
    color: #6b7280;
    font-size: 0.8125rem;
    cursor: pointer;
}

#alvand-auth-root select.login__input {
    appearance: auto;
}

#alvand-auth-root textarea.login__input {
    resize: vertical;
    min-height: 60px;
}

#alvand-auth-root .form-title {
    font-size: 1rem;
    font-weight: 600;
    color: #374151;
    margin-bottom: 1rem;
}

:root.dark #alvand-auth-root .form-title,
.dark #alvand-auth-root .form-title {
    color: #d1d5db;
}

.bgcate {
    transition: 0.3s all;
    border: 1px solid #dbdbdb;
    background: #f3f4f6;
}

.bgcate:hover {
    border: 1px solid #ff001e;
    background-color: #fff;
}

.mbgcate:hover span {
    color: #ff001e !important;
    transition: 0.4s all;
}

.txt-cat {
    color: #808080;
    font-size: 12px;
    text-align: center;
    display: block;
    padding-top: 10px;
}

.cath {
    height: 80px;
}

.cat-img {
    width: 100px !important;

}

.image-scale {
    animation: imagePulse 4s ease-in-out infinite;
    transform-origin: center center;
}


@keyframes imagePulse {
    0% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.1);
    }

    100% {
        transform: scale(1);
    }
}

.top-center {
    width: 100px;
    display: block;
}

@media (max-width: 500px) {
    .top-center {
        width: 70px;
        display: block;
        margin: auto;
    }

    .mbgcate span{
        font-size: 10px;
    }
}


.pb-5 {
    padding-bottom: 5rem;
}

@media (min-width: 500px) {
    .hide-pc{
        display: none;
    }
}
@media (max-width: 500px) {
    .hide-mob{
        display: none;
    }
}


/* =========================================================
   Single product redesign overrides
   Scope: product page only
   Desktop/tablet: >= 768px | Mobile: <= 767px
   ========================================================= */

.single-product-main-grid,
.single-product-service-section {
    --sp-primary: var(--color-primary);
    --sp-primary-dark: var(--color-primary-dark, var(--color-primary));
    --sp-secondary: var(--color-secondary);
    --sp-tertiary: var(--color-tertiary-800, var(--color-tertiary));
    --sp-success: var(--color-success);
    --sp-danger: var(--color-danger);
    --sp-surface: var(--color-card-light, #fff);
    --sp-page: var(--color-background-light, #F8FAFC);
    --sp-text: var(--color-text-primary-light, var(--color-secondary));
    --sp-muted: var(--color-text-secondary-light, #64748B);
    --sp-border: color-mix(in srgb, var(--sp-secondary) 12%, white);
    --sp-soft-primary: color-mix(in srgb, var(--sp-primary) 8%, white);
    --sp-soft-secondary: color-mix(in srgb, var(--sp-secondary) 5%, white);
    --sp-soft-tertiary: color-mix(in srgb, var(--sp-tertiary) 10%, white);
    --sp-soft-success: color-mix(in srgb, var(--sp-success) 9%, white);
    --sp-primary-shadow: color-mix(in srgb, var(--sp-primary) 18%, transparent);
}

/* --- Information hierarchy: warranty / features / summary --- */
.single-product-meta .product-info-panels {
    gap: 10px;
    margin-top: 14px;
}

/* Warranty is intentionally a compact horizontal strip, not a full card. */
.single-product-meta .product-warranty-card {
    display: flex;
    min-height: 54px;
    align-items: center;
    gap: 10px;
    padding: 8px 10px;
    border: 0;
    border-radius: 12px;
    background: #f7fbf8;
    box-shadow: none;
    width: fit-content;
}

.single-product-meta .product-warranty-card::before {
    width: 2px;
    border-radius: 0 12px 12px 0;
}

.single-product-meta .product-warranty-card .product-info-icon {
    flex-basis: 34px;
    width: 34px;
    height: 34px;
    border-radius: 10px;
}

.single-product-meta .product-warranty-card .product-info-icon svg {
    width: 19px;
    height: 19px;
}

.single-product-meta .product-warranty-card h4 {
    font-size: 13px;
}

.single-product-meta .product-warranty-card .product-info-badge {
    min-height: 19px;
    padding: 0 6px;
    font-size: 9px;
}

.single-product-meta .product-warranty-name {
    margin-top: 0;
    font-size: 12px;
    line-height: 1.7;
}

/* Features remain the primary information block. */
.single-product-meta .product-features-card {
    padding: 0px;
    background: #fff;
    box-shadow: none;
}

.single-product-meta .product-features-card::before {
    display: none;
}

.single-product-meta .product-info-section-heading {
    margin-bottom: 10px;
}

.single-product-meta .product-info-section-heading .product-info-icon {
    flex-basis: 36px;
    width: 36px;
    height: 36px;
    border-radius: 10px;
}

.single-product-meta .product-info-section-heading .product-info-icon svg {
    width: 20px;
    height: 20px;
}

.single-product-meta .product-feature-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 7px;
}

.single-product-meta .product-feature-item {
    padding: 8px 10px;
    border-radius: 10px;
    background: #f7f8fa;
}

/* Summary has its own visual language and a 3-line scroll viewport. */
.single-product-meta .product-summary-card {
    display: block;
    padding: 11px 13px;
    border: 0;
    border-radius: 12px;
    background: #fafafa;
    box-shadow: none;
}

.single-product-meta .product-summary-card::before {
    display: none;
}

.single-product-meta .product-summary-card > .product-info-section-heading {
    margin-bottom: 5px;
}

.single-product-meta .product-summary-card .product-info-icon {
    display: none;
}

.single-product-short-description {
    /*max-height: 78px;*/
    padding: 0 0 0 7px;
    overflow-y: auto;
    overscroll-behavior: contain;
    color: #667085;
    font-size: 13.5px;
    line-height: 26px;
    scrollbar-width: thin;
    scrollbar-color: #cbd5e1 transparent;
}

.single-product-short-description::-webkit-scrollbar {
    width: 4px;
}

.single-product-short-description::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: #cbd5e1;
}

.single-product-short-description::-webkit-scrollbar-track {
    background: transparent;
}

/* --- Desktop thumbnail gallery: always 85x85 regardless of source image ratio --- */
.single-product-thumb-gallery {
    width: 100%;
    margin-top: 4px;
}

.single-product-thumb-gallery .swiper-wrapper {
    align-items: center;
}

.single-product-thumb-gallery .single-product-thumb-slide {
    width: 85px !important;
    min-width: 85px !important;
    max-width: 85px !important;
    height: 85px !important;
    flex: 0 0 85px !important;
    padding-left: 0 !important;
}

.single-product-thumb-link {
    display: flex;
    width: 85px;
    height: 85px;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: 1px solid #e3e7ee;
    border-radius: 12px;
    background: #fff;
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.single-product-thumb-link:hover {
    border-color: #c5ccd8;
    box-shadow: 0 4px 12px rgba(15, 23, 42, .06);
    transform: translateY(-1px);
}

.single-product-thumb-image {
    display: block;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    padding: 7px !important;
    border: 0 !important;
    border-radius: 0 !important;
    object-fit: contain !important;
    object-position: center !important;
}

/* --- Buy box redesign --- */
.single-product-buybox {
    position: relative;
    margin: 34px 8px 15px;
    padding: 16px;
    overflow: hidden;
    border: 1px solid #e7eaf0;
    border-radius: 18px;
    background: linear-gradient(180deg, #fbfcfe 0%, #f7f8fa 100%);
    box-shadow: 0 10px 30px rgba(15, 23, 42, .06);
}

.single-product-buybox::before {
    content: "";
    position: absolute;
    inset: 0 0 auto 0;
    height: 3px;
    background: linear-gradient(90deg, var(--color-primary, #d20707), var(--color-tertiary-800, #ff4500));
}

.single-product-buybox .buyBoxShopName {
    margin-bottom: 2px;
    padding: 2px 0 12px;
    border-bottom: 1px solid #e8ebf0;
    font-size: 15px;
}

.single-product-buybox .buyBoxShopName h5 {
    align-items: center;
}

.single-product-buybox .selected-green-tag {
    padding: 1px 7px;
    border: 1px solid #cdebd9;
    background: var(--sp-soft-success);
    font-size: 10px;
    font-weight: 600;
}

.single-product-buybox .buyBoxShopName > div {
    padding-right: 30px !important;
    gap: 8px;
    font-size: 11px;
    color: #667085;
}

.single-product-buybox .buyBoxguarantee,
.single-product-buybox .buyBoxOrginal,
.single-product-buybox .buyBoxStock {
    align-items: center;
    margin: 0;
    padding: 10px 0;
    border-bottom: 1px solid #e8ebf0;
    color: #344054;
    font-size: 12px;
    line-height: 1.7;
}

.single-product-buybox .buyBoxStock {
    padding-bottom: 11px;
}

.single-product-buybox .buyBoxguarantee svg,
.single-product-buybox .buyBoxOrginal svg,
.single-product-buybox .buyBoxStock svg {
    flex: 0 0 auto;
    width: 20px;
    height: 20px;
}

.single-product-buybox .shopNameShippingServise,
.single-product-buybox .h5Stock {
    color: #475467;
    font-size: 12px;
}

.single-product-price-area {
    margin-top: 2px;
    padding-top: 13px !important;
}

.single-product-buybox #buyBoxFinalPrice {
    color: #101828;
    font-size: 21px;
    line-height: 1.8;
}

.single-product-buybox .buyBoxTomanSpan {
    color: #667085;
    font-size: 11px;
    font-weight: 500;
}

.single-product-buybox .buyBoxOffprice {
    color: #98a2b3 !important;
    font-size: 12px;
}

.single-product-buybox #buyBoxDiscountPercent {
    min-width: 38px;
    padding: 3px 7px !important;
    border-radius: 999px;
    text-align: center;
}

.single-product-buybox .single-product-price-area > div:last-child > p {
    color: #98a2b3;
    font-size: 10px;
}

.single-product-buy-actions {
    align-items: stretch;
    margin-top: 12px;
}

.single-product-buybox .buyboxInDecBox {
    min-height: 42px;
    padding: 4px;
    border: 1px solid #e1e5eb;
    border-radius: 11px;
    background: #fff;
}

.single-product-buybox .btnAddToCartNew {
    min-height: 42px;
    padding: 9px 15px;
    border-radius: 11px;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    box-shadow: 0 6px 14px color-mix(in srgb, var(--sp-primary) 14%, transparent);
    transition: transform .2s ease, box-shadow .2s ease, opacity .2s ease;
}

.single-product-buybox .btnAddToCartNew:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 18px var(--sp-primary-shadow);
}

.dark .single-product-meta .product-warranty-card {
    background: #203129;
}

.dark .single-product-meta .product-features-card,
.dark .single-product-meta .product-summary-card {
    border-color: #3b4250;
    background: #272c35;
}

.dark .single-product-buybox {
    border-color: #3a4351;
    background: linear-gradient(180deg, #242b35 0%, #1f2630 100%);
    box-shadow: none;
}

.dark .single-product-buybox #buyBoxFinalPrice,
.dark .single-product-buybox .buyBoxguarantee,
.dark .single-product-buybox .buyBoxOrginal,
.dark .single-product-buybox .buyBoxStock {
    color: #f4f6fa;
}

/* Mobile: keep the layout compact and remove desktop-only decoration. */
@media (max-width: 767px) {
    .single-product-main-grid {
        gap: 10px;
    }

    .single-product-meta {
        padding: 12px !important;
    }

    .single-product-meta .product-info-panels {
        gap: 8px;
        margin-top: 12px;
    }

    .single-product-meta .product-warranty-card {
        min-height: 48px;
        padding: 7px 9px;
    }

    .single-product-meta .product-features-card {
        padding: 11px;
    }

    .single-product-meta .product-feature-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .single-product-meta .product-feature-item {
        grid-template-columns: minmax(82px, .8fr) minmax(0, 1.2fr);
        padding: 8px 9px;
    }

    .single-product-meta .product-summary-card {
        padding: 10px 11px;
    }

    .single-product-short-description {
        max-height: 72px;
        font-size: 12px;
        line-height: 24px;
    }

    .single-product-buybox {
        margin: 0;
        padding: 12px;
        border: 1px solid #eceff3;
        border-radius: 14px;
        background: #fff;
        box-shadow: none;
    }

    .single-product-buybox::before {
        display: none;
    }
}

/* 768px is the first tablet/desktop pixel. */
@media (min-width: 768px) {
    .single-product-thumb-gallery {
        min-height: 85px;
    }
}


/* =========================================================
   Single product heading + commerce service strip
   ========================================================= */
.single-product-heading {
    padding: 4px 0 15px;
    border-bottom: 1px solid #edf0f4;
}

.single-product-taxonomy-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px;
    margin-bottom: 10px;
}

.single-product-taxonomy-chip {
    display: inline-flex;
    min-height: 25px;
    align-items: center;
    padding: 3px 9px;
    border-radius: 8px;
    font-size: 10.5px;
    font-weight: 700;
    line-height: 1.5;
}

.single-product-taxonomy-chip--category {
    color: var(--sp-primary);
    background: var(--sp-soft-primary);
}

.single-product-taxonomy-chip--brand {
    color: #475467;
    background: #f3f4f6;
}

.single-product-title {
    margin: 0;
    color: #1d2939;
    font-size: clamp(19px, 1.55vw, 24px);
    font-weight: 800;
    line-height: 1.8;
    letter-spacing: -.2px;
}

.single-product-model {
    margin-top: 3px;
    overflow: hidden;
    color: #98a2b3;
    font-size: 11.5px;
    line-height: 1.8;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.single-product-meta-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px;
    margin-top: 12px;
    color: #667085;
    font-size: 11.5px;
}

.single-product-rating,
.single-product-comments-link,
.single-product-code {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 28px;
}

.single-product-rating-star {
    display: inline-flex;
    width: 24px;
    height: 24px;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    color: var(--sp-tertiary);
    background: var(--sp-soft-tertiary);
}

.single-product-rating-star svg {
    width: 14px;
    height: 14px;
}

.single-product-rating strong {
    color: #344054;
    font-size: 12.5px;
    font-weight: 800;
}

.single-product-rating > span:last-child {
    color: #98a2b3;
    font-size: 10px;
}

.single-product-comments-link {
    color: var(--sp-primary);
    font-weight: 700;
    transition: color .2s ease;
}

.single-product-comments-link:hover {
    color: var(--sp-primary-dark);
}

.single-product-comments-link svg {
    width: 17px;
    height: 17px;
}

.single-product-code > span {
    color: #98a2b3;
}

.single-product-code strong {
    color: #475467;
    font-size: 11.5px;
    font-weight: 700;
}

.single-product-meta-divider {
    width: 1px;
    height: 17px;
    background: #e4e7ec;
}

/* Trust/service strip */
.single-product-service-section {
    margin-top: 4px;
}

.single-product-service-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    overflow: hidden;
    border: 1px solid #e8ecf2;
    border-radius: 16px;
    background: #fff;
}

.single-product-service-item {
    position: relative;
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 12px;
    padding: 15px 17px;
}

.single-product-service-item:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 18px;
    bottom: 18px;
    left: 0;
    width: 1px;
    background: #edf0f4;
}

.single-product-service-icon {
    display: flex;
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: #f7f8fa;
}

.single-product-service-icon {
    color: var(--sp-primary);
}

.single-product-service-icon::before {
    content: "";
    width: 29px;
    height: 29px;
    background: currentColor;
    -webkit-mask: var(--sp-service-mask) center / contain no-repeat;
    mask: var(--sp-service-mask) center / contain no-repeat;
}

.single-product-service-icon img {
    display: none;
}

.single-product-service-icon--shipping,
.single-product-service-icon--support {
    color: var(--sp-primary);
    background: var(--sp-soft-primary);
}

.single-product-service-icon--quality {
    color: var(--sp-tertiary);
    background: var(--sp-soft-tertiary);
}

.single-product-service-icon--authenticity {
    color: var(--sp-success);
    background: var(--sp-soft-success);
}

.single-product-service-copy {
    min-width: 0;
}

.single-product-service-copy strong,
.single-product-service-copy span {
    display: block;
}

.single-product-service-copy strong {
    color: #344054;
    font-size: 12.5px;
    font-weight: 800;
    line-height: 1.8;
}

.single-product-service-copy span {
    margin-top: 2px;
    color: #98a2b3;
    font-size: 10.5px;
    line-height: 1.8;
}

.dark .single-product-heading {
    border-bottom-color: #3b4250;
}

.dark .single-product-title,
.dark .single-product-rating strong,
.dark .single-product-code strong,
.dark .single-product-service-copy strong {
    color: #f4f6fa;
}

.dark .single-product-taxonomy-chip--brand,
.dark .single-product-rating-star,
.dark .single-product-service-icon {
    background: #303640;
}

.dark .single-product-service-grid {
    border-color: #3b4250;
    background: #272c35;
}

.dark .single-product-service-item:not(:last-child)::after {
    background: #3b4250;
}

@media (max-width: 767px) {
    .single-product-heading {
        padding: 0 0 12px;
    }

    .single-product-taxonomy-row {
        gap: 6px;
        margin-bottom: 8px;
    }

    .single-product-taxonomy-chip {
        min-height: 23px;
        padding: 2px 8px;
        font-size: 10px;
    }

    .single-product-title {
        font-size: 19px;
        line-height: 1.9;
    }

    .single-product-meta-row {
        gap: 7px;
        margin-top: 10px;
    }

    .single-product-meta-divider {
        display: none;
    }

    .single-product-rating,
    .single-product-comments-link,
    .single-product-code {
        min-height: 27px;
        padding: 0 7px;
        border: 1px solid #edf0f4;
        border-radius: 8px;
        background: #fafbfc;
    }

    .single-product-rating-star {
        width: 20px;
        height: 20px;
        border-radius: 6px;
        background: transparent;
    }

    .single-product-service-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0;
        border-radius: 14px;
    }

    .single-product-service-item {
        min-height: 82px;
        gap: 9px;
        padding: 11px;
    }

    .single-product-service-item::after {
        display: none;
    }

    .single-product-service-item:nth-child(odd) {
        border-left: 1px solid #edf0f4;
    }

    .single-product-service-item:nth-child(-n+2) {
        border-bottom: 1px solid #edf0f4;
    }

    .single-product-service-icon {
        flex-basis: 39px;
        width: 39px;
        height: 39px;
        border-radius: 11px;
    }

    .single-product-service-icon img {
        width: 25px !important;
        height: 25px !important;
    }

    .single-product-service-copy strong {
        font-size: 10.5px;
        line-height: 1.7;
    }

    .single-product-service-copy span {
        display: none;
    }
}


/* =========================================================
   Single product dynamic theme palette
   ========================================================= */
.single-product-taxonomy-chip--category,
.single-product-comments-link,
.single-product-meta .product-info-icon--features,
.single-product-meta .product-features-toggle {
    color: var(--sp-primary);
}

.single-product-taxonomy-chip--category,
.single-product-meta .product-info-icon--features,
.single-product-meta .product-features-toggle {
    background: var(--sp-soft-primary);
}

.single-product-rating-star,
.single-product-meta .product-info-icon--summary {
    color: var(--sp-tertiary);
    background: var(--sp-soft-tertiary);
}

.single-product-meta .product-info-icon--warranty,
.single-product-buybox .selected-green-tag {
    color: var(--sp-success);
}

.single-product-meta .product-info-icon--warranty,
.single-product-buybox .selected-green-tag {
    background: var(--sp-soft-success);
}

.single-product-thumb-link:hover {
    border-color: var(--sp-primary);
    box-shadow: 0 4px 12px var(--sp-primary-shadow);
}

.single-product-buybox::before {
    background: linear-gradient(90deg, var(--sp-primary), var(--sp-tertiary));
}

.single-product-buybox .btnAddToCartNew {
    box-shadow: 0 6px 14px color-mix(in srgb, var(--sp-primary) 14%, transparent);
}

.single-product-buybox .btnAddToCartNew:hover {
    box-shadow: 0 8px 18px var(--sp-primary-shadow);
}

.single-product-buybox .buyBoxguarantee svg { color: var(--sp-success); }
.single-product-buybox .buyBoxOrginal svg { color: var(--sp-primary); }
.single-product-buybox .buyBoxStock svg { color: var(--sp-tertiary); }

.single-product-heading svg,
.single-product-meta svg,
.single-product-buybox svg {
    transition: color .2s ease, fill .2s ease, stroke .2s ease;
}

.dark .single-product-main-grid,
.dark .single-product-service-section {
    --sp-surface: var(--color-card-dark, #1E293B);
    --sp-page: var(--color-background-dark, #0F172A);
    --sp-text: var(--color-text-primary-dark, #F8FAFC);
    --sp-muted: var(--color-text-secondary-dark, #94A3B8);
    --sp-border: color-mix(in srgb, var(--sp-text) 16%, transparent);
    --sp-soft-primary: color-mix(in srgb, var(--sp-primary) 18%, var(--sp-surface));
    --sp-soft-secondary: color-mix(in srgb, var(--sp-text) 7%, var(--sp-surface));
    --sp-soft-tertiary: color-mix(in srgb, var(--sp-tertiary) 18%, var(--sp-surface));
    --sp-soft-success: color-mix(in srgb, var(--sp-success) 16%, var(--sp-surface));
}


/* =========================================================
   Single product: mobile gallery, breadcrumb, reviews scroll + buy box
   ========================================================= */

/* Breadcrumb */
.single-product-breadcrumb {
    width: 100%;
    margin: 10px 0 18px;
    padding: 0 4px;
}

.single-product-breadcrumb-list {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 5px;
    margin: 0;
    padding: 0;
    overflow-x: auto;
    list-style: none;
    white-space: nowrap;
    scrollbar-width: none;
}

.single-product-breadcrumb-list::-webkit-scrollbar {
    display: none;
}

.single-product-breadcrumb-item {
    display: inline-flex;
    min-width: 0;
    flex: 0 0 auto;
    align-items: center;
    color: var(--sp-muted, #7a8495);
    font-size: 12px;
    font-weight: 500;
}

.single-product-breadcrumb-item a,
.single-product-breadcrumb-item > span {
    display: inline-flex;
    min-height: 32px;
    align-items: center;
    gap: 6px;
    padding: 5px 9px;
    border: 1px solid transparent;
    border-radius: 9px;
    transition: color .2s ease, background-color .2s ease, border-color .2s ease;
}

.single-product-breadcrumb-item a:hover {
    border-color: var(--sp-border, #e8edf4);
    color: var(--sp-primary, var(--color-primary));
    background: var(--sp-soft-primary, color-mix(in srgb, var(--color-primary) 7%, #fff));
}

.single-product-breadcrumb-home a {
    color: var(--sp-primary, var(--color-primary));
    background: var(--sp-soft-primary, color-mix(in srgb, var(--color-primary) 7%, #fff));
}

.single-product-breadcrumb-home svg {
    width: 16px;
    height: 16px;
}

.single-product-breadcrumb-separator {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    color: color-mix(in srgb, var(--sp-muted, #7a8495) 55%, transparent);
}

.single-product-breadcrumb-separator svg {
    width: 14px;
    height: 14px;
}

.single-product-breadcrumb-current {
    max-width: min(340px, 35vw);
    color: var(--sp-text, #1f2937);
    font-weight: 700;
}

.single-product-breadcrumb-current > span {
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Review section is available on mobile too. */
.single-product-review-section {
    display: block !important;
    scroll-margin-top: 96px;
}

/* Buy box: stronger commercial hierarchy */

.single-product-buybox {
    border-color: color-mix(in srgb, var(--sp-primary) 12%, var(--sp-border, #e7eaf0));
    background:
            radial-gradient(circle at 100% 0,
            color-mix(in srgb, var(--sp-primary) 7%, transparent) 0,
            transparent 34%),
            linear-gradient(180deg, var(--sp-surface, #fff) 0%, color-mix(in srgb, var(--sp-surface, #fff) 94%, var(--sp-page, #f8fafc)) 100%);
    box-shadow: 0 14px 38px rgba(15, 23, 42, .075);
}

.single-product-buybox .single-product-seller-head {
    margin: -2px -2px 10px;
    padding: 12px;
    border: 1px solid var(--sp-border, #e8edf4);
    border-radius: 14px;
    background: color-mix(in srgb, var(--sp-primary) 4%, var(--sp-surface, #fff));
}

.single-product-buybox .buyBoxShopName {
    border-bottom: 0;
}

.single-product-buybox .buyBoxShopName h5 {
    min-height: 28px;
}

.single-product-buybox .buyBoxShopName h5 > svg {
    display: inline-flex;
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    padding: 7px;
    border-radius: 10px;
    color: var(--sp-primary);
    background: var(--sp-soft-primary);
}

.single-product-buybox .buyBoxguarantee,
.single-product-buybox .buyBoxOrginal,
.single-product-buybox .buyBoxStock {
    min-height: 46px;
    margin-top: 7px;
    padding: 9px 10px;
    border: 1px solid var(--sp-border, #e8edf4);
    border-radius: 12px;
    background: var(--sp-surface, #fff);
}

.single-product-buybox .buyBoxguarantee svg,
.single-product-buybox .buyBoxOrginal svg,
.single-product-buybox .buyBoxStock svg {
    display: inline-flex;
    flex: 0 0 31px;
    width: 31px;
    height: 31px;
    padding: 6px;
    border-radius: 9px;
}

.single-product-buybox .buyBoxguarantee svg {
    background: var(--sp-soft-success);
}

.single-product-buybox .buyBoxOrginal svg {
    background: var(--sp-soft-primary);
}

.single-product-buybox .buyBoxStock svg {
    background: var(--sp-soft-tertiary);
}

.single-product-price-area {
    margin-top: 10px;
    padding: 12px !important;
    border: 1px solid color-mix(in srgb, var(--sp-primary) 14%, var(--sp-border, #e8edf4));
    border-radius: 14px;
    background: var(--sp-soft-primary);
}

.single-product-buybox #buyBoxFinalPrice {
    color: var(--sp-text, #101828);
    font-size: 23px;
}

.single-product-buybox .single-product-buy-actions {
    gap: 8px;
    margin-top: 9px;
}

.single-product-buybox .buyboxInDecBox {
    min-width: 102px;
    border-color: var(--sp-border, #e1e5eb);
    box-shadow: 0 3px 10px rgba(15, 23, 42, .035);
}

.single-product-buybox .btnAddToCartNew {
    flex: 1;
    min-height: 46px;
    border-radius: 12px;
    font-size: 13px;
}

/* Mobile gallery stage: source image dimensions must never define layout height. */
@media (max-width: 767px) {
    #productGalleryTwo {
        width: 100%;
        height: clamp(250px, 72vw, 320px);
        min-height: 0;
        overflow: hidden;
    }

    #productGalleryTwo .swiper-wrapper,
    #productGalleryTwo .swiper-slide,
    #productGalleryTwo .swiper-slide > div {
        height: 100% !important;
        min-height: 0 !important;
    }

    #productGalleryTwo .swiper-slide {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    #productGalleryTwo .resWidthMainImg {
        display: block;
        width: auto !important;
        height: auto !important;
        max-width: calc(100% - 20px) !important;
        max-height: calc(100% - 24px) !important;
        padding: 0 !important;
        object-fit: contain !important;
        object-position: center !important;
    }

    #productGalleryTwo .swiper-pagination {
        bottom: 2px !important;
    }

    .single-product-breadcrumb {
        margin: 6px 0 12px;
        padding: 0 10px;
    }

    .single-product-breadcrumb-item {
        font-size: 11px;
    }

    .single-product-breadcrumb-item a,
    .single-product-breadcrumb-item > span {
        min-height: 29px;
        padding: 4px 7px;
        border-radius: 8px;
    }

    .single-product-breadcrumb-home span {
        display: none;
    }

    .single-product-breadcrumb-home a {
        width: 30px;
        justify-content: center;
        padding: 4px;
    }

    .single-product-breadcrumb-current {
        max-width: 54vw;
    }

    .single-product-review-section {
        margin-top: 4px;
    }

    .single-product-review-section .mobile-scroll-tabs {
        position: sticky;
        top: 0;
        z-index: 20;
        overflow-x: auto;
        border-bottom: 1px solid var(--sp-border, #e8edf4);
        background: var(--sp-surface, #fff);
        scrollbar-width: none;
    }

    .single-product-review-section .mobile-scroll-tabs::-webkit-scrollbar {
        display: none;
    }

    .single-product-review-section .tab-btn {
        flex: 0 0 auto;
        padding: 9px 12px;
        font-size: 13px;
    }

    .single-product-review-section .tab-btn svg {
        width: 20px;
        height: 20px;
    }

    .single-product-review-section .tab-content {
        padding: 18px 12px !important;
        border-radius: 12px;
    }

    .single-product-buybox {
        padding: 11px;
        border-radius: 15px;
        box-shadow: 0 8px 24px rgba(15, 23, 42, .055);
    }
}

.dark .single-product-breadcrumb-home a,
.dark .single-product-buybox .single-product-seller-head,
.dark .single-product-buybox .buyBoxguarantee,
.dark .single-product-buybox .buyBoxOrginal,
.dark .single-product-buybox .buyBoxStock,
.dark .single-product-price-area {
    border-color: var(--sp-border);
}

.dark .single-product-breadcrumb-current,
.dark .single-product-buybox #buyBoxFinalPrice {
    color: var(--sp-text);
}

/* =========================================================
   Single product V6: clean buy box + unified thumbnail geometry
   ========================================================= */

/* Product thumbnail gallery: keep ONE border/radius layer only. */
#productGalleryOne .single-product-thumb-slide,
#productGalleryOne .single-product-thumb-slide.swiper-slide-thumb-active {
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

#productGalleryOne .single-product-thumb-link {
    box-sizing: border-box;
    width: 85px;
    height: 85px;
    border: 1px solid var(--sp-border, #e3e7ee);
    border-radius: 12px;
    background: var(--sp-surface, #fff);
    box-shadow: none;
    transform: none;
    transition: border-color .18s ease, background-color .18s ease;
}

#productGalleryOne .single-product-thumb-link:hover,
#productGalleryOne .single-product-thumb-slide.swiper-slide-thumb-active .single-product-thumb-link {
    border-color: var(--sp-primary, var(--color-primary));
    border-radius: 12px;
    background: color-mix(in srgb, var(--sp-primary, var(--color-primary)) 2.5%, var(--sp-surface, #fff));
    box-shadow: none;
    transform: none;
}

#productGalleryOne .single-product-thumb-image,
#productGalleryOne .single-product-thumb-slide.swiper-slide-thumb-active img {
    width: 100% !important;
    height: 100% !important;
    padding: 7px !important;
    border: 0 !important;
    border-radius: 11px !important;
    object-fit: contain !important;
    object-position: center !important;
}

/* Buy box: intentionally flatter and more commercial; no nested card clutter. */
.single-product-buybox {
    position: relative;
    margin: 8px 0 15px;
    padding: 17px;
    overflow: visible;
    border: 1px solid var(--sp-border, #e5e9ef);
    border-radius: 16px;
    background: var(--sp-surface, #fff);
    box-shadow: 0 8px 26px rgba(15, 23, 42, .055);
}

.single-product-buybox::before {
    display: none !important;
}

.single-product-buybox .single-product-seller-head {
    margin: 0;
    padding: 0 0 14px;
    border: 0;
    border-bottom: 1px solid var(--sp-border, #e8edf4);
    border-radius: 0;
    background: transparent;
}

.single-product-buybox .buyBoxShopName {
    margin: 0;
    padding: 0;
    border: 0;
}

.single-product-buybox .buyBoxShopName h5 {
    min-height: 32px;
    align-items: center;
    gap: 7px;
    color: var(--sp-text, #1f2937);
    font-size: 14px;
}

.single-product-buybox .buyBoxShopName h5 > svg {
    flex: 0 0 30px;
    width: 30px;
    height: 30px;
    padding: 5px;
    border: 1px solid color-mix(in srgb, var(--sp-primary, var(--color-primary)) 14%, transparent);
    border-radius: 9px;
    color: var(--sp-primary, var(--color-primary));
    background: var(--sp-soft-primary, color-mix(in srgb, var(--color-primary) 7%, #fff));
}

.single-product-buybox .selected-green-tag {
    min-height: 20px;
    padding: 1px 7px;
    border: 1px solid color-mix(in srgb, var(--sp-success, var(--color-success)) 22%, transparent);
    border-radius: 999px;
    color: var(--sp-success, var(--color-success));
    background: var(--sp-soft-success, color-mix(in srgb, var(--color-success) 8%, #fff));
    font-size: 9px;
    font-weight: 700;
}

.single-product-buybox .buyBoxShopName > div {
    padding: 6px 37px 0 0 !important;
    gap: 8px;
    color: var(--sp-muted, #7a8495);
    font-size: 10px;
}

.single-product-buybox .buyBoxguarantee,
.single-product-buybox .buyBoxOrginal,
.single-product-buybox .buyBoxStock {
    min-height: 44px;
    margin: 0;
    padding: 11px 0;
    border: 0;
    border-bottom: 1px solid var(--sp-border, #e8edf4);
    border-radius: 0;
    color: var(--sp-text, #344054);
    background: transparent;
    font-size: 12px;
    line-height: 1.8;
}

.single-product-buybox .buyBoxguarantee svg,
.single-product-buybox .buyBoxOrginal svg,
.single-product-buybox .buyBoxStock svg {
    flex: 0 0 22px;
    width: 22px;
    height: 22px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent !important;
}

.single-product-buybox .shopNameShippingServise,
.single-product-buybox .h5Stock {
    color: var(--sp-text, #475467);
    font-size: 12px;
    font-weight: 500;
}

.single-product-price-area {
    margin: 0;
    padding: 15px 0 0 !important;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.single-product-buybox #buyBoxFinalPrice {
    color: var(--sp-text, #101828);
    font-size: 24px;
    font-weight: 900;
    line-height: 1.7;
}

.single-product-buybox .buyBoxTomanSpan {
    color: var(--sp-muted, #667085);
    font-size: 11px;
    font-weight: 500;
}

.single-product-buybox .buyBoxOffprice {
    color: var(--sp-muted, #98a2b3) !important;
    font-size: 11px;
}

.single-product-buybox #buyBoxDiscountPercent {
    min-width: 36px;
    padding: 2px 7px !important;
    border-radius: 7px;
}

.single-product-buybox .single-product-price-area > div:last-child > p {
    margin-top: 2px;
    color: var(--sp-muted, #98a2b3);
    font-size: 9px;
}

.single-product-buybox .single-product-buy-actions {
    align-items: stretch;
    gap: 8px;
    margin-top: 12px;
}

.single-product-buybox .buyboxInDecBox {
    min-width: 96px;
    min-height: 46px;
    padding: 4px;
    border: 1px solid var(--sp-border, #e1e5eb);
    border-radius: 10px;
    background: var(--sp-surface, #fff);
    box-shadow: none;
}

.single-product-buybox .btnAddToCartNew {
    flex: 1;
    min-height: 46px;
    padding: 10px 14px;
    border-radius: 10px;
    color: #fff;
    font-size: 12px;
    font-weight: 800;
    box-shadow: none;
    transition: opacity .18s ease, transform .18s ease;
}

.single-product-buybox .btnAddToCartNew:hover {
    transform: translateY(-1px);
    box-shadow: none;
    opacity: .94;
}

@media (max-width: 767px) {
    .single-product-buybox {
        margin: 8px 0 12px;
        padding: 14px;
        border-radius: 14px;
        box-shadow: none;
    }
}

.dark #productGalleryOne .single-product-thumb-link,
.dark .single-product-buybox,
.dark .single-product-buybox .single-product-seller-head,
.dark .single-product-buybox .buyBoxguarantee,
.dark .single-product-buybox .buyBoxOrginal,
.dark .single-product-buybox .buyBoxStock,
.dark .single-product-buybox .buyboxInDecBox {
    border-color: var(--sp-border, #3b4250);
    background-color: var(--sp-surface, #272c35);
}


/* =========================================================
   Single product V6: non-sticky buy box, full-width CTA,
   contained mobile gallery and responsive bottom purchase bar
   ========================================================= */

/* Buy box intentionally remains in normal document flow. */
.single-product-buybox {
    position: relative !important;
    inset: auto !important;
    width: auto !important;
    max-height: none !important;
    overflow: visible !important;
}

/* Quantity is its own row; cart CTA always owns the full next row. */
.single-product-buybox .single-product-buy-actions {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
    width: 100%;
}

.single-product-buybox .single-product-buy-actions .buyboxInDecBox {
    width: 100%;
    min-width: 0;
    justify-content: space-between;
}

.single-product-buybox .single-product-buy-actions > div:last-child {
    width: 100%;
    margin-top: 0 !important;
}

.single-product-buybox .single-product-buy-actions .btnAddToCartNew {
    display: flex;
    width: 100% !important;
    min-height: 48px;
    align-items: center;
    justify-content: center;
}

/* Mobile gallery: stage controls layout; source image never controls stage size. */
@media (max-width: 767px) {
    #productGalleryTwo {
        height: clamp(260px, 78vw, 340px);
        min-height: 260px;
    }

    #productGalleryTwo .swiper-slide > div {
        display: flex !important;
        width: 100%;
        height: 100% !important;
        align-items: center;
        justify-content: center;
        overflow: hidden;
    }

    #productGalleryTwo .resWidthMainImg {
        width: auto !important;
        height: auto !important;
        max-width: calc(100% - 24px) !important;
        max-height: calc(100% - 30px) !important;
        margin: auto;
        padding: 0 !important;
        object-fit: contain !important;
        object-position: center center !important;
    }
}

/* Bottom purchase bar */
.single-product-bottom-bar {
    position: fixed;
    right: 0;
    bottom: 0 !important;
    left: 0;
    z-index: 50;
    box-sizing: border-box;
    padding: 9px 16px;
    border-top: 1px solid var(--sp-border, #e5e7eb);
    background: color-mix(in srgb, var(--sp-surface, #fff) 96%, transparent);
    box-shadow: 0 -8px 28px rgba(15, 23, 42, .08);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    transform: translateY(calc(100% + 4px));
    opacity: 0;
    visibility: hidden;
    transition: transform .28s ease, opacity .2s ease, visibility .28s ease;
}

.single-product-bottom-bar.is-visible {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
}

.single-product-bottom-inner {
    display: flex;
    width: 100%;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

.single-product-bottom-product {
    display: flex;
    min-width: 0;
    flex: 1 1 auto;
    align-items: center;
    gap: 11px;
}

.single-product-bottom-thumb {
    display: flex;
    flex: 0 0 54px;
    width: 54px;
    height: 54px;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: 1px solid var(--sp-border, #e5e7eb);
    border-radius: 11px;
    background: var(--sp-surface, #fff);
}

.single-product-bottom-thumb img {
    width: auto;
    height: auto;
    max-width: 90%;
    max-height: 90%;
    object-fit: contain;
}

.single-product-bottom-meta {
    min-width: 0;
}

.single-product-bottom-title {
    max-width: min(46vw, 560px);
    margin: 0 0 4px;
    overflow: hidden;
    color: var(--sp-text, #1f2937);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.8;
    text-align: right;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.single-product-bottom-price-group {
    display: flex;
    min-width: 0;
    align-items: baseline;
    gap: 8px;
    white-space: nowrap;
}

.single-product-bottom-old-price {
    color: var(--sp-muted, #98a2b3);
    font-size: 10px;
    line-height: 1;
}

.single-product-bottom-current-price {
    display: inline-flex;
    align-items: baseline;
    gap: 4px;
    white-space: nowrap;
}

.single-product-bottom-price {
    color: var(--sp-text, #101828);
    font-size: 18px;
    font-weight: 900;
    line-height: 1.35;
}

.single-product-bottom-currency {
    color: var(--sp-muted, #667085);
    font-size: 10px;
    font-weight: 500;
}

.single-product-bottom-action {
    flex: 0 0 auto;
}

.single-product-bottom-cart-button {
    display: flex !important;
    min-width: 180px;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    padding: 9px 22px !important;
    border: 0;
    border-radius: 11px !important;
    color: #fff;
    font-size: 12px;
    font-weight: 800;
    white-space: nowrap;
}

@media (max-width: 767px) {
    .single-product-bottom-bar {
        padding: 8px 10px calc(8px + env(safe-area-inset-bottom));
    }

    .single-product-bottom-inner {
        gap: 8px;
    }

    .single-product-bottom-product {
        min-width: 0;
        gap: 0;
    }

    .single-product-bottom-thumb {
        display: none;
    }

    .single-product-bottom-meta {
        min-width: 0;
        flex: 1;
    }

    .single-product-bottom-title {
        max-width: 100%;
        margin-bottom: 2px;
        font-size: 10px;
        line-height: 1.7;
    }

    .single-product-bottom-price-group {
        gap: 5px;
    }

    .single-product-bottom-old-price {
        font-size: 8px;
    }

    .single-product-bottom-price {
        font-size: 14px;
        line-height: 1.3;
    }

    .single-product-bottom-currency {
        font-size: 8px;
    }

    .single-product-bottom-action {
        flex: 0 0 min(45%, 160px);
    }

    .single-product-bottom-cart-button {
        width: 100%;
        min-width: 0;
        min-height: 40px;
        padding: 7px 10px !important;
        border-radius: 10px !important;
        font-size: 10px;
    }
}

.dark .single-product-bottom-bar {
    border-top-color: var(--sp-border, #3b4250);
    background: color-mix(in srgb, var(--sp-surface, #272c35) 96%, transparent);
}


/* =========================================================
   Single product V7: purchase stack, mobile price visibility,
   mobile bottom-nav clearance, 2-column features and tabs polish
   ========================================================= */

/* Price and quantity belong to one vertical purchase column. */
.single-product-buybox .single-product-purchase-column {
    display: flex;
    width: 100%;
    flex-direction: column;
    gap: 10px;
    margin-top: 12px;
}

.single-product-buybox .single-product-price-area {
    display: flex !important;
    width: 100%;
    min-width: 0;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    margin: 0 !important;
    padding: 13px 0 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
}

.single-product-buybox .single-product-buybox-price-content {
    min-width: 0;
    margin-inline-start: auto;
}

.single-product-buybox .single-product-price-updated-at {
    margin-top: 2px;
    color: var(--sp-muted, #98a2b3);
}

.single-product-buybox .single-product-quantity-row {
    display: flex;
    width: 100%;
    min-height: 46px;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 8px 10px;
    border: 1px solid var(--sp-border, #e8edf4);
    border-radius: 12px;
    background: color-mix(in srgb, var(--sp-primary, var(--color-primary)) 2.5%, var(--sp-surface, #fff));
}

.single-product-buybox .single-product-quantity-label {
    color: var(--sp-text, #344054);
    font-size: 12px;
    font-weight: 700;
}

.single-product-buybox .single-product-quantity-row .buyboxInDecBox {
    display: inline-flex !important;
    width: auto !important;
    min-width: 116px !important;
    min-height: 36px !important;
    align-items: center;
    justify-content: space-between !important;
    gap: 5px !important;
    padding: 3px !important;
    border: 1px solid color-mix(in srgb, var(--sp-primary, var(--color-primary)) 15%, var(--sp-border, #e8edf4));
    border-radius: 10px;
    background: var(--sp-surface, #fff);
}

.single-product-quantity-button {
    display: inline-flex;
    width: 30px;
    height: 30px;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 8px;
    color: var(--sp-primary, var(--color-primary));
    background: var(--sp-soft-primary, color-mix(in srgb, var(--color-primary) 7%, #fff));
    font-size: 17px;
    font-weight: 800;
    line-height: 1;
    cursor: pointer;
}

.single-product-quantity-value {
    min-width: 28px;
    color: var(--sp-text, #1f2937);
    font-size: 14px;
    font-weight: 800;
    text-align: center;
}

/* CTA keeps its own full-width row. */
.single-product-buybox .single-product-buy-actions {
    display: block !important;
    width: 100%;
    margin-top: 10px !important;
}

.single-product-buybox .single-product-buy-actions > div,
.single-product-buybox .single-product-buy-actions .btnAddToCartNew {
    width: 100% !important;
}

.single-product-buybox .single-product-buy-actions .btnAddToCartNew {
    min-height: 49px;
}

/* Mobile Buy Box must show the same real price and quantity controls. */
@media (max-width: 767px) {
    .single-product-buybox .single-product-purchase-column,
    .single-product-buybox .single-product-price-area,
    .single-product-buybox .single-product-buy-actions {
        display: flex !important;
    }

    .single-product-buybox .single-product-purchase-column {
        gap: 8px;
        margin-top: 10px;
    }

    .single-product-buybox .single-product-price-area {
        min-height: 58px;
        padding-top: 11px !important;
    }

    .single-product-buybox #buyBoxFinalPrice {
        font-size: 20px !important;
        line-height: 1.55;
    }

    .single-product-buybox .buyBoxTomanSpan {
        font-size: 10px;
    }

    .single-product-buybox .single-product-price-updated-at {
        font-size: 8px !important;
    }

    .single-product-buybox .single-product-quantity-row {
        min-height: 44px;
        padding: 6px 8px;
    }

    .single-product-buybox .single-product-buy-actions {
        flex-direction: column !important;
    }

    /* Two product features per row, each feature remains an independent card. */
    .single-product-meta .product-feature-grid,
    .single-product-meta .product-feature-grid--extra {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 7px !important;
    }

    .single-product-meta .product-feature-item {
        display: flex !important;
        min-height: 35px;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: center;
        gap: 3px !important;
        padding: 8px 9px !important;
    }

    .single-product-meta .product-feature-label {
        width: 100%;
        color: var(--sp-muted, #7a8495);
        font-size: 10px;
        line-height: 1.6;
        white-space: normal !important;
    }

    .single-product-meta .product-feature-value {
        width: 100%;
        font-size: 12px;
        line-height: 1.7;
    }

    /* Leave room for the fixed mobile user navigation beneath this purchase bar. */
    .single-product-bottom-bar {
        --single-product-mobile-nav-height: 66px;
        right: 8px;
        bottom: calc(var(--single-product-mobile-nav-height) + 10px + env(safe-area-inset-bottom)) !important;
        left: 8px;
        z-index: 60;
        padding: 8px 10px !important;
        border: 1px solid var(--sp-border, #e5e7eb);
        border-radius: 14px;
        box-shadow: 0 8px 28px rgba(15, 23, 42, .12);
    }
}

/* Product description / reviews: closer to the upper product UI without a redesign. */
.single-product-review-section {
    margin-top: 12px;
}

.single-product-review-section > .containerHeader {
    overflow: hidden;
    border: 1px solid var(--sp-border, #e8edf4);
    border-radius: 18px;
    background: var(--sp-surface, #fff);
    box-shadow: 0 6px 24px rgba(15, 23, 42, .035);
}

.single-product-review-section .mobile-scroll-tabs {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 7px 14px 0;
    border-bottom: 1px solid var(--sp-border, #e8edf4);
    background: color-mix(in srgb, var(--sp-primary, var(--color-primary)) 1.5%, var(--sp-surface, #fff));
}

.single-product-review-section .tab-btn {
    position: relative;
    min-height: 46px;
    padding: 9px 13px !important;
    border: 0 !important;
    color: var(--sp-muted, #667085) !important;
    background: transparent;
    font-size: 13px !important;
    font-weight: 650 !important;
    transition: color .18s ease, background-color .18s ease;
}

.single-product-review-section .tab-btn::after {
    content: "";
    position: absolute;
    right: 12px;
    bottom: -1px;
    left: 12px;
    height: 2px;
    border-radius: 999px 999px 0 0;
    background: transparent;
}

.single-product-review-section .tab-btn:hover,
.single-product-review-section .tab-btn.active {
    color: var(--sp-primary, var(--color-primary)) !important;
    background: var(--sp-soft-primary, color-mix(in srgb, var(--color-primary) 5%, #fff));
}

.single-product-review-section .tab-btn.active::after {
    background: var(--sp-primary, var(--color-primary));
}

.single-product-review-section .tab-btn svg {
    color: currentColor;
}

.single-product-review-section .tab-content {
    margin: 0;
    padding: 28px 24px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: var(--sp-surface, #fff) !important;
}

.single-product-review-section #tab0 > .space-y-5 > .col-span-10 {
    width: 100%;
}

.single-product-review-section #tab0 h2,
.single-product-review-section #tab2 h2 {
    color: var(--sp-text, #1f2937) !important;
    font-size: 20px !important;
    font-weight: 850 !important;
}

@media (max-width: 767px) {
    .single-product-review-section {
        margin-top: 9px;
    }

    .single-product-review-section > .containerHeader {
        border-radius: 14px;
        box-shadow: none;
    }

    .single-product-review-section .mobile-scroll-tabs {
        position: static !important;
        gap: 1px;
        padding: 5px 8px 0;
    }

    .single-product-review-section .tab-btn {
        min-height: 42px;
        padding: 8px 10px !important;
        font-size: 12px !important;
    }

    .single-product-review-section .tab-content {
        padding: 16px 12px !important;
    }

    .single-product-review-section #tab0 .grid,
    .single-product-review-section #tab2 > .grid {
        display: block !important;
    }

    .single-product-review-section #tab0 .col-span-10,
    .single-product-review-section #tab2 .col-span-4,
    .single-product-review-section #tab2 .lg\:col-span-1 {
        width: 100% !important;
        margin-left: 0 !important;
    }

    .single-product-review-section #tab2 .sticky {
        position: static !important;
        top: auto !important;
        margin-left: 0 !important;
    }

    .single-product-review-section #tab0 h2,
    .single-product-review-section #tab2 h2 {
        font-size: 17px !important;
    }
}

.dark .single-product-review-section > .containerHeader,
.dark .single-product-review-section .mobile-scroll-tabs,
.dark .single-product-review-section .tab-content,
.dark .single-product-buybox .single-product-quantity-row,
.dark .single-product-buybox .single-product-quantity-row .buyboxInDecBox {
    border-color: var(--sp-border, #3b4250) !important;
    background-color: var(--sp-surface, #272c35) !important;
}


/* =========================================================
   Single product V8: typography, price hierarchy, stock row,
   tab icons and reviews visual system
   ========================================================= */

/* --- Consistent typography scale for the single-product UI --- */
.single-product-meta,
.single-product-buybox,
.single-product-service-section,
.single-product-review-section {
    --sp-font-xs: 11px;
    --sp-font-sm: 12.5px;
    --sp-font-md: 14px;
    --sp-font-lg: 16px;
    --sp-font-xl: 21px;
}

.single-product-title {
    font-size: clamp(20px, 1.45vw, 23px) !important;
    line-height: 1.8 !important;
    font-weight: 850 !important;
}

.single-product-meta .space-y-2 h4,
.single-product-meta .product-info-card h4,
.single-product-buybox h5,
.single-product-service-copy strong {
    font-size: var(--sp-font-md) !important;
    line-height: 1.75 !important;
}

.single-product-meta p,
.single-product-meta .product-feature-value,
.single-product-buybox .shopNameShippingServise,
.single-product-buybox .h5Stock,
.single-product-service-copy span {
    font-size: var(--sp-font-sm) !important;
}

.single-product-meta .product-feature-label,
.single-product-model,
.single-product-meta-row,
.single-product-price-updated-at {
    font-size: var(--sp-font-xs) !important;
}

/* --- Stock is informational only; no popup/click affordance --- */
.single-product-buybox .single-product-stock-block {
    display: flex !important;
    width: 100%;
    flex-direction: column;
    align-items: stretch !important;
    gap: 9px;
}

.single-product-stock-row,
.single-product-shipping-row {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 9px;
}

.single-product-buybox-row-icon {
    flex: 0 0 20px;
    width: 20px !important;
    height: 20px !important;
    color: var(--sp-secondary, var(--color-secondary));
}

.single-product-stock-row .single-product-buybox-row-icon {
    color: var(--sp-success, var(--color-success));
}

.single-product-shipping-row .single-product-buybox-row-icon {
    color: var(--sp-primary, var(--color-primary));
}

.single-product-stock-row .h5Stock,
.single-product-shipping-row .shopNameShippingServise {
    margin: 0 !important;
    padding: 0 !important;
    color: var(--sp-text, #344054);
    font-weight: 700 !important;
}

/* --- Discount and old price live directly above the final price --- */
.single-product-buybox .single-product-price-area {
    justify-content: flex-end !important;
}

.single-product-buybox .single-product-buybox-price-content {
    display: flex;
    width: 100%;
    flex-direction: column;
    align-items: flex-end;
    gap: 3px;
}

.single-product-discount-line {
    display: flex;
    min-height: 24px;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
}

.single-product-discount-badge,
.single-product-bottom-discount-badge {
    display: inline-flex;
    min-width: 34px;
    height: 22px;
    align-items: center;
    justify-content: center;
    padding: 0 7px;
    border-radius: 7px;
    color: #fff;
    background: var(--sp-primary, var(--color-primary));
    font-size: 10px;
    font-weight: 800;
    line-height: 1;
}

.single-product-buybox .single-product-old-price {
    margin: 0 !important;
    color: var(--sp-muted, #98a2b3) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    text-decoration-thickness: 1px;
}

.single-product-buybox .single-product-final-price,
.single-product-buybox #buyBoxFinalPrice {
    margin: 0 !important;
    color: var(--sp-text, #1f2937) !important;
    font-size: 22px !important;
    font-weight: 900 !important;
    line-height: 1.5 !important;
}

.single-product-buybox .buyBoxTomanSpan {
    font-size: 11px !important;
    font-weight: 650 !important;
}

.single-product-bottom-price-group {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1px;
}

.single-product-bottom-discount-line {
    display: flex;
    min-height: 18px;
    align-items: center;
    gap: 6px;
}

.single-product-bottom-discount-badge {
    min-width: 30px;
    height: 19px;
    padding-inline: 5px;
    border-radius: 6px;
    font-size: 9px;
}

.single-product-bottom-old-price {
    color: var(--sp-muted, #98a2b3) !important;
    font-size: 10px !important;
}

/* --- Product review tabs: cleaner icons, sizes and active state --- */
.single-product-review-section .mobile-scroll-tabs {
    gap: 6px;
    padding: 8px 14px 0;
}

.single-product-review-section .tab-btn {
    gap: 7px !important;
    min-height: 48px;
    padding: 9px 14px !important;
    border-radius: 10px 10px 0 0;
    font-size: 13px !important;
    font-weight: 750 !important;
}

.single-product-review-section .single-product-tab-icon,
.single-product-review-section .tab-btn > svg {
    flex: 0 0 21px;
    width: 21px !important;
    height: 21px !important;
    stroke-width: 1.8;
}

.single-product-tab-count {
    display: inline-flex;
    min-width: 23px;
    height: 21px;
    align-items: center;
    justify-content: center;
    padding: 0 6px;
    border-radius: 7px;
    font-size: 10px;
    font-weight: 800;
}

.single-product-review-section .tab-btn.active {
    background: var(--sp-soft-primary, color-mix(in srgb, var(--color-primary) 6%, #fff));
}

/* --- Tab content typography --- */
.single-product-review-section .tab-content {
    color: var(--sp-text, #344054);
    font-size: 13px !important;
    line-height: 2;
}

.single-product-review-section .tab-content h2 {
    margin: 0 !important;
    color: var(--sp-text, #1f2937) !important;
    font-size: 18px !important;
    font-weight: 850 !important;
    line-height: 1.8 !important;
}

.single-product-review-section .tab-content h3 {
    font-size: 16px !important;
    font-weight: 800 !important;
}

.single-product-review-section .tab-content h4,
.single-product-review-section .tab-content label {
    font-size: 13px !important;
    font-weight: 650 !important;
}

.single-product-review-section .tab-content p,
.single-product-review-section .tab-content li,
.single-product-review-section .tab-content input,
.single-product-review-section .tab-content textarea,
.single-product-review-section .tab-content button {
    font-size: 14.5px !important;
}

/* --- Reviews tab: two clear panels instead of loose columns --- */
.single-product-review-section #tab2 > .grid {
    display: grid !important;
    grid-template-columns: minmax(270px, .72fr) minmax(0, 1.28fr) !important;
    gap: 18px !important;
    margin-top: 0 !important;
}

.single-product-review-section #tab2 > .grid > div:first-child,
.single-product-review-section #tab2 > .grid > div:nth-child(2) {
    min-width: 0;
    margin-left: 0 !important;
    padding: 18px;
    border: 1px solid var(--sp-border, #e8edf4);
    border-radius: 15px;
    background: var(--sp-surface, #fff);
}

.single-product-review-section #tab2 > .grid > div:first-child {
    align-self: start;
    background: color-mix(in srgb, var(--sp-primary, var(--color-primary)) 2.5%, var(--sp-surface, #fff));
}

.single-product-review-section #tab2 > .grid > div:first-child .my-4.mt-16,
.single-product-review-section #tab2 > .grid > div:nth-child(2) > .w-full.mt-16 {
    margin-top: 22px !important;
}

.single-product-review-section #tab2 .text-5xl {
    font-size: 34px !important;
    line-height: 1 !important;
}

.single-product-review-section #tab2 .bg-gray-300 {
    background: color-mix(in srgb, var(--sp-border, #e8edf4) 75%, #fff) !important;
}

.single-product-review-section #tab2 .bg-primary-500 {
    background: var(--sp-primary, var(--color-primary)) !important;
}

.single-product-review-section #tab2 form input[type="text"],
.single-product-review-section #tab2 form input[type="email"],
.single-product-review-section #tab2 form textarea,
.single-product-review-section #tab2 .tag-container {
    border: 1px solid var(--sp-border, #dfe4ec) !important;
    border-radius: 10px !important;
    background: var(--sp-surface, #fff) !important;
    box-shadow: none !important;
}

.single-product-review-section #tab2 form input[type="text"],
.single-product-review-section #tab2 form input[type="email"] {
    min-height: 42px;
    padding: 9px 11px !important;
}

.single-product-review-section #tab2 form textarea {
    min-height: 112px;
    padding: 10px 11px !important;
}

.single-product-review-section #tab2 form input:focus,
.single-product-review-section #tab2 form textarea:focus,
.single-product-review-section #tab2 .tag-container:focus-within {
    border-color: color-mix(in srgb, var(--sp-primary, var(--color-primary)) 48%, var(--sp-border, #dfe4ec)) !important;
    outline: 0;
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--sp-primary, var(--color-primary)) 8%, transparent) !important;
}

.single-product-review-section #tab2 button[type="submit"],
.single-product-review-submit {
    display: inline-flex;
    min-width: 150px;
    min-height: 46px;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 10px 24px !important;
    border: 1px solid var(--sp-primary, var(--color-primary)) !important;
    border-radius: 12px !important;
    color: #fff !important;
    background: var(--sp-primary, var(--color-primary)) !important;
    box-shadow: 0 8px 20px color-mix(in srgb, var(--sp-primary, var(--color-primary)) 18%, transparent) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.5;
    cursor: pointer;
    transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.single-product-review-section #tab2 button[type="submit"]:hover,
.single-product-review-submit:hover {
    border-color: var(--color-primary-dark, var(--sp-primary, var(--color-primary))) !important;
    background: var(--color-primary-dark, var(--sp-primary, var(--color-primary))) !important;
    box-shadow: 0 10px 24px color-mix(in srgb, var(--sp-primary, var(--color-primary)) 24%, transparent) !important;
    transform: translateY(-1px);
}

.single-product-review-section #tab2 button[type="submit"]:active,
.single-product-review-submit:active {
    transform: translateY(0);
    box-shadow: 0 5px 14px color-mix(in srgb, var(--sp-primary, var(--color-primary)) 16%, transparent) !important;
}

.single-product-review-section #tab2 button[type="submit"]:focus-visible,
.single-product-review-submit:focus-visible {
    outline: 0;
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--sp-primary, var(--color-primary)) 14%, transparent),
    0 8px 20px color-mix(in srgb, var(--sp-primary, var(--color-primary)) 18%, transparent) !important;
}

@media (max-width: 767px) {
    .single-product-review-section #tab2 button[type="submit"],
    .single-product-review-submit {
        width: 100%;
        min-height: 48px;
        padding-inline: 16px !important;
        border-radius: 12px !important;
        font-size: 13px !important;
    }
}

.single-product-review-section #tab2 .space-y-5 > .border.border-gray-300.rounded-lg {
    padding: 14px !important;
    border-color: var(--sp-border, #e8edf4) !important;
    border-radius: 13px !important;
    background: color-mix(in srgb, var(--sp-primary, var(--color-primary)) 1%, var(--sp-surface, #fff));
}

.single-product-review-section #tab2 .space-y-5 > .grid {
    align-items: center;
    padding: 8px 0 !important;
    border-bottom: 1px solid var(--sp-border, #e8edf4);
}

.dark .single-product-stock-row .h5Stock,
.dark .single-product-shipping-row .shopNameShippingServise,
.dark .single-product-buybox .single-product-final-price,
.dark .single-product-review-section .tab-content {
    color: var(--color-text-primary-dark, #F8FAFC) !important;
}

.dark .single-product-review-section #tab2 > .grid > div:first-child,
.dark .single-product-review-section #tab2 > .grid > div:nth-child(2),
.dark .single-product-review-section #tab2 form input[type="text"],
.dark .single-product-review-section #tab2 form input[type="email"],
.dark .single-product-review-section #tab2 form textarea,
.dark .single-product-review-section #tab2 .tag-container,
.dark .single-product-review-section #tab2 .space-y-5 > .border.border-gray-300.rounded-lg {
    border-color: var(--sp-border, #3b4250) !important;
    background: var(--sp-surface, #272c35) !important;
}

@media (max-width: 767px) {
    .single-product-title {
        font-size: 18px !important;
        line-height: 1.85 !important;
    }

    .single-product-meta .space-y-2 h4,
    .single-product-meta .product-info-card h4,
    .single-product-buybox h5,
    .single-product-service-copy strong {
        font-size: 13px !important;
    }

    .single-product-review-section .mobile-scroll-tabs {
        gap: 3px;
        padding: 6px 8px 0;
    }

    .single-product-review-section .tab-btn {
        min-height: 43px;
        padding: 7px 10px !important;
        font-size: 12px !important;
    }

    .single-product-review-section .single-product-tab-icon,
    .single-product-review-section .tab-btn > svg {
        flex-basis: 19px;
        width: 19px !important;
        height: 19px !important;
    }

    .single-product-review-section .tab-content {
        padding: 14px 10px !important;
        font-size: 12.5px !important;
    }

    .single-product-review-section .tab-content h2 {
        font-size: 16px !important;
    }

    .single-product-review-section #tab2 > .grid {
        display: flex !important;
        flex-direction: column;
        gap: 10px !important;
    }

    .single-product-review-section #tab2 > .grid > div:first-child,
    .single-product-review-section #tab2 > .grid > div:nth-child(2) {
        width: 100% !important;
        padding: 13px;
        border-radius: 12px;
    }

    .single-product-review-section #tab2 > .grid > div:first-child {
        position: static !important;
        top: auto !important;
    }

    .single-product-review-section #tab2 > .grid > div:first-child .my-4.mt-16,
    .single-product-review-section #tab2 > .grid > div:nth-child(2) > .w-full.mt-16 {
        margin-top: 15px !important;
    }

    .single-product-review-section #tab2 .text-5xl {
        font-size: 29px !important;
    }

    .single-product-discount-line {
        min-height: 21px;
        gap: 6px;
    }

    .single-product-buybox .single-product-final-price,
    .single-product-buybox #buyBoxFinalPrice {
        font-size: 20px !important;
    }
}


/* Single product V9: dynamic mobile comments summary */
.single-product-mobile-comments-card {
    overflow: hidden;
    border: 1px solid #e8edf4;
    border-radius: 16px;
    background: var(--color-card-light, #fff);
}

.single-product-mobile-comments-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 16px;
    border-bottom: 1px solid #edf0f5;
}

.single-product-mobile-comments-title {
    display: flex;
    align-items: center;
    gap: 7px;
    margin: 0;
    color: var(--color-text-primary-light, #1E293B);
    font-size: 15px;
    font-weight: 800;
    line-height: 1.9;
}

.single-product-mobile-comments-title span {
    display: inline-flex;
    min-width: 25px;
    height: 25px;
    align-items: center;
    justify-content: center;
    padding-inline: 6px;
    border-radius: 8px;
    color: var(--color-primary);
    background: color-mix(in srgb, var(--color-primary) 9%, white);
    font-size: 11px;
}

.single-product-mobile-comments-head p {
    margin: 2px 0 0;
    color: var(--color-text-secondary-light, #64748B);
    font-size: 11px;
    line-height: 1.8;
}

.single-product-mobile-comments-action {
    flex: 0 0 auto;
    padding: 7px 11px;
    border: 1px solid color-mix(in srgb, var(--color-primary) 24%, white);
    border-radius: 9px;
    color: var(--color-primary);
    background: color-mix(in srgb, var(--color-primary) 5%, white);
    font-size: 11px;
    font-weight: 700;
}

.single-product-mobile-comments-list {
    padding: 0 16px;
}

.single-product-mobile-comment-item {
    padding: 13px 0;
    border-bottom: 1px solid #edf0f5;
}

.single-product-mobile-comment-item:last-child {
    border-bottom: 0;
}

.single-product-mobile-comment-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 5px;
}

.single-product-mobile-comment-meta strong {
    overflow: hidden;
    color: var(--color-text-primary-light, #1E293B);
    font-size: 12px;
    font-weight: 750;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.single-product-mobile-comment-rate {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    color: var(--color-warning, #f59e0b);
    font-size: 11px;
    font-weight: 800;
}

.single-product-mobile-comment-rate svg {
    width: 14px;
    height: 14px;
    fill: currentColor;
}

.single-product-mobile-comment-item > p {
    margin: 0;
    color: var(--color-text-secondary-light, #64748B);
    font-size: 12px;
    line-height: 2;
}

.single-product-mobile-comments-more {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    min-height: 42px;
    border-top: 1px solid #edf0f5;
    color: var(--color-primary);
    font-size: 12px;
    font-weight: 750;
}

.single-product-mobile-comments-more svg {
    width: 16px;
    height: 16px;
}

.single-product-mobile-comments-empty {
    padding: 20px 16px;
    color: var(--color-text-secondary-light, #64748B);
    font-size: 12px;
    line-height: 2;
    text-align: center;
}

.dark .single-product-mobile-comments-card {
    border-color: #3b4250;
    background: var(--color-card-dark, #1E293B);
}

.dark .single-product-mobile-comments-head,
.dark .single-product-mobile-comment-item,
.dark .single-product-mobile-comments-more {
    border-color: #3b4250;
}

.dark .single-product-mobile-comments-title,
.dark .single-product-mobile-comment-meta strong {
    color: var(--color-text-primary-dark, #F8FAFC);
}

.dark .single-product-mobile-comments-head p,
.dark .single-product-mobile-comment-item > p,
.dark .single-product-mobile-comments-empty {
    color: var(--color-text-secondary-dark, #94A3B8);
}
