/* [next]/internal/font/google/inter_c15e96cb.module.css [app-client] (css) */
@font-face {
  font-family: Inter;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/2c55a0e60120577a-s.2a48534a.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: Inter;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/9c72aa0f40e4eef8-s.18a48cbc.woff2") format("woff2");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

@font-face {
  font-family: Inter;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/ad66f9afd8947f86-s.7a40eb73.woff2") format("woff2");
  unicode-range: U+1F??;
}

@font-face {
  font-family: Inter;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/5476f68d60460930-s.c995e352.woff2") format("woff2");
  unicode-range: U+370-377, U+37A-37F, U+384-38A, U+38C, U+38E-3A1, U+3A3-3FF;
}

@font-face {
  font-family: Inter;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/2bbe8d2671613f1f-s.76dcb0b2.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: Inter;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/1bffadaabf893a1e-s.7cd81963.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Inter;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/83afe278b6a6bb3c-s.p.3a6ba036.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Inter Fallback;
  src: local(Arial);
  ascent-override: 90.44%;
  descent-override: 22.52%;
  line-gap-override: 0.0%;
  size-adjust: 107.12%;
}

.inter_c15e96cb-module__0bjUvq__className {
  font-family: Inter, Inter Fallback;
  font-style: normal;
}

.inter_c15e96cb-module__0bjUvq__variable {
  --font-inter: "Inter", "Inter Fallback";
}

/* [next]/internal/font/google/fraunces_d361c29d.module.css [app-client] (css) */
@font-face {
  font-family: Fraunces;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/1e219c03c996efbd-s.ba7d7329.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: Fraunces;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/b35b0dbffda7f2c4-s.0c27b1b4.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Fraunces;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/03bda585a99c6450-s.p.ad37b9d9.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Fraunces Fallback;
  src: local(Times New Roman);
  ascent-override: 84.71%;
  descent-override: 22.09%;
  line-gap-override: 0.0%;
  size-adjust: 115.45%;
}

.fraunces_d361c29d-module__5PBLiG__className {
  font-family: Fraunces, Fraunces Fallback;
  font-style: normal;
}

.fraunces_d361c29d-module__5PBLiG__variable {
  --font-fraunces: "Fraunces", "Fraunces Fallback";
}

/* [next]/internal/font/google/literata_d41f6e2e.module.css [app-client] (css) */
@font-face {
  font-family: Literata;
  font-style: normal;
  font-weight: 200 900;
  font-display: swap;
  src: url("../media/dcc06fc59088004f-s.54bad1d7.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: Literata;
  font-style: normal;
  font-weight: 200 900;
  font-display: swap;
  src: url("../media/14a4f422adc8017e-s.01a7508b.woff2") format("woff2");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

@font-face {
  font-family: Literata;
  font-style: normal;
  font-weight: 200 900;
  font-display: swap;
  src: url("../media/294dd5272e5dc576-s.09029934.woff2") format("woff2");
  unicode-range: U+1F??;
}

@font-face {
  font-family: Literata;
  font-style: normal;
  font-weight: 200 900;
  font-display: swap;
  src: url("../media/c0f3072741f3158c-s.33e62ad5.woff2") format("woff2");
  unicode-range: U+370-377, U+37A-37F, U+384-38A, U+38C, U+38E-3A1, U+3A3-3FF;
}

@font-face {
  font-family: Literata;
  font-style: normal;
  font-weight: 200 900;
  font-display: swap;
  src: url("../media/32ed8f926ffc9cc2-s.03ca8e77.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: Literata;
  font-style: normal;
  font-weight: 200 900;
  font-display: swap;
  src: url("../media/b6a9aad84d41ea38-s.12b6c3b6.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Literata;
  font-style: normal;
  font-weight: 200 900;
  font-display: swap;
  src: url("../media/30bdb5bb2b173ee1-s.p.5eca26fe.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Literata Fallback;
  src: local(Times New Roman);
  ascent-override: 99.62%;
  descent-override: 26.07%;
  line-gap-override: 0.0%;
  size-adjust: 118.15%;
}

.literata_d41f6e2e-module__V_AzcW__className {
  font-family: Literata, Literata Fallback;
  font-style: normal;
}

.literata_d41f6e2e-module__V_AzcW__variable {
  --font-literata: "Literata", "Literata Fallback";
}

/* [next]/internal/font/google/lora_f1014322.module.css [app-client] (css) */
@font-face {
  font-family: Lora;
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("../media/e7150917543fc9da-s.8200e9a3.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: Lora;
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("../media/71fbf9c08529c2a5-s.91ff3091.woff2") format("woff2");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

@font-face {
  font-family: Lora;
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("../media/e9457141811d41ae-s.30a48620.woff2") format("woff2");
  unicode-range: U+302-303, U+305, U+307-308, U+310, U+312, U+315, U+31A, U+326-327, U+32C, U+32F-330, U+332-333, U+338, U+33A, U+346, U+34D, U+391-3A1, U+3A3-3A9, U+3B1-3C9, U+3D1, U+3D5-3D6, U+3F0-3F1, U+3F4-3F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043, U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-208E, U+2090-209C, U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121, U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2, U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319, U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1, U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB, U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE, U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE??;
}

@font-face {
  font-family: Lora;
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("../media/ac34884600cd8d5d-s.7d4c278c.woff2") format("woff2");
  unicode-range: U+1-C, U+E-1F, U+7F-9F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+28??, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B??, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F0??, U+1F100-1F1AD, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F7??, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FA89, U+1FA8F-1FAC6, U+1FACE-1FADC, U+1FADF-1FAE9, U+1FAF0-1FAF8, U+1FB??;
}

@font-face {
  font-family: Lora;
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("../media/e1ccd2766b08c828-s.838318db.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: Lora;
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("../media/507a47c1876d4ec2-s.303dbfb4.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Lora;
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("../media/8c2eb9ceedecfc8e-s.p.21935807.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Lora Fallback;
  src: local(Times New Roman);
  ascent-override: 87.33%;
  descent-override: 23.78%;
  line-gap-override: 0.0%;
  size-adjust: 115.2%;
}

.lora_f1014322-module__l-izAG__className {
  font-family: Lora, Lora Fallback;
  font-style: normal;
}

.lora_f1014322-module__l-izAG__variable {
  --font-lora: "Lora", "Lora Fallback";
}

/* [next]/internal/font/google/figtree_4fd20b5.module.css [app-client] (css) */
@font-face {
  font-family: Figtree;
  font-style: normal;
  font-weight: 300 900;
  font-display: swap;
  src: url("../media/400bf8aa837fcb7e-s.b68677ba.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Figtree;
  font-style: normal;
  font-weight: 300 900;
  font-display: swap;
  src: url("../media/f7aa21714c1c53f8-s.p.e3544bb0.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Figtree Fallback;
  src: local(Arial);
  ascent-override: 94.32%;
  descent-override: 24.82%;
  line-gap-override: 0.0%;
  size-adjust: 100.72%;
}

.figtree_4fd20b5-module__hpvSLW__className {
  font-family: Figtree, Figtree Fallback;
  font-style: normal;
}

.figtree_4fd20b5-module__hpvSLW__variable {
  --font-figtree: "Figtree", "Figtree Fallback";
}

/* [project]/src/app/globals.css [app-client] (css) */
*, :before, :after {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x: ;
  --tw-pan-y: ;
  --tw-pinch-zoom: ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position: ;
  --tw-gradient-via-position: ;
  --tw-gradient-to-position: ;
  --tw-ordinal: ;
  --tw-slashed-zero: ;
  --tw-numeric-figure: ;
  --tw-numeric-spacing: ;
  --tw-numeric-fraction: ;
  --tw-ring-inset: ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgba(59, 130, 246, .5);
  --tw-ring-offset-shadow: 0 0 rgba(0, 0, 0, 0);
  --tw-ring-shadow: 0 0 rgba(0, 0, 0, 0);
  --tw-shadow: 0 0 rgba(0, 0, 0, 0);
  --tw-shadow-colored: 0 0 rgba(0, 0, 0, 0);
  --tw-blur: ;
  --tw-brightness: ;
  --tw-contrast: ;
  --tw-grayscale: ;
  --tw-hue-rotate: ;
  --tw-invert: ;
  --tw-saturate: ;
  --tw-sepia: ;
  --tw-drop-shadow: ;
  --tw-backdrop-blur: ;
  --tw-backdrop-brightness: ;
  --tw-backdrop-contrast: ;
  --tw-backdrop-grayscale: ;
  --tw-backdrop-hue-rotate: ;
  --tw-backdrop-invert: ;
  --tw-backdrop-opacity: ;
  --tw-backdrop-saturate: ;
  --tw-backdrop-sepia: ;
  --tw-contain-size: ;
  --tw-contain-layout: ;
  --tw-contain-paint: ;
  --tw-contain-style: ;
}

::backdrop {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x: ;
  --tw-pan-y: ;
  --tw-pinch-zoom: ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position: ;
  --tw-gradient-via-position: ;
  --tw-gradient-to-position: ;
  --tw-ordinal: ;
  --tw-slashed-zero: ;
  --tw-numeric-figure: ;
  --tw-numeric-spacing: ;
  --tw-numeric-fraction: ;
  --tw-ring-inset: ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgba(59, 130, 246, .5);
  --tw-ring-offset-shadow: 0 0 rgba(0, 0, 0, 0);
  --tw-ring-shadow: 0 0 rgba(0, 0, 0, 0);
  --tw-shadow: 0 0 rgba(0, 0, 0, 0);
  --tw-shadow-colored: 0 0 rgba(0, 0, 0, 0);
  --tw-blur: ;
  --tw-brightness: ;
  --tw-contrast: ;
  --tw-grayscale: ;
  --tw-hue-rotate: ;
  --tw-invert: ;
  --tw-saturate: ;
  --tw-sepia: ;
  --tw-drop-shadow: ;
  --tw-backdrop-blur: ;
  --tw-backdrop-brightness: ;
  --tw-backdrop-contrast: ;
  --tw-backdrop-grayscale: ;
  --tw-backdrop-hue-rotate: ;
  --tw-backdrop-invert: ;
  --tw-backdrop-opacity: ;
  --tw-backdrop-saturate: ;
  --tw-backdrop-sepia: ;
  --tw-contain-size: ;
  --tw-contain-layout: ;
  --tw-contain-paint: ;
  --tw-contain-style: ;
}

*, :before, :after {
  box-sizing: border-box;
  border: 0 solid #e5e7eb;
}

:before, :after {
  --tw-content: "";
}

html, :host {
  -webkit-text-size-adjust: 100%;
  -moz-tab-size: 4;
  tab-size: 4;
  font-feature-settings: normal;
  font-variation-settings: normal;
  -webkit-tap-highlight-color: transparent;
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Noto Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
  line-height: 1.5;
}

body {
  line-height: inherit;
  margin: 0;
}

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-feature-settings: normal;
  font-variation-settings: normal;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;
  font-size: 1em;
}

small {
  font-size: 80%;
}

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

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

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

button, input, optgroup, select, textarea {
  font-feature-settings: inherit;
  font-variation-settings: inherit;
  font-family: inherit;
  font-size: 100%;
  font-weight: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  color: inherit;
  margin: 0;
  padding: 0;
}

button, select {
  text-transform: none;
}

button {
  -webkit-appearance: button;
  background-color: rgba(0, 0, 0, 0);
  background-image: none;
}

input:where([type="button"]) {
  -webkit-appearance: button;
  background-color: rgba(0, 0, 0, 0);
  background-image: none;
}

input:where([type="reset"]) {
  -webkit-appearance: button;
  background-color: rgba(0, 0, 0, 0);
  background-image: none;
}

input:where([type="submit"]) {
  -webkit-appearance: button;
  background-color: rgba(0, 0, 0, 0);
  background-image: none;
}

:-moz-focusring {
  outline: auto;
}

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

progress {
  vertical-align: baseline;
}

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

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

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

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

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

summary {
  display: list-item;
}

blockquote, dl, dd, h1, h2, h3, h4, h5, h6, hr, figure, p, pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

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

dialog {
  padding: 0;
}

textarea {
  resize: vertical;
}

input::placeholder, textarea::placeholder {
  opacity: 1;
  color: #9ca3af;
}

button, [role="button"] {
  cursor: pointer;
}

:disabled {
  cursor: default;
}

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

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

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

:root, [data-theme="atelier"] {
  --primary: 24 80% 50%;
  --primary-foreground: 0 0% 100%;
  --secondary: 30 22% 93%;
  --secondary-foreground: 20 20% 14%;
  --accent: 24 72% 45%;
  --accent-foreground: 0 0% 100%;
  --accent-light: 24 70% 60%;
  --destructive: 0 72% 51%;
  --destructive-foreground: 0 0% 98%;
  --ring: 24 80% 50%;
  --radius: .75rem;
  --font-display: var(--font-inter), "Inter", system-ui, -apple-system, sans-serif;
  --font-body: var(--font-inter), "Inter", system-ui, -apple-system, sans-serif;
  --success: 142 71% 35%;
  --success-foreground: 0 0% 100%;
  --success-muted: 142 40% 94%;
  --success-border: 142 30% 78%;
  --warning: 43 96% 50%;
  --warning-foreground: 21 92% 14%;
  --warning-muted: 48 90% 92%;
  --warning-border: 43 80% 72%;
  --info: 217 91% 53%;
  --info-foreground: 224 76% 28%;
  --info-muted: 214 85% 93%;
  --info-border: 217 70% 78%;
  --neutral: 20 8% 58%;
  --neutral-foreground: 20 10% 32%;
  --neutral-muted: 30 10% 95%;
  --neutral-border: 20 10% 82%;
  --rating: 36 100% 50%;
  --background: 33 60% 97%;
  --foreground: 20 14% 10%;
  --card: 0 0% 100%;
  --card-foreground: 20 14% 10%;
  --popover: 0 0% 100%;
  --popover-foreground: 20 14% 10%;
  --muted: 30 20% 95%;
  --muted-foreground: 20 10% 30%;
  --border: 30 18% 90%;
  --input: 30 18% 90%;
  --sidebar-bg: 0 0% 100%;
  --sidebar-text: 20 14% 20%;
  --sidebar-text-muted: 20 8% 52%;
  --sidebar-border: 30 18% 90%;
  --sidebar-hover: 24 90% 50% / .06;
  --sidebar-active: 24 90% 50% / .1;
  --callout-info-bg: 262 40% 96%;
  --callout-info-border: 262 40% 62%;
  --callout-info-text: 262 30% 38%;
  --callout-warning-bg: 24 80% 96%;
  --callout-warning-border: 24 80% 52%;
  --callout-warning-text: 20 60% 26%;
  --callout-tip-bg: 142 28% 94%;
  --callout-tip-border: 142 30% 40%;
  --callout-tip-text: 142 28% 24%;
  --callout-example-bg: 43 55% 95%;
  --callout-example-border: 43 50% 48%;
  --callout-example-text: 20 16% 36%;
  --callout-objective-bg: 210 50% 96%;
  --callout-objective-border: 210 50% 55%;
  --callout-objective-text: 210 40% 28%;
  --callout-next-bg: 24 50% 96%;
  --callout-next-border: 24 70% 50%;
  --callout-next-text: 20 40% 26%;
  --callout-remember-bg: 260 30% 96%;
  --callout-remember-border: 260 50% 45%;
  --callout-remember-text: 260 35% 24%;
  --callout-terrain-bg: 48 65% 95%;
  --callout-terrain-border: 24 70% 50%;
  --callout-terrain-text: 20 40% 26%;
  --callout-error-common-bg: 0 50% 97%;
  --callout-error-common-border: 0 72% 51%;
  --callout-error-common-text: 0 50% 30%;
  --ed-timeline-accent: 24 80% 50%;
  --ed-compare-left: 210 50% 50%;
  --ed-compare-right: 24 80% 50%;
  --ed-process-accent: 24 90% 45%;
  --ed-exam-trap-bg: 0 50% 97%;
  --ed-exam-trap-border: 0 60% 55%;
  --ed-exam-trap-question: 20 14% 10%;
  --ed-exam-trap-warning: 43 90% 48%;
  --ed-exam-trap-answer: 142 60% 35%;
  --ed-dt-question: 260 40% 50%;
  --ed-dt-result: 142 60% 35%;
  --ed-recap-bg: 260 30% 97%;
  --ed-recap-border: 260 50% 55%;
  --ed-recap-check: 142 60% 35%;
  --ed-recap-exam: 24 90% 50%;
  --code-bg: 220 16% 12%;
  --code-text: 220 10% 78%;
  --code-border: 220 14% 20%;
  --shadow-card: 0 1px 3px 0 rgba(249, 115, 22, .05), 0 1px 2px -1px rgba(0, 0, 0, .03);
  --shadow-elevated: 0 4px 6px -1px rgba(249, 115, 22, .07), 0 2px 4px -2px rgba(0, 0, 0, .04);
  --shadow-dropdown: 0 10px 15px -3px rgba(249, 115, 22, .07), 0 4px 6px -4px rgba(0, 0, 0, .04);
  --background-reading: 33 40% 96%;
  --slide-reading-bg: 36 30% 98%;
  --gradient-hero: radial-gradient(ellipse at 30% 0%, rgba(247, 104, 8, .08) 0%, transparent 70%);
  --transition-fast: .15s;
  --transition-normal: .3s;
  --transition-slow: .5s;
  --slide-transition-duration: .3s;
  --easing-smooth: cubic-bezier(.16, 1, .3, 1);
  --easing-spring: cubic-bezier(.34, 1.56, .64, 1);
  --easing-out: cubic-bezier(0, 0, .2, 1);
}

:root .admin-space, [data-theme="atelier"] .admin-space {
  --font-display: var(--font-inter), "Inter", system-ui, -apple-system, sans-serif;
  --font-body: var(--font-inter), "Inter", system-ui, -apple-system, sans-serif;
  --primary: 220 14% 14%;
  --primary-foreground: 0 0% 100%;
  --secondary: 220 13% 95%;
  --secondary-foreground: 220 14% 14%;
  --background: 220 14% 96%;
  --foreground: 220 14% 10%;
  --card: 0 0% 100%;
  --card-foreground: 220 14% 10%;
  --popover: 0 0% 100%;
  --popover-foreground: 220 14% 10%;
  --muted: 220 10% 92%;
  --muted-foreground: 220 6% 44%;
  --border: 220 10% 90%;
  --input: 220 10% 90%;
  --ring: 220 14% 14%;
  --accent: 220 14% 14%;
  --accent-foreground: 0 0% 100%;
  --sidebar-bg: 220 16% 11%;
  --sidebar-text: 0 0% 93%;
  --sidebar-text-muted: 220 8% 58%;
  --sidebar-border: 0 0% 100% / .08;
  --sidebar-hover: 0 0% 100% / .06;
  --sidebar-active: 0 0% 100% / .1;
  --sidebar-active-text: 0 0% 100%;
  --shadow-card: 0 1px 3px 0 rgba(0, 0, 0, .06), 0 1px 2px -1px rgba(0, 0, 0, .04);
  --shadow-elevated: 0 4px 14px -2px rgba(0, 0, 0, .1), 0 2px 6px -2px rgba(0, 0, 0, .06);
  --shadow-dropdown: 0 12px 28px -4px rgba(0, 0, 0, .12), 0 4px 10px -4px rgba(0, 0, 0, .06);
}

.dark, .dark[data-theme="atelier"] {
  --slide-reading-bg: 20 10% 11%;
  --background-reading: 20 10% 10%;
  --background: 20 12% 8%;
  --foreground: 30 7% 90%;
  --card: 20 10% 12%;
  --card-foreground: 30 7% 90%;
  --popover: 20 10% 12%;
  --popover-foreground: 30 7% 90%;
  --primary: 24 90% 55%;
  --primary-foreground: 20 12% 8%;
  --secondary: 20 8% 16%;
  --secondary-foreground: 30 7% 85%;
  --muted: 20 8% 16%;
  --muted-foreground: 25 5% 64%;
  --accent: 24 80% 48%;
  --accent-foreground: 30 7% 90%;
  --accent-light: 24 75% 60%;
  --destructive: 0 60% 55%;
  --destructive-foreground: 30 7% 90%;
  --border: 20 8% 16%;
  --input: 20 8% 16%;
  --ring: 24 90% 55%;
  --success: 142 40% 45%;
  --success-foreground: 142 40% 90%;
  --success-muted: 142 20% 16%;
  --success-border: 142 25% 28%;
  --warning: 43 85% 55%;
  --warning-foreground: 43 85% 92%;
  --warning-muted: 43 25% 16%;
  --warning-border: 43 45% 28%;
  --info: 217 70% 62%;
  --info-foreground: 217 70% 92%;
  --info-muted: 217 25% 16%;
  --info-border: 217 45% 28%;
  --neutral: 20 6% 52%;
  --neutral-foreground: 20 6% 78%;
  --neutral-muted: 20 6% 16%;
  --neutral-border: 20 6% 28%;
  --rating: 36 90% 55%;
  --code-bg: 220 14% 8%;
  --code-text: 220 8% 78%;
  --code-border: 220 10% 16%;
  --gradient-hero: radial-gradient(ellipse at 30% 0%, rgba(244, 120, 37, .08) 0%, transparent 70%);
  --sidebar-bg: 20 12% 7%;
  --sidebar-text: 30 7% 85%;
  --sidebar-text-muted: 25 5% 52%;
  --sidebar-border: 0 0% 100% / .06;
  --sidebar-hover: 24 90% 55% / .08;
  --sidebar-active: 24 90% 55% / .14;
  --callout-info-bg: 262 18% 16%;
  --callout-info-border: 262 28% 38%;
  --callout-info-text: 262 28% 72%;
  --callout-warning-bg: 24 22% 16%;
  --callout-warning-border: 24 50% 42%;
  --callout-warning-text: 24 40% 72%;
  --callout-tip-bg: 142 14% 14%;
  --callout-tip-border: 142 20% 32%;
  --callout-tip-text: 142 22% 68%;
  --callout-example-bg: 43 18% 15%;
  --callout-example-border: 43 32% 38%;
  --callout-example-text: 43 28% 72%;
  --callout-objective-bg: 210 18% 16%;
  --callout-objective-border: 210 28% 38%;
  --callout-objective-text: 210 28% 72%;
  --callout-next-bg: 24 16% 14%;
  --callout-next-border: 24 40% 40%;
  --callout-next-text: 24 35% 72%;
  --callout-remember-bg: 260 14% 15%;
  --callout-remember-border: 260 28% 40%;
  --callout-remember-text: 260 24% 72%;
  --callout-terrain-bg: 43 18% 14%;
  --callout-terrain-border: 24 40% 40%;
  --callout-terrain-text: 24 30% 70%;
  --callout-error-common-bg: 0 16% 14%;
  --callout-error-common-border: 0 40% 42%;
  --callout-error-common-text: 0 35% 72%;
  --ed-timeline-accent: 24 70% 55%;
  --ed-compare-left: 210 40% 55%;
  --ed-compare-right: 24 70% 55%;
  --ed-process-accent: 24 80% 48%;
  --ed-exam-trap-bg: 0 20% 14%;
  --ed-exam-trap-border: 0 40% 40%;
  --ed-exam-trap-question: 0 0% 90%;
  --ed-exam-trap-warning: 43 70% 55%;
  --ed-exam-trap-answer: 142 45% 50%;
  --ed-dt-question: 260 30% 60%;
  --ed-dt-result: 142 45% 50%;
  --ed-recap-bg: 260 15% 14%;
  --ed-recap-border: 260 30% 45%;
  --ed-recap-check: 142 45% 50%;
  --ed-recap-exam: 24 80% 55%;
  --shadow-card: 0 1px 3px 0 rgba(0, 0, 0, .2), 0 1px 2px -1px rgba(0, 0, 0, .15);
  --shadow-elevated: 0 4px 6px -1px rgba(0, 0, 0, .25), 0 2px 4px -2px rgba(0, 0, 0, .15);
  --shadow-dropdown: 0 10px 15px -3px rgba(0, 0, 0, .25), 0 4px 6px -4px rgba(0, 0, 0, .15);
}

.dark .admin-space, .dark[data-theme="atelier"] .admin-space {
  --font-display: var(--font-inter), "Inter", system-ui, -apple-system, sans-serif;
  --font-body: var(--font-inter), "Inter", system-ui, -apple-system, sans-serif;
  --primary: 220 10% 80%;
  --primary-foreground: 220 14% 8%;
  --secondary: 220 8% 16%;
  --secondary-foreground: 220 8% 85%;
  --background: 220 10% 8%;
  --foreground: 220 6% 90%;
  --card: 220 8% 12%;
  --card-foreground: 220 6% 90%;
  --popover: 220 8% 12%;
  --popover-foreground: 220 6% 90%;
  --muted: 220 6% 17%;
  --muted-foreground: 220 5% 56%;
  --border: 220 6% 20%;
  --input: 220 6% 20%;
  --ring: 220 10% 80%;
  --accent: 220 10% 80%;
  --accent-foreground: 220 14% 8%;
  --sidebar-bg: 220 12% 6%;
  --sidebar-text: 0 0% 88%;
  --sidebar-text-muted: 220 5% 48%;
  --sidebar-border: 0 0% 100% / .06;
  --sidebar-hover: 0 0% 100% / .04;
  --sidebar-active: 0 0% 100% / .08;
  --sidebar-active-text: 0 0% 100%;
  --shadow-card: 0 1px 3px 0 rgba(0, 0, 0, .25), 0 1px 2px -1px rgba(0, 0, 0, .2);
  --shadow-elevated: 0 4px 6px -1px rgba(0, 0, 0, .3), 0 2px 4px -2px rgba(0, 0, 0, .2);
  --shadow-dropdown: 0 10px 15px -3px rgba(0, 0, 0, .3), 0 4px 6px -4px rgba(0, 0, 0, .2);
}

[data-theme="jardin"] {
  --primary: 152 60% 38%;
  --primary-foreground: 0 0% 100%;
  --secondary: 28 70% 50%;
  --secondary-foreground: 0 0% 100%;
  --accent: 152 60% 38%;
  --accent-foreground: 0 0% 100%;
  --accent-light: 152 50% 52%;
  --destructive: 0 72% 51%;
  --destructive-foreground: 0 0% 98%;
  --ring: 152 60% 38%;
  --radius: 1rem;
  --background-reading: 140 18% 96%;
  --slide-reading-bg: 140 20% 98%;
  --font-display: var(--font-lora), "Lora", serif;
  --font-body: var(--font-figtree), "Figtree", sans-serif;
  --success: 152 60% 38%;
  --success-foreground: 0 0% 100%;
  --success-muted: 152 30% 95%;
  --success-border: 152 35% 78%;
  --warning: 38 90% 50%;
  --warning-foreground: 30 88% 14%;
  --warning-muted: 38 50% 95%;
  --warning-border: 38 60% 72%;
  --info: 200 80% 50%;
  --info-foreground: 200 80% 22%;
  --info-muted: 200 50% 95%;
  --info-border: 200 50% 78%;
  --neutral: 140 5% 52%;
  --neutral-foreground: 150 8% 28%;
  --neutral-muted: 140 8% 96%;
  --neutral-border: 140 6% 85%;
  --rating: 38 90% 50%;
  --background: 140 20% 97%;
  --foreground: 150 10% 12%;
  --card: 0 0% 100%;
  --card-foreground: 150 10% 12%;
  --popover: 0 0% 100%;
  --popover-foreground: 150 10% 12%;
  --muted: 140 15% 94%;
  --muted-foreground: 140 5% 40%;
  --border: 140 10% 90%;
  --input: 140 10% 90%;
  --sidebar-bg: 0 0% 100%;
  --sidebar-text: 150 10% 30%;
  --sidebar-text-muted: 140 6% 52%;
  --sidebar-border: 140 10% 90%;
  --sidebar-hover: 152 20% 96%;
  --sidebar-active: 152 30% 95%;
  --callout-info-bg: 200 40% 94%;
  --callout-info-border: 200 40% 78%;
  --callout-info-text: 200 50% 30%;
  --callout-warning-bg: 38 45% 94%;
  --callout-warning-border: 38 45% 75%;
  --callout-warning-text: 38 55% 28%;
  --callout-tip-bg: 152 35% 94%;
  --callout-tip-border: 152 35% 75%;
  --callout-tip-text: 152 45% 28%;
  --callout-example-bg: 270 30% 95%;
  --callout-example-border: 270 30% 80%;
  --callout-example-text: 270 35% 32%;
  --callout-objective-bg: 28 35% 95%;
  --callout-objective-border: 28 35% 78%;
  --callout-objective-text: 28 45% 28%;
  --callout-next-bg: 200 30% 94%;
  --callout-next-border: 200 30% 78%;
  --callout-next-text: 200 40% 28%;
  --callout-remember-bg: 152 30% 94%;
  --callout-remember-border: 152 60% 38%;
  --callout-remember-text: 152 40% 22%;
  --callout-terrain-bg: 38 40% 94%;
  --callout-terrain-border: 38 45% 55%;
  --callout-terrain-text: 38 40% 26%;
  --callout-error-common-bg: 0 40% 96%;
  --callout-error-common-border: 0 60% 50%;
  --callout-error-common-text: 0 45% 30%;
  --ed-timeline-accent: 152 50% 38%;
  --ed-compare-left: 210 45% 48%;
  --ed-compare-right: 14 48% 46%;
  --ed-process-accent: 152 60% 32%;
  --ed-exam-trap-bg: 0 45% 97%;
  --ed-exam-trap-border: 0 55% 52%;
  --ed-exam-trap-question: 150 10% 10%;
  --ed-exam-trap-warning: 43 85% 48%;
  --ed-exam-trap-answer: 152 55% 35%;
  --ed-dt-question: 152 40% 38%;
  --ed-dt-result: 152 55% 35%;
  --ed-recap-bg: 152 25% 96%;
  --ed-recap-border: 152 40% 45%;
  --ed-recap-check: 152 55% 35%;
  --ed-recap-exam: 14 50% 42%;
  --code-bg: 140 10% 96%;
  --code-text: 150 10% 20%;
  --code-border: 140 8% 90%;
  --shadow-card: 0 2px 12px rgba(30, 60, 30, .04), 0 1px 4px rgba(30, 60, 30, .03);
  --shadow-elevated: 0 4px 20px rgba(30, 60, 30, .06), 0 2px 8px rgba(30, 60, 30, .04);
  --shadow-dropdown: 0 8px 30px rgba(30, 60, 30, .08), 0 4px 12px rgba(30, 60, 30, .05);
  --gradient-hero: radial-gradient(ellipse at 30% 0%, rgba(39, 155, 101, .06) 0%, transparent 70%);
}

[data-theme="jardin"] .admin-space {
  --background: 150 10% 96%;
  --foreground: 150 10% 12%;
  --card: 0 0% 100%;
  --card-foreground: 150 10% 12%;
  --popover: 0 0% 100%;
  --popover-foreground: 150 10% 12%;
  --muted: 60 5% 95%;
  --muted-foreground: 100 5% 42%;
  --border: 100 8% 89%;
  --input: 100 8% 89%;
  --sidebar-bg: 0 0% 100%;
  --sidebar-text: 150 8% 30%;
  --sidebar-text-muted: 140 5% 50%;
  --sidebar-border: 100 8% 89%;
  --sidebar-hover: 152 15% 96%;
  --sidebar-active: 152 25% 95%;
  --shadow-card: 0 2px 12px rgba(0, 0, 0, .04), 0 1px 4px rgba(0, 0, 0, .03);
  --shadow-elevated: 0 4px 20px rgba(0, 0, 0, .06), 0 2px 8px rgba(0, 0, 0, .04);
  --shadow-dropdown: 0 8px 30px rgba(0, 0, 0, .08), 0 4px 12px rgba(0, 0, 0, .05);
}

.dark[data-theme="jardin"] {
  --slide-reading-bg: 150 12% 11%;
  --background-reading: 150 12% 10%;
  --background: 150 15% 8%;
  --foreground: 140 8% 88%;
  --card: 150 12% 12%;
  --card-foreground: 140 8% 88%;
  --popover: 150 12% 12%;
  --popover-foreground: 140 8% 88%;
  --primary: 152 55% 48%;
  --primary-foreground: 150 15% 8%;
  --secondary: 150 10% 16%;
  --secondary-foreground: 140 8% 84%;
  --muted: 150 10% 16%;
  --muted-foreground: 140 5% 58%;
  --accent: 152 50% 48%;
  --accent-foreground: 150 15% 8%;
  --accent-light: 152 45% 55%;
  --destructive: 0 60% 55%;
  --destructive-foreground: 0 0% 92%;
  --border: 150 10% 18%;
  --input: 150 10% 18%;
  --ring: 152 55% 48%;
  --success: 152 48% 46%;
  --success-foreground: 152 48% 90%;
  --success-muted: 152 18% 14%;
  --success-border: 152 25% 26%;
  --warning: 38 78% 52%;
  --warning-foreground: 38 78% 92%;
  --warning-muted: 38 20% 14%;
  --warning-border: 38 40% 26%;
  --info: 200 65% 55%;
  --info-foreground: 200 65% 92%;
  --info-muted: 200 20% 14%;
  --info-border: 200 38% 26%;
  --neutral: 140 4% 48%;
  --neutral-foreground: 140 4% 76%;
  --neutral-muted: 140 4% 14%;
  --neutral-border: 140 4% 26%;
  --rating: 38 82% 52%;
  --code-bg: 150 12% 6%;
  --code-text: 140 6% 76%;
  --code-border: 150 10% 16%;
  --gradient-hero: radial-gradient(ellipse at 30% 0%, rgba(55, 190, 127, .06) 0%, transparent 70%);
  --sidebar-bg: 150 15% 6%;
  --sidebar-text: 140 6% 82%;
  --sidebar-text-muted: 140 4% 48%;
  --sidebar-border: 150 10% 18%;
  --sidebar-hover: 152 18% 14%;
  --sidebar-active: 152 25% 16%;
  --callout-info-bg: 200 14% 14%;
  --callout-info-border: 200 25% 30%;
  --callout-info-text: 200 28% 68%;
  --callout-warning-bg: 38 14% 13%;
  --callout-warning-border: 38 28% 30%;
  --callout-warning-text: 38 26% 68%;
  --callout-tip-bg: 152 12% 12%;
  --callout-tip-border: 152 20% 28%;
  --callout-tip-text: 152 22% 66%;
  --callout-example-bg: 270 10% 14%;
  --callout-example-border: 270 20% 30%;
  --callout-example-text: 270 22% 68%;
  --callout-objective-bg: 28 12% 13%;
  --callout-objective-border: 28 22% 30%;
  --callout-objective-text: 28 24% 68%;
  --callout-next-bg: 200 10% 13%;
  --callout-next-border: 200 18% 28%;
  --callout-next-text: 200 20% 66%;
  --callout-remember-bg: 152 12% 13%;
  --callout-remember-border: 152 28% 32%;
  --callout-remember-text: 152 24% 68%;
  --callout-terrain-bg: 38 12% 12%;
  --callout-terrain-border: 38 24% 30%;
  --callout-terrain-text: 38 22% 66%;
  --callout-error-common-bg: 0 14% 13%;
  --callout-error-common-border: 0 35% 38%;
  --callout-error-common-text: 0 30% 70%;
  --ed-timeline-accent: 152 35% 50%;
  --ed-compare-left: 210 35% 55%;
  --ed-compare-right: 14 35% 55%;
  --ed-process-accent: 152 40% 42%;
  --ed-exam-trap-bg: 0 15% 13%;
  --ed-exam-trap-border: 0 35% 38%;
  --ed-exam-trap-question: 0 0% 88%;
  --ed-exam-trap-warning: 43 65% 55%;
  --ed-exam-trap-answer: 152 40% 50%;
  --ed-dt-question: 152 30% 50%;
  --ed-dt-result: 152 40% 50%;
  --ed-recap-bg: 152 12% 13%;
  --ed-recap-border: 152 25% 40%;
  --ed-recap-check: 152 40% 50%;
  --ed-recap-exam: 14 45% 55%;
  --shadow-card: 0 2px 12px rgba(0, 0, 0, .2), 0 1px 4px rgba(0, 0, 0, .14);
  --shadow-elevated: 0 4px 20px rgba(0, 0, 0, .25), 0 2px 8px rgba(0, 0, 0, .16);
  --shadow-dropdown: 0 8px 30px rgba(0, 0, 0, .28), 0 4px 12px rgba(0, 0, 0, .18);
}

.dark[data-theme="jardin"] .admin-space {
  --background: 100 8% 7%;
  --foreground: 80 5% 86%;
  --card: 100 6% 11%;
  --card-foreground: 80 5% 86%;
  --popover: 100 6% 11%;
  --popover-foreground: 80 5% 86%;
  --muted: 100 5% 15%;
  --muted-foreground: 80 3% 54%;
  --border: 100 5% 18%;
  --input: 100 5% 18%;
  --sidebar-bg: 100 8% 5%;
  --sidebar-text: 80 4% 80%;
  --sidebar-text-muted: 80 3% 46%;
  --sidebar-border: 100 5% 18%;
  --sidebar-hover: 152 12% 12%;
  --sidebar-active: 152 20% 14%;
  --shadow-card: 0 2px 12px rgba(0, 0, 0, .24), 0 1px 4px rgba(0, 0, 0, .18);
  --shadow-elevated: 0 4px 20px rgba(0, 0, 0, .28), 0 2px 8px rgba(0, 0, 0, .2);
  --shadow-dropdown: 0 8px 30px rgba(0, 0, 0, .32), 0 4px 12px rgba(0, 0, 0, .22);
}

[data-theme="digicours"] {
  --primary: 285 35% 31%;
  --primary-foreground: 0 0% 100%;
  --secondary: 30 12% 92%;
  --secondary-foreground: 20 10% 16%;
  --accent: 285 35% 31%;
  --accent-foreground: 0 0% 100%;
  --accent-light: 285 50% 78%;
  --destructive: 0 72% 51%;
  --destructive-foreground: 0 0% 98%;
  --ring: 285 35% 31%;
  --radius: 1rem;
  --font-display: var(--font-inter), "Inter", sans-serif;
  --font-body: var(--font-inter), "Inter", sans-serif;
  --success: 142 71% 40%;
  --success-foreground: 0 0% 100%;
  --success-muted: 142 30% 95%;
  --success-border: 142 35% 78%;
  --warning: 38 92% 50%;
  --warning-foreground: 30 90% 14%;
  --warning-muted: 38 50% 95%;
  --warning-border: 38 60% 72%;
  --info: 217 91% 60%;
  --info-foreground: 220 80% 26%;
  --info-muted: 217 50% 95%;
  --info-border: 217 60% 78%;
  --neutral: 0 0% 45%;
  --neutral-foreground: 0 0% 25%;
  --neutral-muted: 0 0% 96%;
  --neutral-border: 0 0% 85%;
  --rating: 38 92% 50%;
  --background-reading: 36 40% 96%;
  --slide-reading-bg: 280 15% 98%;
  --background: 39 100% 97%;
  --foreground: 20 10% 10%;
  --card: 0 0% 100%;
  --card-foreground: 20 10% 10%;
  --popover: 0 0% 100%;
  --popover-foreground: 20 10% 10%;
  --muted: 30 15% 95%;
  --muted-foreground: 25 7% 35%;
  --border: 30 12% 90%;
  --input: 30 12% 90%;
  --sidebar-bg: 276 32% 18%;
  --sidebar-text: 0 0% 100%;
  --sidebar-text-muted: 275 20% 75%;
  --sidebar-border: 276 25% 24%;
  --sidebar-hover: 276 30% 23%;
  --sidebar-active: 285 40% 28%;
  --callout-info-bg: 217 40% 95%;
  --callout-info-border: 217 40% 82%;
  --callout-info-text: 217 50% 35%;
  --callout-warning-bg: 38 40% 95%;
  --callout-warning-border: 38 40% 80%;
  --callout-warning-text: 38 50% 30%;
  --callout-tip-bg: 142 30% 95%;
  --callout-tip-border: 142 30% 80%;
  --callout-tip-text: 142 40% 30%;
  --callout-example-bg: 270 30% 95%;
  --callout-example-border: 270 30% 80%;
  --callout-example-text: 270 30% 30%;
  --callout-objective-bg: 285 25% 95%;
  --callout-objective-border: 285 25% 80%;
  --callout-objective-text: 285 30% 30%;
  --callout-next-bg: 0 0% 96%;
  --callout-next-border: 0 0% 88%;
  --callout-next-text: 0 0% 30%;
  --callout-remember-bg: 285 20% 95%;
  --callout-remember-border: 285 35% 31%;
  --callout-remember-text: 285 25% 24%;
  --callout-terrain-bg: 38 35% 95%;
  --callout-terrain-border: 38 40% 58%;
  --callout-terrain-text: 38 35% 26%;
  --callout-error-common-bg: 0 35% 97%;
  --callout-error-common-border: 0 65% 50%;
  --callout-error-common-text: 0 45% 30%;
  --ed-timeline-accent: 275 45% 50%;
  --ed-compare-left: 210 50% 50%;
  --ed-compare-right: 14 50% 48%;
  --ed-process-accent: 275 50% 45%;
  --ed-exam-trap-bg: 0 45% 97%;
  --ed-exam-trap-border: 0 55% 52%;
  --ed-exam-trap-question: 275 15% 12%;
  --ed-exam-trap-warning: 43 85% 48%;
  --ed-exam-trap-answer: 142 55% 35%;
  --ed-dt-question: 275 40% 50%;
  --ed-dt-result: 142 55% 35%;
  --ed-recap-bg: 275 25% 97%;
  --ed-recap-border: 275 40% 50%;
  --ed-recap-check: 142 55% 35%;
  --ed-recap-exam: 275 45% 45%;
  --code-bg: 0 0% 96%;
  --code-text: 0 0% 20%;
  --code-border: 0 0% 90%;
  --shadow-card: 0 2px 12px rgba(30, 60, 30, .04), 0 1px 4px rgba(30, 60, 30, .03);
  --shadow-elevated: 0 4px 20px rgba(30, 60, 30, .06), 0 2px 8px rgba(30, 60, 30, .04);
  --shadow-dropdown: 0 8px 30px rgba(30, 60, 30, .08), 0 4px 12px rgba(30, 60, 30, .05);
  --gradient-hero: radial-gradient(ellipse at 30% 0%, rgba(93, 51, 107, .06) 0%, transparent 70%);
}

[data-theme="digicours"] .admin-space {
  --background: 220 16% 95%;
  --foreground: 220 10% 9%;
  --card: 0 0% 100%;
  --card-foreground: 220 10% 9%;
  --popover: 0 0% 100%;
  --popover-foreground: 220 10% 9%;
  --muted: 220 12% 91%;
  --muted-foreground: 220 5% 38%;
  --border: 0 0% 90%;
  --input: 0 0% 90%;
  --sidebar-bg: 276 32% 18%;
  --sidebar-text: 0 0% 100%;
  --sidebar-text-muted: 275 20% 75%;
  --sidebar-border: 276 25% 24%;
  --sidebar-hover: 276 30% 23%;
  --sidebar-active: 285 40% 28%;
  --shadow-card: 0 2px 12px rgba(0, 0, 0, .04), 0 1px 4px rgba(0, 0, 0, .03);
  --shadow-elevated: 0 4px 20px rgba(0, 0, 0, .06), 0 2px 8px rgba(0, 0, 0, .04);
  --shadow-dropdown: 0 8px 30px rgba(0, 0, 0, .08), 0 4px 12px rgba(0, 0, 0, .05);
}

.dark[data-theme="digicours"] {
  --slide-reading-bg: 275 18% 10%;
  --background-reading: 275 20% 7%;
  --background: 275 25% 5%;
  --foreground: 280 10% 88%;
  --card: 275 20% 9%;
  --card-foreground: 280 10% 88%;
  --popover: 275 20% 9%;
  --popover-foreground: 280 10% 88%;
  --primary: 285 30% 45%;
  --primary-foreground: 0 0% 100%;
  --secondary: 270 20% 14%;
  --secondary-foreground: 280 15% 85%;
  --muted: 270 20% 14%;
  --muted-foreground: 270 10% 55%;
  --accent: 285 30% 45%;
  --accent-foreground: 0 0% 100%;
  --accent-light: 285 50% 78%;
  --destructive: 0 70% 58%;
  --destructive-foreground: 0 0% 95%;
  --border: 270 15% 18%;
  --input: 270 15% 18%;
  --ring: 285 30% 45%;
  --success: 142 55% 45%;
  --success-foreground: 142 55% 90%;
  --success-muted: 142 20% 12%;
  --success-border: 142 28% 24%;
  --warning: 38 82% 55%;
  --warning-foreground: 38 82% 92%;
  --warning-muted: 38 22% 12%;
  --warning-border: 38 42% 24%;
  --info: 217 75% 62%;
  --info-foreground: 217 75% 92%;
  --info-muted: 217 22% 12%;
  --info-border: 217 45% 24%;
  --neutral: 215 12% 48%;
  --neutral-foreground: 215 12% 76%;
  --neutral-muted: 217 15% 12%;
  --neutral-border: 217 12% 22%;
  --rating: 38 85% 55%;
  --code-bg: 222 30% 8%;
  --code-text: 210 15% 80%;
  --code-border: 217 20% 16%;
  --gradient-hero: radial-gradient(ellipse at 30% 0%, rgba(132, 80, 149, .08) 0%, transparent 70%);
  --sidebar-bg: 276 32% 18%;
  --sidebar-text: 0 0% 100%;
  --sidebar-text-muted: 275 20% 75%;
  --sidebar-border: 276 25% 24%;
  --sidebar-hover: 276 30% 23%;
  --sidebar-active: 285 40% 28%;
  --callout-info-bg: 217 16% 12%;
  --callout-info-border: 217 28% 30%;
  --callout-info-text: 217 30% 70%;
  --callout-warning-bg: 38 16% 12%;
  --callout-warning-border: 38 30% 30%;
  --callout-warning-text: 38 28% 70%;
  --callout-tip-bg: 142 14% 12%;
  --callout-tip-border: 142 22% 28%;
  --callout-tip-text: 142 24% 66%;
  --callout-example-bg: 270 14% 12%;
  --callout-example-border: 270 24% 30%;
  --callout-example-text: 270 24% 68%;
  --callout-objective-bg: 285 14% 12%;
  --callout-objective-border: 285 22% 30%;
  --callout-objective-text: 285 22% 68%;
  --callout-next-bg: 0 0% 12%;
  --callout-next-border: 0 0% 26%;
  --callout-next-text: 0 0% 66%;
  --callout-remember-bg: 285 12% 12%;
  --callout-remember-border: 285 25% 32%;
  --callout-remember-text: 285 22% 68%;
  --callout-terrain-bg: 38 12% 11%;
  --callout-terrain-border: 38 25% 30%;
  --callout-terrain-text: 38 22% 66%;
  --callout-error-common-bg: 0 14% 12%;
  --callout-error-common-border: 0 38% 40%;
  --callout-error-common-text: 0 32% 70%;
  --ed-timeline-accent: 275 35% 60%;
  --ed-compare-left: 210 35% 58%;
  --ed-compare-right: 14 35% 58%;
  --ed-process-accent: 275 35% 55%;
  --ed-exam-trap-bg: 0 18% 12%;
  --ed-exam-trap-border: 0 35% 38%;
  --ed-exam-trap-question: 0 0% 88%;
  --ed-exam-trap-warning: 43 60% 55%;
  --ed-exam-trap-answer: 142 40% 52%;
  --ed-dt-question: 275 30% 60%;
  --ed-dt-result: 142 40% 52%;
  --ed-recap-bg: 275 15% 12%;
  --ed-recap-border: 275 25% 42%;
  --ed-recap-check: 142 40% 52%;
  --ed-recap-exam: 275 35% 58%;
  --shadow-card: 0 2px 8px rgba(0, 0, 0, .22), 0 1px 3px rgba(0, 0, 0, .16);
  --shadow-elevated: 0 4px 16px rgba(0, 0, 0, .28), 0 2px 6px rgba(0, 0, 0, .18);
  --shadow-dropdown: 0 8px 30px rgba(0, 0, 0, .32), 0 4px 10px rgba(0, 0, 0, .2);
}

.dark[data-theme="digicours"] .admin-space {
  --background: 275 20% 6%;
  --foreground: 280 10% 86%;
  --card: 275 18% 9%;
  --card-foreground: 280 10% 86%;
  --popover: 275 18% 9%;
  --popover-foreground: 280 10% 86%;
  --muted: 270 15% 12%;
  --muted-foreground: 270 8% 52%;
  --border: 270 12% 16%;
  --input: 270 12% 16%;
  --sidebar-bg: 276 32% 18%;
  --sidebar-text: 0 0% 100%;
  --sidebar-text-muted: 275 20% 75%;
  --sidebar-border: 276 25% 24%;
  --sidebar-hover: 276 30% 23%;
  --sidebar-active: 285 40% 28%;
  --shadow-card: 0 2px 8px rgba(0, 0, 0, .26), 0 1px 3px rgba(0, 0, 0, .2);
  --shadow-elevated: 0 4px 16px rgba(0, 0, 0, .32), 0 2px 6px rgba(0, 0, 0, .22);
  --shadow-dropdown: 0 8px 30px rgba(0, 0, 0, .36), 0 4px 10px rgba(0, 0, 0, .24);
}

* {
  border-color: hsl(var(--border));
}

.admin-sidebar * {
  border-color: hsl(var(--sidebar-border));
}

body {
  background-color: hsl(var(--background));
  color: hsl(var(--foreground));
}

.admin-sidebar body {
  color: hsl(var(--sidebar-text));
}

body {
  font-family: var(--font-body);
  -webkit-font-smoothing: antialiased;
}

input::placeholder, textarea::placeholder {
  opacity: .25;
  font-style: italic;
  font-weight: 300;
}

.container {
  width: 100%;
}

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

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

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

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

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

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

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

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

.\!visible {
  visibility: visible !important;
}

.visible {
  visibility: visible;
}

.collapse {
  visibility: collapse;
}

.static {
  position: static;
}

.fixed {
  position: fixed;
}

.absolute {
  position: absolute;
}

.relative {
  position: relative;
}

.sticky {
  position: -webkit-sticky;
  position: sticky;
}

.inset-0 {
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.inset-x-0 {
  left: 0;
  right: 0;
}

.inset-y-0 {
  top: 0;
  bottom: 0;
}

.-bottom-0\.5 {
  bottom: -.125rem;
}

.-right-0\.5 {
  right: -.125rem;
}

.-top-3 {
  top: -.75rem;
}

.-top-3\.5 {
  top: -.875rem;
}

.bottom-0 {
  bottom: 0;
}

.bottom-20 {
  bottom: 5rem;
}

.bottom-4 {
  bottom: 1rem;
}

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

.bottom-full {
  bottom: 100%;
}

.left-0 {
  left: 0;
}

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

.left-2 {
  left: .5rem;
}

.left-2\.5 {
  left: .625rem;
}

.left-3 {
  left: .75rem;
}

.left-4 {
  left: 1rem;
}

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

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

.right-0 {
  right: 0;
}

.right-2 {
  right: .5rem;
}

.right-3 {
  right: .75rem;
}

.right-4 {
  right: 1rem;
}

.top-0 {
  top: 0;
}

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

.top-14 {
  top: 3.5rem;
}

.top-2 {
  top: .5rem;
}

.top-2\.5 {
  top: .625rem;
}

.top-4 {
  top: 1rem;
}

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

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

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

.top-full {
  top: 100%;
}

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

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

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

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

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

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

.order-1 {
  order: 1;
}

.order-2 {
  order: 2;
}

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

.-mx-1 {
  margin-left: -.25rem;
  margin-right: -.25rem;
}

.mx-1 {
  margin-left: .25rem;
  margin-right: .25rem;
}

.mx-2 {
  margin-left: .5rem;
  margin-right: .5rem;
}

.mx-4 {
  margin-left: 1rem;
  margin-right: 1rem;
}

.mx-auto {
  margin-left: auto;
  margin-right: auto;
}

.my-1 {
  margin-top: .25rem;
  margin-bottom: .25rem;
}

.my-1\.5 {
  margin-top: .375rem;
  margin-bottom: .375rem;
}

.my-16 {
  margin-top: 4rem;
  margin-bottom: 4rem;
}

.my-3 {
  margin-top: .75rem;
  margin-bottom: .75rem;
}

.my-6 {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}

.-ml-1 {
  margin-left: -.25rem;
}

.-ml-2 {
  margin-left: -.5rem;
}

.mb-0\.5 {
  margin-bottom: .125rem;
}

.mb-1 {
  margin-bottom: .25rem;
}

.mb-1\.5 {
  margin-bottom: .375rem;
}

.mb-2 {
  margin-bottom: .5rem;
}

.mb-3 {
  margin-bottom: .75rem;
}

.mb-4 {
  margin-bottom: 1rem;
}

.mb-5 {
  margin-bottom: 1.25rem;
}

.mb-6 {
  margin-bottom: 1.5rem;
}

.mb-8 {
  margin-bottom: 2rem;
}

.ml-0\.5 {
  margin-left: .125rem;
}

.ml-1 {
  margin-left: .25rem;
}

.ml-1\.5 {
  margin-left: .375rem;
}

.ml-2 {
  margin-left: .5rem;
}

.ml-3 {
  margin-left: .75rem;
}

.ml-4 {
  margin-left: 1rem;
}

.ml-5 {
  margin-left: 1.25rem;
}

.ml-6 {
  margin-left: 1.5rem;
}

.ml-7 {
  margin-left: 1.75rem;
}

.ml-8 {
  margin-left: 2rem;
}

.ml-\[4\.25rem\] {
  margin-left: 4.25rem;
}

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

.mr-0\.5 {
  margin-right: .125rem;
}

.mr-1 {
  margin-right: .25rem;
}

.mr-1\.5 {
  margin-right: .375rem;
}

.mr-2 {
  margin-right: .5rem;
}

.mr-3 {
  margin-right: .75rem;
}

.mt-0\.5 {
  margin-top: .125rem;
}

.mt-1 {
  margin-top: .25rem;
}

.mt-1\.5 {
  margin-top: .375rem;
}

.mt-10 {
  margin-top: 2.5rem;
}

.mt-12 {
  margin-top: 3rem;
}

.mt-14 {
  margin-top: 3.5rem;
}

.mt-16 {
  margin-top: 4rem;
}

.mt-2 {
  margin-top: .5rem;
}

.mt-2\.5 {
  margin-top: .625rem;
}

.mt-3 {
  margin-top: .75rem;
}

.mt-4 {
  margin-top: 1rem;
}

.mt-5 {
  margin-top: 1.25rem;
}

.mt-6 {
  margin-top: 1.5rem;
}

.mt-8 {
  margin-top: 2rem;
}

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

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

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

.block {
  display: block;
}

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

.inline {
  display: inline;
}

.flex {
  display: flex;
}

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

.table {
  display: table;
}

.grid {
  display: grid;
}

.contents {
  display: contents;
}

.hidden {
  display: none;
}

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

.aspect-\[4\/3\] {
  aspect-ratio: 4 / 3;
}

.aspect-video {
  aspect-ratio: 16 / 9;
}

.h-1 {
  height: .25rem;
}

.h-1\.5 {
  height: .375rem;
}

.h-10 {
  height: 2.5rem;
}

.h-11 {
  height: 2.75rem;
}

.h-12 {
  height: 3rem;
}

.h-14 {
  height: 3.5rem;
}

.h-16 {
  height: 4rem;
}

.h-2 {
  height: .5rem;
}

.h-2\.5 {
  height: .625rem;
}

.h-20 {
  height: 5rem;
}

.h-24 {
  height: 6rem;
}

.h-28 {
  height: 7rem;
}

.h-3 {
  height: .75rem;
}

.h-3\.5 {
  height: .875rem;
}

.h-32 {
  height: 8rem;
}

.h-36 {
  height: 9rem;
}

.h-4 {
  height: 1rem;
}

.h-40 {
  height: 10rem;
}

.h-48 {
  height: 12rem;
}

.h-5 {
  height: 1.25rem;
}

.h-6 {
  height: 1.5rem;
}

.h-64 {
  height: 16rem;
}

.h-7 {
  height: 1.75rem;
}

.h-8 {
  height: 2rem;
}

.h-9 {
  height: 2.25rem;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.h-\[calc\(100vh-2\.75rem\)\] {
  height: calc(100vh - 2.75rem);
}

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

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

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

.h-fit {
  height: -moz-fit-content;
  height: fit-content;
}

.h-full {
  height: 100%;
}

.h-px {
  height: 1px;
}

.h-screen {
  height: 100vh;
}

.max-h-0 {
  max-height: 0;
}

.max-h-48 {
  max-height: 12rem;
}

.max-h-52 {
  max-height: 13rem;
}

.max-h-60 {
  max-height: 15rem;
}

.max-h-64 {
  max-height: 16rem;
}

.max-h-96 {
  max-height: 24rem;
}

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

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

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

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

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

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

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

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

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

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

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

.max-h-\[calc\(100vh-6rem\)\] {
  max-height: calc(100vh - 6rem);
}

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

.min-h-0 {
  min-height: 0;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

.min-h-\[calc\(100vh-4rem\)\] {
  min-height: calc(100vh - 4rem);
}

.min-h-\[calc\(100vh-8rem\)\] {
  min-height: calc(100vh - 8rem);
}

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

.w-1 {
  width: .25rem;
}

.w-1\.5 {
  width: .375rem;
}

.w-10 {
  width: 2.5rem;
}

.w-11 {
  width: 2.75rem;
}

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

.w-12 {
  width: 3rem;
}

.w-14 {
  width: 3.5rem;
}

.w-16 {
  width: 4rem;
}

.w-2 {
  width: .5rem;
}

.w-2\.5 {
  width: .625rem;
}

.w-2\/3 {
  width: 66.6667%;
}

.w-20 {
  width: 5rem;
}

.w-24 {
  width: 6rem;
}

.w-28 {
  width: 7rem;
}

.w-3 {
  width: .75rem;
}

.w-3\.5 {
  width: .875rem;
}

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

.w-3\/5 {
  width: 60%;
}

.w-32 {
  width: 8rem;
}

.w-36 {
  width: 9rem;
}

.w-4 {
  width: 1rem;
}

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

.w-40 {
  width: 10rem;
}

.w-44 {
  width: 11rem;
}

.w-48 {
  width: 12rem;
}

.w-5 {
  width: 1.25rem;
}

.w-5\/6 {
  width: 83.3333%;
}

.w-56 {
  width: 14rem;
}

.w-6 {
  width: 1.5rem;
}

.w-64 {
  width: 16rem;
}

.w-7 {
  width: 1.75rem;
}

.w-72 {
  width: 18rem;
}

.w-8 {
  width: 2rem;
}

.w-80 {
  width: 20rem;
}

.w-9 {
  width: 2.25rem;
}

.w-96 {
  width: 24rem;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.w-full {
  width: 100%;
}

.w-px {
  width: 1px;
}

.min-w-0 {
  min-width: 0;
}

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

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

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

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

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

.min-w-\[2\.5rem\] {
  min-width: 2.5rem;
}

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

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

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

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

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

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

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

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

.max-w-2xl {
  max-width: 42rem;
}

.max-w-3xl {
  max-width: 48rem;
}

.max-w-4xl {
  max-width: 56rem;
}

.max-w-5xl {
  max-width: 64rem;
}

.max-w-6xl {
  max-width: 72rem;
}

.max-w-7xl {
  max-width: 80rem;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.max-w-lg {
  max-width: 32rem;
}

.max-w-md {
  max-width: 28rem;
}

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

.max-w-sm {
  max-width: 24rem;
}

.max-w-xl {
  max-width: 36rem;
}

.max-w-xs {
  max-width: 20rem;
}

.flex-1 {
  flex: 1;
}

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

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

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

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

.-translate-x-1\/2 {
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.-translate-y-0\.5 {
  --tw-translate-y: -.125rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.-translate-y-1\/2 {
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-x-\[-50\%\] {
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-y-\[-2px\] {
  --tw-translate-y: -2px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-y-\[-50\%\] {
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.-rotate-90 {
  --tw-rotate: -90deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.rotate-180 {
  --tw-rotate: 180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.rotate-90 {
  --tw-rotate: 90deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.scale-105 {
  --tw-scale-x: 1.05;
  --tw-scale-y: 1.05;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.scale-95 {
  --tw-scale-x: .95;
  --tw-scale-y: .95;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.scale-\[1\.02\] {
  --tw-scale-x: 1.02;
  --tw-scale-y: 1.02;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.transform {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

@keyframes bounce {
  0%, 100% {
    animation-timing-function: cubic-bezier(.8, 0, 1, 1);
    transform: translateY(-25%);
  }

  50% {
    animation-timing-function: cubic-bezier(0, 0, .2, 1);
    transform: none;
  }
}

.animate-bounce {
  animation: 1s infinite bounce;
}

@keyframes ping {
  75%, 100% {
    opacity: 0;
    transform: scale(2);
  }
}

.animate-ping {
  animation: 1s cubic-bezier(0, 0, .2, 1) infinite ping;
}

@keyframes pulse {
  50% {
    opacity: .5;
  }
}

.animate-pulse {
  animation: 2s cubic-bezier(.4, 0, .6, 1) infinite pulse;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

.animate-spin {
  animation: 1s linear infinite spin;
}

.cursor-crosshair {
  cursor: crosshair;
}

.cursor-default {
  cursor: default;
}

.cursor-grab {
  cursor: grab;
}

.cursor-help {
  cursor: help;
}

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

.cursor-pointer {
  cursor: pointer;
}

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

.select-none {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

.select-all {
  -webkit-user-select: all;
  -moz-user-select: all;
  user-select: all;
}

.resize-none {
  resize: none;
}

.resize-y {
  resize: vertical;
}

.scroll-mt-20 {
  scroll-margin-top: 5rem;
}

.list-inside {
  list-style-position: inside;
}

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

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

.appearance-none {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.gap-0 {
  gap: 0;
}

.gap-0\.5 {
  gap: .125rem;
}

.gap-1 {
  gap: .25rem;
}

.gap-1\.5 {
  gap: .375rem;
}

.gap-10 {
  gap: 2.5rem;
}

.gap-12 {
  gap: 3rem;
}

.gap-2 {
  gap: .5rem;
}

.gap-2\.5 {
  gap: .625rem;
}

.gap-3 {
  gap: .75rem;
}

.gap-4 {
  gap: 1rem;
}

.gap-5 {
  gap: 1.25rem;
}

.gap-6 {
  gap: 1.5rem;
}

.gap-8 {
  gap: 2rem;
}

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

.gap-x-6 {
  column-gap: 1.5rem;
}

.gap-x-8 {
  column-gap: 2rem;
}

.gap-y-1 {
  row-gap: .25rem;
}

.gap-y-2 {
  row-gap: .5rem;
}

.gap-y-3 {
  row-gap: .75rem;
}

.space-x-4 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(1rem * var(--tw-space-x-reverse));
  margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)));
}

.space-y-0 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(0px * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0px * var(--tw-space-y-reverse));
}

.space-y-0\.5 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(.125rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(.125rem * var(--tw-space-y-reverse));
}

.space-y-1 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(.25rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(.25rem * var(--tw-space-y-reverse));
}

.space-y-1\.5 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(.375rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(.375rem * var(--tw-space-y-reverse));
}

.space-y-2 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(.5rem * var(--tw-space-y-reverse));
}

.space-y-2\.5 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(.625rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(.625rem * var(--tw-space-y-reverse));
}

.space-y-3 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(.75rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(.75rem * var(--tw-space-y-reverse));
}

.space-y-3\.5 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(.875rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(.875rem * var(--tw-space-y-reverse));
}

.space-y-4 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1rem * var(--tw-space-y-reverse));
}

.space-y-5 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1.25rem * var(--tw-space-y-reverse));
}

.space-y-6 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1.5rem * var(--tw-space-y-reverse));
}

.space-y-8 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(2rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(2rem * var(--tw-space-y-reverse));
}

.divide-y > :not([hidden]) ~ :not([hidden]) {
  --tw-divide-y-reverse: 0;
  border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
  border-bottom-width: calc(1px * var(--tw-divide-y-reverse));
}

.divide-border > :not([hidden]) ~ :not([hidden]) {
  border-color: hsl(var(--border));
}

.divide-zinc-800\/50 > :not([hidden]) ~ :not([hidden]) {
  border-color: rgba(39, 39, 42, .5);
}

.overflow-auto {
  overflow: auto;
}

.overflow-hidden {
  overflow: hidden;
}

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

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

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

.whitespace-nowrap {
  white-space: nowrap;
}

.whitespace-pre-line {
  white-space: pre-line;
}

.whitespace-pre-wrap {
  white-space: pre-wrap;
}

.break-all {
  word-break: break-all;
}

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

.rounded-2xl {
  border-radius: 1rem;
}

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

.rounded-full {
  border-radius: 9999px;
}

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

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

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

.rounded-xl {
  border-radius: .75rem;
}

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

.rounded-t {
  border-top-left-radius: .25rem;
  border-top-right-radius: .25rem;
}

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

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

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

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

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

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

.border {
  border-width: 1px;
}

.border-2 {
  border-width: 2px;
}

.border-4 {
  border-width: 4px;
}

.border-y {
  border-top-width: 1px;
  border-bottom-width: 1px;
}

.border-b {
  border-bottom-width: 1px;
}

.border-b-2 {
  border-bottom-width: 2px;
}

.border-l {
  border-left-width: 1px;
}

.border-l-2 {
  border-left-width: 2px;
}

.border-l-4 {
  border-left-width: 4px;
}

.border-r {
  border-right-width: 1px;
}

.border-t {
  border-top-width: 1px;
}

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

.border-\[hsl\(var\(--info-border\)\)\] {
  border-color: hsl(var(--info-border));
}

.border-\[hsl\(var\(--neutral\)\)\] {
  border-color: hsl(var(--neutral));
}

.border-\[hsl\(var\(--neutral-border\)\)\] {
  border-color: hsl(var(--neutral-border));
}

.border-\[hsl\(var\(--sidebar-text\)\/0\.3\)\] {
  border-color: hsl(var(--sidebar-text) / .3);
}

.border-\[hsl\(var\(--success\)\)\] {
  border-color: hsl(var(--success));
}

.border-\[hsl\(var\(--success-border\)\)\] {
  border-color: hsl(var(--success-border));
}

.border-\[hsl\(var\(--warning\)\)\] {
  border-color: hsl(var(--warning));
}

.border-\[hsl\(var\(--warning\)\/0\.3\)\] {
  border-color: hsl(var(--warning) / .3);
}

.border-\[hsl\(var\(--warning-border\)\)\] {
  border-color: hsl(var(--warning-border));
}

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

.border-accent\/20 {
  border-color: hsl(var(--accent) / .2);
}

.border-amber-200 {
  --tw-border-opacity: 1;
  border-color: rgba(253, 230, 138, var(--tw-border-opacity, 1));
}

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

.border-blue-200 {
  --tw-border-opacity: 1;
  border-color: rgba(191, 219, 254, var(--tw-border-opacity, 1));
}

.border-blue-800 {
  --tw-border-opacity: 1;
  border-color: rgba(30, 64, 175, var(--tw-border-opacity, 1));
}

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

.border-border\/20 {
  border-color: hsl(var(--border) / .2);
}

.border-border\/30 {
  border-color: hsl(var(--border) / .3);
}

.border-border\/40 {
  border-color: hsl(var(--border) / .4);
}

.border-border\/50 {
  border-color: hsl(var(--border) / .5);
}

.border-border\/60 {
  border-color: hsl(var(--border) / .6);
}

.border-current {
  border-color: currentColor;
}

.border-cyan-200 {
  --tw-border-opacity: 1;
  border-color: rgba(165, 243, 252, var(--tw-border-opacity, 1));
}

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

.border-destructive\/20 {
  border-color: hsl(var(--destructive) / .2);
}

.border-destructive\/30 {
  border-color: hsl(var(--destructive) / .3);
}

.border-destructive\/40 {
  border-color: hsl(var(--destructive) / .4);
}

.border-destructive\/50 {
  border-color: hsl(var(--destructive) / .5);
}

.border-emerald-200 {
  --tw-border-opacity: 1;
  border-color: rgba(167, 243, 208, var(--tw-border-opacity, 1));
}

.border-emerald-400 {
  --tw-border-opacity: 1;
  border-color: rgba(52, 211, 153, var(--tw-border-opacity, 1));
}

.border-green-200 {
  --tw-border-opacity: 1;
  border-color: rgba(187, 247, 208, var(--tw-border-opacity, 1));
}

.border-green-400 {
  --tw-border-opacity: 1;
  border-color: rgba(74, 222, 128, var(--tw-border-opacity, 1));
}

.border-green-800 {
  --tw-border-opacity: 1;
  border-color: rgba(22, 101, 52, var(--tw-border-opacity, 1));
}

.border-indigo-200 {
  --tw-border-opacity: 1;
  border-color: rgba(199, 210, 254, var(--tw-border-opacity, 1));
}

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

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

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

.border-muted-foreground\/20 {
  border-color: hsl(var(--muted-foreground) / .2);
}

.border-muted-foreground\/30 {
  border-color: hsl(var(--muted-foreground) / .3);
}

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

.border-orange-200 {
  --tw-border-opacity: 1;
  border-color: rgba(254, 215, 170, var(--tw-border-opacity, 1));
}

.border-orange-400 {
  --tw-border-opacity: 1;
  border-color: rgba(251, 146, 60, var(--tw-border-opacity, 1));
}

.border-orange-800 {
  --tw-border-opacity: 1;
  border-color: rgba(154, 52, 18, var(--tw-border-opacity, 1));
}

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

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

.border-primary\/20 {
  border-color: hsl(var(--primary) / .2);
}

.border-primary\/30 {
  border-color: hsl(var(--primary) / .3);
}

.border-primary\/50 {
  border-color: hsl(var(--primary) / .5);
}

.border-purple-200 {
  --tw-border-opacity: 1;
  border-color: rgba(233, 213, 255, var(--tw-border-opacity, 1));
}

.border-purple-800 {
  --tw-border-opacity: 1;
  border-color: rgba(107, 33, 168, var(--tw-border-opacity, 1));
}

.border-red-200 {
  --tw-border-opacity: 1;
  border-color: rgba(254, 202, 202, var(--tw-border-opacity, 1));
}

.border-red-500 {
  --tw-border-opacity: 1;
  border-color: rgba(239, 68, 68, var(--tw-border-opacity, 1));
}

.border-red-800 {
  --tw-border-opacity: 1;
  border-color: rgba(153, 27, 27, var(--tw-border-opacity, 1));
}

.border-red-900 {
  --tw-border-opacity: 1;
  border-color: rgba(127, 29, 29, var(--tw-border-opacity, 1));
}

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

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

.border-success\/20 {
  border-color: hsl(var(--success) / .2);
}

.border-success\/30 {
  border-color: hsl(var(--success) / .3);
}

.border-success\/40 {
  border-color: hsl(var(--success) / .4);
}

.border-success\/50 {
  border-color: hsl(var(--success) / .5);
}

.border-transparent {
  border-color: rgba(0, 0, 0, 0);
}

.border-violet-200 {
  --tw-border-opacity: 1;
  border-color: rgba(221, 214, 254, var(--tw-border-opacity, 1));
}

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

.border-warning\/20 {
  border-color: hsl(var(--warning) / .2);
}

.border-warning\/30 {
  border-color: hsl(var(--warning) / .3);
}

.border-yellow-800 {
  --tw-border-opacity: 1;
  border-color: rgba(133, 77, 14, var(--tw-border-opacity, 1));
}

.border-zinc-600 {
  --tw-border-opacity: 1;
  border-color: rgba(82, 82, 91, var(--tw-border-opacity, 1));
}

.border-zinc-700 {
  --tw-border-opacity: 1;
  border-color: rgba(63, 63, 70, var(--tw-border-opacity, 1));
}

.border-zinc-800 {
  --tw-border-opacity: 1;
  border-color: rgba(39, 39, 42, var(--tw-border-opacity, 1));
}

.border-zinc-800\/30 {
  border-color: rgba(39, 39, 42, .3);
}

.border-zinc-800\/50 {
  border-color: rgba(39, 39, 42, .5);
}

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

.border-b-muted-foreground\/40 {
  border-bottom-color: hsl(var(--muted-foreground) / .4);
}

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

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

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

.border-l-amber-500 {
  --tw-border-opacity: 1;
  border-left-color: rgba(245, 158, 11, var(--tw-border-opacity, 1));
}

.border-l-blue-500 {
  --tw-border-opacity: 1;
  border-left-color: rgba(59, 130, 246, var(--tw-border-opacity, 1));
}

.border-l-destructive {
  border-left-color: hsl(var(--destructive));
}

.border-l-emerald-500 {
  --tw-border-opacity: 1;
  border-left-color: rgba(16, 185, 129, var(--tw-border-opacity, 1));
}

.border-l-gray-400 {
  --tw-border-opacity: 1;
  border-left-color: rgba(156, 163, 175, var(--tw-border-opacity, 1));
}

.border-l-orange-500 {
  --tw-border-opacity: 1;
  border-left-color: rgba(249, 115, 22, var(--tw-border-opacity, 1));
}

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

.border-l-sky-500 {
  --tw-border-opacity: 1;
  border-left-color: rgba(14, 165, 233, var(--tw-border-opacity, 1));
}

.border-l-success {
  border-left-color: hsl(var(--success));
}

.border-l-teal-500 {
  --tw-border-opacity: 1;
  border-left-color: rgba(20, 184, 166, var(--tw-border-opacity, 1));
}

.border-t-red-500 {
  --tw-border-opacity: 1;
  border-top-color: rgba(239, 68, 68, var(--tw-border-opacity, 1));
}

.border-t-transparent {
  border-top-color: rgba(0, 0, 0, 0);
}

.bg-\[hsl\(0_84\%_60\%\)\] {
  --tw-bg-opacity: 1;
  background-color: hsla(0, 84%, 60%, var(--tw-bg-opacity, 1));
}

.bg-\[hsl\(0_84\%_97\%\)\] {
  --tw-bg-opacity: 1;
  background-color: hsla(0, 84%, 97%, var(--tw-bg-opacity, 1));
}

.bg-\[hsl\(142_76\%_36\%\)\] {
  --tw-bg-opacity: 1;
  background-color: hsla(142, 76%, 36%, var(--tw-bg-opacity, 1));
}

.bg-\[hsl\(142_76\%_97\%\)\] {
  --tw-bg-opacity: 1;
  background-color: hsla(142, 76%, 97%, var(--tw-bg-opacity, 1));
}

.bg-\[hsl\(220\,14\%\,96\%\)\] {
  --tw-bg-opacity: 1;
  background-color: hsla(220, 14%, 96%, var(--tw-bg-opacity, 1));
}

.bg-\[hsl\(38_92\%_50\%\)\] {
  --tw-bg-opacity: 1;
  background-color: hsla(38, 92%, 50%, var(--tw-bg-opacity, 1));
}

.bg-\[hsl\(38_92\%_97\%\)\] {
  --tw-bg-opacity: 1;
  background-color: hsla(38, 92%, 97%, var(--tw-bg-opacity, 1));
}

.bg-\[hsl\(var\(--info-muted\)\)\] {
  background-color: hsl(var(--info-muted));
}

.bg-\[hsl\(var\(--neutral\)\)\] {
  background-color: hsl(var(--neutral));
}

.bg-\[hsl\(var\(--neutral\)\/0\.05\)\] {
  background-color: hsl(var(--neutral) / .05);
}

.bg-\[hsl\(var\(--neutral-muted\)\)\] {
  background-color: hsl(var(--neutral-muted));
}

.bg-\[hsl\(var\(--primary\)\/0\.05\)\] {
  background-color: hsl(var(--primary) / .05);
}

.bg-\[hsl\(var\(--sidebar-text\)\/0\.1\)\] {
  background-color: hsl(var(--sidebar-text) / .1);
}

.bg-\[hsl\(var\(--success\)\)\] {
  background-color: hsl(var(--success));
}

.bg-\[hsl\(var\(--success\)\/0\.05\)\] {
  background-color: hsl(var(--success) / .05);
}

.bg-\[hsl\(var\(--success-muted\)\)\] {
  background-color: hsl(var(--success-muted));
}

.bg-\[hsl\(var\(--warning\)\)\] {
  background-color: hsl(var(--warning));
}

.bg-\[hsl\(var\(--warning\)\/0\.05\)\] {
  background-color: hsl(var(--warning) / .05);
}

.bg-\[hsl\(var\(--warning\)\/0\.08\)\] {
  background-color: hsl(var(--warning) / .08);
}

.bg-\[hsl\(var\(--warning-muted\)\)\] {
  background-color: hsl(var(--warning-muted));
}

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

.bg-accent\/10 {
  background-color: hsl(var(--accent) / .1);
}

.bg-accent\/5 {
  background-color: hsl(var(--accent) / .05);
}

.bg-amber-100 {
  --tw-bg-opacity: 1;
  background-color: rgba(254, 243, 199, var(--tw-bg-opacity, 1));
}

.bg-amber-50 {
  --tw-bg-opacity: 1;
  background-color: rgba(255, 251, 235, var(--tw-bg-opacity, 1));
}

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

.bg-background\/80 {
  background-color: hsl(var(--background) / .8);
}

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

.bg-black\/60 {
  background-color: rgba(0, 0, 0, .6);
}

.bg-black\/80 {
  background-color: rgba(0, 0, 0, .8);
}

.bg-blue-100 {
  --tw-bg-opacity: 1;
  background-color: rgba(219, 234, 254, var(--tw-bg-opacity, 1));
}

.bg-blue-50 {
  --tw-bg-opacity: 1;
  background-color: rgba(239, 246, 255, var(--tw-bg-opacity, 1));
}

.bg-blue-950 {
  --tw-bg-opacity: 1;
  background-color: rgba(23, 37, 84, var(--tw-bg-opacity, 1));
}

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

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

.bg-card\/50 {
  background-color: hsl(var(--card) / .5);
}

.bg-card\/80 {
  background-color: hsl(var(--card) / .8);
}

.bg-cyan-50 {
  --tw-bg-opacity: 1;
  background-color: rgba(236, 254, 255, var(--tw-bg-opacity, 1));
}

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

.bg-destructive\/10 {
  background-color: hsl(var(--destructive) / .1);
}

.bg-destructive\/40 {
  background-color: hsl(var(--destructive) / .4);
}

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

.bg-emerald-100 {
  --tw-bg-opacity: 1;
  background-color: rgba(209, 250, 229, var(--tw-bg-opacity, 1));
}

.bg-emerald-50 {
  --tw-bg-opacity: 1;
  background-color: rgba(236, 253, 245, var(--tw-bg-opacity, 1));
}

.bg-emerald-500\/20 {
  background-color: rgba(16, 185, 129, .2);
}

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

.bg-foreground\/40 {
  background-color: hsl(var(--foreground) / .4);
}

.bg-foreground\/\[0\.03\] {
  background-color: hsl(var(--foreground) / .03);
}

.bg-gray-100 {
  --tw-bg-opacity: 1;
  background-color: rgba(243, 244, 246, var(--tw-bg-opacity, 1));
}

.bg-gray-200 {
  --tw-bg-opacity: 1;
  background-color: rgba(229, 231, 235, var(--tw-bg-opacity, 1));
}

.bg-gray-50 {
  --tw-bg-opacity: 1;
  background-color: rgba(249, 250, 251, var(--tw-bg-opacity, 1));
}

.bg-gray-50\/50 {
  background-color: rgba(249, 250, 251, .5);
}

.bg-green-100 {
  --tw-bg-opacity: 1;
  background-color: rgba(220, 252, 231, var(--tw-bg-opacity, 1));
}

.bg-green-50 {
  --tw-bg-opacity: 1;
  background-color: rgba(240, 253, 244, var(--tw-bg-opacity, 1));
}

.bg-green-500 {
  --tw-bg-opacity: 1;
  background-color: rgba(34, 197, 94, var(--tw-bg-opacity, 1));
}

.bg-green-950 {
  --tw-bg-opacity: 1;
  background-color: rgba(5, 46, 22, var(--tw-bg-opacity, 1));
}

.bg-green-950\/10 {
  background-color: rgba(5, 46, 22, .1);
}

.bg-green-950\/90 {
  background-color: rgba(5, 46, 22, .9);
}

.bg-indigo-50 {
  --tw-bg-opacity: 1;
  background-color: rgba(238, 242, 255, var(--tw-bg-opacity, 1));
}

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

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

.bg-info\/10 {
  background-color: hsl(var(--info) / .1);
}

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

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

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

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

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

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

.bg-muted\/20 {
  background-color: hsl(var(--muted) / .2);
}

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

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

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

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

.bg-muted\/80 {
  background-color: hsl(var(--muted) / .8);
}

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

.bg-orange-50 {
  --tw-bg-opacity: 1;
  background-color: rgba(255, 247, 237, var(--tw-bg-opacity, 1));
}

.bg-orange-950 {
  --tw-bg-opacity: 1;
  background-color: rgba(67, 20, 7, var(--tw-bg-opacity, 1));
}

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

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

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

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

.bg-primary\/40 {
  background-color: hsl(var(--primary) / .4);
}

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

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

.bg-primary\/80 {
  background-color: hsl(var(--primary) / .8);
}

.bg-primary\/\[0\.02\] {
  background-color: hsl(var(--primary) / .02);
}

.bg-purple-50 {
  --tw-bg-opacity: 1;
  background-color: rgba(250, 245, 255, var(--tw-bg-opacity, 1));
}

.bg-purple-950 {
  --tw-bg-opacity: 1;
  background-color: rgba(59, 7, 100, var(--tw-bg-opacity, 1));
}

.bg-red-100 {
  --tw-bg-opacity: 1;
  background-color: rgba(254, 226, 226, var(--tw-bg-opacity, 1));
}

.bg-red-50 {
  --tw-bg-opacity: 1;
  background-color: rgba(254, 242, 242, var(--tw-bg-opacity, 1));
}

.bg-red-500 {
  --tw-bg-opacity: 1;
  background-color: rgba(239, 68, 68, var(--tw-bg-opacity, 1));
}

.bg-red-500\/10 {
  background-color: rgba(239, 68, 68, .1);
}

.bg-red-600 {
  --tw-bg-opacity: 1;
  background-color: rgba(220, 38, 38, var(--tw-bg-opacity, 1));
}

.bg-red-600\/20 {
  background-color: rgba(220, 38, 38, .2);
}

.bg-red-950 {
  --tw-bg-opacity: 1;
  background-color: rgba(69, 10, 10, var(--tw-bg-opacity, 1));
}

.bg-red-950\/50 {
  background-color: rgba(69, 10, 10, .5);
}

.bg-red-950\/90 {
  background-color: rgba(69, 10, 10, .9);
}

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

.bg-sky-50 {
  --tw-bg-opacity: 1;
  background-color: rgba(240, 249, 255, var(--tw-bg-opacity, 1));
}

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

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

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

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

.bg-success\/10 {
  background-color: hsl(var(--success) / .1);
}

.bg-success\/20 {
  background-color: hsl(var(--success) / .2);
}

.bg-success\/40 {
  background-color: hsl(var(--success) / .4);
}

.bg-success\/5 {
  background-color: hsl(var(--success) / .05);
}

.bg-success\/60 {
  background-color: hsl(var(--success) / .6);
}

.bg-success\/80 {
  background-color: hsl(var(--success) / .8);
}

.bg-teal-50 {
  --tw-bg-opacity: 1;
  background-color: rgba(240, 253, 250, var(--tw-bg-opacity, 1));
}

.bg-transparent {
  background-color: rgba(0, 0, 0, 0);
}

.bg-violet-50 {
  --tw-bg-opacity: 1;
  background-color: rgba(245, 243, 255, var(--tw-bg-opacity, 1));
}

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

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

.bg-warning\/10 {
  background-color: hsl(var(--warning) / .1);
}

.bg-warning\/40 {
  background-color: hsl(var(--warning) / .4);
}

.bg-warning\/5 {
  background-color: hsl(var(--warning) / .05);
}

.bg-white {
  --tw-bg-opacity: 1;
  background-color: rgba(255, 255, 255, var(--tw-bg-opacity, 1));
}

.bg-white\/90 {
  background-color: rgba(255, 255, 255, .9);
}

.bg-yellow-400 {
  --tw-bg-opacity: 1;
  background-color: rgba(250, 204, 21, var(--tw-bg-opacity, 1));
}

.bg-yellow-500 {
  --tw-bg-opacity: 1;
  background-color: rgba(234, 179, 8, var(--tw-bg-opacity, 1));
}

.bg-yellow-950 {
  --tw-bg-opacity: 1;
  background-color: rgba(66, 32, 6, var(--tw-bg-opacity, 1));
}

.bg-zinc-800 {
  --tw-bg-opacity: 1;
  background-color: rgba(39, 39, 42, var(--tw-bg-opacity, 1));
}

.bg-zinc-800\/30 {
  background-color: rgba(39, 39, 42, .3);
}

.bg-zinc-900 {
  --tw-bg-opacity: 1;
  background-color: rgba(24, 24, 27, var(--tw-bg-opacity, 1));
}

.bg-zinc-900\/50 {
  background-color: rgba(24, 24, 27, .5);
}

.bg-zinc-900\/80 {
  background-color: rgba(24, 24, 27, .8);
}

.bg-zinc-950 {
  --tw-bg-opacity: 1;
  background-color: rgba(9, 9, 11, var(--tw-bg-opacity, 1));
}

.bg-zinc-950\/95 {
  background-color: rgba(9, 9, 11, .95);
}

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

.bg-gradient-to-br {
  background-image: linear-gradient(to bottom right, var(--tw-gradient-stops));
}

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

.from-muted\/20 {
  --tw-gradient-from: hsl(var(--muted) / .2) var(--tw-gradient-from-position);
  --tw-gradient-to: hsl(var(--muted) / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-muted\/30 {
  --tw-gradient-from: hsl(var(--muted) / .3) var(--tw-gradient-from-position);
  --tw-gradient-to: hsl(var(--muted) / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-primary\/15 {
  --tw-gradient-from: hsl(var(--primary) / .15) var(--tw-gradient-from-position);
  --tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-primary\/5 {
  --tw-gradient-from: hsl(var(--primary) / .05) var(--tw-gradient-from-position);
  --tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.via-background {
  --tw-gradient-to: hsl(var(--background) / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), hsl(var(--background)) var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-primary\/10 {
  --tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), hsl(var(--primary) / .1) var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.to-accent\/15 {
  --tw-gradient-to: hsl(var(--accent) / .15) var(--tw-gradient-to-position);
}

.to-background {
  --tw-gradient-to: hsl(var(--background)) var(--tw-gradient-to-position);
}

.to-primary\/10 {
  --tw-gradient-to: hsl(var(--primary) / .1) var(--tw-gradient-to-position);
}

.to-primary\/5 {
  --tw-gradient-to: hsl(var(--primary) / .05) var(--tw-gradient-to-position);
}

.fill-current {
  fill: currentColor;
}

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

.stroke-destructive {
  stroke: hsl(var(--destructive));
}

.stroke-muted {
  stroke: hsl(var(--muted));
}

.stroke-success {
  stroke: hsl(var(--success));
}

.object-contain {
  object-fit: contain;
}

.object-cover {
  object-fit: cover;
}

.object-top {
  object-position: top;
}

.p-0 {
  padding: 0;
}

.p-0\.5 {
  padding: .125rem;
}

.p-1 {
  padding: .25rem;
}

.p-1\.5 {
  padding: .375rem;
}

.p-10 {
  padding: 2.5rem;
}

.p-2 {
  padding: .5rem;
}

.p-2\.5 {
  padding: .625rem;
}

.p-3 {
  padding: .75rem;
}

.p-3\.5 {
  padding: .875rem;
}

.p-4 {
  padding: 1rem;
}

.p-5 {
  padding: 1.25rem;
}

.p-6 {
  padding: 1.5rem;
}

.p-8 {
  padding: 2rem;
}

.px-1 {
  padding-left: .25rem;
  padding-right: .25rem;
}

.px-1\.5 {
  padding-left: .375rem;
  padding-right: .375rem;
}

.px-10 {
  padding-left: 2.5rem;
  padding-right: 2.5rem;
}

.px-2 {
  padding-left: .5rem;
  padding-right: .5rem;
}

.px-2\.5 {
  padding-left: .625rem;
  padding-right: .625rem;
}

.px-3 {
  padding-left: .75rem;
  padding-right: .75rem;
}

.px-3\.5 {
  padding-left: .875rem;
  padding-right: .875rem;
}

.px-4 {
  padding-left: 1rem;
  padding-right: 1rem;
}

.px-5 {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.px-6 {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.px-8 {
  padding-left: 2rem;
  padding-right: 2rem;
}

.py-0 {
  padding-top: 0;
  padding-bottom: 0;
}

.py-0\.5 {
  padding-top: .125rem;
  padding-bottom: .125rem;
}

.py-1 {
  padding-top: .25rem;
  padding-bottom: .25rem;
}

.py-1\.5 {
  padding-top: .375rem;
  padding-bottom: .375rem;
}

.py-10 {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}

.py-12 {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.py-16 {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.py-2 {
  padding-top: .5rem;
  padding-bottom: .5rem;
}

.py-2\.5 {
  padding-top: .625rem;
  padding-bottom: .625rem;
}

.py-20 {
  padding-top: 5rem;
  padding-bottom: 5rem;
}

.py-3 {
  padding-top: .75rem;
  padding-bottom: .75rem;
}

.py-3\.5 {
  padding-top: .875rem;
  padding-bottom: .875rem;
}

.py-4 {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.py-5 {
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}

.py-6 {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

.py-8 {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.pb-1 {
  padding-bottom: .25rem;
}

.pb-16 {
  padding-bottom: 4rem;
}

.pb-2 {
  padding-bottom: .5rem;
}

.pb-3 {
  padding-bottom: .75rem;
}

.pb-4 {
  padding-bottom: 1rem;
}

.pb-5 {
  padding-bottom: 1.25rem;
}

.pb-6 {
  padding-bottom: 1.5rem;
}

.pb-8 {
  padding-bottom: 2rem;
}

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

.pl-0\.5 {
  padding-left: .125rem;
}

.pl-1 {
  padding-left: .25rem;
}

.pl-10 {
  padding-left: 2.5rem;
}

.pl-11 {
  padding-left: 2.75rem;
}

.pl-12 {
  padding-left: 3rem;
}

.pl-2 {
  padding-left: .5rem;
}

.pl-3 {
  padding-left: .75rem;
}

.pl-4 {
  padding-left: 1rem;
}

.pl-5 {
  padding-left: 1.25rem;
}

.pl-8 {
  padding-left: 2rem;
}

.pl-9 {
  padding-left: 2.25rem;
}

.pr-0 {
  padding-right: 0;
}

.pr-1 {
  padding-right: .25rem;
}

.pr-2 {
  padding-right: .5rem;
}

.pr-3 {
  padding-right: .75rem;
}

.pr-4 {
  padding-right: 1rem;
}

.pr-8 {
  padding-right: 2rem;
}

.pt-0 {
  padding-top: 0;
}

.pt-0\.5 {
  padding-top: .125rem;
}

.pt-1 {
  padding-top: .25rem;
}

.pt-1\.5 {
  padding-top: .375rem;
}

.pt-2 {
  padding-top: .5rem;
}

.pt-3 {
  padding-top: .75rem;
}

.pt-4 {
  padding-top: 1rem;
}

.pt-5 {
  padding-top: 1.25rem;
}

.pt-6 {
  padding-top: 1.5rem;
}

.pt-8 {
  padding-top: 2rem;
}

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

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

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

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

.font-display {
  font-family: var(--font-display);
}

.font-mono {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;
}

.text-2xl {
  font-size: 1.5rem;
  line-height: 2rem;
}

.text-3xl {
  font-size: 1.875rem;
  line-height: 2.25rem;
}

.text-4xl {
  font-size: 2.25rem;
  line-height: 2.5rem;
}

.text-5xl {
  font-size: 3rem;
  line-height: 1;
}

.text-6xl {
  font-size: 3.75rem;
  line-height: 1;
}

.text-\[0\.65rem\] {
  font-size: .65rem;
}

.text-\[0\.6rem\] {
  font-size: .6rem;
}

.text-\[0\.7rem\] {
  font-size: .7rem;
}

.text-\[0\.95rem\] {
  font-size: .95rem;
}

.text-\[0\.9rem\] {
  font-size: .9rem;
}

.text-\[10px\] {
  font-size: 10px;
}

.text-\[11px\] {
  font-size: 11px;
}

.text-\[12px\] {
  font-size: 12px;
}

.text-\[13px\] {
  font-size: 13px;
}

.text-\[9px\] {
  font-size: 9px;
}

.text-base {
  font-size: 1rem;
  line-height: 1.5rem;
}

.text-lg {
  font-size: 1.125rem;
  line-height: 1.75rem;
}

.text-sm {
  font-size: .875rem;
  line-height: 1.25rem;
}

.text-xl {
  font-size: 1.25rem;
  line-height: 1.75rem;
}

.text-xs {
  font-size: .75rem;
  line-height: 1rem;
}

.font-bold {
  font-weight: 700;
}

.font-extrabold {
  font-weight: 800;
}

.font-medium {
  font-weight: 500;
}

.font-normal {
  font-weight: 400;
}

.font-semibold {
  font-weight: 600;
}

.uppercase {
  text-transform: uppercase;
}

.lowercase {
  text-transform: lowercase;
}

.capitalize {
  text-transform: capitalize;
}

.normal-case {
  text-transform: none;
}

.italic {
  font-style: italic;
}

.not-italic {
  font-style: normal;
}

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

.leading-5 {
  line-height: 1.25rem;
}

.leading-loose {
  line-height: 2;
}

.leading-none {
  line-height: 1;
}

.leading-relaxed {
  line-height: 1.625;
}

.leading-snug {
  line-height: 1.375;
}

.leading-tight {
  line-height: 1.25;
}

.tracking-normal {
  letter-spacing: 0;
}

.tracking-tight {
  letter-spacing: -.025em;
}

.tracking-wide {
  letter-spacing: .025em;
}

.tracking-wider {
  letter-spacing: .05em;
}

.tracking-widest {
  letter-spacing: .1em;
}

.text-\[hsl\(0_84\%_60\%\)\] {
  --tw-text-opacity: 1;
  color: hsla(0, 84%, 60%, var(--tw-text-opacity, 1));
}

.text-\[hsl\(142_76\%_36\%\)\] {
  --tw-text-opacity: 1;
  color: hsla(142, 76%, 36%, var(--tw-text-opacity, 1));
}

.text-\[hsl\(38_92\%_50\%\)\] {
  --tw-text-opacity: 1;
  color: hsla(38, 92%, 50%, var(--tw-text-opacity, 1));
}

.text-\[hsl\(var\(--info-foreground\)\)\] {
  color: hsl(var(--info-foreground));
}

.text-\[hsl\(var\(--neutral-foreground\)\)\] {
  color: hsl(var(--neutral-foreground));
}

.text-\[hsl\(var\(--sidebar-text\)\)\] {
  color: hsl(var(--sidebar-text));
}

.text-\[hsl\(var\(--success\)\)\] {
  color: hsl(var(--success));
}

.text-\[hsl\(var\(--warning\)\)\] {
  color: hsl(var(--warning));
}

.text-\[hsl\(var\(--warning-foreground\)\)\] {
  color: hsl(var(--warning-foreground));
}

.text-\[hsl\(var\(--warning-foreground\,var\(--foreground\)\)\)\] {
  color: hsl(var(--warning-foreground, var(--foreground)));
}

.text-accent {
  color: hsl(var(--accent));
}

.text-amber-400 {
  --tw-text-opacity: 1;
  color: rgba(251, 191, 36, var(--tw-text-opacity, 1));
}

.text-amber-500 {
  --tw-text-opacity: 1;
  color: rgba(245, 158, 11, var(--tw-text-opacity, 1));
}

.text-amber-600 {
  --tw-text-opacity: 1;
  color: rgba(217, 119, 6, var(--tw-text-opacity, 1));
}

.text-amber-700 {
  --tw-text-opacity: 1;
  color: rgba(180, 83, 9, var(--tw-text-opacity, 1));
}

.text-amber-800 {
  --tw-text-opacity: 1;
  color: rgba(146, 64, 14, var(--tw-text-opacity, 1));
}

.text-amber-900 {
  --tw-text-opacity: 1;
  color: rgba(120, 53, 15, var(--tw-text-opacity, 1));
}

.text-background {
  color: hsl(var(--background));
}

.text-blue-400 {
  --tw-text-opacity: 1;
  color: rgba(96, 165, 250, var(--tw-text-opacity, 1));
}

.text-blue-500 {
  --tw-text-opacity: 1;
  color: rgba(59, 130, 246, var(--tw-text-opacity, 1));
}

.text-blue-700 {
  --tw-text-opacity: 1;
  color: rgba(29, 78, 216, var(--tw-text-opacity, 1));
}

.text-blue-800 {
  --tw-text-opacity: 1;
  color: rgba(30, 64, 175, var(--tw-text-opacity, 1));
}

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

.text-card-foreground {
  color: hsl(var(--card-foreground));
}

.text-cyan-400 {
  --tw-text-opacity: 1;
  color: rgba(34, 211, 238, var(--tw-text-opacity, 1));
}

.text-cyan-700 {
  --tw-text-opacity: 1;
  color: rgba(14, 116, 144, var(--tw-text-opacity, 1));
}

.text-destructive {
  color: hsl(var(--destructive));
}

.text-destructive-foreground {
  color: hsl(var(--destructive-foreground));
}

.text-destructive\/60 {
  color: hsl(var(--destructive) / .6);
}

.text-destructive\/80 {
  color: hsl(var(--destructive) / .8);
}

.text-emerald-400 {
  --tw-text-opacity: 1;
  color: rgba(52, 211, 153, var(--tw-text-opacity, 1));
}

.text-emerald-500 {
  --tw-text-opacity: 1;
  color: rgba(16, 185, 129, var(--tw-text-opacity, 1));
}

.text-emerald-600 {
  --tw-text-opacity: 1;
  color: rgba(5, 150, 105, var(--tw-text-opacity, 1));
}

.text-emerald-700 {
  --tw-text-opacity: 1;
  color: rgba(4, 120, 87, var(--tw-text-opacity, 1));
}

.text-foreground {
  color: hsl(var(--foreground));
}

.text-foreground\/50 {
  color: hsl(var(--foreground) / .5);
}

.text-foreground\/90 {
  color: hsl(var(--foreground) / .9);
}

.text-gray-600 {
  --tw-text-opacity: 1;
  color: rgba(75, 85, 99, var(--tw-text-opacity, 1));
}

.text-green-300 {
  --tw-text-opacity: 1;
  color: rgba(134, 239, 172, var(--tw-text-opacity, 1));
}

.text-green-400 {
  --tw-text-opacity: 1;
  color: rgba(74, 222, 128, var(--tw-text-opacity, 1));
}

.text-green-600 {
  --tw-text-opacity: 1;
  color: rgba(22, 163, 74, var(--tw-text-opacity, 1));
}

.text-green-700 {
  --tw-text-opacity: 1;
  color: rgba(21, 128, 61, var(--tw-text-opacity, 1));
}

.text-green-800 {
  --tw-text-opacity: 1;
  color: rgba(22, 101, 52, var(--tw-text-opacity, 1));
}

.text-indigo-700 {
  --tw-text-opacity: 1;
  color: rgba(67, 56, 202, var(--tw-text-opacity, 1));
}

.text-info {
  color: hsl(var(--info));
}

.text-info-foreground {
  color: hsl(var(--info-foreground));
}

.text-input {
  color: hsl(var(--input));
}

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

.text-muted-foreground\/20 {
  color: hsl(var(--muted-foreground) / .2);
}

.text-muted-foreground\/30 {
  color: hsl(var(--muted-foreground) / .3);
}

.text-muted-foreground\/40 {
  color: hsl(var(--muted-foreground) / .4);
}

.text-muted-foreground\/50 {
  color: hsl(var(--muted-foreground) / .5);
}

.text-muted-foreground\/60 {
  color: hsl(var(--muted-foreground) / .6);
}

.text-muted-foreground\/70 {
  color: hsl(var(--muted-foreground) / .7);
}

.text-muted-foreground\/80 {
  color: hsl(var(--muted-foreground) / .8);
}

.text-muted\/20 {
  color: hsl(var(--muted) / .2);
}

.text-neutral-foreground {
  color: hsl(var(--neutral-foreground));
}

.text-orange-400 {
  --tw-text-opacity: 1;
  color: rgba(251, 146, 60, var(--tw-text-opacity, 1));
}

.text-orange-500 {
  --tw-text-opacity: 1;
  color: rgba(249, 115, 22, var(--tw-text-opacity, 1));
}

.text-orange-600 {
  --tw-text-opacity: 1;
  color: rgba(234, 88, 12, var(--tw-text-opacity, 1));
}

.text-orange-700 {
  --tw-text-opacity: 1;
  color: rgba(194, 65, 12, var(--tw-text-opacity, 1));
}

.text-popover-foreground {
  color: hsl(var(--popover-foreground));
}

.text-primary {
  color: hsl(var(--primary));
}

.text-primary-foreground {
  color: hsl(var(--primary-foreground));
}

.text-primary-foreground\/80 {
  color: hsl(var(--primary-foreground) / .8);
}

.text-primary\/25 {
  color: hsl(var(--primary) / .25);
}

.text-primary\/30 {
  color: hsl(var(--primary) / .3);
}

.text-primary\/40 {
  color: hsl(var(--primary) / .4);
}

.text-primary\/60 {
  color: hsl(var(--primary) / .6);
}

.text-primary\/70 {
  color: hsl(var(--primary) / .7);
}

.text-purple-400 {
  --tw-text-opacity: 1;
  color: rgba(192, 132, 252, var(--tw-text-opacity, 1));
}

.text-purple-700 {
  --tw-text-opacity: 1;
  color: rgba(126, 34, 206, var(--tw-text-opacity, 1));
}

.text-rating {
  color: hsl(var(--rating));
}

.text-red-300 {
  --tw-text-opacity: 1;
  color: rgba(252, 165, 165, var(--tw-text-opacity, 1));
}

.text-red-400 {
  --tw-text-opacity: 1;
  color: rgba(248, 113, 113, var(--tw-text-opacity, 1));
}

.text-red-500 {
  --tw-text-opacity: 1;
  color: rgba(239, 68, 68, var(--tw-text-opacity, 1));
}

.text-red-600 {
  --tw-text-opacity: 1;
  color: rgba(220, 38, 38, var(--tw-text-opacity, 1));
}

.text-red-700 {
  --tw-text-opacity: 1;
  color: rgba(185, 28, 28, var(--tw-text-opacity, 1));
}

.text-secondary-foreground {
  color: hsl(var(--secondary-foreground));
}

.text-success {
  color: hsl(var(--success));
}

.text-success-foreground {
  color: hsl(var(--success-foreground));
}

.text-success\/70 {
  color: hsl(var(--success) / .7);
}

.text-success\/80 {
  color: hsl(var(--success) / .8);
}

.text-violet-700 {
  --tw-text-opacity: 1;
  color: rgba(109, 40, 217, var(--tw-text-opacity, 1));
}

.text-warning {
  color: hsl(var(--warning));
}

.text-warning-foreground {
  color: hsl(var(--warning-foreground));
}

.text-white {
  --tw-text-opacity: 1;
  color: rgba(255, 255, 255, var(--tw-text-opacity, 1));
}

.text-yellow-400 {
  --tw-text-opacity: 1;
  color: rgba(250, 204, 21, var(--tw-text-opacity, 1));
}

.text-yellow-500 {
  --tw-text-opacity: 1;
  color: rgba(234, 179, 8, var(--tw-text-opacity, 1));
}

.text-zinc-100 {
  --tw-text-opacity: 1;
  color: rgba(244, 244, 245, var(--tw-text-opacity, 1));
}

.text-zinc-200 {
  --tw-text-opacity: 1;
  color: rgba(228, 228, 231, var(--tw-text-opacity, 1));
}

.text-zinc-300 {
  --tw-text-opacity: 1;
  color: rgba(212, 212, 216, var(--tw-text-opacity, 1));
}

.text-zinc-400 {
  --tw-text-opacity: 1;
  color: rgba(161, 161, 170, var(--tw-text-opacity, 1));
}

.text-zinc-500 {
  --tw-text-opacity: 1;
  color: rgba(113, 113, 122, var(--tw-text-opacity, 1));
}

.text-zinc-600 {
  --tw-text-opacity: 1;
  color: rgba(82, 82, 91, var(--tw-text-opacity, 1));
}

.text-zinc-700 {
  --tw-text-opacity: 1;
  color: rgba(63, 63, 70, var(--tw-text-opacity, 1));
}

.underline {
  -webkit-text-decoration-line: underline;
  text-decoration-line: underline;
}

.line-through {
  -webkit-text-decoration-line: line-through;
  text-decoration-line: line-through;
}

.underline-offset-2 {
  text-underline-offset: 2px;
}

.underline-offset-4 {
  text-underline-offset: 4px;
}

.antialiased {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.accent-primary {
  accent-color: hsl(var(--primary));
}

.opacity-0 {
  opacity: 0;
}

.opacity-100 {
  opacity: 1;
}

.opacity-30 {
  opacity: .3;
}

.opacity-40 {
  opacity: .4;
}

.opacity-50 {
  opacity: .5;
}

.opacity-60 {
  opacity: .6;
}

.opacity-70 {
  opacity: .7;
}

.opacity-80 {
  opacity: .8;
}

.opacity-85 {
  opacity: .85;
}

.opacity-90 {
  opacity: .9;
}

.shadow-2xl {
  --tw-shadow: 0 25px 50px -12px rgba(0, 0, 0, .25);
  --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);
}

.shadow-\[0_0_0_2px_hsl\(var\(--warning\)\/0\.2\)\] {
  --tw-shadow: 0 0 0 2px hsl(var(--warning) / .2);
  --tw-shadow-colored: 0 0 0 2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);
}

.shadow-card {
  --tw-shadow: var(--shadow-card);
  --tw-shadow-colored: var(--shadow-card);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);
}

.shadow-dropdown {
  --tw-shadow: var(--shadow-dropdown);
  --tw-shadow-colored: var(--shadow-dropdown);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);
}

.shadow-elevated {
  --tw-shadow: var(--shadow-elevated);
  --tw-shadow-colored: var(--shadow-elevated);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);
}

.shadow-lg {
  --tw-shadow: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);
}

.shadow-md {
  --tw-shadow: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);
}

.shadow-sm {
  --tw-shadow: 0 1px 2px 0 rgba(0, 0, 0, .05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);
}

.shadow-card {
  --tw-shadow-color: hsl(var(--card));
  --tw-shadow: var(--tw-shadow-colored);
}

.outline-none {
  outline-offset: 2px;
  outline: 2px solid rgba(0, 0, 0, 0);
}

.outline {
  outline-style: solid;
}

.ring {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));
}

.ring-0 {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));
}

.ring-1 {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));
}

.ring-2 {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));
}

.ring-\[hsl\(0_84\%_60\%\/0\.2\)\] {
  --tw-ring-color: rgba(239, 67, 67, .2);
}

.ring-\[hsl\(142_76\%_36\%\/0\.2\)\] {
  --tw-ring-color: rgba(22, 162, 73, .2);
}

.ring-\[hsl\(38_92\%_50\%\/0\.2\)\] {
  --tw-ring-color: rgba(245, 159, 10, .2);
}

.ring-amber-200 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgba(253, 230, 138, var(--tw-ring-opacity, 1));
}

.ring-black\/10 {
  --tw-ring-color: rgba(0, 0, 0, .1);
}

.ring-blue-200 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgba(191, 219, 254, var(--tw-ring-opacity, 1));
}

.ring-emerald-200 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgba(167, 243, 208, var(--tw-ring-opacity, 1));
}

.ring-foreground\/30 {
  --tw-ring-color: hsl(var(--foreground) / .3);
}

.ring-gray-200 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgba(229, 231, 235, var(--tw-ring-opacity, 1));
}

.ring-primary {
  --tw-ring-color: hsl(var(--primary));
}

.ring-primary\/20 {
  --tw-ring-color: hsl(var(--primary) / .2);
}

.ring-primary\/30 {
  --tw-ring-color: hsl(var(--primary) / .3);
}

.ring-primary\/50 {
  --tw-ring-color: hsl(var(--primary) / .5);
}

.ring-red-200 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgba(254, 202, 202, var(--tw-ring-opacity, 1));
}

.ring-violet-200 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgba(221, 214, 254, var(--tw-ring-opacity, 1));
}

.ring-offset-2 {
  --tw-ring-offset-width: 2px;
}

.ring-offset-background {
  --tw-ring-offset-color: hsl(var(--background));
}

.blur {
  --tw-blur: blur(8px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.filter {
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.backdrop-blur {
  --tw-backdrop-blur: blur(8px);
  -webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
  backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

.backdrop-blur-sm {
  --tw-backdrop-blur: blur(4px);
  -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, -webkit-text-decoration-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter, backdrop-filter;
  transition-duration: .15s;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
}

.transition-\[max-height\,opacity\] {
  transition-property: max-height, opacity;
  transition-duration: .15s;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
}

.transition-all {
  transition-property: all;
  transition-duration: .15s;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
}

.transition-colors {
  transition-property: color, background-color, border-color, -webkit-text-decoration-color, text-decoration-color, fill, stroke;
  transition-duration: .15s;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
}

.transition-opacity {
  transition-property: opacity;
  transition-duration: .15s;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
}

.transition-shadow {
  transition-property: box-shadow;
  transition-duration: .15s;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
}

.transition-transform {
  transition-property: transform;
  transition-duration: .15s;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
}

.duration-150 {
  transition-duration: .15s;
}

.duration-200 {
  transition-duration: .2s;
}

.duration-300 {
  transition-duration: .3s;
}

.duration-500 {
  transition-duration: .5s;
}

.duration-700 {
  transition-duration: .7s;
}

.duration-normal {
  transition-duration: var(--transition-normal);
}

.ease-in-out {
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
}

.ease-out {
  transition-timing-function: cubic-bezier(0, 0, .2, 1);
}

@keyframes enter {
  from {
    opacity: var(--tw-enter-opacity, 1);
    transform: translate3d(var(--tw-enter-translate-x, 0), var(--tw-enter-translate-y, 0), 0) scale3d(var(--tw-enter-scale, 1), var(--tw-enter-scale, 1), var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0));
  }
}

@keyframes exit {
  to {
    opacity: var(--tw-exit-opacity, 1);
    transform: translate3d(var(--tw-exit-translate-x, 0), var(--tw-exit-translate-y, 0), 0) scale3d(var(--tw-exit-scale, 1), var(--tw-exit-scale, 1), var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0));
  }
}

.animate-in {
  --tw-enter-opacity: initial;
  --tw-enter-scale: initial;
  --tw-enter-rotate: initial;
  --tw-enter-translate-x: initial;
  --tw-enter-translate-y: initial;
  animation-name: enter;
  animation-duration: .15s;
}

.fade-in, .fade-in-0 {
  --tw-enter-opacity: 0;
}

.zoom-in-95 {
  --tw-enter-scale: .95;
}

.slide-in-from-left-2 {
  --tw-enter-translate-x: -.5rem;
}

.slide-in-from-right-2 {
  --tw-enter-translate-x: .5rem;
}

.slide-in-from-right-5 {
  --tw-enter-translate-x: 1.25rem;
}

.duration-150 {
  animation-duration: .15s;
}

.duration-200 {
  animation-duration: .2s;
}

.duration-300 {
  animation-duration: .3s;
}

.duration-500 {
  animation-duration: .5s;
}

.duration-700 {
  animation-duration: .7s;
}

.duration-normal {
  animation-duration: var(--transition-normal);
}

.ease-in-out {
  animation-timing-function: cubic-bezier(.4, 0, .2, 1);
}

.ease-out {
  animation-timing-function: cubic-bezier(0, 0, .2, 1);
}

.paused {
  animation-play-state: paused;
}

.\[font-family\:var\(--font-display\)\] {
  font-family: var(--font-display);
}

.\[letter-spacing\:-0\.02em\] {
  letter-spacing: -.02em;
}

.\[letter-spacing\:-0\.03em\] {
  letter-spacing: -.03em;
}

.\[line-height\:1\.1\] {
  line-height: 1.1;
}

[data-theme="jardin"] button:not(.cs-mod-btn):not(.cs-lesson):not(.lp-faq-item button):not(.sv-player-btn):not(.sv-exercise-cta), [data-theme="jardin"] .sn-btn {
  border-radius: 9999px;
}

[data-theme="jardin"] .slide-type-content .slide-content, [data-theme="jardin"] .slide-type-two-column .slide-content, [data-theme="jardin"] .slide-type-code .slide-content, [data-theme="jardin"] .slide-type-key-points .slide-content, [data-theme="jardin"] .slide-type-diagram .slide-content {
  border-radius: 16px;
}

[data-theme="jardin"] .callout {
  border-radius: 12px;
}

[data-theme="jardin"] .formation-card {
  border-radius: 16px;
}

[data-theme="digicours"] button:not(.cs-mod-btn):not(.cs-lesson):not(.lp-faq-item button):not(.sv-player-btn):not(.sv-exercise-cta), [data-theme="digicours"] .sn-btn {
  border-radius: 9999px;
}

[data-theme="digicours"] .callout {
  border-radius: 12px;
}

button, [role="button"], a, input, select, textarea {
  transition-property: color, background-color, border-color, box-shadow, opacity;
  transition-duration: var(--transition-fast);
  transition-timing-function: var(--easing-out);
}

:focus-visible {
  outline: 2px solid hsl(var(--primary) / .5);
  outline-offset: 2px;
}

:focus:not(:focus-visible) {
  outline: none;
}

@keyframes lp-fade-up {
  from {
    opacity: 0;
    transform: translateY(20px);
  }

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

.lp-stagger-1 {
  opacity: 0;
  animation: lp-fade-up var(--transition-slow) var(--easing-smooth) forwards;
  animation-delay: 0s;
}

.lp-stagger-2 {
  opacity: 0;
  animation: lp-fade-up var(--transition-slow) var(--easing-smooth) forwards;
  animation-delay: .12s;
}

.lp-stagger-3 {
  opacity: 0;
  animation: lp-fade-up var(--transition-slow) var(--easing-smooth) forwards;
  animation-delay: .24s;
}

.lp-stagger-4 {
  opacity: 0;
  animation: lp-fade-up var(--transition-slow) var(--easing-smooth) forwards;
  animation-delay: .4s;
}

.lp-reveal {
  opacity: 0;
  transition: opacity var(--transition-slow) var(--easing-smooth), transform var(--transition-slow) var(--easing-smooth);
  transform: translateY(20px);
}

.lp-reveal.lp-visible {
  opacity: 1;
  transform: translateY(0);
}

.lp-card-stagger {
  opacity: 0;
  transition: opacity var(--transition-normal) var(--easing-smooth), transform var(--transition-normal) var(--easing-smooth);
  transform: translateY(16px);
}

.lp-visible .lp-card-stagger:first-child {
  transition-delay: 0s;
}

.lp-visible .lp-card-stagger:nth-child(2) {
  transition-delay: 80ms;
}

.lp-visible .lp-card-stagger:nth-child(3) {
  transition-delay: .16s;
}

.lp-visible .lp-card-stagger:nth-child(4) {
  transition-delay: .24s;
}

.lp-visible .lp-card-stagger:nth-child(5) {
  transition-delay: .32s;
}

.lp-visible .lp-card-stagger:nth-child(6) {
  transition-delay: .4s;
}

.lp-visible .lp-card-stagger {
  opacity: 1;
  transform: translateY(0);
}

.lp-content .text-muted-foreground {
  color: hsl(var(--foreground) / .65);
}

.lp-content section h2 {
  color: hsl(var(--foreground));
}

.lp-faq-item {
  transition: background-color var(--transition-fast) var(--easing-smooth);
}

.lp-faq-item:hover {
  background-color: hsl(var(--muted) / .3);
}

.lp-faq-answer {
  transition: grid-template-rows var(--transition-normal) var(--easing-smooth);
  grid-template-rows: 0fr;
  display: grid;
}

.lp-faq-open .lp-faq-answer {
  grid-template-rows: 1fr;
}

.lp-faq-answer-inner {
  overflow: hidden;
}

.lp-faq-chevron {
  transition: transform var(--transition-normal) var(--easing-smooth);
}

.lp-faq-open .lp-faq-chevron {
  transform: rotate(180deg);
}

@keyframes lp-pulse-ring {
  0% {
    box-shadow: 0 0 0 0 hsl(var(--primary) / .3);
  }

  70% {
    box-shadow: 0 0 0 8px hsl(var(--primary) / 0);
  }

  100% {
    box-shadow: 0 0 0 0 hsl(var(--primary) / 0);
  }
}

.lp-cta-pulse {
  animation: lp-pulse-ring 2s var(--easing-smooth) infinite;
}

.lp-screenshot {
  background: hsl(var(--card));
  border: 1px solid hsl(var(--border));
  border-radius: var(--radius);
  box-shadow: var(--shadow-elevated);
  overflow: hidden;
}

.lp-screenshot-sidebar {
  background: hsl(var(--sidebar-bg));
  border-right: 1px solid hsl(var(--sidebar-border));
}

.lp-screenshot-bar {
  background: hsl(var(--muted));
  border-radius: 3px;
  height: 6px;
}

.lp-screenshot-bar-accent {
  background: hsl(var(--primary) / .25);
}

.lp-screenshot-bar-primary {
  background: hsl(var(--primary));
}

.lp-screenshot-dot {
  border-radius: 50%;
  width: 6px;
  height: 6px;
}

.lp-screenshot-player {
  background: hsl(var(--muted));
  border-top: 1px solid hsl(var(--border));
}

.mf-footer {
  background: hsl(var(--sidebar-bg));
  color: hsl(var(--sidebar-text));
}

.mf-brand {
  font-family: var(--font-display);
}

.mf-desc {
  color: hsl(var(--sidebar-text-muted));
}

.mf-heading {
  color: hsl(var(--accent-light));
}

.mf-links {
  color: hsl(var(--sidebar-text-muted));
}

.mf-links a:hover, .mf-link-hover:hover {
  color: hsl(var(--sidebar-text));
}

.mf-copyright {
  border-color: hsl(var(--sidebar-border));
  color: hsl(var(--sidebar-text-muted));
  opacity: .7;
}

.cs-sidebar {
  background: hsl(var(--sidebar-bg));
  color: hsl(var(--sidebar-text));
}

.cs-header {
  border-bottom: 1px solid hsl(var(--sidebar-border));
}

.cs-title {
  color: hsl(var(--sidebar-text));
}

.cs-nav {
  scrollbar-width: thin;
  scrollbar-color: hsl(var(--sidebar-border)) transparent;
}

.cs-mod-btn {
  color: hsl(var(--sidebar-text));
}

.cs-mod-btn:hover {
  background: hsl(var(--sidebar-hover));
}

.cs-mod-num-a {
  background: hsl(var(--primary) / .2);
  color: hsl(var(--accent-light));
}

.cs-mod-num-b {
  background: hsl(var(--success) / .2);
  color: hsl(var(--success-muted));
}

.cs-chevron {
  color: hsl(var(--sidebar-text-muted));
}

.cs-check {
  color: hsl(var(--success));
}

.cs-lesson {
  color: hsl(var(--sidebar-text-muted));
}

.cs-lesson:hover {
  background: hsl(var(--sidebar-hover));
  color: hsl(var(--sidebar-text));
}

.cs-lesson-active, .cs-lesson-active:hover {
  color: hsl(var(--accent-light));
  background: hsl(var(--sidebar-active));
}

.cs-active-bar {
  background: hsl(var(--primary));
}

.cs-dot {
  background: hsl(var(--sidebar-text-muted));
}

.cs-dot-active {
  background: hsl(var(--accent-light));
}

.cs-dot-progress {
  background: hsl(var(--info));
  animation: 2s ease-in-out infinite cs-dot-pulse;
}

.cs-dot-progress.cs-dot-active {
  background: hsl(var(--accent-light));
}

.cs-mobile-trigger {
  z-index: 40;
  background: hsl(var(--primary));
  width: 3rem;
  height: 3rem;
  color: hsl(var(--primary-foreground));
  box-shadow: var(--shadow-elevated);
  transition: transform var(--transition-fast) ease, box-shadow var(--transition-fast) ease;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  display: flex;
  position: fixed;
  bottom: 1rem;
  left: 1rem;
}

.cs-mobile-trigger:hover {
  box-shadow: var(--shadow-dropdown);
  transform: scale(1.05);
}

.cs-mobile-trigger:active {
  transform: scale(.95);
}

.cs-mobile-sheet .cs-sidebar {
  width: 100%;
}

.cs-qcm-badge {
  background: hsl(var(--primary)) !important;
  color: hsl(var(--primary-foreground)) !important;
  border: none !important;
}

.cs-qcm-badge-disabled {
  opacity: .5;
  background: hsl(var(--sidebar-hover)) !important;
  color: hsl(var(--sidebar-text-muted)) !important;
  border: none !important;
}

.cs-qcm-badge-passed {
  background: hsl(var(--success) / .2) !important;
  color: hsl(var(--success)) !important;
  border: 1px solid hsl(var(--success) / .3) !important;
}

.cs-qcm-badge-failed {
  background: hsl(var(--destructive) / .15) !important;
  color: hsl(var(--destructive)) !important;
  border: 1px solid hsl(var(--destructive) / .3) !important;
}

.cs-mod-progress {
  background: hsl(var(--sidebar-border));
  border-radius: 1px;
  height: 2px;
  margin: 0 .75rem;
  overflow: hidden;
}

.cs-mod-progress-fill {
  background: hsl(var(--primary));
  border-radius: inherit;
  height: 100%;
  transition: width var(--transition-normal) var(--easing-smooth);
}

.cs-mod-progress-complete {
  background: hsl(var(--success));
}

.cs-mod-content {
  transition: max-height var(--transition-normal) var(--easing-smooth), opacity var(--transition-normal) var(--easing-smooth);
  overflow: hidden;
}

.cs-mod-content[data-collapsed="true"] {
  opacity: 0;
  max-height: 0;
}

.cs-mod-content[data-collapsed="false"] {
  opacity: 1;
}

@keyframes cs-dot-pulse {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
  }

  50% {
    opacity: .6;
    transform: scale(1.4);
  }
}

.cs-dot-empty {
  color: hsl(var(--sidebar-text-muted) / .3);
}

@keyframes cs-check-appear {
  0% {
    opacity: 0;
    transform: scale(0);
  }

  60% {
    opacity: 1;
    transform: scale(1.2);
  }

  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.cs-check-new {
  animation: cs-check-appear .3s var(--easing-spring) both;
}

.sn-bar {
  border-top: 1px solid hsl(var(--border));
  background: hsl(var(--background));
}

.sn-btn {
  font-family: var(--font-body);
  cursor: pointer;
  border-radius: 6px;
  align-items: center;
  gap: .3rem;
  padding: .45rem .9rem;
  font-size: .875rem;
  font-weight: 500;
  transition: all .2s;
  display: inline-flex;
}

.sn-btn:disabled {
  opacity: .35;
  cursor: not-allowed;
}

.sn-btn-outline {
  border: 1.5px solid hsl(var(--border));
  background: hsl(var(--card));
  color: hsl(var(--muted-foreground));
}

.sn-btn-outline:hover:not(:disabled) {
  border-color: hsl(var(--primary));
  color: hsl(var(--primary));
}

.sn-btn-primary {
  background: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
  border: 1.5px solid hsl(var(--primary));
}

.sn-btn-primary:hover:not(:disabled) {
  filter: brightness(.9);
}

.sn-counter {
  color: hsl(var(--muted-foreground));
  background: hsl(var(--background));
  border: 1px solid hsl(var(--border));
  border-radius: 5px;
  padding: .25rem .6rem;
  font-weight: 500;
}

.sn-counter-current {
  color: hsl(var(--primary));
  font-weight: 600;
}

@media (max-width: 767px) {
  .sn-bar {
    padding: .5rem 1rem;
  }

  .sn-btn {
    min-width: 48px;
    min-height: 48px;
    padding: .5rem .75rem;
    font-size: .8125rem;
  }

  .sn-counter {
    font-size: .8125rem;
  }
}

.cp-lesson-progress {
  z-index: 10;
  background: hsl(var(--muted));
  flex-shrink: 0;
  height: 3px;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
}

.cp-lesson-progress-fill {
  background: hsl(var(--primary));
  height: 100%;
  transition: width var(--transition-normal) var(--easing-smooth);
  border-radius: 0 1.5px 1.5px 0;
}

.sv-scroll {
  scrollbar-width: thin;
  scrollbar-color: hsl(var(--border)) transparent;
  background: hsl(var(--background-reading));
}

.sv-title-hero {
  font-family: var(--font-display);
  letter-spacing: -.03em;
  margin-bottom: 1rem;
  font-weight: 800;
  line-height: 1.12;
}

.sv-title-default {
  font-family: var(--font-display);
  letter-spacing: -.02em;
  margin-bottom: 1.25rem;
  font-size: 1.5rem;
  font-weight: 600;
}

@keyframes slideContentIn {
  from {
    opacity: 0;
    transform: translateY(8px);
  }

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

.slide-wrapper {
  animation: slideContentIn var(--slide-transition-duration) var(--easing-smooth);
}

@media (min-width: 1600px) {
  .sv-scroll > .slide-wrapper {
    margin-left: max(2rem, min(4%, 5rem));
    margin-right: auto;
  }
}

.slide-type-content .slide-content, .slide-type-two-column .slide-content, .slide-type-code .slide-content, .slide-type-key-points .slide-content, .slide-type-diagram .slide-content {
  background: linear-gradient(160deg, hsl(var(--slide-reading-bg, var(--card))) 0%, hsl(var(--primary) / .018) 50%, hsl(var(--accent) / .012) 100%);
  border: 1px solid hsl(var(--border));
  box-shadow: 0 1px 20px hsl(var(--foreground) / .04), 0 0 0 1px hsl(var(--primary) / .03);
  border-radius: 14px;
  padding: max(2.5rem, min(5vw, 4rem)) max(2rem, min(4vw, 3rem));
}

.slide-title {
  font-family: var(--font-display);
  letter-spacing: -.025em;
  border-bottom: 3px solid hsl(var(--primary) / .2);
  padding-bottom: .5rem;
  font-size: max(1.6rem, min(3.2vw, 2.2rem));
  font-weight: 700;
  display: inline-block;
}

.slide-content {
  font-family: var(--font-body);
  color: hsl(var(--foreground) / .87);
  font-size: max(1.125rem, min(2vw, 1.3125rem));
  line-height: 1.65;
}

.slide-content > :first-child {
  margin-top: 0;
}

.slide-content > :last-child {
  margin-bottom: 0;
}

@media (min-width: 768px) {
  .slide-type-content .sv-content-block-inner > p, .slide-type-content .sv-content-block-inner > ul, .slide-type-content .sv-content-block-inner > ol, .slide-type-content .sv-content-block-inner > blockquote {
    max-width: 720px;
    margin-left: auto;
    margin-right: auto;
  }

  .slide-type-content .sv-content-block-inner > h1, .slide-type-content .sv-content-block-inner > h2, .slide-type-content .sv-content-block-inner > h3, .slide-type-content .sv-content-block-inner > h4, .slide-type-content .sv-content-block-inner > .callout {
    max-width: 840px;
    margin-left: auto;
    margin-right: auto;
  }

  .slide-type-content .sv-content-block-inner > pre {
    max-width: 880px;
    margin-left: auto;
    margin-right: auto;
  }

  .slide-type-content .sv-content-block-inner > table {
    max-width: 920px;
    margin-left: auto;
    margin-right: auto;
  }

  .slide-type-content .sv-content-block-inner > .slide-columns {
    max-width: 100%;
  }

  .slide-type-content .sv-content-block-inner > .interactive-block {
    max-width: 920px;
    margin-left: auto;
    margin-right: auto;
  }
}

.slide-content p + p {
  margin-top: 1.5em;
}

.slide-content h1 {
  font-family: var(--font-display);
  letter-spacing: -.025em;
  color: hsl(var(--foreground));
  border-bottom: 3px solid hsl(var(--primary) / .25);
  margin-top: 1.5rem;
  margin-bottom: 1rem;
  padding-bottom: .75rem;
  font-size: max(1.8rem, min(3.6vw, 2.6rem));
  font-weight: 700;
  line-height: 1.15;
  display: inline-block;
}

.slide-content h2 {
  font-family: var(--font-display);
  letter-spacing: -.015em;
  color: hsl(var(--primary));
  margin-top: 2.5em;
  margin-bottom: .75em;
  font-size: max(1.35rem, min(2.6vw, 1.8rem));
  font-weight: 600;
  line-height: 1.25;
}

.slide-content h3 {
  font-family: var(--font-body);
  color: hsl(var(--foreground) / .8);
  margin-top: 2em;
  margin-bottom: .5em;
  font-size: max(1.15rem, min(2vw, 1.3rem));
  font-weight: 600;
}

.slide-content h4 {
  font-family: var(--font-display);
  color: hsl(var(--foreground));
  margin-top: 1rem;
  margin-bottom: .4rem;
  font-size: 1.1rem;
  font-weight: 600;
}

.slide-content p {
  color: hsl(var(--muted-foreground));
  margin: 0 0 1.25em;
  font-weight: 400;
}

.slide-content strong {
  color: hsl(var(--foreground));
  background: linear-gradient(to top, hsl(var(--primary) / .08) 0%, hsl(var(--primary) / .08) 35%, transparent 35%);
  border-radius: 2px;
  padding: 0 2px;
  font-weight: 700;
}

.slide-content em {
  font-style: italic;
}

.slide-content small, .slide-content .caption, .slide-content figcaption {
  color: hsl(var(--foreground) / .6);
  font-size: .875rem;
  line-height: 1.5;
}

.slide-content figcaption {
  text-align: center;
  margin-top: .5em;
}

.slide-content img {
  box-shadow: var(--shadow-elevated);
  border-radius: 10px;
  max-width: 100%;
  margin: 1.5rem auto;
  display: block;
}

.slide-content a {
  color: hsl(var(--primary));
  text-underline-offset: 3px;
  text-decoration: underline;
  -webkit-text-decoration-color: hsl(var(--primary) / .3);
  text-decoration-color: hsl(var(--primary) / .3);
  transition: -webkit-text-decoration-color .15s, text-decoration-color .15s;
}

.slide-content a:hover {
  -webkit-text-decoration-color: hsl(var(--primary));
  text-decoration-color: hsl(var(--primary));
}

.slide-content ul, .slide-content ol {
  margin: 0 0 1.25em;
  padding: 0;
  list-style: none;
}

.slide-content ul > li, .slide-content ol > li {
  color: hsl(var(--muted-foreground));
  padding: .3rem 0 .3rem 1.3rem;
  font-size: max(1rem, min(1.6vw, 1.0625rem));
  font-weight: 400;
  line-height: 1.7;
  position: relative;
}

.slide-content ul > li:before {
  content: "";
  background: hsl(var(--accent-light));
  border-radius: 50%;
  width: 6px;
  height: 6px;
  position: absolute;
  top: .7rem;
  left: 0;
}

.slide-content ol {
  counter-reset: ol;
}

.slide-content ol > li {
  counter-increment: ol;
  padding-left: 2.4rem;
}

.slide-content ol > li:before {
  content: counter(ol);
  background: hsl(var(--primary) / .1);
  width: 1.6rem;
  height: 1.6rem;
  color: hsl(var(--primary));
  font-family: var(--font-display);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  font-size: .8em;
  font-weight: 700;
  line-height: 1;
  display: flex;
  position: absolute;
  top: .2rem;
  left: 0;
}

.slide-content li strong {
  color: hsl(var(--foreground));
  font-weight: 600;
}

.slide-content li > p {
  margin: 0;
}

.slide-content pre:not(.mermaid) {
  background: hsl(var(--code-bg));
  color: hsl(var(--code-text));
  border: 1px solid hsl(var(--code-border));
  border-radius: 12px;
  margin: 1.5rem 0;
  padding: 2.2rem 1.5rem 1.25rem;
  font-size: .8125rem;
  line-height: 1.75;
  position: relative;
  overflow-x: auto;
}

.slide-content pre:not(.mermaid):before {
  content: "";
  background: rgba(214, 92, 92, .6);
  border-radius: 50%;
  width: 10px;
  height: 10px;
  position: absolute;
  top: .7rem;
  left: 1rem;
  box-shadow: 16px 0 rgba(209, 175, 71, .6), 32px 0 rgba(64, 191, 106, .6);
}

.slide-content pre:not(.mermaid) code {
  color: inherit;
  font-size: inherit;
  background: none;
  border-radius: 0;
  padding: 0;
}

.slide-content :not(pre) > code {
  background: hsl(var(--muted));
  border-radius: 4px;
  padding: .2em .4em;
  font-family: ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, monospace;
  font-size: .875em;
  font-weight: 500;
}

.slide-content table {
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid hsl(var(--border));
  border-radius: 10px;
  width: 100%;
  margin: 2em 0;
  font-size: max(.82rem, min(1.2vw, .95rem));
  overflow: hidden;
}

.slide-content thead th {
  background: hsl(var(--primary) / .1);
  color: hsl(var(--primary));
  font-family: var(--font-display);
  text-align: left;
  border-bottom: 2px solid hsl(var(--primary) / .2);
  text-transform: uppercase;
  letter-spacing: .03em;
  padding: .7rem 1rem;
  font-size: .85em;
  font-weight: 700;
}

.slide-content tbody td {
  border-bottom: 1px solid hsl(var(--border) / .5);
  color: hsl(var(--muted-foreground));
  padding: .6rem 1rem;
  font-weight: 400;
  transition: background-color .2s;
}

.slide-content tbody tr:nth-child(2n) td {
  background: hsl(var(--muted) / .15);
}

.slide-content tbody tr:last-child td {
  border-bottom: none;
}

.slide-content tbody tr:hover td {
  background: hsl(var(--primary) / .05);
}

.slide-content blockquote {
  border-left: 3px solid hsl(var(--primary));
  color: hsl(var(--muted-foreground));
  background: hsl(var(--muted) / .3);
  border-radius: 0 8px 8px 0;
  margin: 1rem 0;
  padding: .5rem 1rem;
  font-style: italic;
}

.slide-content blockquote > :first-child {
  margin-top: 0;
}

.slide-content blockquote > :last-child {
  margin-bottom: 0;
}

.callout {
  box-shadow: 0 2px 8px hsl(var(--foreground) / .03);
  border-left: 4px solid;
  border-radius: 12px;
  margin: 2em 0;
  padding: 1.25rem 1.5rem;
  font-size: max(.82rem, min(1.2vw, .95rem));
  line-height: 1.65;
  transition: transform .2s, box-shadow .2s;
}

.callout:hover {
  box-shadow: 0 4px 12px hsl(var(--foreground) / .06);
  transform: translateY(-1px);
}

.callout-header {
  align-items: center;
  gap: .5rem;
  margin-bottom: .4rem;
  display: flex;
}

.callout-icon {
  flex-shrink: 0;
  align-items: center;
  font-size: 1.1em;
  display: flex;
}

.callout-title {
  font-family: var(--font-display);
  text-transform: uppercase;
  letter-spacing: .07em;
  font-size: .75rem;
  font-weight: 700;
}

.callout-body {
  font-size: max(.82rem, min(1.2vw, .95rem));
  font-weight: 300;
  line-height: 1.65;
}

.callout-body > :first-child {
  margin-top: 0;
}

.callout-body > :last-child {
  margin-bottom: 0;
}

.callout-body p {
  color: inherit;
}

.callout-info {
  background-color: hsl(var(--callout-info-bg));
  border-color: hsl(var(--callout-info-border));
  color: hsl(var(--callout-info-text));
}

.callout-warning {
  background-color: hsl(var(--callout-warning-bg));
  border-color: hsl(var(--callout-warning-border));
  color: hsl(var(--callout-warning-text));
}

.callout-tip {
  background-color: hsl(var(--callout-tip-bg));
  border-color: hsl(var(--callout-tip-border));
  color: hsl(var(--callout-tip-text));
}

.callout-example {
  background-color: hsl(var(--callout-example-bg));
  border-color: hsl(var(--callout-example-border));
  color: hsl(var(--callout-example-text));
}

.callout-example strong {
  color: hsl(var(--callout-example-text));
}

.callout-objective {
  background-color: hsl(var(--callout-objective-bg));
  border-color: hsl(var(--callout-objective-border));
  color: hsl(var(--callout-objective-text));
}

.callout-next {
  background-color: hsl(var(--callout-next-bg));
  border-color: hsl(var(--callout-next-border));
  color: hsl(var(--callout-next-text));
}

.callout-remember {
  background-color: hsl(var(--callout-remember-bg));
  border-color: hsl(var(--callout-remember-border));
  color: hsl(var(--callout-remember-text));
}

.callout-terrain {
  background-color: hsl(var(--callout-terrain-bg));
  border-color: hsl(var(--callout-terrain-border));
  color: hsl(var(--callout-terrain-text));
}

.callout-error-common {
  background-color: hsl(var(--callout-error-common-bg));
  border-color: hsl(var(--callout-error-common-border));
  color: hsl(var(--callout-error-common-text));
}

@media (min-width: 1440px) {
  .slide-wrapper.slide-type-content:has(:-webkit-any(.callout-tip, .callout-remember, .callout-terrain, .callout-error-common)) {
    max-width: 1280px;
  }

  .slide-wrapper.slide-type-content:has(:-moz-any(.callout-tip, .callout-remember, .callout-terrain, .callout-error-common)) {
    max-width: 1280px;
  }

  .slide-wrapper.slide-type-content:has(:is(.callout-tip, .callout-remember, .callout-terrain, .callout-error-common)) {
    max-width: 1280px;
  }

  .slide-type-content .slide-content:has(:-webkit-any(.callout-tip, .callout-remember, .callout-terrain, .callout-error-common)) {
    grid-template-columns: 1fr max(200px, min(22%, 260px));
    gap: 0 2rem;
    display: grid;
  }

  .slide-type-content .slide-content:has(:-moz-any(.callout-tip, .callout-remember, .callout-terrain, .callout-error-common)) {
    grid-template-columns: 1fr max(200px, min(22%, 260px));
    gap: 0 2rem;
    display: grid;
  }

  .slide-type-content .slide-content:has(:is(.callout-tip, .callout-remember, .callout-terrain, .callout-error-common)) {
    grid-template-columns: 1fr max(200px, min(22%, 260px));
    gap: 0 2rem;
    display: grid;
  }

  .slide-type-content .slide-content:has(:-webkit-any(.callout-tip, .callout-remember, .callout-terrain, .callout-error-common)) > .sv-content-block {
    grid-column: 1;
  }

  .slide-type-content .slide-content:has(:-moz-any(.callout-tip, .callout-remember, .callout-terrain, .callout-error-common)) > .sv-content-block {
    grid-column: 1;
  }

  .slide-type-content .slide-content:has(:is(.callout-tip, .callout-remember, .callout-terrain, .callout-error-common)) > .sv-content-block {
    grid-column: 1;
  }

  .slide-type-content .sv-content-block:has( > .sv-content-block-inner > :-webkit-any(.callout-tip, .callout-remember, .callout-terrain, .callout-error-common)) {
    grid-area: 1 / 2 / span 99;
    align-self: start;
  }

  .slide-type-content .sv-content-block:has( > .sv-content-block-inner > :-moz-any(.callout-tip, .callout-remember, .callout-terrain, .callout-error-common)) {
    grid-area: 1 / 2 / span 99;
    align-self: start;
  }

  .slide-type-content .sv-content-block:has( > .sv-content-block-inner > :is(.callout-tip, .callout-remember, .callout-terrain, .callout-error-common)) {
    grid-area: 1 / 2 / span 99;
    align-self: start;
  }

  .slide-type-content .sv-content-block:has( > .sv-content-block-inner > :-webkit-any(.callout-tip, .callout-remember, .callout-terrain, .callout-error-common)) .callout {
    max-width: none;
    margin: 0;
    font-size: .82rem;
  }

  .slide-type-content .sv-content-block:has( > .sv-content-block-inner > :-moz-any(.callout-tip, .callout-remember, .callout-terrain, .callout-error-common)) .callout {
    max-width: none;
    margin: 0;
    font-size: .82rem;
  }

  .slide-type-content .sv-content-block:has( > .sv-content-block-inner > :is(.callout-tip, .callout-remember, .callout-terrain, .callout-error-common)) .callout {
    max-width: none;
    margin: 0;
    font-size: .82rem;
  }
}

.slide-columns {
  grid-template-columns: 1fr 1fr;
  gap: max(.8rem, min(2vw, 1.5rem));
  margin: .6rem 0;
  display: grid;
}

.slide-columns .slide-col {
  background: hsl(var(--background));
  border: 1px solid hsl(var(--border));
  border-radius: 10px;
  padding: max(.8rem, min(2vw, 1.2rem));
  transition: border-color .3s, transform .3s;
}

.slide-columns .slide-col:hover {
  border-color: hsl(var(--accent-light));
  transform: translateY(-2px);
}

.slide-columns .slide-col > :first-child {
  margin-top: 0;
}

.slide-columns .slide-col > :last-child {
  margin-bottom: 0;
}

@media (max-width: 768px) {
  .slide-columns {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
}

pre.mermaid {
  text-align: center;
  color: hsl(var(--foreground));
  padding: 1.5rem 0;
  overflow: visible;
  background: none !important;
  border: none !important;
}

pre.mermaid svg {
  max-width: 100%;
  height: auto;
}

.sv-audio-btn {
  background: hsl(var(--primary) / .1);
  color: hsl(var(--primary));
  border: 1px solid hsl(var(--primary) / .2);
}

.sv-audio-btn:hover {
  background: hsl(var(--primary) / .2);
}

@keyframes sv-slide-exit-left {
  0% {
    opacity: 1;
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    transform: translateX(-16px);
  }
}

@keyframes sv-slide-exit-right {
  0% {
    opacity: 1;
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    transform: translateX(16px);
  }
}

@keyframes sv-slide-enter-from-right {
  0% {
    opacity: 0;
    transform: translateX(16px);
  }

  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes sv-slide-enter-from-left {
  0% {
    opacity: 0;
    transform: translateX(-16px);
  }

  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes sv-slide-enter {
  0% {
    opacity: 0;
    transform: translateY(12px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes sv-slide-enter-exercise {
  0% {
    opacity: 0;
    transform: translateY(20px)scale(.98);
  }

  50% {
    opacity: 1;
    transform: translateY(-2px)scale(1.005);
  }

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

.sv-slide-exit-left {
  animation: sv-slide-exit-left calc(var(--slide-transition-duration) * .5) var(--easing-out) forwards;
  pointer-events: none;
}

.sv-slide-exit-right {
  animation: sv-slide-exit-right calc(var(--slide-transition-duration) * .5) var(--easing-out) forwards;
  pointer-events: none;
}

.sv-slide-enter-forward {
  animation: sv-slide-enter-from-right var(--slide-transition-duration) var(--easing-smooth) forwards;
}

.sv-slide-enter-backward {
  animation: sv-slide-enter-from-left var(--slide-transition-duration) var(--easing-smooth) forwards;
}

.sv-slide-enter {
  animation: sv-slide-enter .4s var(--easing-smooth) forwards;
}

.sv-slide-enter-exercise {
  animation: sv-slide-enter-exercise .6s var(--easing-smooth) forwards;
}

@keyframes sv-block-in {
  0% {
    opacity: 0;
    transform: translateY(10px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes sv-notion-pulse {
  0% {
    transform: scale(1);
  }

  30% {
    transform: scale(1.12);
  }

  60% {
    transform: scale(1.12);
  }

  100% {
    transform: scale(1);
  }
}

@keyframes sv-row-in {
  0% {
    opacity: .35;
    transform: scale(1);
  }

  35% {
    opacity: 1;
    transform: scale(1.025);
  }

  60% {
    opacity: 1;
    transform: scale(1.025);
  }

  100% {
    opacity: 1;
    transform: scale(1.01);
  }
}

@keyframes sv-block-fade-in {
  0% {
    opacity: 0;
    transform: translateY(10px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.slide-content:not(.sv-guided) > .sv-content-block {
  animation: sv-block-fade-in .45s var(--easing-smooth) both;
}

.slide-content:not(.sv-guided) > .sv-content-block:first-child {
  animation-delay: 40ms;
}

.slide-content:not(.sv-guided) > .sv-content-block:nth-child(2) {
  animation-delay: .1s;
}

.slide-content:not(.sv-guided) > .sv-content-block:nth-child(3) {
  animation-delay: .16s;
}

.slide-content:not(.sv-guided) > .sv-content-block:nth-child(4) {
  animation-delay: .22s;
}

.slide-content:not(.sv-guided) > .sv-content-block:nth-child(5) {
  animation-delay: .28s;
}

.slide-content:not(.sv-guided) > .sv-content-block:nth-child(6) {
  animation-delay: .34s;
}

.slide-content:not(.sv-guided) > .sv-content-block:nth-child(7) {
  animation-delay: .4s;
}

.slide-content:not(.sv-guided) > .sv-content-block:nth-child(8) {
  animation-delay: .46s;
}

.slide-content:not(.sv-guided) > .sv-content-block:nth-child(n+9) {
  animation-delay: .5s;
}

@media (prefers-reduced-motion: reduce) {
  .slide-content:not(.sv-guided) > .sv-content-block {
    animation: none;
  }
}

.sv-guided > [data-sv-guided-block] {
  opacity: 0;
  pointer-events: none;
}

.sv-guided > [data-sv-guided-block].sv-block-revealed {
  animation: sv-block-in .5s var(--easing-smooth) forwards;
  pointer-events: auto;
}

.sv-guided > [data-sv-guided-block].sv-block-active {
  animation: sv-block-in .5s var(--easing-smooth) forwards;
  pointer-events: auto;
  border-left: 3px solid hsl(var(--primary));
  background-color: hsl(var(--primary) / .035);
  box-shadow: 0 0 0 1px hsl(var(--primary) / .1), 0 0 20px hsl(var(--primary) / .06), 0 8px 24px hsl(var(--primary) / .06);
  transition: background-color var(--transition-normal) ease, box-shadow var(--transition-normal) ease, border-color var(--transition-normal) ease, padding var(--transition-fast) ease;
  border-radius: 12px;
  padding: .75rem 1rem .75rem calc(1rem + 3px);
}

.slide-content table tbody tr {
  transform-origin: 0;
  transition: opacity .4s cubic-bezier(.16, 1, .3, 1), transform .4s cubic-bezier(.16, 1, .3, 1);
}

.slide-content table tbody tr td {
  border-left: 3px solid rgba(0, 0, 0, 0);
  transition: background-color .35s, border-color .35s;
}

.slide-content table thead {
  transition: opacity .4s;
}

.slide-content table.sv-sub-scope thead {
  opacity: .45;
}

.slide-content table.sv-sub-scope tbody tr.sv-sub-future {
  opacity: .25;
  transform: scale(.97);
}

.slide-content table.sv-sub-scope tbody tr.sv-sub-past {
  opacity: .5;
  transform: scale(1);
}

.slide-content table.sv-sub-scope tbody tr.sv-sub-active {
  animation: .5s cubic-bezier(.16, 1, .3, 1) forwards sv-row-in;
}

.slide-content table.sv-sub-scope tbody tr.sv-sub-active td {
  background-color: hsl(var(--primary) / .07);
}

.slide-content table.sv-sub-scope tbody tr.sv-sub-active td:first-child {
  border-left-color: hsl(var(--primary));
}

.slide-content .slide-col, .slide-content .slide-col .callout {
  transition: opacity .4s cubic-bezier(.16, 1, .3, 1), transform .4s cubic-bezier(.16, 1, .3, 1);
}

.slide-content .slide-col.sv-sub-future {
  opacity: .2;
  transform: scale(.97);
}

.slide-content .slide-col.sv-sub-past {
  opacity: .45;
}

.slide-content .slide-col.sv-sub-active {
  animation: .5s cubic-bezier(.16, 1, .3, 1) forwards sv-row-in;
}

.slide-content .callout.sv-sub-future {
  opacity: .2;
}

.slide-content .callout.sv-sub-past {
  opacity: .45;
}

.slide-content .callout.sv-sub-active {
  animation: .5s cubic-bezier(.16, 1, .3, 1) forwards sv-row-in;
}

.sv-notion {
  transform-origin: bottom;
  display: inline-block;
}

.sv-notion.sv-notion-active {
  color: hsl(var(--primary));
  animation: .55s cubic-bezier(.16, 1, .3, 1) sv-notion-pulse;
}

.sv-player-bar {
  background: hsl(var(--card) / .8);
  -webkit-backdrop-filter: blur(12px);
  border-top: 1px solid hsl(var(--border));
  flex-shrink: 0;
  padding: .4rem 1rem .5rem;
}

.sv-player {
  background: hsl(var(--muted) / .45);
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  border-radius: 10px;
  align-items: center;
  gap: .5rem;
  padding: .45rem .85rem;
  display: flex;
}

.sv-player-btn {
  width: 32px;
  height: 32px;
  color: hsl(var(--foreground));
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  transition: background .15s, color .15s;
  display: flex;
}

.sv-player-btn:hover {
  background: hsl(var(--primary) / .1);
  color: hsl(var(--primary));
}

.sv-player-btn-play {
  background: hsl(var(--primary));
  width: 36px;
  height: 36px;
  color: hsl(var(--primary-foreground));
}

.sv-player-btn-play:hover {
  background: hsl(var(--primary) / .85);
  color: hsl(var(--primary-foreground));
}

.sv-player-time {
  font-variant-numeric: tabular-nums;
  color: hsl(var(--muted-foreground));
  text-align: center;
  flex-shrink: 0;
  min-width: 3rem;
  font-size: .7rem;
}

.sv-player-track {
  background: hsl(var(--border));
  cursor: pointer;
  border-radius: 3px;
  flex: 1;
  height: 6px;
  position: relative;
  overflow: hidden;
}

.sv-player-track:hover {
  height: 8px;
}

.sv-player-fill {
  background: hsl(var(--primary));
  border-radius: inherit;
  height: 100%;
  transition: width .1s linear;
}

.sv-player-volume {
  align-items: center;
  gap: .25rem;
  display: flex;
}

.sv-player-volume-slider {
  opacity: 0;
  width: 0;
  accent-color: hsl(var(--primary));
  cursor: pointer;
  height: 4px;
  transition: width .2s, opacity .2s;
}

.sv-player-volume:hover .sv-player-volume-slider, .sv-player-volume-slider:focus {
  opacity: 1;
  width: 60px;
}

.sv-player-btn-cc-active {
  background: hsl(var(--primary) / .15);
  color: hsl(var(--primary));
}

.sv-subtitle-bar {
  background: hsl(var(--foreground) / .92);
  border-top: 1px solid hsl(var(--border));
  flex-shrink: 0;
  justify-content: center;
  padding: .5rem 1rem;
  display: flex;
}

.sv-subtitle-text {
  text-align: center;
  max-width: 720px;
  max-height: 5em;
  padding: 0;
  font-size: .8125rem;
  line-height: 1.6;
  overflow-y: auto;
}

.sv-kw {
  transition: color .12s;
}

.sv-kw-spoken {
  color: hsl(var(--background));
}

.sv-kw-active {
  color: hsl(var(--background));
  text-decoration: underline;
  -webkit-text-decoration-color: hsl(var(--primary));
  text-decoration-color: hsl(var(--primary));
  text-underline-offset: 3px;
  font-weight: 600;
  text-decoration-thickness: 2px;
}

.sv-kw-upcoming {
  color: hsl(var(--background) / .3);
}

@media (max-width: 767px) {
  .sv-subtitle-compact {
    padding: .25rem .5rem;
  }

  .sv-subtitle-compact .sv-subtitle-text {
    max-height: 3em;
    font-size: .6875rem;
    line-height: 1.4;
  }
}

.sv-audio-error {
  border-radius: var(--radius);
  background: hsl(var(--warning-muted));
  border: 1px solid hsl(var(--warning-border));
  color: hsl(var(--warning-foreground));
  align-items: center;
  gap: .5rem;
  margin-top: .75rem;
  padding: .5rem .75rem;
  font-size: .8125rem;
  display: flex;
}

@media (max-width: 767px) {
  .sv-player {
    flex-wrap: wrap;
    gap: .35rem;
    padding: .5rem;
  }

  .sv-player-btn, .sv-player-btn-play {
    width: 48px;
    height: 48px;
  }

  .sv-player-track {
    flex-basis: 100%;
    order: 10;
    height: 8px;
    margin-top: .25rem;
  }

  .sv-player-time {
    min-width: 2.5rem;
    font-size: .65rem;
  }

  .sv-player-volume-slider {
    opacity: 1 !important;
    width: 40px !important;
  }

  .slide-content {
    font-size: 1rem;
    line-height: 1.65;
  }
}

.interactive-block {
  background: hsl(var(--accent) / .03);
  border: 1px solid hsl(var(--accent) / .15);
  border-radius: 12px;
  margin: 2.5em 0;
  padding: 1.5rem;
  position: relative;
}

.interactive-block:before {
  content: "Exercice";
  background: hsl(var(--slide-reading-bg, var(--card)));
  color: hsl(var(--accent));
  text-transform: uppercase;
  letter-spacing: .05em;
  padding: 0 .5em;
  font-size: .75rem;
  font-weight: 600;
  position: absolute;
  top: -.75em;
  left: 1em;
}

.interactive-block[data-result="correct"] {
  background: hsl(var(--success) / .05);
  border-color: hsl(var(--success) / .3);
  transition: background .3s, border-color .3s;
}

.interactive-block[data-result="incorrect"] {
  background: hsl(var(--warning) / .05);
  border-color: hsl(var(--warning) / .3);
  transition: background .3s, border-color .3s;
}

@media (max-width: 767px) {
  .interactive-block button, .interactive-block [role="button"] {
    min-width: 48px;
    min-height: 48px;
  }
}

.sv-exercise-gate {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 1.5rem 2rem;
  animation: .6s cubic-bezier(.16, 1, .3, 1) forwards sv-gate-in;
  display: flex;
}

@keyframes sv-gate-in {
  0% {
    opacity: 0;
    transform: scale(.95);
  }

  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.sv-exercise-gate-check {
  background: hsl(var(--success) / .1);
  width: 64px;
  height: 64px;
  color: hsl(var(--success));
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  margin-bottom: 1.25rem;
  animation: .5s cubic-bezier(.16, 1, .3, 1) .2s both sv-check-pop;
  display: flex;
}

@keyframes sv-check-pop {
  0% {
    opacity: 0;
    transform: scale(0);
  }

  60% {
    transform: scale(1.15);
  }

  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.sv-exercise-gate-title {
  font-family: var(--font-display);
  color: hsl(var(--foreground));
  margin-bottom: .5rem;
  font-size: max(1.3rem, min(2.5vw, 1.7rem));
  font-weight: 600;
  animation: .5s cubic-bezier(.16, 1, .3, 1) .3s both sv-gate-text;
}

.sv-exercise-gate-text {
  color: hsl(var(--muted-foreground));
  max-width: 400px;
  margin-bottom: 2rem;
  font-size: max(.9rem, min(1.4vw, 1rem));
  line-height: 1.6;
  animation: .5s cubic-bezier(.16, 1, .3, 1) .4s both sv-gate-text;
}

@keyframes sv-gate-text {
  0% {
    opacity: 0;
    transform: translateY(8px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.sv-exercise-cta {
  background: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
  cursor: pointer;
  border: none;
  border-radius: 9999px;
  align-items: center;
  gap: .5rem;
  padding: .75rem 1.75rem;
  font-size: .95rem;
  font-weight: 600;
  transition: transform .2s, box-shadow .2s;
  animation: 2s ease-in-out 1s infinite sv-cta-pulse, .5s cubic-bezier(.16, 1, .3, 1) .5s both sv-gate-text;
  display: inline-flex;
}

.sv-exercise-cta:hover {
  box-shadow: 0 4px 20px hsl(var(--primary) / .3);
  transform: scale(1.05);
}

@keyframes sv-cta-pulse {
  0%, 100% {
    box-shadow: 0 0 0 0 hsl(var(--primary) / .3);
  }

  50% {
    box-shadow: 0 0 0 8px hsl(var(--primary) / 0);
  }
}

.sv-exercise-banner {
  border-bottom: 2px solid hsl(var(--primary) / .15);
  align-items: center;
  gap: .5rem;
  margin-bottom: 1rem;
  padding-bottom: .75rem;
  animation: .4s cubic-bezier(.16, 1, .3, 1) both sv-gate-text;
  display: flex;
}

.sv-exercise-banner-icon {
  font-size: 1.3rem;
  line-height: 1;
}

.sv-exercise-banner-text {
  color: hsl(var(--primary));
  letter-spacing: .02em;
  font-size: max(.9rem, min(1.3vw, 1.05rem));
  font-weight: 600;
}

.sv-inline-exercise-badge {
  background: hsl(var(--accent) / .08);
  color: hsl(var(--accent));
  letter-spacing: .02em;
  border-radius: 9999px;
  align-items: center;
  gap: .35rem;
  margin-bottom: .75rem;
  padding: .25rem .65rem;
  font-size: .75rem;
  font-weight: 600;
  animation: .4s cubic-bezier(.16, 1, .3, 1) both sv-gate-text;
  display: inline-flex;
}

.sv-exercise-content {
  background: linear-gradient(145deg, hsl(var(--primary) / .03) 0%, transparent 50%);
  border: 1px solid hsl(var(--primary) / .1);
  border-radius: 16px;
  padding: 1.5rem;
  animation: .5s cubic-bezier(.16, 1, .3, 1) both sv-slide-enter;
}

.sv-exercise-content .interactive-block {
  background: none;
  border: none;
  border-radius: 0;
  margin: 0;
  padding: 0;
}

.sv-exercise-content .interactive-block:before, .sv-exercise-hidden {
  display: none;
}

.lottie-player {
  width: 100%;
  max-width: 600px;
  margin: 1.5rem auto;
}

.lottie-player svg {
  width: 100% !important;
  height: auto !important;
}

.slide-type-title .slide-title {
  font-family: var(--font-display);
  letter-spacing: -.02em;
  text-align: left;
  font-size: max(1.5rem, min(3.5vw, 2.25rem));
  font-weight: 800;
  line-height: 1.2;
}

.slide-type-title .slide-title:after {
  content: "";
  background: hsl(var(--primary));
  border-radius: 2px;
  width: 48px;
  height: 3px;
  margin: .8rem 0 0;
  display: block;
}

.slide-type-title .slide-content {
  text-align: left;
  color: hsl(var(--muted-foreground));
  max-width: 100%;
  box-shadow: none;
  background: none;
  border: none;
  border-radius: 0;
  margin: 0;
  padding: 0;
  font-size: max(.9rem, min(1.3vw, 1.05rem));
  font-weight: 400;
}

.slide-type-title .slide-content img[src*="/illustrations/"] {
  float: right;
  opacity: .12;
  pointer-events: none;
  max-width: 120px;
  height: auto;
  margin: 0 0 1rem 1.5rem;
}

.slide-type-title .slide-content p {
  color: hsl(var(--muted-foreground));
  text-align: left;
  font-size: max(.9rem, min(1.3vw, 1.05rem));
  font-weight: 400;
  line-height: 1.7;
}

.slide-type-code .slide-content pre:not(.mermaid) {
  padding: 1.5rem 2rem;
  font-size: .875rem;
}

.slide-type-key-points .slide-content ol {
  counter-reset: key-point;
  flex-direction: column;
  gap: max(.4rem, min(1vw, .7rem));
  padding: 0;
  list-style: none;
  display: flex;
}

.slide-type-key-points .slide-content ol > li {
  counter-increment: key-point;
  background: hsl(var(--background));
  border: 1px solid hsl(var(--border));
  border-radius: 10px;
  gap: .7rem;
  padding: max(.6rem, min(1.5vw, .9rem));
  transition: all .3s cubic-bezier(.16, 1, .3, 1);
  animation: .5s cubic-bezier(.16, 1, .3, 1) both keyPointIn;
  display: flex;
}

.slide-type-key-points .slide-content ol > li:first-child {
  animation-delay: 50ms;
}

.slide-type-key-points .slide-content ol > li:nth-child(2) {
  animation-delay: .1s;
}

.slide-type-key-points .slide-content ol > li:nth-child(3) {
  animation-delay: .15s;
}

.slide-type-key-points .slide-content ol > li:nth-child(4) {
  animation-delay: .2s;
}

.slide-type-key-points .slide-content ol > li:nth-child(5) {
  animation-delay: .25s;
}

.slide-type-key-points .slide-content ol > li:nth-child(6) {
  animation-delay: .3s;
}

@keyframes keyPointIn {
  from {
    opacity: 0;
    transform: translateX(-12px);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}

.slide-type-key-points .slide-content ol > li:hover {
  border-color: hsl(var(--accent-light));
  transform: translateX(3px);
}

.slide-type-key-points .slide-content ol > li:before {
  content: counter(key-point);
  width: 26px;
  min-width: 26px;
  height: 26px;
  font-family: var(--font-display);
  background: hsl(var(--primary) / .1);
  color: hsl(var(--primary));
  border-radius: 7px;
  justify-content: center;
  align-items: center;
  font-size: .72rem;
  font-weight: 800;
  display: flex;
  position: static;
}

.slide-type-diagram .slide-content {
  flex-direction: column;
  align-items: center;
  display: flex;
}

.slide-type-diagram pre.mermaid {
  width: 100%;
  padding: 2rem 0;
}

.slide-type-image .slide-content img {
  width: auto;
  max-height: 60vh;
  box-shadow: 0 4px 20px hsl(var(--foreground) / .1);
  margin: 0 auto;
}

.slide-type-title {
  position: relative;
  overflow: hidden;
}

.slide-type-title:before {
  content: "";
  background: radial-gradient(ellipse 80% 60% at 50% 40%, hsl(var(--primary) / .04) 0%, transparent 70%);
  pointer-events: none;
  z-index: 0;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.slide-type-title:after {
  content: "";
  background: linear-gradient(90deg, transparent 0%, hsl(var(--primary) / .15) 30%, hsl(var(--primary) / .15) 70%, transparent 100%);
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 10%;
  right: 10%;
}

.slide-type-content .slide-content {
  border-top: 2px solid hsl(var(--primary) / .12);
}

.slide-type-key-points .slide-content {
  background: linear-gradient(135deg, hsl(var(--slide-reading-bg, var(--card))) 0%, hsl(var(--primary) / .02) 100%);
}

.slide-type-two-column .slide-content, .slide-type-two-column .slide-columns {
  position: relative;
}

.slide-type-two-column .slide-columns:before {
  content: "";
  background: linear-gradient(180deg, transparent 0%, hsl(var(--border)) 15%, hsl(var(--border)) 85%, transparent 100%);
  pointer-events: none;
  width: 1px;
  position: absolute;
  top: 5%;
  bottom: 5%;
  left: 50%;
}

.slide-type-code .slide-content {
  border-top: 2px solid hsl(var(--accent) / .2);
  position: relative;
}

.slide-type-code .slide-content:before {
  content: "</>";
  color: hsl(var(--accent) / .25);
  letter-spacing: .05em;
  pointer-events: none;
  font-family: monospace;
  font-size: .65rem;
  font-weight: 700;
  position: absolute;
  top: .75rem;
  right: 1rem;
}

.slide-type-diagram .slide-content {
  border-top: 2px solid hsl(var(--accent) / .15);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Cpath d='M0 40L40 40M40 0L40 40' fill='none' stroke='%23000' stroke-width='0.3' opacity='0.04'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: repeat;
}

.dark .slide-type-diagram .slide-content {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Cpath d='M0 40L40 40M40 0L40 40' fill='none' stroke='%23fff' stroke-width='0.3' opacity='0.04'/%3E%3C/svg%3E");
}

.slide-type-image .slide-content {
  box-shadow: none;
  background: none;
  border: none;
  padding: 1rem;
}

.slide-type-content .slide-content, .slide-type-key-points .slide-content, .slide-type-diagram .slide-content, .slide-type-title .slide-content {
  position: relative;
}

.slide-type-title .slide-content:before {
  content: "";
  opacity: .06;
  background-color: hsl(var(--primary));
  width: 96px;
  height: 96px;
  margin: 0 auto 1rem;
  display: none;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z'/%3E%3Cpath d='M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z'/%3E%3Cpath d='M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z'/%3E%3C/svg%3E");
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

[data-theme="atelier"] .slide-wrapper:not(.slide-type-diagram) {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24'%3E%3Ccircle cx='12' cy='12' r='0.8' fill='%23000' opacity='0.025'/%3E%3C/svg%3E");
  background-repeat: repeat;
}

.dark[data-theme="atelier"] .slide-wrapper:not(.slide-type-diagram) {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24'%3E%3Ccircle cx='12' cy='12' r='0.8' fill='%23fff' opacity='0.025'/%3E%3C/svg%3E");
}

[data-theme="jardin"] .slide-wrapper:not(.slide-type-diagram) {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60'%3E%3Cpath d='M30 0 Q45 30 30 60' fill='none' stroke='%23000' stroke-width='0.3' opacity='0.025'/%3E%3C/svg%3E");
  background-repeat: repeat;
}

.dark[data-theme="jardin"] .slide-wrapper:not(.slide-type-diagram) {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60'%3E%3Cpath d='M30 0 Q45 30 30 60' fill='none' stroke='%23fff' stroke-width='0.3' opacity='0.025'/%3E%3C/svg%3E");
}

[data-theme="digicours"] .slide-wrapper:not(.slide-type-diagram) {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Ccircle cx='10' cy='10' r='0.5' fill='%23000' opacity='0.03'/%3E%3C/svg%3E");
  background-repeat: repeat;
}

.dark[data-theme="digicours"] .slide-wrapper:not(.slide-type-diagram) {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Ccircle cx='10' cy='10' r='0.5' fill='%23fff' opacity='0.03'/%3E%3C/svg%3E");
}

.slide-content img {
  pointer-events: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -webkit-user-drag: none;
}

.protected-diagram {
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  border-radius: 12px;
  width: 100%;
  max-width: 620px;
  margin: 1.5rem auto;
  position: relative;
  overflow: hidden;
}

.protected-diagram:after {
  content: "";
  z-index: 1;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.slide-content svg.slide-diagram {
  max-width: 100%;
  height: auto;
  color: hsl(var(--foreground));
  border-radius: 12px;
  margin: 1.5rem auto;
  display: block;
}

.slide-content svg.slide-diagram text {
  font-family: var(--font-body), system-ui, sans-serif;
}

.slide-content p > strong, .slide-content li > strong {
  background: linear-gradient(120deg, hsl(var(--primary) / .08) 0%, hsl(var(--primary) / .12) 100%);
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  border-radius: 3px;
  padding: .05em .3em;
}

.slide-content hr {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 24' width='200' height='24'%3E%3Ccircle cx='94' cy='12' r='2' fill='%23000' opacity='0.15'/%3E%3Ccircle cx='100' cy='12' r='2' fill='%23000' opacity='0.15'/%3E%3Ccircle cx='106' cy='12' r='2' fill='%23000' opacity='0.15'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 200px 24px;
  border: none;
  height: 24px;
  margin: 2rem 0;
}

.dark .slide-content hr {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 24' width='200' height='24'%3E%3Ccircle cx='94' cy='12' r='2' fill='%23fff' opacity='0.15'/%3E%3Ccircle cx='100' cy='12' r='2' fill='%23fff' opacity='0.15'/%3E%3Ccircle cx='106' cy='12' r='2' fill='%23fff' opacity='0.15'/%3E%3C/svg%3E");
}

.slide-content blockquote {
  color: hsl(var(--primary));
  background: hsl(var(--primary) / .03);
  border-left: none;
  border-radius: 8px;
  margin: 2rem 0;
  padding: 1.5rem 2rem 1.5rem 3rem;
  font-size: 1.1em;
  font-style: italic;
  position: relative;
}

.slide-content blockquote:before {
  content: "“";
  font-family: var(--font-display);
  color: hsl(var(--primary) / .15);
  font-size: 3.5rem;
  font-weight: 800;
  line-height: 1;
  position: absolute;
  top: .2rem;
  left: .5rem;
}

.slide-content h2 {
  padding-top: .5rem;
  position: relative;
}

.slide-content h2:before {
  content: "";
  background: hsl(var(--primary) / .3);
  border-radius: 1px;
  width: 32px;
  height: 2px;
  position: absolute;
  top: 0;
  left: 0;
}

.sv-audio-indicator {
  align-items: flex-end;
  gap: 2px;
  height: 16px;
  padding: 0 4px;
  display: flex;
}

.sv-audio-indicator .sv-bar {
  background: hsl(var(--primary));
  border-radius: 1.5px;
  width: 3px;
  transition: height .1s;
}

.sv-audio-indicator.sv-playing .sv-bar {
  animation: .8s ease-in-out infinite alternate svEqualizer;
}

.sv-audio-indicator.sv-playing .sv-bar:first-child {
  animation-delay: 0s;
}

.sv-audio-indicator.sv-playing .sv-bar:nth-child(2) {
  animation-delay: .15s;
}

.sv-audio-indicator.sv-playing .sv-bar:nth-child(3) {
  animation-delay: .3s;
}

@keyframes svEqualizer {
  0% {
    height: 4px;
  }

  50% {
    height: 14px;
  }

  100% {
    height: 6px;
  }
}

.sv-audio-indicator.sv-paused .sv-bar {
  height: 4px;
}

.sv-player-track {
  overflow: visible;
}

.sv-player-fill {
  background: linear-gradient(90deg, hsl(var(--primary)) 0%, hsl(var(--accent)) 100%);
  position: relative;
}

.sv-player-fill:after {
  content: "";
  background: hsl(var(--primary));
  width: 12px;
  height: 12px;
  box-shadow: 0 0 8px hsl(var(--primary) / .3);
  opacity: 0;
  border-radius: 50%;
  transition: opacity .2s;
  position: absolute;
  top: 50%;
  right: -6px;
  transform: translateY(-50%);
}

.sv-player-track:hover .sv-player-fill:after {
  opacity: 1;
}

.sv-player-btn {
  transition: background .15s, color .15s, transform .15s cubic-bezier(.16, 1, .3, 1);
}

.sv-player-btn:active {
  transform: scale(.9);
}

@media (prefers-reduced-motion: reduce) {
  .sv-audio-indicator.sv-playing .sv-bar {
    height: 10px;
    animation: none;
  }
}

.slide-content ul.contains-task-list {
  padding-left: 0;
  list-style: none;
}

.slide-content .task-list-item {
  align-items: flex-start;
  gap: .5rem;
  display: flex;
}

.slide-content .task-list-item input[type="checkbox"] {
  accent-color: hsl(var(--primary));
  margin-top: .35rem;
}

.admin-table-row {
  transition: background-color var(--transition-fast) ease;
}

.admin-table-row:hover {
  background-color: hsl(var(--muted) / .5);
}

.formation-card {
  transition: box-shadow var(--transition-fast) ease, transform var(--transition-fast) ease;
}

.formation-card:hover {
  box-shadow: var(--shadow-elevated);
  transform: translateY(-2px);
}

.cs-lesson {
  transition: background var(--transition-fast) ease, color var(--transition-fast) ease;
}

.iq-container button:focus-visible {
  outline: 2px solid hsl(var(--ring));
  outline-offset: 2px;
  border-radius: 6px;
}

.itf-container button:focus-visible {
  outline: 2px solid hsl(var(--ring));
  outline-offset: 2px;
  border-radius: 6px;
}

.io-container [draggable]:focus-visible {
  outline: 2px solid hsl(var(--ring));
  outline-offset: 2px;
  border-radius: 6px;
}

.is-container button:focus-visible {
  outline: 2px solid hsl(var(--ring));
  outline-offset: 2px;
  border-radius: 6px;
}

.im-container button:focus-visible {
  outline: 2px solid hsl(var(--ring));
  outline-offset: 2px;
  border-radius: 6px;
}

.if-container button:focus-visible {
  outline: 2px solid hsl(var(--ring));
  outline-offset: 2px;
  border-radius: 6px;
}

input[type="radio"]:focus-visible {
  outline: 2px solid hsl(var(--ring));
  outline-offset: 2px;
  box-shadow: 0 0 0 3px hsl(var(--ring) / .15);
}

input[type="checkbox"]:focus-visible {
  outline: 2px solid hsl(var(--ring));
  outline-offset: 2px;
  box-shadow: 0 0 0 3px hsl(var(--ring) / .15);
}

@keyframes shake {
  0%, 100% {
    transform: translateX(0);
  }

  25% {
    transform: translateX(-4px);
  }

  75% {
    transform: translateX(4px);
  }
}

@keyframes success-pulse {
  0% {
    box-shadow: 0 0 0 0 hsl(var(--success) / .4);
  }

  100% {
    box-shadow: 0 0 0 8px hsl(var(--success) / 0);
  }
}

@keyframes score-bounce {
  0% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.15);
  }

  100% {
    transform: scale(1);
  }
}

.animate-shake {
  animation: .4s ease-in-out shake;
}

.animate-success-pulse {
  animation: .6s ease-out success-pulse;
}

.animate-score-bounce {
  animation: .4s ease-in-out score-bounce;
}

@keyframes celebration-check {
  0% {
    opacity: 0;
    transform: scale(0);
  }

  50% {
    opacity: 1;
    transform: scale(1.3);
  }

  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.animate-celebration-check {
  animation: celebration-check .5s var(--easing-spring);
}

@keyframes mc-modal-in {
  0% {
    opacity: 0;
    transform: scale(.9)translateY(20px);
  }

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

@keyframes mc-stagger-in {
  0% {
    opacity: 0;
    transform: translateY(12px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.mc-modal-enter {
  animation: mc-modal-in var(--transition-slow) var(--easing-spring);
}

.mc-stagger-item {
  opacity: 0;
  animation: mc-stagger-in var(--transition-normal) var(--easing-smooth) forwards;
}

@keyframes qcm-badge-stagger {
  0% {
    opacity: 0;
    transform: scale(.7)translateY(8px);
  }

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

.qcm-badge-stagger {
  opacity: 0;
  animation: qcm-badge-stagger .4s var(--easing-spring) forwards;
}

@keyframes qcm-question-enter {
  0% {
    opacity: 0;
    transform: translateX(12px);
  }

  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

.qcm-question-enter {
  animation: qcm-question-enter .3s var(--easing-smooth);
}

@keyframes qcm-result-enter {
  0% {
    opacity: 0;
    transform: scale(.95)translateY(10px);
  }

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

.qcm-result-enter {
  animation: qcm-result-enter .5s var(--easing-smooth);
}

@keyframes flame-flicker {
  0%, 100% {
    transform: scaleY(1)scaleX(1);
  }

  25% {
    transform: scaleY(1.1)scaleX(.95);
  }

  50% {
    transform: scaleY(.95)scaleX(1.05);
  }

  75% {
    transform: scaleY(1.05)scaleX(.98);
  }
}

.animate-flame {
  transform-origin: bottom;
  animation: 1.5s ease-in-out infinite flame-flicker;
}

@keyframes sn-arrow-bounce {
  0%, 100% {
    transform: translateX(0);
  }

  50% {
    transform: translateX(4px);
  }
}

.sn-teasing-arrow {
  animation: 1.2s ease-in-out infinite sn-arrow-bounce;
  display: inline-block;
}

.stat-card-hover {
  transition: box-shadow var(--transition-fast) ease, transform var(--transition-fast) ease;
}

.stat-card-hover:hover {
  box-shadow: var(--shadow-elevated);
  transform: translateY(-2px);
}

@keyframes stat-icon-bounce {
  0% {
    transform: scale(1);
  }

  40% {
    transform: scale(1.25);
  }

  60% {
    transform: scale(.95);
  }

  80% {
    transform: scale(1.05);
  }

  100% {
    transform: scale(1);
  }
}

.animate-stat-icon-bounce {
  animation: stat-icon-bounce .5s var(--easing-spring) forwards;
}

.heatmap-cell {
  transition: transform var(--transition-fast) ease, opacity var(--transition-fast) ease;
  border-radius: 2px;
}

.heatmap-cell:hover {
  opacity: .85;
  transform: scale(1.3);
}

.heatmap-level-0 {
  background-color: hsl(var(--neutral-muted));
}

.heatmap-level-1 {
  background-color: hsl(var(--primary) / .2);
}

.heatmap-level-2 {
  background-color: hsl(var(--primary) / .4);
}

.heatmap-level-3 {
  background-color: hsl(var(--primary) / .6);
}

.heatmap-level-4 {
  background-color: hsl(var(--primary));
}

.heatmap-today {
  box-shadow: 0 0 0 1.5px hsl(var(--foreground) / .5);
}

.learner-avatar {
  background-color: hsl(var(--primary) / .1);
  width: 32px;
  height: 32px;
  color: hsl(var(--primary));
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  font-size: .75rem;
  font-weight: 600;
  display: flex;
}

.status-dot {
  border-radius: 50%;
  flex-shrink: 0;
  width: 8px;
  height: 8px;
}

.status-dot-active {
  background-color: hsl(var(--success));
}

.status-dot-inactive {
  background-color: hsl(var(--warning));
}

.status-dot-never {
  background-color: hsl(var(--neutral));
}

.sparkline-card {
  transition: box-shadow var(--transition-fast) ease;
}

.sparkline-card:hover {
  box-shadow: var(--shadow-elevated);
}

@media (max-width: 767px) {
  .slide-content {
    max-width: 100%;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    font-size: 1.0625rem;
  }

  .slide-content h1 {
    font-size: 1.5rem;
  }

  .slide-content h2 {
    font-size: 1.25rem;
  }

  .slide-content h3 {
    font-size: 1.125rem;
  }

  .slide-columns {
    grid-template-columns: 1fr;
  }

  .sv-exercise-gate {
    min-height: 30vh;
    padding: 2rem 1rem;
  }

  .slide-type-title .slide-title {
    font-size: max(1.25rem, min(4vw, 1.75rem));
  }

  .slide-type-title .slide-content img[src*="/illustrations/"] {
    float: none;
    max-width: 80px;
    margin: .5rem 0;
    display: block;
  }

  .slide-type-content .slide-content, .slide-type-two-column .slide-content, .slide-type-code .slide-content, .slide-type-key-points .slide-content, .slide-type-diagram .slide-content {
    border-radius: 10px;
    padding: 1.25rem 1rem;
  }

  .slide-content pre:not(.mermaid) {
    padding: 2rem 1rem 1rem;
    font-size: .75rem;
  }

  .slide-content table {
    -webkit-overflow-scrolling: touch;
    font-size: .8rem;
    display: block;
    overflow-x: auto;
  }

  .slide-type-image .slide-content img {
    max-height: 40vh;
  }

  .cs-sidebar-sheet .cs-sidebar {
    width: 100%;
    height: 100%;
  }
}

@keyframes dashboard-fade-up {
  from {
    opacity: 0;
    transform: translateY(12px);
  }

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

.animate-fade-up {
  animation: .4s ease-out both dashboard-fade-up;
  animation-delay: var(--stagger-delay, 0s);
}

@keyframes tab-fade-in {
  from {
    opacity: 0;
    transform: translateY(4px);
  }

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

.animate-tab-in {
  animation: tab-fade-in .2s var(--easing-smooth) both;
}

.admin-space .progress-bar-fill {
  transition: width .6s var(--easing-smooth);
}

@keyframes empty-state-float {
  0%, 100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-4px);
  }
}

.empty-state-icon {
  animation: 3s ease-in-out infinite empty-state-float;
}

@keyframes download-success-pop {
  0% {
    opacity: 0;
    transform: scale(.8);
  }

  50% {
    transform: scale(1.1);
  }

  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.download-feedback-icon {
  animation: download-success-pop .2s var(--easing-smooth) both;
}

.admin-sidebar {
  background-color: hsl(var(--sidebar-bg));
  border-right: 1px solid hsl(var(--sidebar-border));
}

.admin-sidebar-brand {
  color: hsl(var(--sidebar-text));
}

.admin-sidebar-section {
  color: hsl(var(--sidebar-text-muted));
  opacity: .55;
  letter-spacing: .08em;
}

.admin-sidebar-item {
  color: hsl(var(--sidebar-text-muted));
  position: relative;
}

.admin-sidebar-item:hover {
  background-color: hsl(var(--sidebar-hover));
  color: hsl(var(--sidebar-text));
}

.admin-sidebar-item.active {
  background-color: hsl(var(--sidebar-active));
  color: hsl(var(--sidebar-active-text, var(--sidebar-text)));
  font-weight: 600;
}

.admin-sidebar-item.active:before {
  content: "";
  background-color: hsl(var(--primary));
  border-radius: 0 2px 2px 0;
  width: 3px;
  position: absolute;
  top: 4px;
  bottom: 4px;
  left: 0;
}

.admin-sidebar-search {
  background-color: hsl(var(--sidebar-hover));
  border: 1px solid hsl(var(--sidebar-border));
  color: hsl(var(--sidebar-text-muted));
  cursor: pointer;
  transition: border-color .15s;
}

.admin-sidebar-search:hover {
  border-color: hsl(var(--sidebar-text-muted) / .3);
}

.admin-sidebar-profile {
  border-top: 1px solid hsl(var(--sidebar-border));
}

.admin-sidebar-avatar {
  background-color: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
}

.admin-sidebar-profile-name {
  color: hsl(var(--sidebar-text));
}

.admin-sidebar-profile-email, .admin-sidebar-logout {
  color: hsl(var(--sidebar-text-muted));
}

.admin-sidebar-logout:hover {
  background-color: hsl(var(--sidebar-hover));
  color: hsl(var(--sidebar-text));
}

.admin-sidebar-billing-warning, .admin-header-billing-badge {
  border: 1px solid hsl(var(--warning-border));
  background-color: hsl(var(--warning-muted));
  color: hsl(var(--warning-foreground));
}

.admin-sidebar .text-muted-foreground {
  color: hsl(var(--sidebar-text-muted));
}

.admin-sidebar .text-foreground, .admin-sidebar .text-primary {
  color: hsl(var(--sidebar-text));
}

.admin-sidebar .border-border {
  border-color: hsl(var(--sidebar-border));
}

.admin-sidebar .bg-muted {
  background-color: hsl(var(--sidebar-hover));
}

.admin-sidebar .bg-primary {
  background-color: hsl(var(--sidebar-text));
}

.admin-sidebar .bg-card\/50, .admin-sidebar .hover\:bg-muted\/50:hover, .admin-sidebar .hover\:bg-muted\/80:hover {
  background-color: hsl(var(--sidebar-hover));
}

.admin-sidebar .group-hover\:text-foreground {
  color: hsl(var(--sidebar-text));
}

.admin-sidebar .group-hover\:text-primary\/60 {
  color: hsl(var(--sidebar-text) / .6);
}

.sa-sidebar {
  background-color: #0a0a0a;
  border-right: 1px solid rgba(255, 255, 255, .06);
}

.sa-sidebar-brand {
  color: #e4e4e7;
}

.sa-sidebar-section {
  color: #52525b;
  opacity: .8;
}

.sa-sidebar-item {
  color: #71717a;
}

.sa-sidebar-item:hover {
  color: #d4d4d8;
  background-color: rgba(255, 255, 255, .04);
}

.sa-sidebar-item.active {
  color: #fca5a5;
  background-color: rgba(239, 68, 68, .1);
}

.superadmin-space table thead tr {
  background-color: rgba(24, 24, 27, .5);
}

.superadmin-space table tbody tr {
  transition: background-color .15s;
}

.superadmin-space table tbody tr:hover {
  background-color: rgba(24, 24, 27, .3);
}

@media (min-width: 2560px) {
  .superadmin-space {
    zoom: 1.25;
  }
}

@media (min-width: 3840px) {
  .superadmin-space {
    zoom: 1.5;
  }
}

@media (min-width: 2560px) {
  .admin-space {
    zoom: 1.25;
  }
}

@media (min-width: 3840px) {
  .admin-space {
    zoom: 1.5;
  }
}

.admin-space [data-slot="card"], .admin-space .rounded-lg.border.bg-card, .admin-space .rounded-xl.border.bg-card {
  box-shadow: var(--shadow-card);
  border-color: hsl(var(--border) / .6);
  border-radius: .75rem;
}

.admin-space table thead tr {
  background-color: hsl(var(--muted) / .5);
}

.admin-space table thead th {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: hsl(var(--muted-foreground));
  z-index: 1;
  background-color: hsl(var(--muted) / .97);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  border-bottom: 1px solid hsl(var(--border));
  height: 2.5rem;
  padding: .5rem .75rem;
  font-size: .6875rem;
  font-weight: 600;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
}

.admin-space table tbody td {
  color: hsl(var(--muted-foreground));
  padding: .375rem .75rem;
  font-size: .8125rem;
}

.admin-space table tbody td:first-child {
  color: hsl(var(--foreground));
  font-weight: 500;
}

.admin-space table tbody tr {
  height: 2.75rem;
  transition: background-color .12s;
}

.admin-space table tbody tr:nth-child(2n) {
  background-color: hsl(var(--muted) / .15);
}

.admin-space table tbody tr:hover {
  background-color: hsl(var(--primary) / .04);
}

.admin-space [data-slot="card-header"] {
  padding: 1rem 1.25rem .5rem;
}

.admin-space [data-slot="card-content"] {
  padding: 0 1.25rem 1rem;
}

.admin-space [data-slot="card-title"] {
  letter-spacing: .01em;
  font-size: .8125rem;
  font-weight: 600;
}

.admin-space [data-slot="badge"] {
  letter-spacing: .015em;
  border-radius: 4px;
  padding: 1px 7px;
  font-size: .6875rem;
  font-weight: 500;
}

.admin-space .overflow-x-auto.rounded-lg.border, .admin-space .overflow-x-auto.rounded-md.border {
  border-color: hsl(var(--border) / .5);
}

.admin-space .kpi-value {
  letter-spacing: -.025em;
  color: hsl(var(--foreground));
  font-size: 1.875rem;
  font-weight: 600;
  line-height: 1.1;
}

.admin-space h1 {
  letter-spacing: -.015em;
  color: hsl(var(--foreground));
  font-size: 1.875rem;
  font-weight: 700;
}

.admin-space .space-y-6 > * + * {
  margin-top: 1.25rem;
}

.admin-space .space-y-4 > * + * {
  margin-top: .875rem;
}

.admin-space .gap-4 {
  gap: .875rem;
}

.admin-space .accent-card {
  border-left: 3px solid hsl(var(--primary));
}

.admin-space .badge-accent {
  background-color: hsl(var(--primary) / .12);
  color: hsl(var(--primary));
  font-weight: 600;
}

.admin-space .action-primary {
  background-color: hsl(var(--foreground));
  color: hsl(var(--card));
  border-color: hsl(var(--foreground));
  border-radius: .5rem;
  font-weight: 500;
}

.admin-space .action-primary:hover {
  background-color: hsl(var(--foreground) / .85);
  box-shadow: 0 2px 8px hsl(var(--foreground) / .15);
}

.admin-space .hover-card-lift {
  transition: box-shadow .15s, transform .15s, border-color .15s;
}

.admin-space .hover-card-lift:hover {
  box-shadow: var(--shadow-elevated);
  border-color: hsl(var(--primary) / .2);
  transform: translateY(-1px);
}

.admin-space button:focus-visible {
  outline: 2px solid hsl(var(--primary) / .5);
  outline-offset: 2px;
}

.admin-space a:focus-visible {
  outline: 2px solid hsl(var(--primary) / .5);
  outline-offset: 2px;
}

.admin-space input:focus-visible {
  outline: 2px solid hsl(var(--primary) / .5);
  outline-offset: 2px;
}

.module-thumb {
  aspect-ratio: 16 / 9;
  border-radius: var(--radius);
  position: relative;
  overflow: hidden;
}

.module-thumb-0 {
  background: linear-gradient(135deg, hsl(var(--primary)) 0%, hsl(var(--accent)) 100%);
}

.module-thumb-1 {
  background: linear-gradient(135deg, hsl(var(--accent)) 0%, hsl(var(--primary)) 100%);
}

.module-thumb-2 {
  background: linear-gradient(135deg, hsl(var(--primary) / .8) 0%, hsl(var(--primary)) 100%);
}

.module-thumb-3 {
  background: linear-gradient(135deg, hsl(var(--accent) / .7) 0%, hsl(var(--accent)) 100%);
}

.module-thumb-icon {
  color: #fff;
  opacity: .15;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.module-thumb-title {
  color: #fff;
  background: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, .5));
  padding: .75rem 1rem;
  font-size: .875rem;
  font-weight: 700;
  line-height: 1.25;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

.module-thumb-progress {
  background: #fff;
  border-radius: 0 2px 0 0;
  height: 3px;
  transition: width .3s;
  position: absolute;
  bottom: 0;
  left: 0;
}

.cs-mod-competency-stripe {
  opacity: .5;
  width: 3px;
  transition: opacity var(--transition-fast) ease;
  border-radius: 0 2px 2px 0;
  position: absolute;
  top: 15%;
  bottom: 15%;
  left: 0;
}

.cs-mod-btn:hover .cs-mod-competency-stripe {
  opacity: .8;
}

.cs-lesson-slide-count {
  color: hsl(var(--sidebar-text-muted));
  opacity: .7;
  text-align: center;
  flex-shrink: 0;
  min-width: 1.25rem;
  font-size: .6rem;
}

.cs-remaining-badge {
  background: hsl(var(--warning) / .2);
  min-width: 18px;
  height: 18px;
  color: hsl(var(--warning));
  border-radius: 9px;
  justify-content: center;
  align-items: center;
  padding: 0 4px;
  font-size: .6rem;
  font-weight: 700;
  line-height: 1;
  display: inline-flex;
}

.cs-lesson-time {
  color: hsl(var(--sidebar-text-muted));
  opacity: .6;
  white-space: nowrap;
  font-size: .6rem;
}

.cs-lesson-progress {
  background: hsl(var(--sidebar-border));
  vertical-align: middle;
  border-radius: 1px;
  width: 30px;
  height: 2px;
  display: inline-block;
  overflow: hidden;
}

.cs-lesson-progress-fill {
  background: hsl(var(--primary));
  border-radius: inherit;
  height: 100%;
  transition: width var(--transition-normal) var(--easing-smooth);
  display: block;
}

.cs-drawer-summary {
  color: hsl(var(--sidebar-text-muted));
  background: hsl(var(--sidebar-bg));
  border-bottom: 1px solid hsl(var(--sidebar-border));
  text-align: center;
  letter-spacing: .01em;
  padding: .5rem 1rem;
  font-size: .7rem;
  font-weight: 600;
}

.cs-mod-btn {
  position: relative;
}

.cs-dot-progress {
  transition: background var(--transition-fast) ease, box-shadow var(--transition-fast) ease;
}

.cs-lesson:hover .cs-dot-progress {
  box-shadow: 0 0 0 2px hsl(var(--sidebar-hover));
}

.cs-lesson:hover .cs-dot-empty {
  color: hsl(var(--sidebar-text));
  transition: color var(--transition-fast) ease;
}

.cs-competency-badge {
  transition: transform var(--transition-fast) ease, box-shadow var(--transition-fast) ease;
}

.cs-competency-badge:hover {
  box-shadow: 0 1px 3px hsl(var(--foreground) / .1);
  transform: translateY(-1px);
}

.exercise-dragging {
  z-index: 50;
  opacity: .95;
  transition: box-shadow .15s, transform .15s !important;
  transform: scale(1.02) !important;
  box-shadow: 0 8px 25px rgba(0, 0, 0, .15) !important;
}

.exercise-drop-active {
  animation: 1.2s ease-in-out infinite exercise-drop-pulse;
  border-style: dashed !important;
  border-color: hsl(var(--primary) / .5) !important;
  background: hsl(var(--primary) / .04) !important;
}

@keyframes exercise-drop-pulse {
  0%, 100% {
    border-color: hsl(var(--primary) / .3);
  }

  50% {
    border-color: hsl(var(--primary) / .6);
  }
}

@keyframes exercise-flash-correct {
  0% {
    background-color: hsl(var(--success) / .2);
    transform: scale(1);
  }

  30% {
    background-color: hsl(var(--success) / .15);
    transform: scale(1.01);
  }

  100% {
    background-color: rgba(0, 0, 0, 0);
    transform: scale(1);
  }
}

.exercise-correct {
  animation: .5s ease-out exercise-flash-correct;
  border-color: hsl(var(--success) / .4) !important;
}

@keyframes exercise-shake-wrong {
  0%, 100% {
    transform: translateX(0);
  }

  15% {
    transform: translateX(-4px);
  }

  30% {
    transform: translateX(4px);
  }

  45% {
    transform: translateX(-3px);
  }

  60% {
    transform: translateX(3px);
  }

  75% {
    transform: translateX(-1px);
  }

  90% {
    transform: translateX(1px);
  }
}

.exercise-incorrect {
  animation: .4s ease-in-out exercise-shake-wrong;
  border-color: hsl(var(--destructive) / .4) !important;
}

.iq-container button, .itf-container button, .is-container button {
  transition: background-color .2s, border-color .2s, transform .15s;
}

.iq-container button:not(:disabled):hover, .itf-container button:not(:disabled):hover, .is-container button:not(:disabled):hover {
  transform: translateY(-1px);
}

.iq-container button:not(:disabled):active, .itf-container button:not(:disabled):active, .is-container button:not(:disabled):active {
  transform: translateY(0)scale(.99);
}

.io-container [draggable="true"], .ip-container [draggable="true"] {
  cursor: grab;
  transition: box-shadow .15s, transform .15s, background-color .2s;
}

.io-container [draggable="true"]:active, .ip-container [draggable="true"]:active {
  cursor: grabbing;
}

.im-container button {
  transition: background-color .2s, border-color .2s, box-shadow .15s, transform .15s;
}

.im-container button:not(:disabled):hover {
  box-shadow: 0 2px 8px hsl(var(--foreground) / .08);
  transform: translateY(-1px);
}

.ifi-container [draggable="true"] {
  cursor: grab;
  transition: box-shadow .15s, transform .15s, background-color .2s;
}

.ifi-container [draggable="true"]:active {
  cursor: grabbing;
}

.ifi-container .exercise-drop-active {
  min-width: 3rem;
}

@keyframes exercise-btn-success {
  0% {
    transform: scale(1);
  }

  40% {
    transform: scale(1.05);
  }

  100% {
    transform: scale(1);
  }
}

.exercise-btn-success {
  animation: .3s ease-out exercise-btn-success;
}

@media (prefers-reduced-motion: reduce) {
  .exercise-dragging {
    transform: none !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, .1) !important;
  }

  .exercise-drop-active {
    animation: none;
  }

  .exercise-correct {
    background-color: hsl(var(--success) / .08);
    animation: none;
    border-color: hsl(var(--success) / .4) !important;
  }

  .exercise-incorrect {
    background-color: hsl(var(--destructive) / .08);
    animation: none;
    border-color: hsl(var(--destructive) / .4) !important;
  }

  .exercise-btn-success {
    animation: none;
  }

  .iq-container button:not(:disabled):hover, .itf-container button:not(:disabled):hover, .is-container button:not(:disabled):hover, .im-container button:not(:disabled):hover {
    transform: none;
  }

  .exercise-drop-active {
    border-style: dashed !important;
    border-color: hsl(var(--primary) / .5) !important;
    background: hsl(var(--primary) / .04) !important;
  }

  .cs-competency-badge:hover {
    transform: none;
  }
}

.slide-content .checklist-block li {
  margin-bottom: .75em;
  padding-left: 1.75em;
  font-weight: 500;
  list-style: none;
  position: relative;
}

.slide-content .checklist-block li:before {
  content: "✓";
  color: hsl(var(--success));
  font-size: 1.1em;
  font-weight: 700;
  position: absolute;
  left: 0;
}

.slide-content .checklist-block ul {
  padding-left: 0;
}

.sv-root[class*="rncp-"] {
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='20' cy='20' r='1.2' fill='%23000' fill-opacity='0.03'/%3E%3C/svg%3E");
  background-repeat: repeat;
  background-size: 40px 40px;
}

.dark .sv-root[class*="rncp-"] {
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='20' cy='20' r='1.2' fill='%23fff' fill-opacity='0.05'/%3E%3C/svg%3E");
}

.sv-root.rncp-38037 {
  background-image: url("data:image/svg+xml,%3Csvg width='48' height='48' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 48L48 0' stroke='%23000' stroke-opacity='0.025' stroke-width='0.5' fill='none'/%3E%3Ccircle cx='24' cy='24' r='0.8' fill='%23000' fill-opacity='0.03'/%3E%3C/svg%3E");
  background-repeat: repeat;
  background-size: 48px 48px;
}

.dark .sv-root.rncp-38037 {
  background-image: url("data:image/svg+xml,%3Csvg width='48' height='48' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 48L48 0' stroke='%23fff' stroke-opacity='0.04' stroke-width='0.5' fill='none'/%3E%3Ccircle cx='24' cy='24' r='0.8' fill='%23fff' fill-opacity='0.05'/%3E%3C/svg%3E");
}

.sv-root.rncp-37098 {
  background-image: url("data:image/svg+xml,%3Csvg width='56' height='48' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M28 0L56 14v20L28 48 0 34V14z' stroke='%23000' stroke-opacity='0.025' stroke-width='0.5' fill='none'/%3E%3C/svg%3E");
  background-repeat: repeat;
  background-size: 56px 48px;
}

.dark .sv-root.rncp-37098 {
  background-image: url("data:image/svg+xml,%3Csvg width='56' height='48' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M28 0L56 14v20L28 48 0 34V14z' stroke='%23fff' stroke-opacity='0.04' stroke-width='0.5' fill='none'/%3E%3C/svg%3E");
}

.sv-root.rncp-37123 {
  background-image: url("data:image/svg+xml,%3Csvg width='44' height='44' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='4' y='4' width='16' height='16' rx='1' stroke='%23000' stroke-opacity='0.025' stroke-width='0.5' fill='none'/%3E%3Crect x='24' y='24' width='16' height='16' rx='1' stroke='%23000' stroke-opacity='0.025' stroke-width='0.5' fill='none'/%3E%3C/svg%3E");
  background-repeat: repeat;
  background-size: 44px 44px;
}

.dark .sv-root.rncp-37123 {
  background-image: url("data:image/svg+xml,%3Csvg width='44' height='44' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='4' y='4' width='16' height='16' rx='1' stroke='%23fff' stroke-opacity='0.04' stroke-width='0.5' fill='none'/%3E%3Crect x='24' y='24' width='16' height='16' rx='1' stroke='%23fff' stroke-opacity='0.04' stroke-width='0.5' fill='none'/%3E%3C/svg%3E");
}

.sv-root.rncp-37717 {
  background-image: url("data:image/svg+xml,%3Csvg width='48' height='40' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 20L24 0l24 20M0 40L24 20l24 20' stroke='%23000' stroke-opacity='0.025' stroke-width='0.5' fill='none'/%3E%3C/svg%3E");
  background-repeat: repeat;
  background-size: 48px 40px;
}

.dark .sv-root.rncp-37717 {
  background-image: url("data:image/svg+xml,%3Csvg width='48' height='40' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 20L24 0l24 20M0 40L24 20l24 20' stroke='%23fff' stroke-opacity='0.04' stroke-width='0.5' fill='none'/%3E%3C/svg%3E");
}

.sv-root.rncp-38667 {
  background-image: url("data:image/svg+xml,%3Csvg width='48' height='48' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24 4L44 24 24 44 4 24z' stroke='%23000' stroke-opacity='0.025' stroke-width='0.5' fill='none'/%3E%3C/svg%3E");
  background-repeat: repeat;
  background-size: 48px 48px;
}

.dark .sv-root.rncp-38667 {
  background-image: url("data:image/svg+xml,%3Csvg width='48' height='48' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24 4L44 24 24 44 4 24z' stroke='%23fff' stroke-opacity='0.04' stroke-width='0.5' fill='none'/%3E%3C/svg%3E");
}

@keyframes ring-complete-pulse {
  0% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.05);
  }

  100% {
    transform: scale(1);
  }
}

.ring-complete {
  animation: .4s ease-out .3s both ring-complete-pulse;
}

.ed-block {
  border: 1px solid hsl(var(--border));
  background: hsl(var(--card));
  border-radius: 10px;
  margin: 2em 0;
  padding: max(1rem, min(2.5vw, 1.5rem));
}

.ed-header {
  border-bottom: 1px solid hsl(var(--border));
  align-items: center;
  gap: .5rem;
  margin-bottom: 1rem;
  padding-bottom: .75rem;
  display: flex;
}

.ed-icon {
  background: hsl(var(--primary) / .08);
  width: 28px;
  height: 28px;
  color: hsl(var(--primary));
  border-radius: 6px;
  flex-shrink: 0;
  align-items: center;
  padding: 5px;
  display: flex;
}

.ed-title {
  font-family: var(--font-display);
  text-transform: uppercase;
  letter-spacing: .08em;
  color: hsl(var(--muted-foreground));
  font-size: .72rem;
  font-weight: 600;
}

.ed-timeline {
  border-left: 3px solid hsl(var(--ed-timeline-accent));
}

.ed-timeline-track {
  padding-left: .25rem;
  position: relative;
}

.ed-timeline-item {
  gap: max(.6rem, min(1.5vw, 1rem));
  padding: .6rem 0;
  display: flex;
  position: relative;
}

.ed-timeline-item + .ed-timeline-item {
  border-top: 1px solid hsl(var(--border) / .5);
}

.ed-timeline-marker {
  background: hsl(var(--ed-timeline-accent) / .12);
  border: 2px solid hsl(var(--ed-timeline-accent));
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 30px;
  height: 30px;
  display: flex;
}

.ed-timeline-num {
  font-family: var(--font-display);
  color: hsl(var(--ed-timeline-accent));
  font-size: .75rem;
  font-weight: 700;
}

.ed-timeline-content {
  flex: 1;
  min-width: 0;
}

.ed-timeline-label {
  color: hsl(var(--foreground));
  margin-bottom: .15rem;
  font-size: max(.85rem, min(1.3vw, .95rem));
  font-weight: 600;
  display: block;
}

.ed-timeline-detail {
  color: hsl(var(--muted-foreground));
  margin: 0;
  font-size: max(.8rem, min(1.2vw, .9rem));
  line-height: 1.55;
}

.ed-compare {
  overflow: hidden;
}

.ed-compare-grid {
  grid-template-columns: 1fr auto 1fr;
  align-items: stretch;
  gap: 0;
  display: grid;
}

.ed-compare-side {
  border-radius: 8px;
  padding: max(.6rem, min(1.5vw, 1rem));
}

.ed-compare-left {
  background: hsl(var(--ed-compare-left) / .06);
  border: 1px solid hsl(var(--ed-compare-left) / .15);
}

.ed-compare-right {
  background: hsl(var(--ed-compare-right) / .06);
  border: 1px solid hsl(var(--ed-compare-right) / .15);
}

.ed-compare-label {
  font-family: var(--font-display);
  border-bottom: 2px solid;
  margin-bottom: .6rem;
  padding-bottom: .4rem;
  font-size: max(.82rem, min(1.3vw, .95rem));
  font-weight: 700;
}

.ed-compare-left .ed-compare-label {
  color: hsl(var(--ed-compare-left));
}

.ed-compare-right .ed-compare-label {
  color: hsl(var(--ed-compare-right));
}

.ed-compare-items {
  margin: 0;
  padding: 0;
  list-style: none;
}

.ed-compare-items li {
  color: hsl(var(--foreground));
  padding: .35rem 0 .35rem 1.1rem;
  font-size: max(.8rem, min(1.2vw, .9rem));
  line-height: 1.55;
  position: relative;
}

.ed-compare-items li + li {
  border-top: 1px solid hsl(var(--border) / .4);
}

.ed-compare-left .ed-compare-items li:before {
  content: "";
  background: hsl(var(--ed-compare-left));
  border-radius: 50%;
  width: 6px;
  height: 6px;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.ed-compare-right .ed-compare-items li:before {
  content: "";
  background: hsl(var(--ed-compare-right));
  border-radius: 50%;
  width: 6px;
  height: 6px;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.ed-compare-divider {
  justify-content: center;
  align-items: center;
  padding: 0 .5rem;
  display: flex;
}

.ed-compare-divider span {
  font-family: var(--font-display);
  text-transform: uppercase;
  letter-spacing: .1em;
  color: hsl(var(--muted-foreground) / .5);
  writing-mode: vertical-lr;
  text-orientation: mixed;
  font-size: .65rem;
  font-weight: 700;
}

.ed-compare-verdict {
  background: hsl(var(--success) / .06);
  border: 1px solid hsl(var(--success) / .15);
  color: hsl(var(--foreground));
  border-radius: 8px;
  align-items: flex-start;
  gap: .5rem;
  margin-top: 1rem;
  padding: .75rem 1rem;
  font-size: max(.8rem, min(1.2vw, .9rem));
  line-height: 1.55;
  display: flex;
}

.ed-compare-verdict svg {
  color: hsl(var(--success));
  flex-shrink: 0;
  margin-top: .1rem;
}

@media (max-width: 640px) {
  .ed-compare-grid {
    grid-template-columns: 1fr;
    gap: .5rem;
  }

  .ed-compare-divider {
    writing-mode: horizontal-tb;
    padding: .25rem 0;
  }

  .ed-compare-divider span {
    writing-mode: horizontal-tb;
  }
}

.ed-process-flow {
  flex-direction: column;
  align-items: center;
  gap: 0;
  display: flex;
}

.ed-process-step {
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 420px;
  display: flex;
}

.ed-process-card {
  background: hsl(var(--background));
  border: 1px solid hsl(var(--ed-process-accent) / .2);
  border-radius: 8px;
  align-items: flex-start;
  gap: max(.5rem, min(1.5vw, .75rem));
  width: 100%;
  padding: max(.6rem, min(1.5vw, .85rem));
  transition: border-color .2s, box-shadow .2s;
  display: flex;
}

.ed-process-card:hover {
  border-color: hsl(var(--ed-process-accent) / .4);
  box-shadow: 0 2px 8px hsl(var(--ed-process-accent) / .08);
}

.ed-process-num {
  background: hsl(var(--ed-process-accent));
  width: 26px;
  height: 26px;
  color: hsl(var(--accent-foreground, 0 0% 100%));
  font-family: var(--font-display);
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  font-size: .72rem;
  font-weight: 700;
  display: flex;
}

.ed-process-text {
  flex: 1;
  min-width: 0;
}

.ed-process-label {
  color: hsl(var(--foreground));
  margin-bottom: .1rem;
  font-size: max(.82rem, min(1.3vw, .92rem));
  font-weight: 600;
  display: block;
}

.ed-process-detail {
  color: hsl(var(--muted-foreground));
  margin: 0;
  font-size: max(.78rem, min(1.15vw, .87rem));
  line-height: 1.5;
}

.ed-process-arrow {
  color: hsl(var(--ed-process-accent) / .4);
  justify-content: center;
  align-items: center;
  padding: .25rem 0;
  display: flex;
}

.ed-exam-trap {
  background: hsl(var(--ed-exam-trap-bg));
  border-color: hsl(var(--ed-exam-trap-border));
  border-width: 1px 1px 1px 4px;
}

.ed-exam-trap .ed-icon {
  background: hsl(var(--ed-exam-trap-border) / .12);
  color: hsl(var(--ed-exam-trap-border));
}

.ed-exam-body {
  flex-direction: column;
  gap: .75rem;
  display: flex;
}

.ed-exam-question {
  color: hsl(var(--ed-exam-trap-question));
  font-size: max(.88rem, min(1.3vw, 1rem));
  font-weight: 500;
  line-height: 1.55;
}

.ed-exam-question p {
  margin: 0;
}

.ed-exam-warning {
  background: hsl(var(--ed-exam-trap-warning) / .08);
  border: 1px solid hsl(var(--ed-exam-trap-warning) / .2);
  border-radius: 8px;
  align-items: flex-start;
  gap: .6rem;
  padding: .7rem .85rem;
  display: flex;
}

.ed-exam-warning svg {
  color: hsl(var(--ed-exam-trap-warning));
  flex-shrink: 0;
  margin-top: .15rem;
}

.ed-exam-warning strong {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: hsl(var(--ed-exam-trap-warning));
  margin-bottom: .15rem;
  font-size: .72rem;
  display: block;
}

.ed-exam-warning p {
  color: hsl(var(--foreground));
  margin: 0;
  font-size: max(.8rem, min(1.2vw, .9rem));
  line-height: 1.5;
}

.ed-exam-answer {
  background: hsl(var(--ed-exam-trap-answer) / .06);
  border: 1px solid hsl(var(--ed-exam-trap-answer) / .2);
  border-radius: 8px;
  align-items: flex-start;
  gap: .6rem;
  padding: .7rem .85rem;
  display: flex;
}

.ed-exam-answer svg {
  color: hsl(var(--ed-exam-trap-answer));
  flex-shrink: 0;
  margin-top: .15rem;
}

.ed-exam-answer strong {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: hsl(var(--ed-exam-trap-answer));
  margin-bottom: .15rem;
  font-size: .72rem;
  display: block;
}

.ed-exam-answer p {
  color: hsl(var(--foreground));
  margin: 0;
  font-size: max(.8rem, min(1.2vw, .9rem));
  line-height: 1.5;
}

.ed-exam-tip {
  background: hsl(var(--muted) / .5);
  color: hsl(var(--muted-foreground));
  border-radius: 6px;
  align-items: flex-start;
  gap: .5rem;
  padding: .5rem .75rem;
  font-size: max(.78rem, min(1.15vw, .87rem));
  line-height: 1.5;
  display: flex;
}

.ed-exam-tip svg {
  color: hsl(var(--primary));
  flex-shrink: 0;
  margin-top: .1rem;
}

.ed-dt-body {
  padding: .25rem 0;
}

.ed-dt-node {
  flex-direction: column;
  align-items: center;
  display: flex;
}

.ed-dt-question {
  text-align: center;
  background: hsl(var(--ed-dt-question) / .08);
  border: 1.5px solid hsl(var(--ed-dt-question) / .25);
  border-radius: 8px;
  width: 100%;
  max-width: 340px;
  padding: .6rem 1rem;
}

.ed-dt-question p {
  color: hsl(var(--foreground));
  margin: 0;
  font-size: max(.82rem, min(1.2vw, .92rem));
  font-weight: 500;
  line-height: 1.5;
}

.ed-dt-branches {
  flex-wrap: wrap;
  justify-content: center;
  gap: max(.5rem, min(2vw, 1rem));
  margin-top: .5rem;
  padding-top: .75rem;
  display: flex;
  position: relative;
}

.ed-dt-branches:before {
  content: "";
  background: hsl(var(--border));
  width: 1px;
  height: .75rem;
  position: absolute;
  top: 0;
  left: 50%;
}

.ed-dt-branch {
  flex-direction: column;
  flex: 1;
  align-items: center;
  min-width: 120px;
  max-width: 280px;
  display: flex;
  position: relative;
}

.ed-dt-branch:before {
  content: "";
  background: hsl(var(--border));
  width: 1px;
  height: .5rem;
}

.ed-dt-answer {
  background: hsl(var(--muted));
  color: hsl(var(--muted-foreground));
  border-radius: 20px;
  margin-bottom: .5rem;
  padding: .25rem .65rem;
  font-size: .75rem;
  font-weight: 600;
  display: inline-block;
}

.ed-dt-result {
  text-align: center;
  background: hsl(var(--ed-dt-result) / .08);
  border: 1.5px solid hsl(var(--ed-dt-result) / .25);
  color: hsl(var(--ed-dt-result));
  border-radius: 8px;
  width: 100%;
  padding: .5rem .85rem;
  font-size: max(.8rem, min(1.15vw, .88rem));
  font-weight: 600;
}

.ed-dt-result svg {
  vertical-align: -2px;
  margin-right: .3rem;
  display: inline;
}

.ed-dt-node[data-depth="1"] .ed-dt-question, .ed-dt-node[data-depth="2"] .ed-dt-question {
  padding: .45rem .75rem;
  font-size: .85em;
}

@media (max-width: 480px) {
  .ed-dt-branches {
    flex-direction: column;
    align-items: center;
  }

  .ed-dt-branch {
    width: 100%;
    max-width: 100%;
  }
}

.ed-recap {
  background: hsl(var(--ed-recap-bg));
  border-color: hsl(var(--ed-recap-border));
  border-left-width: 4px;
}

.ed-recap .ed-icon {
  background: hsl(var(--ed-recap-border) / .12);
  color: hsl(var(--ed-recap-border));
}

.ed-recap-points {
  margin: 0;
  padding: 0;
  list-style: none;
}

.ed-recap-points li {
  color: hsl(var(--foreground));
  align-items: flex-start;
  gap: .5rem;
  padding: .5rem 0;
  font-size: max(.82rem, min(1.2vw, .92rem));
  line-height: 1.55;
  display: flex;
}

.ed-recap-points li + li {
  border-top: 1px solid hsl(var(--border) / .4);
}

.ed-recap-points li svg {
  color: hsl(var(--ed-recap-check));
  flex-shrink: 0;
  margin-top: .15rem;
}

.ed-recap-exam {
  background: hsl(var(--ed-recap-exam) / .06);
  border: 1px solid hsl(var(--ed-recap-exam) / .15);
  color: hsl(var(--ed-recap-exam));
  border-radius: 8px;
  align-items: flex-start;
  gap: .5rem;
  margin-top: .75rem;
  padding: .6rem .85rem;
  font-size: max(.78rem, min(1.15vw, .87rem));
  font-weight: 500;
  line-height: 1.5;
  display: flex;
}

.ed-recap-exam svg {
  flex-shrink: 0;
  margin-top: .1rem;
}

@media (prefers-reduced-motion: reduce) {
  *, :before, :after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }

  .sv-slide-enter, .sv-slide-enter-exercise, .sv-slide-enter-forward, .sv-slide-enter-backward {
    opacity: 1 !important;
    animation: none !important;
    transform: none !important;
  }

  .sv-slide-exit-left, .sv-slide-exit-right {
    opacity: 0 !important;
    animation: none !important;
    transform: none !important;
  }

  .sv-guided > [data-sv-guided-block].sv-block-revealed, .sv-guided > [data-sv-guided-block].sv-block-active {
    opacity: 1 !important;
    animation: none !important;
    transform: none !important;
  }

  .sv-player-bar {
    -webkit-backdrop-filter: none !important;
    background: hsl(var(--card)) !important;
  }

  .cs-check-new {
    opacity: 1 !important;
    animation: none !important;
    transform: none !important;
  }

  .formation-card {
    transition: none !important;
  }

  .formation-card:hover {
    transform: none !important;
  }
}

@keyframes chat-blink {
  0%, 100% {
    opacity: 1;
  }

  50% {
    opacity: 0;
  }
}

.chat-cursor {
  vertical-align: text-bottom;
  background: hsl(var(--primary) / .7);
  width: 2px;
  height: 1em;
  margin-left: 2px;
  animation: .8s ease-in-out infinite chat-blink;
  display: inline-block;
}

.chat-bubble {
  z-index: 50;
  transition: transform .3s cubic-bezier(.34, 1.56, .64, 1), opacity .2s;
  position: fixed;
  bottom: 1.25rem;
  right: 1.25rem;
}

.chat-bubble[data-state="closed"] {
  opacity: 1;
  transform: scale(1);
}

.chat-bubble[data-state="open"] {
  opacity: 0;
  pointer-events: none;
  transform: scale(0);
}

.chat-bubble:hover {
  transform: scale(1.1);
}

.chat-panel-float {
  z-index: 50;
  transform-origin: 100% 100%;
  transition: transform .3s cubic-bezier(.34, 1.56, .64, 1), opacity .25s;
  position: fixed;
  bottom: 1.25rem;
  right: 1.25rem;
}

.chat-panel-float[data-state="closed"] {
  opacity: 0;
  pointer-events: none;
  transform: scale(.95)translateY(12px);
}

.chat-panel-float[data-state="open"] {
  opacity: 1;
  transform: scale(1)translateY(0);
}

@keyframes chat-msg-in {
  from {
    opacity: 0;
    transform: translateY(8px);
  }

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

.chat-msg {
  animation: .3s ease-out both chat-msg-in;
}

@keyframes chat-dot {
  0%, 80%, 100% {
    opacity: .4;
    transform: translateY(0);
  }

  40% {
    opacity: 1;
    transform: translateY(-4px);
  }
}

.chat-dot {
  background: hsl(var(--primary) / .5);
  border-radius: 50%;
  width: 6px;
  height: 6px;
}

.chat-dot:first-child {
  animation: 1.2s ease-in-out infinite chat-dot;
}

.chat-dot:nth-child(2) {
  animation: 1.2s ease-in-out .15s infinite chat-dot;
}

.chat-dot:nth-child(3) {
  animation: 1.2s ease-in-out .3s infinite chat-dot;
}

@keyframes chat-ring-pulse {
  0%, 100% {
    box-shadow: 0 0 0 0 hsl(var(--primary) / .2);
  }

  50% {
    box-shadow: 0 0 0 4px hsl(var(--primary) / .1);
  }
}

.chat-avatar-streaming {
  animation: 2s ease-in-out infinite chat-ring-pulse;
}

@keyframes chat-chip-in {
  from {
    opacity: 0;
    transform: translateY(6px)scale(.95);
  }

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

.chat-chip {
  animation: .35s ease-out both chat-chip-in;
}

@keyframes chat-suggest-in {
  from {
    opacity: 0;
    transform: translateY(8px);
  }

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

.chat-suggest {
  animation: .4s ease-out both chat-suggest-in;
}

.chat-send-btn {
  transition: background-color .15s, transform .15s, box-shadow .15s;
}

.chat-send-btn:hover:not(:disabled) {
  box-shadow: 0 2px 8px hsl(var(--primary) / .3);
}

.chat-send-btn:active:not(:disabled) {
  transform: scale(.88);
}

.chat-feedback-btn {
  transition: color .15s, background-color .15s, transform .15s;
}

.chat-feedback-btn:active {
  transform: scale(.85);
}

.file\:border-0::-webkit-file-upload-button {
  border-width: 0;
}

.file\:border-0::file-selector-button {
  border-width: 0;
}

.file\:bg-transparent::-webkit-file-upload-button {
  background-color: rgba(0, 0, 0, 0);
}

.file\:bg-transparent::file-selector-button {
  background-color: rgba(0, 0, 0, 0);
}

.file\:text-sm::-webkit-file-upload-button {
  font-size: .875rem;
  line-height: 1.25rem;
}

.file\:text-sm::file-selector-button {
  font-size: .875rem;
  line-height: 1.25rem;
}

.file\:font-medium::-webkit-file-upload-button {
  font-weight: 500;
}

.file\:font-medium::file-selector-button {
  font-weight: 500;
}

.placeholder\:text-\[hsl\(var\(--warning-foreground\)\/0\.7\)\]::placeholder {
  color: hsl(var(--warning-foreground) / .7);
}

.placeholder\:text-muted-foreground::placeholder {
  color: hsl(var(--muted-foreground));
}

.placeholder\:text-zinc-600::placeholder {
  --tw-text-opacity: 1;
  color: rgba(82, 82, 91, var(--tw-text-opacity, 1));
}

.before\:absolute:before {
  content: var(--tw-content);
  position: absolute;
}

.before\:inset-0:before {
  content: var(--tw-content);
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.last\:border-0:last-child {
  border-width: 0;
}

.last\:border-b-0:last-child {
  border-bottom-width: 0;
}

.last\:pb-0:last-child {
  padding-bottom: 0;
}

.even\:bg-muted\/30:nth-child(2n) {
  background-color: hsl(var(--muted) / .3);
}

.focus-within\:border-transparent:focus-within {
  border-color: rgba(0, 0, 0, 0);
}

.focus-within\:ring-2:focus-within {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));
}

.focus-within\:ring-ring:focus-within {
  --tw-ring-color: hsl(var(--ring));
}

.hover\:-translate-y-0\.5:hover {
  --tw-translate-y: -.125rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.hover\:scale-105:hover {
  --tw-scale-x: 1.05;
  --tw-scale-y: 1.05;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.hover\:border-\[hsl\(var\(--neutral\)\/0\.3\)\]:hover {
  border-color: hsl(var(--neutral) / .3);
}

.hover\:border-\[hsl\(var\(--success\)\/0\.3\)\]:hover {
  border-color: hsl(var(--success) / .3);
}

.hover\:border-\[hsl\(var\(--warning\)\/0\.3\)\]:hover {
  border-color: hsl(var(--warning) / .3);
}

.hover\:border-border:hover {
  border-color: hsl(var(--border));
}

.hover\:border-muted-foreground\/30:hover {
  border-color: hsl(var(--muted-foreground) / .3);
}

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

.hover\:border-primary\/30:hover {
  border-color: hsl(var(--primary) / .3);
}

.hover\:border-primary\/40:hover {
  border-color: hsl(var(--primary) / .4);
}

.hover\:border-primary\/50:hover {
  border-color: hsl(var(--primary) / .5);
}

.hover\:border-red-600:hover {
  --tw-border-opacity: 1;
  border-color: rgba(220, 38, 38, var(--tw-border-opacity, 1));
}

.hover\:bg-accent:hover {
  background-color: hsl(var(--accent));
}

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

.hover\:bg-amber-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgba(254, 243, 199, var(--tw-bg-opacity, 1));
}

.hover\:bg-blue-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgba(219, 234, 254, var(--tw-bg-opacity, 1));
}

.hover\:bg-blue-950:hover {
  --tw-bg-opacity: 1;
  background-color: rgba(23, 37, 84, var(--tw-bg-opacity, 1));
}

.hover\:bg-destructive\/10:hover {
  background-color: hsl(var(--destructive) / .1);
}

.hover\:bg-destructive\/80:hover {
  background-color: hsl(var(--destructive) / .8);
}

.hover\:bg-destructive\/90:hover {
  background-color: hsl(var(--destructive) / .9);
}

.hover\:bg-green-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgba(220, 252, 231, var(--tw-bg-opacity, 1));
}

.hover\:bg-green-950:hover {
  --tw-bg-opacity: 1;
  background-color: rgba(5, 46, 22, var(--tw-bg-opacity, 1));
}

.hover\:bg-info-muted:hover {
  background-color: hsl(var(--info-muted));
}

.hover\:bg-info\/10:hover {
  background-color: hsl(var(--info) / .1);
}

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

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

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

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

.hover\:bg-muted\/80:hover {
  background-color: hsl(var(--muted) / .8);
}

.hover\:bg-neutral-muted:hover {
  background-color: hsl(var(--neutral-muted));
}

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

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

.hover\:bg-primary\/80:hover {
  background-color: hsl(var(--primary) / .8);
}

.hover\:bg-primary\/90:hover {
  background-color: hsl(var(--primary) / .9);
}

.hover\:bg-red-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgba(185, 28, 28, var(--tw-bg-opacity, 1));
}

.hover\:bg-red-900\/50:hover {
  background-color: rgba(127, 29, 29, .5);
}

.hover\:bg-red-950:hover {
  --tw-bg-opacity: 1;
  background-color: rgba(69, 10, 10, var(--tw-bg-opacity, 1));
}

.hover\:bg-secondary:hover {
  background-color: hsl(var(--secondary));
}

.hover\:bg-secondary\/80:hover {
  background-color: hsl(var(--secondary) / .8);
}

.hover\:bg-success-muted:hover {
  background-color: hsl(var(--success-muted));
}

.hover\:bg-success\/10:hover {
  background-color: hsl(var(--success) / .1);
}

.hover\:bg-warning-muted:hover {
  background-color: hsl(var(--warning-muted));
}

.hover\:bg-warning\/10:hover {
  background-color: hsl(var(--warning) / .1);
}

.hover\:bg-yellow-950:hover {
  --tw-bg-opacity: 1;
  background-color: rgba(66, 32, 6, var(--tw-bg-opacity, 1));
}

.hover\:bg-zinc-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgba(63, 63, 70, var(--tw-bg-opacity, 1));
}

.hover\:bg-zinc-800:hover {
  --tw-bg-opacity: 1;
  background-color: rgba(39, 39, 42, var(--tw-bg-opacity, 1));
}

.hover\:bg-zinc-800\/20:hover {
  background-color: rgba(39, 39, 42, .2);
}

.hover\:bg-zinc-800\/50:hover {
  background-color: rgba(39, 39, 42, .5);
}

.hover\:bg-zinc-900\/30:hover {
  background-color: rgba(24, 24, 27, .3);
}

.hover\:text-accent-foreground:hover {
  color: hsl(var(--accent-foreground));
}

.hover\:text-destructive:hover {
  color: hsl(var(--destructive));
}

.hover\:text-foreground:hover {
  color: hsl(var(--foreground));
}

.hover\:text-muted-foreground:hover {
  color: hsl(var(--muted-foreground));
}

.hover\:text-primary:hover {
  color: hsl(var(--primary));
}

.hover\:text-primary-foreground:hover {
  color: hsl(var(--primary-foreground));
}

.hover\:text-primary\/80:hover {
  color: hsl(var(--primary) / .8);
}

.hover\:text-red-400:hover {
  --tw-text-opacity: 1;
  color: rgba(248, 113, 113, var(--tw-text-opacity, 1));
}

.hover\:text-success:hover {
  color: hsl(var(--success));
}

.hover\:text-zinc-200:hover {
  --tw-text-opacity: 1;
  color: rgba(228, 228, 231, var(--tw-text-opacity, 1));
}

.hover\:text-zinc-300:hover {
  --tw-text-opacity: 1;
  color: rgba(212, 212, 216, var(--tw-text-opacity, 1));
}

.hover\:underline:hover {
  -webkit-text-decoration-line: underline;
  text-decoration-line: underline;
}

.hover\:opacity-100:hover {
  opacity: 1;
}

.hover\:opacity-75:hover {
  opacity: .75;
}

.hover\:opacity-80:hover {
  opacity: .8;
}

.hover\:opacity-90:hover {
  opacity: .9;
}

.hover\:shadow-elevated:hover {
  --tw-shadow: var(--shadow-elevated);
  --tw-shadow-colored: var(--shadow-elevated);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);
}

.hover\:shadow-lg:hover {
  --tw-shadow: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);
}

.hover\:shadow-md:hover {
  --tw-shadow: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);
}

.focus\:not-sr-only:focus {
  clip: auto;
  white-space: normal;
  width: auto;
  height: auto;
  margin: 0;
  padding: 0;
  position: static;
  overflow: visible;
}

.focus\:fixed:focus {
  position: fixed;
}

.focus\:absolute:focus {
  position: absolute;
}

.focus\:left-2:focus {
  left: .5rem;
}

.focus\:top-2:focus {
  top: .5rem;
}

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

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

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

.focus\:border-red-500:focus {
  --tw-border-opacity: 1;
  border-color: rgba(239, 68, 68, var(--tw-border-opacity, 1));
}

.focus\:bg-accent:focus {
  background-color: hsl(var(--accent));
}

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

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

.focus\:p-4:focus {
  padding: 1rem;
}

.focus\:px-4:focus {
  padding-left: 1rem;
  padding-right: 1rem;
}

.focus\:py-2:focus {
  padding-top: .5rem;
  padding-bottom: .5rem;
}

.focus\:text-sm:focus {
  font-size: .875rem;
  line-height: 1.25rem;
}

.focus\:font-medium:focus {
  font-weight: 500;
}

.focus\:text-accent-foreground:focus {
  color: hsl(var(--accent-foreground));
}

.focus\:text-destructive:focus {
  color: hsl(var(--destructive));
}

.focus\:text-primary:focus {
  color: hsl(var(--primary));
}

.focus\:text-primary-foreground:focus {
  color: hsl(var(--primary-foreground));
}

.focus\:opacity-100:focus {
  opacity: 1;
}

.focus\:shadow-\[0_0_0_3px_hsl\(var\(--ring\)\/0\.15\)\]:focus {
  --tw-shadow: 0 0 0 3px hsl(var(--ring) / .15);
  --tw-shadow-colored: 0 0 0 3px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);
}

.focus\:shadow-lg:focus {
  --tw-shadow: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);
}

.focus\:outline-none:focus {
  outline-offset: 2px;
  outline: 2px solid rgba(0, 0, 0, 0);
}

.focus\:ring-1:focus {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));
}

.focus\:ring-2:focus {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));
}

.focus\:ring-red-500:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgba(239, 68, 68, var(--tw-ring-opacity, 1));
}

.focus\:ring-red-500\/30:focus {
  --tw-ring-color: rgba(239, 68, 68, .3);
}

.focus\:ring-ring:focus {
  --tw-ring-color: hsl(var(--ring));
}

.focus\:ring-offset-2:focus {
  --tw-ring-offset-width: 2px;
}

.focus-visible\:outline-none:focus-visible {
  outline-offset: 2px;
  outline: 2px solid rgba(0, 0, 0, 0);
}

.focus-visible\:ring-1:focus-visible {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));
}

.focus-visible\:ring-2:focus-visible {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 rgba(0, 0, 0, 0));
}

.focus-visible\:ring-ring:focus-visible {
  --tw-ring-color: hsl(var(--ring));
}

.focus-visible\:ring-offset-1:focus-visible {
  --tw-ring-offset-width: 1px;
}

.focus-visible\:ring-offset-2:focus-visible {
  --tw-ring-offset-width: 2px;
}

.focus-visible\:ring-offset-background:focus-visible {
  --tw-ring-offset-color: hsl(var(--background));
}

.active\:scale-\[0\.98\]:active {
  --tw-scale-x: .98;
  --tw-scale-y: .98;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.active\:cursor-grabbing:active {
  cursor: grabbing;
}

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

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

.disabled\:opacity-30:disabled {
  opacity: .3;
}

.disabled\:opacity-40:disabled {
  opacity: .4;
}

.disabled\:opacity-50:disabled {
  opacity: .5;
}

.disabled\:opacity-60:disabled {
  opacity: .6;
}

.group[open] .group-open\:rotate-90 {
  --tw-rotate: 90deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:translate-x-1 {
  --tw-translate-x: .25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group\/kpi:hover .group-hover\/kpi\:text-foreground, .group:hover .group-hover\:text-foreground {
  color: hsl(var(--foreground));
}

.group:hover .group-hover\:text-primary {
  color: hsl(var(--primary));
}

.group:hover .group-hover\:text-primary\/60 {
  color: hsl(var(--primary) / .6);
}

.group:hover .group-hover\:opacity-100 {
  opacity: 1;
}

.group:hover .group-hover\:shadow-lg {
  --tw-shadow: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);
}

.group.destructive .group-\[\.destructive\]\:border-muted\/40 {
  border-color: hsl(var(--muted) / .4);
}

.group.destructive .group-\[\.destructive\]\:text-destructive-foreground\/70 {
  color: hsl(var(--destructive-foreground) / .7);
}

.group.destructive .group-\[\.destructive\]\:hover\:border-destructive\/30:hover {
  border-color: hsl(var(--destructive) / .3);
}

.group.destructive .group-\[\.destructive\]\:hover\:bg-destructive:hover {
  background-color: hsl(var(--destructive));
}

.group.destructive .group-\[\.destructive\]\:hover\:text-destructive-foreground:hover {
  color: hsl(var(--destructive-foreground));
}

.group.destructive .group-\[\.destructive\]\:focus\:ring-destructive:focus {
  --tw-ring-color: hsl(var(--destructive));
}

.group.destructive .group-\[\.destructive\]\:focus\:ring-destructive-foreground\/50:focus {
  --tw-ring-color: hsl(var(--destructive-foreground) / .5);
}

.group.destructive .group-\[\.destructive\]\:focus\:ring-offset-destructive:focus {
  --tw-ring-offset-color: hsl(var(--destructive));
}

.peer:disabled ~ .peer-disabled\:cursor-not-allowed {
  cursor: not-allowed;
}

.peer:disabled ~ .peer-disabled\:opacity-70 {
  opacity: .7;
}

.data-\[disabled\]\:pointer-events-none[data-disabled] {
  pointer-events: none;
}

.data-\[side\=bottom\]\:translate-y-1[data-side="bottom"] {
  --tw-translate-y: .25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[side\=left\]\:-translate-x-1[data-side="left"] {
  --tw-translate-x: -.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[side\=right\]\:translate-x-1[data-side="right"] {
  --tw-translate-x: .25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[side\=top\]\:-translate-y-1[data-side="top"] {
  --tw-translate-y: -.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[state\=checked\]\:translate-x-5[data-state="checked"] {
  --tw-translate-x: 1.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[state\=unchecked\]\:translate-x-0[data-state="unchecked"], .data-\[swipe\=cancel\]\:translate-x-0[data-swipe="cancel"] {
  --tw-translate-x: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe="end"] {
  --tw-translate-x: var(--radix-toast-swipe-end-x);
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe="move"] {
  --tw-translate-x: var(--radix-toast-swipe-move-x);
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[state\=active\]\:bg-background[data-state="active"] {
  background-color: hsl(var(--background));
}

.data-\[state\=checked\]\:bg-primary[data-state="checked"] {
  background-color: hsl(var(--primary));
}

.data-\[state\=open\]\:bg-accent[data-state="open"] {
  background-color: hsl(var(--accent));
}

.data-\[state\=open\]\:bg-secondary[data-state="open"] {
  background-color: hsl(var(--secondary));
}

.data-\[state\=selected\]\:bg-muted[data-state="selected"] {
  background-color: hsl(var(--muted));
}

.data-\[state\=unchecked\]\:bg-input[data-state="unchecked"] {
  background-color: hsl(var(--input));
}

.data-\[state\=active\]\:text-foreground[data-state="active"] {
  color: hsl(var(--foreground));
}

.data-\[state\=open\]\:text-muted-foreground[data-state="open"] {
  color: hsl(var(--muted-foreground));
}

.data-\[disabled\]\:opacity-50[data-disabled] {
  opacity: .5;
}

.data-\[state\=active\]\:shadow-sm[data-state="active"] {
  --tw-shadow: 0 1px 2px 0 rgba(0, 0, 0, .05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)), var(--tw-shadow);
}

.data-\[swipe\=move\]\:transition-none[data-swipe="move"] {
  transition-property: none;
}

.data-\[state\=closed\]\:duration-normal[data-state="closed"] {
  transition-duration: var(--transition-normal);
}

.data-\[state\=open\]\:duration-slow[data-state="open"] {
  transition-duration: var(--transition-slow);
}

.data-\[state\=open\]\:animate-in[data-state="open"] {
  --tw-enter-opacity: initial;
  --tw-enter-scale: initial;
  --tw-enter-rotate: initial;
  --tw-enter-translate-x: initial;
  --tw-enter-translate-y: initial;
  animation-name: enter;
  animation-duration: .15s;
}

.data-\[state\=closed\]\:animate-out[data-state="closed"], .data-\[swipe\=end\]\:animate-out[data-swipe="end"] {
  --tw-exit-opacity: initial;
  --tw-exit-scale: initial;
  --tw-exit-rotate: initial;
  --tw-exit-translate-x: initial;
  --tw-exit-translate-y: initial;
  animation-name: exit;
  animation-duration: .15s;
}

.data-\[state\=closed\]\:fade-out-0[data-state="closed"] {
  --tw-exit-opacity: 0;
}

.data-\[state\=closed\]\:fade-out-80[data-state="closed"] {
  --tw-exit-opacity: .8;
}

.data-\[state\=open\]\:fade-in-0[data-state="open"] {
  --tw-enter-opacity: 0;
}

.data-\[state\=closed\]\:zoom-out-95[data-state="closed"] {
  --tw-exit-scale: .95;
}

.data-\[state\=open\]\:zoom-in-95[data-state="open"] {
  --tw-enter-scale: .95;
}

.data-\[side\=bottom\]\:slide-in-from-top-2[data-side="bottom"] {
  --tw-enter-translate-y: -.5rem;
}

.data-\[side\=left\]\:slide-in-from-right-2[data-side="left"] {
  --tw-enter-translate-x: .5rem;
}

.data-\[side\=right\]\:slide-in-from-left-2[data-side="right"] {
  --tw-enter-translate-x: -.5rem;
}

.data-\[side\=top\]\:slide-in-from-bottom-2[data-side="top"] {
  --tw-enter-translate-y: .5rem;
}

.data-\[state\=closed\]\:slide-out-to-bottom[data-state="closed"] {
  --tw-exit-translate-y: 100%;
}

.data-\[state\=closed\]\:slide-out-to-left[data-state="closed"] {
  --tw-exit-translate-x: -100%;
}

.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state="closed"] {
  --tw-exit-translate-x: -50%;
}

.data-\[state\=closed\]\:slide-out-to-right[data-state="closed"], .data-\[state\=closed\]\:slide-out-to-right-full[data-state="closed"] {
  --tw-exit-translate-x: 100%;
}

.data-\[state\=closed\]\:slide-out-to-top[data-state="closed"] {
  --tw-exit-translate-y: -100%;
}

.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state="closed"] {
  --tw-exit-translate-y: -48%;
}

.data-\[state\=open\]\:slide-in-from-bottom[data-state="open"] {
  --tw-enter-translate-y: 100%;
}

.data-\[state\=open\]\:slide-in-from-left[data-state="open"] {
  --tw-enter-translate-x: -100%;
}

.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state="open"] {
  --tw-enter-translate-x: -50%;
}

.data-\[state\=open\]\:slide-in-from-right[data-state="open"] {
  --tw-enter-translate-x: 100%;
}

.data-\[state\=open\]\:slide-in-from-top[data-state="open"] {
  --tw-enter-translate-y: -100%;
}

.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state="open"] {
  --tw-enter-translate-y: -48%;
}

.data-\[state\=open\]\:slide-in-from-top-full[data-state="open"] {
  --tw-enter-translate-y: -100%;
}

.data-\[state\=closed\]\:duration-normal[data-state="closed"] {
  animation-duration: var(--transition-normal);
}

.data-\[state\=open\]\:duration-slow[data-state="open"] {
  animation-duration: var(--transition-slow);
}

@supports ((-webkit-backdrop-filter: var(--tw)) or (backdrop-filter: var(--tw))) {
  .supports-\[backdrop-filter\]\:bg-background\/60 {
    background-color: hsl(var(--background) / .6);
  }
}

@media (prefers-reduced-motion: reduce) {
  .motion-reduce\:transition-none {
    transition-property: none;
  }
}

.dark\:border-amber-800:is(.dark *) {
  --tw-border-opacity: 1;
  border-color: rgba(146, 64, 14, var(--tw-border-opacity, 1));
}

.dark\:border-amber-800\/50:is(.dark *) {
  border-color: rgba(146, 64, 14, .5);
}

.dark\:border-blue-800:is(.dark *) {
  --tw-border-opacity: 1;
  border-color: rgba(30, 64, 175, var(--tw-border-opacity, 1));
}

.dark\:border-cyan-800:is(.dark *) {
  --tw-border-opacity: 1;
  border-color: rgba(21, 94, 117, var(--tw-border-opacity, 1));
}

.dark\:border-emerald-800:is(.dark *) {
  --tw-border-opacity: 1;
  border-color: rgba(6, 95, 70, var(--tw-border-opacity, 1));
}

.dark\:border-green-800:is(.dark *) {
  --tw-border-opacity: 1;
  border-color: rgba(22, 101, 52, var(--tw-border-opacity, 1));
}

.dark\:border-indigo-800:is(.dark *) {
  --tw-border-opacity: 1;
  border-color: rgba(55, 48, 163, var(--tw-border-opacity, 1));
}

.dark\:border-orange-800:is(.dark *) {
  --tw-border-opacity: 1;
  border-color: rgba(154, 52, 18, var(--tw-border-opacity, 1));
}

.dark\:border-purple-800:is(.dark *) {
  --tw-border-opacity: 1;
  border-color: rgba(107, 33, 168, var(--tw-border-opacity, 1));
}

.dark\:border-red-900:is(.dark *) {
  --tw-border-opacity: 1;
  border-color: rgba(127, 29, 29, var(--tw-border-opacity, 1));
}

.dark\:border-violet-800:is(.dark *) {
  --tw-border-opacity: 1;
  border-color: rgba(91, 33, 182, var(--tw-border-opacity, 1));
}

.dark\:bg-amber-900\/30:is(.dark *) {
  background-color: rgba(120, 53, 15, .3);
}

.dark\:bg-amber-950\/20:is(.dark *) {
  background-color: rgba(69, 26, 3, .2);
}

.dark\:bg-blue-900\/30:is(.dark *) {
  background-color: rgba(30, 58, 138, .3);
}

.dark\:bg-cyan-900\/30:is(.dark *) {
  background-color: rgba(22, 78, 99, .3);
}

.dark\:bg-emerald-900\/30:is(.dark *) {
  background-color: rgba(6, 78, 59, .3);
}

.dark\:bg-green-900\/30:is(.dark *) {
  background-color: rgba(20, 83, 45, .3);
}

.dark\:bg-green-950\/30:is(.dark *) {
  background-color: rgba(5, 46, 22, .3);
}

.dark\:bg-indigo-900\/30:is(.dark *) {
  background-color: rgba(49, 46, 129, .3);
}

.dark\:bg-orange-900\/30:is(.dark *) {
  background-color: rgba(124, 45, 18, .3);
}

.dark\:bg-purple-900\/30:is(.dark *) {
  background-color: rgba(88, 28, 135, .3);
}

.dark\:bg-red-900\/30:is(.dark *) {
  background-color: rgba(127, 29, 29, .3);
}

.dark\:bg-red-950\/20:is(.dark *) {
  background-color: rgba(69, 10, 10, .2);
}

.dark\:bg-red-950\/30:is(.dark *) {
  background-color: rgba(69, 10, 10, .3);
}

.dark\:bg-violet-900\/30:is(.dark *) {
  background-color: rgba(76, 29, 149, .3);
}

.dark\:text-amber-200:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgba(253, 230, 138, var(--tw-text-opacity, 1));
}

.dark\:text-amber-300:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgba(252, 211, 77, var(--tw-text-opacity, 1));
}

.dark\:text-amber-400:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgba(251, 191, 36, var(--tw-text-opacity, 1));
}

.dark\:text-blue-300:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgba(147, 197, 253, var(--tw-text-opacity, 1));
}

.dark\:text-cyan-300:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgba(103, 232, 249, var(--tw-text-opacity, 1));
}

.dark\:text-emerald-300:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgba(110, 231, 183, var(--tw-text-opacity, 1));
}

.dark\:text-emerald-400:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgba(52, 211, 153, var(--tw-text-opacity, 1));
}

.dark\:text-green-300:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgba(134, 239, 172, var(--tw-text-opacity, 1));
}

.dark\:text-green-400:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgba(74, 222, 128, var(--tw-text-opacity, 1));
}

.dark\:text-indigo-300:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgba(165, 180, 252, var(--tw-text-opacity, 1));
}

.dark\:text-orange-300:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgba(253, 186, 116, var(--tw-text-opacity, 1));
}

.dark\:text-purple-300:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgba(216, 180, 254, var(--tw-text-opacity, 1));
}

.dark\:text-red-400:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgba(248, 113, 113, var(--tw-text-opacity, 1));
}

.dark\:text-violet-300:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgba(196, 181, 253, var(--tw-text-opacity, 1));
}

@media (min-width: 640px) {
  .sm\:bottom-\[60px\] {
    bottom: 60px;
  }

  .sm\:right-0 {
    right: 0;
  }

  .sm\:top-auto {
    top: auto;
  }

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

  .sm\:mt-0 {
    margin-top: 0;
  }

  .sm\:block {
    display: block;
  }

  .sm\:inline {
    display: inline;
  }

  .sm\:flex {
    display: flex;
  }

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

  .sm\:hidden {
    display: none;
  }

  .sm\:h-10 {
    height: 2.5rem;
  }

  .sm\:h-20 {
    height: 5rem;
  }

  .sm\:h-auto {
    height: auto;
  }

  .sm\:min-h-0 {
    min-height: 0;
  }

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

  .sm\:w-10 {
    width: 2.5rem;
  }

  .sm\:w-20 {
    width: 5rem;
  }

  .sm\:w-48 {
    width: 12rem;
  }

  .sm\:w-\[8rem\] {
    width: 8rem;
  }

  .sm\:w-auto {
    width: auto;
  }

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

  .sm\:max-w-lg {
    max-width: 32rem;
  }

  .sm\:max-w-md {
    max-width: 28rem;
  }

  .sm\:max-w-sm {
    max-width: 24rem;
  }

  .sm\:max-w-xl {
    max-width: 36rem;
  }

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

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

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

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

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

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

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

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

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

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

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

  .sm\:gap-2 {
    gap: .5rem;
  }

  .sm\:gap-3 {
    gap: .75rem;
  }

  .sm\:gap-4 {
    gap: 1rem;
  }

  .sm\:gap-6 {
    gap: 1.5rem;
  }

  .sm\:gap-8 {
    gap: 2rem;
  }

  .sm\:space-x-2 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 0;
    margin-right: calc(.5rem * var(--tw-space-x-reverse));
    margin-left: calc(.5rem * calc(1 - var(--tw-space-x-reverse)));
  }

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

  .sm\:p-2\.5 {
    padding: .625rem;
  }

  .sm\:p-5 {
    padding: 1.25rem;
  }

  .sm\:p-8 {
    padding: 2rem;
  }

  .sm\:px-6 {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .sm\:py-16 {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .sm\:py-24 {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }

  .sm\:py-5 {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }

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

  .sm\:text-2xl {
    font-size: 1.5rem;
    line-height: 2rem;
  }

  .sm\:text-3xl {
    font-size: 1.875rem;
    line-height: 2.25rem;
  }

  .sm\:text-4xl {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }

  .sm\:text-5xl {
    font-size: 3rem;
    line-height: 1;
  }

  .sm\:text-6xl {
    font-size: 3.75rem;
    line-height: 1;
  }

  .sm\:text-sm {
    font-size: .875rem;
    line-height: 1.25rem;
  }

  .sm\:text-xl {
    font-size: 1.25rem;
    line-height: 1.75rem;
  }

  .data-\[state\=open\]\:sm\:slide-in-from-bottom-full[data-state="open"] {
    --tw-enter-translate-y: 100%;
  }
}

@media (min-width: 768px) {
  .md\:block {
    display: block;
  }

  .md\:inline {
    display: inline;
  }

  .md\:flex {
    display: flex;
  }

  .md\:hidden {
    display: none;
  }

  .md\:h-16 {
    height: 4rem;
  }

  .md\:h-3 {
    height: .75rem;
  }

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

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

  .md\:w-28 {
    width: 7rem;
  }

  .md\:w-3 {
    width: .75rem;
  }

  .md\:w-7 {
    width: 1.75rem;
  }

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

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

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

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

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

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

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

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

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

  .md\:p-10 {
    padding: 2.5rem;
  }

  .md\:p-6 {
    padding: 1.5rem;
  }

  .md\:p-8 {
    padding: 2rem;
  }

  .md\:px-6 {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .md\:py-0 {
    padding-top: 0;
    padding-bottom: 0;
  }

  .md\:text-3xl {
    font-size: 1.875rem;
    line-height: 2.25rem;
  }

  .md\:text-\[10px\] {
    font-size: 10px;
  }
}

@media (min-width: 1024px) {
  .lg\:sticky {
    position: -webkit-sticky;
    position: sticky;
  }

  .lg\:top-6 {
    top: 1.5rem;
  }

  .lg\:order-1 {
    order: 1;
  }

  .lg\:order-2 {
    order: 2;
  }

  .lg\:mx-0 {
    margin-left: 0;
    margin-right: 0;
  }

  .lg\:flex {
    display: flex;
  }

  .lg\:hidden {
    display: none;
  }

  .lg\:aspect-auto {
    aspect-ratio: auto;
  }

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

  .lg\:w-40 {
    width: 10rem;
  }

  .lg\:w-64 {
    width: 16rem;
  }

  .lg\:w-80 {
    width: 20rem;
  }

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

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

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

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

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

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

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

  .lg\:grid-cols-\[1fr\,1fr\] {
    grid-template-columns: 1fr 1fr;
  }

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

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

  .lg\:gap-16 {
    gap: 4rem;
  }

  .lg\:gap-20 {
    gap: 5rem;
  }

  .lg\:p-10 {
    padding: 2.5rem;
  }

  .lg\:p-7 {
    padding: 1.75rem;
  }

  .lg\:p-8 {
    padding: 2rem;
  }

  .lg\:px-8 {
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .lg\:py-20 {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }

  .lg\:py-28 {
    padding-top: 7rem;
    padding-bottom: 7rem;
  }

  .lg\:pb-0 {
    padding-bottom: 0;
  }

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

  .lg\:text-3xl {
    font-size: 1.875rem;
    line-height: 2.25rem;
  }

  .lg\:text-5xl {
    font-size: 3rem;
    line-height: 1;
  }

  .lg\:text-6xl {
    font-size: 3.75rem;
    line-height: 1;
  }

  .lg\:text-base {
    font-size: 1rem;
    line-height: 1.5rem;
  }

  .lg\:text-lg {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}

@media (min-width: 1280px) {
  .xl\:w-80 {
    width: 20rem;
  }

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

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

  .xl\:gap-8 {
    gap: 2rem;
  }
}

@media (min-width: 1536px) {
  .\32 xl\:w-\[480px\] {
    width: 480px;
  }
}

.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role="checkbox"]) {
  padding-right: 0;
}

.\[\&\>\*\:first-child\]\:mt-0 > :first-child {
  margin-top: 0;
}

.\[\&\>\*\:last-child\]\:mb-0 > :last-child {
  margin-bottom: 0;
}

.\[\&\>\*\>button\]\:w-full > * > button {
  width: 100%;
}

.\[\&\>\*\>button\]\:justify-start > * > button {
  justify-content: flex-start;
}

.\[\&\>button\]\:w-full > button {
  width: 100%;
}

.\[\&\>button\]\:justify-start > button {
  justify-content: flex-start;
}

.\[\&\>div\]\:bg-destructive > div {
  background-color: hsl(var(--destructive));
}

.\[\&\>div\]\:bg-info > div {
  background-color: hsl(var(--info));
}

.\[\&\>div\]\:bg-muted-foreground\/20 > div {
  background-color: hsl(var(--muted-foreground) / .2);
}

.\[\&\>div\]\:bg-muted-foreground\/40 > div {
  background-color: hsl(var(--muted-foreground) / .4);
}

.\[\&\>div\]\:bg-primary > div {
  background-color: hsl(var(--primary));
}

.\[\&\>div\]\:bg-success > div {
  background-color: hsl(var(--success));
}

.\[\&\>div\]\:bg-warning > div {
  background-color: hsl(var(--warning));
}

.\[\&\>span\]\:line-clamp-1 > span {
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  display: -webkit-box;
  overflow: hidden;
}

.\[\&\>tr\]\:last\:border-b-0:last-child > tr {
  border-bottom-width: 0;
}

.\[\&_\.text-sm\]\:hidden .text-sm {
  display: none;
}

.\[\&_code\]\:rounded code {
  border-radius: .25rem;
}

.\[\&_code\]\:bg-background\/50 code {
  background-color: hsl(var(--background) / .5);
}

.\[\&_code\]\:px-1 code {
  padding-left: .25rem;
  padding-right: .25rem;
}

.\[\&_code\]\:py-0\.5 code {
  padding-top: .125rem;
  padding-bottom: .125rem;
}

.\[\&_code\]\:text-xs code {
  font-size: .75rem;
  line-height: 1rem;
}

.\[\&_tr\:last-child\]\:border-0 tr:last-child {
  border-width: 0;
}

.\[\&_tr\]\:border-b tr {
  border-bottom-width: 1px;
}

/*# sourceMappingURL=%5Broot-of-the-server%5D__512c8cbb._.css.map*/