/* ===== SOURCE: styles/tailwind.generated.css ===== */
/*! tailwindcss v4.1.10 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
      "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --color-red-50: oklch(97.1% 0.013 17.38);
    --color-red-100: oklch(93.6% 0.032 17.717);
    --color-red-200: oklch(88.5% 0.062 18.334);
    --color-red-400: oklch(70.4% 0.191 22.216);
    --color-red-500: oklch(63.7% 0.237 25.331);
    --color-red-600: oklch(57.7% 0.245 27.325);
    --color-red-700: oklch(50.5% 0.213 27.518);
    --color-red-800: oklch(44.4% 0.177 26.899);
    --color-red-900: oklch(39.6% 0.141 25.723);
    --color-orange-50: oklch(98% 0.016 73.684);
    --color-orange-100: oklch(95.4% 0.038 75.164);
    --color-orange-200: oklch(90.1% 0.076 70.697);
    --color-orange-500: oklch(70.5% 0.213 47.604);
    --color-orange-600: oklch(64.6% 0.222 41.116);
    --color-orange-700: oklch(55.3% 0.195 38.402);
    --color-orange-800: oklch(47% 0.157 37.304);
    --color-amber-50: oklch(98.7% 0.022 95.277);
    --color-amber-100: oklch(96.2% 0.059 95.617);
    --color-amber-200: oklch(92.4% 0.12 95.746);
    --color-amber-300: oklch(87.9% 0.169 91.605);
    --color-amber-400: oklch(82.8% 0.189 84.429);
    --color-amber-500: oklch(76.9% 0.188 70.08);
    --color-amber-600: oklch(66.6% 0.179 58.318);
    --color-amber-700: oklch(55.5% 0.163 48.998);
    --color-amber-800: oklch(47.3% 0.137 46.201);
    --color-amber-900: oklch(41.4% 0.112 45.904);
    --color-amber-950: oklch(27.9% 0.077 45.635);
    --color-yellow-50: oklch(98.7% 0.026 102.212);
    --color-yellow-100: oklch(97.3% 0.071 103.193);
    --color-yellow-200: oklch(94.5% 0.129 101.54);
    --color-yellow-300: oklch(90.5% 0.182 98.111);
    --color-yellow-600: oklch(68.1% 0.162 75.834);
    --color-yellow-700: oklch(55.4% 0.135 66.442);
    --color-yellow-800: oklch(47.6% 0.114 61.907);
    --color-yellow-900: oklch(42.1% 0.095 57.708);
    --color-lime-50: oklch(98.6% 0.031 120.757);
    --color-lime-100: oklch(96.7% 0.067 122.328);
    --color-lime-200: oklch(93.8% 0.127 124.321);
    --color-lime-600: oklch(64.8% 0.2 131.684);
    --color-lime-700: oklch(53.2% 0.157 131.589);
    --color-lime-800: oklch(45.3% 0.124 130.933);
    --color-green-50: oklch(98.2% 0.018 155.826);
    --color-green-100: oklch(96.2% 0.044 156.743);
    --color-green-200: oklch(92.5% 0.084 155.995);
    --color-green-500: oklch(72.3% 0.219 149.579);
    --color-green-600: oklch(62.7% 0.194 149.214);
    --color-green-700: oklch(52.7% 0.154 150.069);
    --color-green-800: oklch(44.8% 0.119 151.328);
    --color-emerald-50: oklch(97.9% 0.021 166.113);
    --color-emerald-100: oklch(95% 0.052 163.051);
    --color-emerald-200: oklch(90.5% 0.093 164.15);
    --color-emerald-300: oklch(84.5% 0.143 164.978);
    --color-emerald-400: oklch(76.5% 0.177 163.223);
    --color-emerald-500: oklch(69.6% 0.17 162.48);
    --color-emerald-600: oklch(59.6% 0.145 163.225);
    --color-emerald-700: oklch(50.8% 0.118 165.612);
    --color-emerald-800: oklch(43.2% 0.095 166.913);
    --color-emerald-900: oklch(37.8% 0.077 168.94);
    --color-emerald-950: oklch(26.2% 0.051 172.552);
    --color-teal-50: oklch(98.4% 0.014 180.72);
    --color-teal-100: oklch(95.3% 0.051 180.801);
    --color-teal-200: oklch(91% 0.096 180.426);
    --color-teal-500: oklch(70.4% 0.14 182.503);
    --color-teal-600: oklch(60% 0.118 184.704);
    --color-teal-700: oklch(51.1% 0.096 186.391);
    --color-teal-800: oklch(43.7% 0.078 188.216);
    --color-teal-900: oklch(38.6% 0.063 188.416);
    --color-cyan-50: oklch(98.4% 0.019 200.873);
    --color-cyan-100: oklch(95.6% 0.045 203.388);
    --color-cyan-200: oklch(91.7% 0.08 205.041);
    --color-cyan-500: oklch(71.5% 0.143 215.221);
    --color-cyan-600: oklch(60.9% 0.126 221.723);
    --color-cyan-700: oklch(52% 0.105 223.128);
    --color-cyan-800: oklch(45% 0.085 224.283);
    --color-cyan-900: oklch(39.8% 0.07 227.392);
    --color-sky-50: oklch(97.7% 0.013 236.62);
    --color-sky-100: oklch(95.1% 0.026 236.824);
    --color-sky-200: oklch(90.1% 0.058 230.902);
    --color-sky-300: oklch(82.8% 0.111 230.318);
    --color-sky-400: oklch(74.6% 0.16 232.661);
    --color-sky-500: oklch(68.5% 0.169 237.323);
    --color-sky-600: oklch(58.8% 0.158 241.966);
    --color-sky-700: oklch(50% 0.134 242.749);
    --color-sky-800: oklch(44.3% 0.11 240.79);
    --color-sky-900: oklch(39.1% 0.09 240.876);
    --color-blue-50: oklch(97% 0.014 254.604);
    --color-blue-100: oklch(93.2% 0.032 255.585);
    --color-blue-200: oklch(88.2% 0.059 254.128);
    --color-blue-300: oklch(80.9% 0.105 251.813);
    --color-blue-400: oklch(70.7% 0.165 254.624);
    --color-blue-500: oklch(62.3% 0.214 259.815);
    --color-blue-600: oklch(54.6% 0.245 262.881);
    --color-blue-700: oklch(48.8% 0.243 264.376);
    --color-blue-800: oklch(42.4% 0.199 265.638);
    --color-blue-900: oklch(37.9% 0.146 265.522);
    --color-blue-950: oklch(28.2% 0.091 267.935);
    --color-indigo-50: oklch(96.2% 0.018 272.314);
    --color-indigo-100: oklch(93% 0.034 272.788);
    --color-indigo-200: oklch(87% 0.065 274.039);
    --color-indigo-300: oklch(78.5% 0.115 274.713);
    --color-indigo-400: oklch(67.3% 0.182 276.935);
    --color-indigo-500: oklch(58.5% 0.233 277.117);
    --color-indigo-600: oklch(51.1% 0.262 276.966);
    --color-indigo-700: oklch(45.7% 0.24 277.023);
    --color-indigo-800: oklch(39.8% 0.195 277.366);
    --color-indigo-900: oklch(35.9% 0.144 278.697);
    --color-violet-50: oklch(96.9% 0.016 293.756);
    --color-violet-100: oklch(94.3% 0.029 294.588);
    --color-violet-200: oklch(89.4% 0.057 293.283);
    --color-violet-300: oklch(81.1% 0.111 293.571);
    --color-violet-400: oklch(70.2% 0.183 293.541);
    --color-violet-600: oklch(54.1% 0.281 293.009);
    --color-violet-700: oklch(49.1% 0.27 292.581);
    --color-violet-800: oklch(43.2% 0.232 292.759);
    --color-violet-900: oklch(38% 0.189 293.745);
    --color-purple-50: oklch(97.7% 0.014 308.299);
    --color-purple-100: oklch(94.6% 0.033 307.174);
    --color-purple-200: oklch(90.2% 0.063 306.703);
    --color-purple-300: oklch(82.7% 0.119 306.383);
    --color-purple-400: oklch(71.4% 0.203 305.504);
    --color-purple-600: oklch(55.8% 0.288 302.321);
    --color-purple-700: oklch(49.6% 0.265 301.924);
    --color-purple-800: oklch(43.8% 0.218 303.724);
    --color-fuchsia-50: oklch(97.7% 0.017 320.058);
    --color-fuchsia-100: oklch(95.2% 0.037 318.852);
    --color-fuchsia-200: oklch(90.3% 0.076 319.62);
    --color-fuchsia-700: oklch(51.8% 0.253 323.949);
    --color-fuchsia-800: oklch(45.2% 0.211 324.591);
    --color-fuchsia-900: oklch(40.1% 0.17 325.612);
    --color-fuchsia-950: oklch(29.3% 0.136 325.661);
    --color-pink-50: oklch(97.1% 0.014 343.198);
    --color-pink-100: oklch(94.8% 0.028 342.258);
    --color-pink-200: oklch(89.9% 0.061 343.231);
    --color-pink-300: oklch(82.3% 0.12 346.018);
    --color-pink-500: oklch(65.6% 0.241 354.308);
    --color-pink-600: oklch(59.2% 0.249 0.584);
    --color-pink-700: oklch(52.5% 0.223 3.958);
    --color-pink-800: oklch(45.9% 0.187 3.815);
    --color-rose-50: oklch(96.9% 0.015 12.422);
    --color-rose-100: oklch(94.1% 0.03 12.58);
    --color-rose-200: oklch(89.2% 0.058 10.001);
    --color-rose-300: oklch(81% 0.117 11.638);
    --color-rose-500: oklch(64.5% 0.246 16.439);
    --color-rose-600: oklch(58.6% 0.253 17.585);
    --color-rose-700: oklch(51.4% 0.222 16.935);
    --color-rose-800: oklch(45.5% 0.188 13.697);
    --color-rose-900: oklch(41% 0.159 10.272);
    --color-slate-50: oklch(98.4% 0.003 247.858);
    --color-slate-100: oklch(96.8% 0.007 247.896);
    --color-slate-200: oklch(92.9% 0.013 255.508);
    --color-slate-300: oklch(86.9% 0.022 252.894);
    --color-slate-400: oklch(70.4% 0.04 256.788);
    --color-slate-500: oklch(55.4% 0.046 257.417);
    --color-slate-600: oklch(44.6% 0.043 257.281);
    --color-slate-700: oklch(37.2% 0.044 257.287);
    --color-slate-800: oklch(27.9% 0.041 260.031);
    --color-slate-900: oklch(20.8% 0.042 265.755);
    --color-slate-950: oklch(12.9% 0.042 264.695);
    --color-gray-50: oklch(98.5% 0.002 247.839);
    --color-gray-300: oklch(87.2% 0.01 258.338);
    --color-gray-700: oklch(37.3% 0.034 259.733);
    --color-zinc-50: oklch(98.5% 0 0);
    --color-zinc-100: oklch(96.7% 0.001 286.375);
    --color-zinc-200: oklch(92% 0.004 286.32);
    --color-zinc-300: oklch(87.1% 0.006 286.286);
    --color-zinc-600: oklch(44.2% 0.017 285.786);
    --color-zinc-700: oklch(37% 0.013 285.805);
    --color-zinc-800: oklch(27.4% 0.006 286.033);
    --color-white: #fff;
    --spacing: 0.25rem;
    --container-sm: 24rem;
    --container-md: 28rem;
    --container-lg: 32rem;
    --container-xl: 36rem;
    --container-3xl: 48rem;
    --container-4xl: 56rem;
    --container-6xl: 72rem;
    --container-7xl: 80rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: calc(1 / 0.75);
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-xl: 1.25rem;
    --text-xl--line-height: calc(1.75 / 1.25);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --text-3xl: 1.875rem;
    --text-3xl--line-height: calc(2.25 / 1.875);
    --text-4xl: 2.25rem;
    --text-4xl--line-height: calc(2.5 / 2.25);
    --text-5xl: 3rem;
    --text-5xl--line-height: 1;
    --text-6xl: 3.75rem;
    --text-6xl--line-height: 1;
    --text-7xl: 4.5rem;
    --text-7xl--line-height: 1;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extrabold: 800;
    --font-weight-black: 900;
    --tracking-tight: -0.025em;
    --tracking-wide: 0.025em;
    --tracking-widest: 0.1em;
    --leading-tight: 1.25;
    --leading-relaxed: 1.625;
    --radius-md: 0.375rem;
    --radius-lg: 0.5rem;
    --radius-xl: 0.75rem;
    --radius-2xl: 1rem;
    --radius-3xl: 1.5rem;
    --animate-spin: spin 1s linear infinite;
    --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
    --blur-sm: 8px;
    --blur-xl: 24px;
    --default-transition-duration: 150ms;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
  }
}
@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b, strong {
    font-weight: bolder;
  }
  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol, ul, menu {
    list-style: none;
  }
  img, svg, video, canvas, audio, iframe, embed, object {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer utilities {
  .pointer-events-none {
    pointer-events: none;
  }
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .sticky {
    position: sticky;
  }
  .inset-x-0 {
    inset-inline: calc(var(--spacing) * 0);
  }
  .-top-6 {
    top: calc(var(--spacing) * -6);
  }
  .-top-7 {
    top: calc(var(--spacing) * -7);
  }
  .-top-8 {
    top: calc(var(--spacing) * -8);
  }
  .-top-10 {
    top: calc(var(--spacing) * -10);
  }
  .-top-12 {
    top: calc(var(--spacing) * -12);
  }
  .top-0 {
    top: calc(var(--spacing) * 0);
  }
  .-right-5 {
    right: calc(var(--spacing) * -5);
  }
  .-right-7 {
    right: calc(var(--spacing) * -7);
  }
  .-right-8 {
    right: calc(var(--spacing) * -8);
  }
  .-right-10 {
    right: calc(var(--spacing) * -10);
  }
  .-right-12 {
    right: calc(var(--spacing) * -12);
  }
  .right-4 {
    right: calc(var(--spacing) * 4);
  }
  .bottom-0 {
    bottom: calc(var(--spacing) * 0);
  }
  .bottom-3 {
    bottom: calc(var(--spacing) * 3);
  }
  .bottom-4 {
    bottom: calc(var(--spacing) * 4);
  }
  .bottom-5 {
    bottom: calc(var(--spacing) * 5);
  }
  .bottom-8 {
    bottom: calc(var(--spacing) * 8);
  }
  .-left-10 {
    left: calc(var(--spacing) * -10);
  }
  .left-1\/2 {
    left: calc(1/2 * 100%);
  }
  .z-2 {
    z-index: 2;
  }
  .z-10 {
    z-index: 10;
  }
  .z-50 {
    z-index: 50;
  }
  .z-\[1\] {
    z-index: 1;
  }
  .z-\[70\] {
    z-index: 70;
  }
  .z-\[100\] {
    z-index: 100;
  }
  .z-\[200\] {
    z-index: 200;
  }
  .mx-2 {
    margin-inline: calc(var(--spacing) * 2);
  }
  .mx-auto {
    margin-inline: auto;
  }
  .my-0\.5 {
    margin-block: calc(var(--spacing) * 0.5);
  }
  .my-7 {
    margin-block: calc(var(--spacing) * 7);
  }
  .mt-0\.5 {
    margin-top: calc(var(--spacing) * 0.5);
  }
  .mt-1 {
    margin-top: calc(var(--spacing) * 1);
  }
  .mt-2 {
    margin-top: calc(var(--spacing) * 2);
  }
  .mt-3 {
    margin-top: calc(var(--spacing) * 3);
  }
  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }
  .mt-5 {
    margin-top: calc(var(--spacing) * 5);
  }
  .mt-6 {
    margin-top: calc(var(--spacing) * 6);
  }
  .mt-7 {
    margin-top: calc(var(--spacing) * 7);
  }
  .mt-8 {
    margin-top: calc(var(--spacing) * 8);
  }
  .mt-10 {
    margin-top: calc(var(--spacing) * 10);
  }
  .mt-12 {
    margin-top: calc(var(--spacing) * 12);
  }
  .mr-1 {
    margin-right: calc(var(--spacing) * 1);
  }
  .mr-2 {
    margin-right: calc(var(--spacing) * 2);
  }
  .mb-1 {
    margin-bottom: calc(var(--spacing) * 1);
  }
  .mb-1\.5 {
    margin-bottom: calc(var(--spacing) * 1.5);
  }
  .mb-2 {
    margin-bottom: calc(var(--spacing) * 2);
  }
  .mb-2\.5 {
    margin-bottom: calc(var(--spacing) * 2.5);
  }
  .mb-3 {
    margin-bottom: calc(var(--spacing) * 3);
  }
  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }
  .mb-5 {
    margin-bottom: calc(var(--spacing) * 5);
  }
  .mb-6 {
    margin-bottom: calc(var(--spacing) * 6);
  }
  .mb-7 {
    margin-bottom: calc(var(--spacing) * 7);
  }
  .mb-8 {
    margin-bottom: calc(var(--spacing) * 8);
  }
  .ml-auto {
    margin-left: auto;
  }
  .line-clamp-2 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
  .block {
    display: block;
  }
  .contents {
    display: contents;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline {
    display: inline;
  }
  .inline-block {
    display: inline-block;
  }
  .inline-flex {
    display: inline-flex;
  }
  .h-1\.5 {
    height: calc(var(--spacing) * 1.5);
  }
  .h-1\/2 {
    height: calc(1/2 * 100%);
  }
  .h-2 {
    height: calc(var(--spacing) * 2);
  }
  .h-3 {
    height: calc(var(--spacing) * 3);
  }
  .h-4 {
    height: calc(var(--spacing) * 4);
  }
  .h-5 {
    height: calc(var(--spacing) * 5);
  }
  .h-6 {
    height: calc(var(--spacing) * 6);
  }
  .h-7 {
    height: calc(var(--spacing) * 7);
  }
  .h-8 {
    height: calc(var(--spacing) * 8);
  }
  .h-9 {
    height: calc(var(--spacing) * 9);
  }
  .h-10 {
    height: calc(var(--spacing) * 10);
  }
  .h-11 {
    height: calc(var(--spacing) * 11);
  }
  .h-12 {
    height: calc(var(--spacing) * 12);
  }
  .h-16 {
    height: calc(var(--spacing) * 16);
  }
  .h-20 {
    height: calc(var(--spacing) * 20);
  }
  .h-24 {
    height: calc(var(--spacing) * 24);
  }
  .h-28 {
    height: calc(var(--spacing) * 28);
  }
  .h-\[120px\] {
    height: 120px;
  }
  .h-\[260px\] {
    height: 260px;
  }
  .h-\[290px\] {
    height: 290px;
  }
  .h-\[320px\] {
    height: 320px;
  }
  .h-\[360px\] {
    height: 360px;
  }
  .h-\[calc\(100\%-28px\)\] {
    height: calc(100% - 28px);
  }
  .h-\[calc\(100\%-44px\)\] {
    height: calc(100% - 44px);
  }
  .h-auto {
    height: auto;
  }
  .h-full {
    height: 100%;
  }
  .max-h-16 {
    max-height: calc(var(--spacing) * 16);
  }
  .max-h-32 {
    max-height: calc(var(--spacing) * 32);
  }
  .max-h-40 {
    max-height: calc(var(--spacing) * 40);
  }
  .max-h-56 {
    max-height: calc(var(--spacing) * 56);
  }
  .min-h-0 {
    min-height: calc(var(--spacing) * 0);
  }
  .min-h-\[2\.3rem\] {
    min-height: 2.3rem;
  }
  .min-h-\[calc\(100vh-130px\)\] {
    min-height: calc(100vh - 130px);
  }
  .min-h-screen {
    min-height: 100vh;
  }
  .w-3 {
    width: calc(var(--spacing) * 3);
  }
  .w-4 {
    width: calc(var(--spacing) * 4);
  }
  .w-6 {
    width: calc(var(--spacing) * 6);
  }
  .w-7 {
    width: calc(var(--spacing) * 7);
  }
  .w-8 {
    width: calc(var(--spacing) * 8);
  }
  .w-9 {
    width: calc(var(--spacing) * 9);
  }
  .w-10 {
    width: calc(var(--spacing) * 10);
  }
  .w-11 {
    width: calc(var(--spacing) * 11);
  }
  .w-12 {
    width: calc(var(--spacing) * 12);
  }
  .w-14 {
    width: calc(var(--spacing) * 14);
  }
  .w-16 {
    width: calc(var(--spacing) * 16);
  }
  .w-20 {
    width: calc(var(--spacing) * 20);
  }
  .w-24 {
    width: calc(var(--spacing) * 24);
  }
  .w-28 {
    width: calc(var(--spacing) * 28);
  }
  .w-32 {
    width: calc(var(--spacing) * 32);
  }
  .w-44 {
    width: calc(var(--spacing) * 44);
  }
  .w-auto {
    width: auto;
  }
  .w-full {
    width: 100%;
  }
  .max-w-3xl {
    max-width: var(--container-3xl);
  }
  .max-w-4xl {
    max-width: var(--container-4xl);
  }
  .max-w-6xl {
    max-width: var(--container-6xl);
  }
  .max-w-7xl {
    max-width: var(--container-7xl);
  }
  .max-w-32 {
    max-width: calc(var(--spacing) * 32);
  }
  .max-w-\[90vw\] {
    max-width: 90vw;
  }
  .max-w-\[420px\] {
    max-width: 420px;
  }
  .max-w-\[calc\(100vw-2rem\)\] {
    max-width: calc(100vw - 2rem);
  }
  .max-w-lg {
    max-width: var(--container-lg);
  }
  .max-w-md {
    max-width: var(--container-md);
  }
  .max-w-none {
    max-width: none;
  }
  .max-w-sm {
    max-width: var(--container-sm);
  }
  .max-w-xl {
    max-width: var(--container-xl);
  }
  .min-w-0 {
    min-width: calc(var(--spacing) * 0);
  }
  .min-w-\[128px\] {
    min-width: 128px;
  }
  .min-w-\[150px\] {
    min-width: 150px;
  }
  .min-w-\[200px\] {
    min-width: 200px;
  }
  .min-w-\[220px\] {
    min-width: 220px;
  }
  .min-w-\[290px\] {
    min-width: 290px;
  }
  .min-w-\[430px\] {
    min-width: 430px;
  }
  .min-w-\[680px\] {
    min-width: 680px;
  }
  .min-w-\[1120px\] {
    min-width: 1120px;
  }
  .min-w-full {
    min-width: 100%;
  }
  .flex-1 {
    flex: 1;
  }
  .flex-none {
    flex: none;
  }
  .flex-shrink-0 {
    flex-shrink: 0;
  }
  .shrink-0 {
    flex-shrink: 0;
  }
  .border-collapse {
    border-collapse: collapse;
  }
  .-translate-x-1\/2 {
    --tw-translate-x: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .animate-pulse {
    animation: var(--animate-pulse);
  }
  .animate-spin {
    animation: var(--animate-spin);
  }
  .cursor-not-allowed {
    cursor: not-allowed;
  }
  .cursor-pointer {
    cursor: pointer;
  }
  .touch-none {
    touch-action: none;
  }
  .list-inside {
    list-style-position: inside;
  }
  .list-decimal {
    list-style-type: decimal;
  }
  .list-disc {
    list-style-type: disc;
  }
  .list-none {
    list-style-type: 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-\[1fr_auto\] {
    grid-template-columns: 1fr auto;
  }
  .grid-cols-\[70px_repeat\(18\,minmax\(0\,1fr\)\)\] {
    grid-template-columns: 70px repeat(18,minmax(0,1fr));
  }
  .grid-cols-\[auto_1fr_auto\] {
    grid-template-columns: auto 1fr auto;
  }
  .flex-col {
    flex-direction: column;
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .items-center {
    align-items: center;
  }
  .items-end {
    align-items: flex-end;
  }
  .items-start {
    align-items: flex-start;
  }
  .items-stretch {
    align-items: stretch;
  }
  .justify-between {
    justify-content: space-between;
  }
  .justify-center {
    justify-content: center;
  }
  .justify-end {
    justify-content: flex-end;
  }
  .gap-1 {
    gap: calc(var(--spacing) * 1);
  }
  .gap-1\.5 {
    gap: calc(var(--spacing) * 1.5);
  }
  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .gap-3 {
    gap: calc(var(--spacing) * 3);
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  .gap-5 {
    gap: calc(var(--spacing) * 5);
  }
  .gap-6 {
    gap: calc(var(--spacing) * 6);
  }
  .gap-7 {
    gap: calc(var(--spacing) * 7);
  }
  .space-y-0\.5 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 0.5) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 0.5) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-1 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-2 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-3 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-4 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-5 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-6 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .overflow-auto {
    overflow: auto;
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .overflow-visible {
    overflow: visible;
  }
  .overflow-x-auto {
    overflow-x: auto;
  }
  .overflow-x-hidden {
    overflow-x: hidden;
  }
  .overflow-y-auto {
    overflow-y: auto;
  }
  .overflow-y-hidden {
    overflow-y: hidden;
  }
  .rounded {
    border-radius: 0.25rem;
  }
  .rounded-2xl {
    border-radius: var(--radius-2xl);
  }
  .rounded-3xl {
    border-radius: var(--radius-3xl);
  }
  .rounded-\[14px\] {
    border-radius: 14px;
  }
  .rounded-\[15px\] {
    border-radius: 15px;
  }
  .rounded-\[16px\] {
    border-radius: 16px;
  }
  .rounded-\[18px\] {
    border-radius: 18px;
  }
  .rounded-\[20px\] {
    border-radius: 20px;
  }
  .rounded-\[22px\] {
    border-radius: 22px;
  }
  .rounded-\[24px\] {
    border-radius: 24px;
  }
  .rounded-\[26px\] {
    border-radius: 26px;
  }
  .rounded-\[28px\] {
    border-radius: 28px;
  }
  .rounded-\[30px\] {
    border-radius: 30px;
  }
  .rounded-full {
    border-radius: calc(infinity * 1px);
  }
  .rounded-lg {
    border-radius: var(--radius-lg);
  }
  .rounded-md {
    border-radius: var(--radius-md);
  }
  .rounded-xl {
    border-radius: var(--radius-xl);
  }
  .rounded-t-lg {
    border-top-left-radius: var(--radius-lg);
    border-top-right-radius: var(--radius-lg);
  }
  .rounded-b-lg {
    border-bottom-right-radius: var(--radius-lg);
    border-bottom-left-radius: var(--radius-lg);
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-2 {
    border-style: var(--tw-border-style);
    border-width: 2px;
  }
  .border-4 {
    border-style: var(--tw-border-style);
    border-width: 4px;
  }
  .border-t {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }
  .border-r {
    border-right-style: var(--tw-border-style);
    border-right-width: 1px;
  }
  .border-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .border-l-4 {
    border-left-style: var(--tw-border-style);
    border-left-width: 4px;
  }
  .border-dashed {
    --tw-border-style: dashed;
    border-style: dashed;
  }
  .border-amber-100 {
    border-color: var(--color-amber-100);
  }
  .border-amber-100\/80 {
    border-color: color-mix(in srgb, oklch(96.2% 0.059 95.617) 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-amber-100) 80%, transparent);
    }
  }
  .border-amber-200 {
    border-color: var(--color-amber-200);
  }
  .border-amber-300 {
    border-color: var(--color-amber-300);
  }
  .border-blue-100 {
    border-color: var(--color-blue-100);
  }
  .border-blue-100\/80 {
    border-color: color-mix(in srgb, oklch(93.2% 0.032 255.585) 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-blue-100) 80%, transparent);
    }
  }
  .border-blue-200 {
    border-color: var(--color-blue-200);
  }
  .border-blue-300 {
    border-color: var(--color-blue-300);
  }
  .border-blue-400 {
    border-color: var(--color-blue-400);
  }
  .border-cyan-100 {
    border-color: var(--color-cyan-100);
  }
  .border-cyan-100\/80 {
    border-color: color-mix(in srgb, oklch(95.6% 0.045 203.388) 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-cyan-100) 80%, transparent);
    }
  }
  .border-cyan-200 {
    border-color: var(--color-cyan-200);
  }
  .border-cyan-200\/70 {
    border-color: color-mix(in srgb, oklch(91.7% 0.08 205.041) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-cyan-200) 70%, transparent);
    }
  }
  .border-emerald-100 {
    border-color: var(--color-emerald-100);
  }
  .border-emerald-100\/80 {
    border-color: color-mix(in srgb, oklch(95% 0.052 163.051) 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-emerald-100) 80%, transparent);
    }
  }
  .border-emerald-200 {
    border-color: var(--color-emerald-200);
  }
  .border-emerald-300 {
    border-color: var(--color-emerald-300);
  }
  .border-emerald-500 {
    border-color: var(--color-emerald-500);
  }
  .border-fuchsia-100 {
    border-color: var(--color-fuchsia-100);
  }
  .border-fuchsia-100\/80 {
    border-color: color-mix(in srgb, oklch(95.2% 0.037 318.852) 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-fuchsia-100) 80%, transparent);
    }
  }
  .border-fuchsia-200 {
    border-color: var(--color-fuchsia-200);
  }
  .border-gray-300 {
    border-color: var(--color-gray-300);
  }
  .border-green-200 {
    border-color: var(--color-green-200);
  }
  .border-indigo-100 {
    border-color: var(--color-indigo-100);
  }
  .border-indigo-100\/70 {
    border-color: color-mix(in srgb, oklch(93% 0.034 272.788) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-indigo-100) 70%, transparent);
    }
  }
  .border-indigo-100\/80 {
    border-color: color-mix(in srgb, oklch(93% 0.034 272.788) 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-indigo-100) 80%, transparent);
    }
  }
  .border-indigo-200 {
    border-color: var(--color-indigo-200);
  }
  .border-indigo-300 {
    border-color: var(--color-indigo-300);
  }
  .border-lime-100 {
    border-color: var(--color-lime-100);
  }
  .border-lime-200 {
    border-color: var(--color-lime-200);
  }
  .border-orange-200 {
    border-color: var(--color-orange-200);
  }
  .border-pink-200 {
    border-color: var(--color-pink-200);
  }
  .border-pink-300 {
    border-color: var(--color-pink-300);
  }
  .border-purple-100 {
    border-color: var(--color-purple-100);
  }
  .border-purple-200 {
    border-color: var(--color-purple-200);
  }
  .border-purple-300 {
    border-color: var(--color-purple-300);
  }
  .border-red-200 {
    border-color: var(--color-red-200);
  }
  .border-red-500 {
    border-color: var(--color-red-500);
  }
  .border-rose-100 {
    border-color: var(--color-rose-100);
  }
  .border-rose-100\/80 {
    border-color: color-mix(in srgb, oklch(94.1% 0.03 12.58) 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-rose-100) 80%, transparent);
    }
  }
  .border-rose-200 {
    border-color: var(--color-rose-200);
  }
  .border-rose-300 {
    border-color: var(--color-rose-300);
  }
  .border-sky-100 {
    border-color: var(--color-sky-100);
  }
  .border-sky-100\/80 {
    border-color: color-mix(in srgb, oklch(95.1% 0.026 236.824) 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-sky-100) 80%, transparent);
    }
  }
  .border-sky-200 {
    border-color: var(--color-sky-200);
  }
  .border-slate-100 {
    border-color: var(--color-slate-100);
  }
  .border-slate-200 {
    border-color: var(--color-slate-200);
  }
  .border-slate-200\/70 {
    border-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-slate-200) 70%, transparent);
    }
  }
  .border-slate-200\/80 {
    border-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-slate-200) 80%, transparent);
    }
  }
  .border-slate-300 {
    border-color: var(--color-slate-300);
  }
  .border-slate-900 {
    border-color: var(--color-slate-900);
  }
  .border-teal-100 {
    border-color: var(--color-teal-100);
  }
  .border-teal-200 {
    border-color: var(--color-teal-200);
  }
  .border-transparent {
    border-color: transparent;
  }
  .border-violet-100 {
    border-color: var(--color-violet-100);
  }
  .border-violet-100\/80 {
    border-color: color-mix(in srgb, oklch(94.3% 0.029 294.588) 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-violet-100) 80%, transparent);
    }
  }
  .border-violet-200 {
    border-color: var(--color-violet-200);
  }
  .border-violet-300 {
    border-color: var(--color-violet-300);
  }
  .border-white {
    border-color: var(--color-white);
  }
  .border-white\/15 {
    border-color: color-mix(in srgb, #fff 15%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-white) 15%, transparent);
    }
  }
  .border-white\/60 {
    border-color: color-mix(in srgb, #fff 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-white) 60%, transparent);
    }
  }
  .border-white\/70 {
    border-color: color-mix(in srgb, #fff 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-white) 70%, transparent);
    }
  }
  .border-white\/80 {
    border-color: color-mix(in srgb, #fff 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-white) 80%, transparent);
    }
  }
  .border-white\/90 {
    border-color: color-mix(in srgb, #fff 90%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-white) 90%, transparent);
    }
  }
  .border-yellow-100 {
    border-color: var(--color-yellow-100);
  }
  .border-yellow-200 {
    border-color: var(--color-yellow-200);
  }
  .border-zinc-200 {
    border-color: var(--color-zinc-200);
  }
  .border-zinc-300 {
    border-color: var(--color-zinc-300);
  }
  .border-t-blue-700 {
    border-top-color: var(--color-blue-700);
  }
  .bg-amber-50 {
    background-color: var(--color-amber-50);
  }
  .bg-amber-50\/60 {
    background-color: color-mix(in srgb, oklch(98.7% 0.022 95.277) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-amber-50) 60%, transparent);
    }
  }
  .bg-amber-50\/70 {
    background-color: color-mix(in srgb, oklch(98.7% 0.022 95.277) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-amber-50) 70%, transparent);
    }
  }
  .bg-amber-50\/80 {
    background-color: color-mix(in srgb, oklch(98.7% 0.022 95.277) 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-amber-50) 80%, transparent);
    }
  }
  .bg-amber-100 {
    background-color: var(--color-amber-100);
  }
  .bg-amber-100\/70 {
    background-color: color-mix(in srgb, oklch(96.2% 0.059 95.617) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-amber-100) 70%, transparent);
    }
  }
  .bg-amber-400 {
    background-color: var(--color-amber-400);
  }
  .bg-amber-500 {
    background-color: var(--color-amber-500);
  }
  .bg-amber-600 {
    background-color: var(--color-amber-600);
  }
  .bg-blue-50 {
    background-color: var(--color-blue-50);
  }
  .bg-blue-50\/40 {
    background-color: color-mix(in srgb, oklch(97% 0.014 254.604) 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-blue-50) 40%, transparent);
    }
  }
  .bg-blue-50\/50 {
    background-color: color-mix(in srgb, oklch(97% 0.014 254.604) 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-blue-50) 50%, transparent);
    }
  }
  .bg-blue-50\/60 {
    background-color: color-mix(in srgb, oklch(97% 0.014 254.604) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-blue-50) 60%, transparent);
    }
  }
  .bg-blue-50\/70 {
    background-color: color-mix(in srgb, oklch(97% 0.014 254.604) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-blue-50) 70%, transparent);
    }
  }
  .bg-blue-50\/80 {
    background-color: color-mix(in srgb, oklch(97% 0.014 254.604) 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-blue-50) 80%, transparent);
    }
  }
  .bg-blue-100 {
    background-color: var(--color-blue-100);
  }
  .bg-blue-200 {
    background-color: var(--color-blue-200);
  }
  .bg-blue-500 {
    background-color: var(--color-blue-500);
  }
  .bg-blue-600 {
    background-color: var(--color-blue-600);
  }
  .bg-blue-900 {
    background-color: var(--color-blue-900);
  }
  .bg-cyan-50 {
    background-color: var(--color-cyan-50);
  }
  .bg-cyan-50\/60 {
    background-color: color-mix(in srgb, oklch(98.4% 0.019 200.873) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-cyan-50) 60%, transparent);
    }
  }
  .bg-cyan-50\/70 {
    background-color: color-mix(in srgb, oklch(98.4% 0.019 200.873) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-cyan-50) 70%, transparent);
    }
  }
  .bg-cyan-100 {
    background-color: var(--color-cyan-100);
  }
  .bg-cyan-100\/60 {
    background-color: color-mix(in srgb, oklch(95.6% 0.045 203.388) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-cyan-100) 60%, transparent);
    }
  }
  .bg-cyan-600 {
    background-color: var(--color-cyan-600);
  }
  .bg-cyan-700 {
    background-color: var(--color-cyan-700);
  }
  .bg-emerald-50 {
    background-color: var(--color-emerald-50);
  }
  .bg-emerald-50\/40 {
    background-color: color-mix(in srgb, oklch(97.9% 0.021 166.113) 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-emerald-50) 40%, transparent);
    }
  }
  .bg-emerald-50\/50 {
    background-color: color-mix(in srgb, oklch(97.9% 0.021 166.113) 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-emerald-50) 50%, transparent);
    }
  }
  .bg-emerald-50\/60 {
    background-color: color-mix(in srgb, oklch(97.9% 0.021 166.113) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-emerald-50) 60%, transparent);
    }
  }
  .bg-emerald-50\/70 {
    background-color: color-mix(in srgb, oklch(97.9% 0.021 166.113) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-emerald-50) 70%, transparent);
    }
  }
  .bg-emerald-50\/80 {
    background-color: color-mix(in srgb, oklch(97.9% 0.021 166.113) 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-emerald-50) 80%, transparent);
    }
  }
  .bg-emerald-100 {
    background-color: var(--color-emerald-100);
  }
  .bg-emerald-500 {
    background-color: var(--color-emerald-500);
  }
  .bg-emerald-600 {
    background-color: var(--color-emerald-600);
  }
  .bg-emerald-700 {
    background-color: var(--color-emerald-700);
  }
  .bg-fuchsia-50 {
    background-color: var(--color-fuchsia-50);
  }
  .bg-fuchsia-50\/70 {
    background-color: color-mix(in srgb, oklch(97.7% 0.017 320.058) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-fuchsia-50) 70%, transparent);
    }
  }
  .bg-fuchsia-100 {
    background-color: var(--color-fuchsia-100);
  }
  .bg-gray-50 {
    background-color: var(--color-gray-50);
  }
  .bg-green-50 {
    background-color: var(--color-green-50);
  }
  .bg-green-100 {
    background-color: var(--color-green-100);
  }
  .bg-indigo-50 {
    background-color: var(--color-indigo-50);
  }
  .bg-indigo-50\/60 {
    background-color: color-mix(in srgb, oklch(96.2% 0.018 272.314) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-indigo-50) 60%, transparent);
    }
  }
  .bg-indigo-50\/70 {
    background-color: color-mix(in srgb, oklch(96.2% 0.018 272.314) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-indigo-50) 70%, transparent);
    }
  }
  .bg-indigo-100 {
    background-color: var(--color-indigo-100);
  }
  .bg-indigo-200 {
    background-color: var(--color-indigo-200);
  }
  .bg-indigo-200\/35 {
    background-color: color-mix(in srgb, oklch(87% 0.065 274.039) 35%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-indigo-200) 35%, transparent);
    }
  }
  .bg-indigo-300 {
    background-color: var(--color-indigo-300);
  }
  .bg-indigo-400 {
    background-color: var(--color-indigo-400);
  }
  .bg-indigo-500 {
    background-color: var(--color-indigo-500);
  }
  .bg-indigo-600 {
    background-color: var(--color-indigo-600);
  }
  .bg-indigo-700 {
    background-color: var(--color-indigo-700);
  }
  .bg-lime-50\/70 {
    background-color: color-mix(in srgb, oklch(98.6% 0.031 120.757) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-lime-50) 70%, transparent);
    }
  }
  .bg-lime-100 {
    background-color: var(--color-lime-100);
  }
  .bg-lime-600 {
    background-color: var(--color-lime-600);
  }
  .bg-lime-700 {
    background-color: var(--color-lime-700);
  }
  .bg-orange-50 {
    background-color: var(--color-orange-50);
  }
  .bg-orange-100 {
    background-color: var(--color-orange-100);
  }
  .bg-orange-200\/45 {
    background-color: color-mix(in srgb, oklch(90.1% 0.076 70.697) 45%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-orange-200) 45%, transparent);
    }
  }
  .bg-orange-500 {
    background-color: var(--color-orange-500);
  }
  .bg-pink-50 {
    background-color: var(--color-pink-50);
  }
  .bg-pink-100 {
    background-color: var(--color-pink-100);
  }
  .bg-pink-500 {
    background-color: var(--color-pink-500);
  }
  .bg-purple-50 {
    background-color: var(--color-purple-50);
  }
  .bg-purple-100 {
    background-color: var(--color-purple-100);
  }
  .bg-purple-200 {
    background-color: var(--color-purple-200);
  }
  .bg-purple-400 {
    background-color: var(--color-purple-400);
  }
  .bg-purple-600 {
    background-color: var(--color-purple-600);
  }
  .bg-red-50 {
    background-color: var(--color-red-50);
  }
  .bg-red-100 {
    background-color: var(--color-red-100);
  }
  .bg-rose-50 {
    background-color: var(--color-rose-50);
  }
  .bg-rose-50\/35 {
    background-color: color-mix(in srgb, oklch(96.9% 0.015 12.422) 35%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-rose-50) 35%, transparent);
    }
  }
  .bg-rose-50\/70 {
    background-color: color-mix(in srgb, oklch(96.9% 0.015 12.422) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-rose-50) 70%, transparent);
    }
  }
  .bg-rose-50\/80 {
    background-color: color-mix(in srgb, oklch(96.9% 0.015 12.422) 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-rose-50) 80%, transparent);
    }
  }
  .bg-rose-100 {
    background-color: var(--color-rose-100);
  }
  .bg-rose-500 {
    background-color: var(--color-rose-500);
  }
  .bg-rose-700 {
    background-color: var(--color-rose-700);
  }
  .bg-sky-50 {
    background-color: var(--color-sky-50);
  }
  .bg-sky-50\/70 {
    background-color: color-mix(in srgb, oklch(97.7% 0.013 236.62) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-sky-50) 70%, transparent);
    }
  }
  .bg-sky-50\/80 {
    background-color: color-mix(in srgb, oklch(97.7% 0.013 236.62) 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-sky-50) 80%, transparent);
    }
  }
  .bg-sky-100 {
    background-color: var(--color-sky-100);
  }
  .bg-sky-200 {
    background-color: var(--color-sky-200);
  }
  .bg-sky-200\/35 {
    background-color: color-mix(in srgb, oklch(90.1% 0.058 230.902) 35%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-sky-200) 35%, transparent);
    }
  }
  .bg-sky-300 {
    background-color: var(--color-sky-300);
  }
  .bg-sky-400 {
    background-color: var(--color-sky-400);
  }
  .bg-sky-500 {
    background-color: var(--color-sky-500);
  }
  .bg-sky-600 {
    background-color: var(--color-sky-600);
  }
  .bg-sky-700 {
    background-color: var(--color-sky-700);
  }
  .bg-slate-50 {
    background-color: var(--color-slate-50);
  }
  .bg-slate-50\/50 {
    background-color: color-mix(in srgb, oklch(98.4% 0.003 247.858) 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-50) 50%, transparent);
    }
  }
  .bg-slate-50\/60 {
    background-color: color-mix(in srgb, oklch(98.4% 0.003 247.858) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-50) 60%, transparent);
    }
  }
  .bg-slate-50\/70 {
    background-color: color-mix(in srgb, oklch(98.4% 0.003 247.858) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-50) 70%, transparent);
    }
  }
  .bg-slate-50\/80 {
    background-color: color-mix(in srgb, oklch(98.4% 0.003 247.858) 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-50) 80%, transparent);
    }
  }
  .bg-slate-50\/85 {
    background-color: color-mix(in srgb, oklch(98.4% 0.003 247.858) 85%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-50) 85%, transparent);
    }
  }
  .bg-slate-100 {
    background-color: var(--color-slate-100);
  }
  .bg-slate-200 {
    background-color: var(--color-slate-200);
  }
  .bg-slate-200\/40 {
    background-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-200) 40%, transparent);
    }
  }
  .bg-slate-600 {
    background-color: var(--color-slate-600);
  }
  .bg-slate-900 {
    background-color: var(--color-slate-900);
  }
  .bg-slate-950 {
    background-color: var(--color-slate-950);
  }
  .bg-teal-50 {
    background-color: var(--color-teal-50);
  }
  .bg-teal-50\/60 {
    background-color: color-mix(in srgb, oklch(98.4% 0.014 180.72) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-teal-50) 60%, transparent);
    }
  }
  .bg-teal-50\/70 {
    background-color: color-mix(in srgb, oklch(98.4% 0.014 180.72) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-teal-50) 70%, transparent);
    }
  }
  .bg-teal-100 {
    background-color: var(--color-teal-100);
  }
  .bg-teal-600 {
    background-color: var(--color-teal-600);
  }
  .bg-transparent {
    background-color: transparent;
  }
  .bg-violet-50 {
    background-color: var(--color-violet-50);
  }
  .bg-violet-50\/35 {
    background-color: color-mix(in srgb, oklch(96.9% 0.016 293.756) 35%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-violet-50) 35%, transparent);
    }
  }
  .bg-violet-50\/70 {
    background-color: color-mix(in srgb, oklch(96.9% 0.016 293.756) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-violet-50) 70%, transparent);
    }
  }
  .bg-violet-50\/75 {
    background-color: color-mix(in srgb, oklch(96.9% 0.016 293.756) 75%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-violet-50) 75%, transparent);
    }
  }
  .bg-violet-50\/80 {
    background-color: color-mix(in srgb, oklch(96.9% 0.016 293.756) 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-violet-50) 80%, transparent);
    }
  }
  .bg-violet-100 {
    background-color: var(--color-violet-100);
  }
  .bg-violet-600 {
    background-color: var(--color-violet-600);
  }
  .bg-white {
    background-color: var(--color-white);
  }
  .bg-white\/10 {
    background-color: color-mix(in srgb, #fff 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    }
  }
  .bg-white\/40 {
    background-color: color-mix(in srgb, #fff 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 40%, transparent);
    }
  }
  .bg-white\/65 {
    background-color: color-mix(in srgb, #fff 65%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 65%, transparent);
    }
  }
  .bg-white\/70 {
    background-color: color-mix(in srgb, #fff 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 70%, transparent);
    }
  }
  .bg-white\/75 {
    background-color: color-mix(in srgb, #fff 75%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 75%, transparent);
    }
  }
  .bg-white\/80 {
    background-color: color-mix(in srgb, #fff 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 80%, transparent);
    }
  }
  .bg-white\/85 {
    background-color: color-mix(in srgb, #fff 85%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 85%, transparent);
    }
  }
  .bg-white\/88 {
    background-color: color-mix(in srgb, #fff 88%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 88%, transparent);
    }
  }
  .bg-white\/90 {
    background-color: color-mix(in srgb, #fff 90%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 90%, transparent);
    }
  }
  .bg-white\/92 {
    background-color: color-mix(in srgb, #fff 92%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 92%, transparent);
    }
  }
  .bg-white\/95 {
    background-color: color-mix(in srgb, #fff 95%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 95%, transparent);
    }
  }
  .bg-yellow-50 {
    background-color: var(--color-yellow-50);
  }
  .bg-yellow-50\/70 {
    background-color: color-mix(in srgb, oklch(98.7% 0.026 102.212) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-yellow-50) 70%, transparent);
    }
  }
  .bg-yellow-300 {
    background-color: var(--color-yellow-300);
  }
  .bg-zinc-50 {
    background-color: var(--color-zinc-50);
  }
  .bg-zinc-100 {
    background-color: var(--color-zinc-100);
  }
  .bg-zinc-600 {
    background-color: var(--color-zinc-600);
  }
  .bg-gradient-to-b {
    --tw-gradient-position: to bottom in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }
  .bg-gradient-to-br {
    --tw-gradient-position: to bottom right in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }
  .bg-gradient-to-r {
    --tw-gradient-position: to right in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }
  .bg-\[linear-gradient\(180deg\,\#ffffff\,\#f8fafc\)\] {
    background-image: linear-gradient(180deg,#ffffff,#f8fafc);
  }
  .bg-\[radial-gradient\(circle_at_top\,_rgba\(125\,211\,252\,0\.28\)\,_rgba\(15\,23\,42\,0\.96\)_60\%\)\] {
    background-image: radial-gradient(circle at top, rgba(125,211,252,0.28), rgba(15,23,42,0.96) 60%);
  }
  .from-amber-50 {
    --tw-gradient-from: var(--color-amber-50);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-amber-500 {
    --tw-gradient-from: var(--color-amber-500);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-blue-600 {
    --tw-gradient-from: var(--color-blue-600);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-cyan-50\/90 {
    --tw-gradient-from: color-mix(in srgb, oklch(98.4% 0.019 200.873) 90%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-from: color-mix(in oklab, var(--color-cyan-50) 90%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-emerald-50 {
    --tw-gradient-from: var(--color-emerald-50);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-emerald-700 {
    --tw-gradient-from: var(--color-emerald-700);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-indigo-50\/85 {
    --tw-gradient-from: color-mix(in srgb, oklch(96.2% 0.018 272.314) 85%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-from: color-mix(in oklab, var(--color-indigo-50) 85%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-pink-50 {
    --tw-gradient-from: var(--color-pink-50);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-rose-600 {
    --tw-gradient-from: var(--color-rose-600);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-sky-50 {
    --tw-gradient-from: var(--color-sky-50);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-sky-50\/95 {
    --tw-gradient-from: color-mix(in srgb, oklch(97.7% 0.013 236.62) 95%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-from: color-mix(in oklab, var(--color-sky-50) 95%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-sky-400 {
    --tw-gradient-from: var(--color-sky-400);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-violet-50 {
    --tw-gradient-from: var(--color-violet-50);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-white {
    --tw-gradient-from: var(--color-white);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .via-orange-50 {
    --tw-gradient-via: var(--color-orange-50);
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }
  .via-orange-500 {
    --tw-gradient-via: var(--color-orange-500);
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }
  .via-violet-50 {
    --tw-gradient-via: var(--color-violet-50);
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }
  .via-violet-50\/40 {
    --tw-gradient-via: color-mix(in srgb, oklch(96.9% 0.016 293.756) 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-via: color-mix(in oklab, var(--color-violet-50) 40%, transparent);
    }
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }
  .via-white {
    --tw-gradient-via: var(--color-white);
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }
  .to-blue-50 {
    --tw-gradient-to: var(--color-blue-50);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-blue-50\/75 {
    --tw-gradient-to: color-mix(in srgb, oklch(97% 0.014 254.604) 75%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-to: color-mix(in oklab, var(--color-blue-50) 75%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-blue-50\/80 {
    --tw-gradient-to: color-mix(in srgb, oklch(97% 0.014 254.604) 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-to: color-mix(in oklab, var(--color-blue-50) 80%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-cyan-50\/60 {
    --tw-gradient-to: color-mix(in srgb, oklch(98.4% 0.019 200.873) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-to: color-mix(in oklab, var(--color-cyan-50) 60%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-cyan-50\/70 {
    --tw-gradient-to: color-mix(in srgb, oklch(98.4% 0.019 200.873) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-to: color-mix(in oklab, var(--color-cyan-50) 70%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-cyan-50\/85 {
    --tw-gradient-to: color-mix(in srgb, oklch(98.4% 0.019 200.873) 85%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-to: color-mix(in oklab, var(--color-cyan-50) 85%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-cyan-100 {
    --tw-gradient-to: var(--color-cyan-100);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-emerald-50\/60 {
    --tw-gradient-to: color-mix(in srgb, oklch(97.9% 0.021 166.113) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-to: color-mix(in oklab, var(--color-emerald-50) 60%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-emerald-400 {
    --tw-gradient-to: var(--color-emerald-400);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-emerald-600 {
    --tw-gradient-to: var(--color-emerald-600);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-indigo-50\/60 {
    --tw-gradient-to: color-mix(in srgb, oklch(96.2% 0.018 272.314) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-to: color-mix(in oklab, var(--color-indigo-50) 60%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-orange-50 {
    --tw-gradient-to: var(--color-orange-50);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-orange-600 {
    --tw-gradient-to: var(--color-orange-600);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-rose-50 {
    --tw-gradient-to: var(--color-rose-50);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-rose-50\/60 {
    --tw-gradient-to: color-mix(in srgb, oklch(96.9% 0.015 12.422) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-to: color-mix(in oklab, var(--color-rose-50) 60%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-rose-500 {
    --tw-gradient-to: var(--color-rose-500);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-rose-700 {
    --tw-gradient-to: var(--color-rose-700);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-sky-50 {
    --tw-gradient-to: var(--color-sky-50);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-sky-50\/40 {
    --tw-gradient-to: color-mix(in srgb, oklch(97.7% 0.013 236.62) 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-to: color-mix(in oklab, var(--color-sky-50) 40%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-sky-50\/60 {
    --tw-gradient-to: color-mix(in srgb, oklch(97.7% 0.013 236.62) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-to: color-mix(in oklab, var(--color-sky-50) 60%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-sky-50\/85 {
    --tw-gradient-to: color-mix(in srgb, oklch(97.7% 0.013 236.62) 85%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-to: color-mix(in oklab, var(--color-sky-50) 85%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-teal-50 {
    --tw-gradient-to: var(--color-teal-50);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-teal-600 {
    --tw-gradient-to: var(--color-teal-600);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-violet-50\/70 {
    --tw-gradient-to: color-mix(in srgb, oklch(96.9% 0.016 293.756) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-to: color-mix(in oklab, var(--color-violet-50) 70%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-white {
    --tw-gradient-to: var(--color-white);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .bg-clip-text {
    background-clip: text;
  }
  .object-contain {
    object-fit: contain;
  }
  .p-0 {
    padding: calc(var(--spacing) * 0);
  }
  .p-1 {
    padding: calc(var(--spacing) * 1);
  }
  .p-1\.5 {
    padding: calc(var(--spacing) * 1.5);
  }
  .p-2 {
    padding: calc(var(--spacing) * 2);
  }
  .p-2\.5 {
    padding: calc(var(--spacing) * 2.5);
  }
  .p-3 {
    padding: calc(var(--spacing) * 3);
  }
  .p-3\.5 {
    padding: calc(var(--spacing) * 3.5);
  }
  .p-4 {
    padding: calc(var(--spacing) * 4);
  }
  .p-5 {
    padding: calc(var(--spacing) * 5);
  }
  .p-6 {
    padding: calc(var(--spacing) * 6);
  }
  .p-7 {
    padding: calc(var(--spacing) * 7);
  }
  .p-8 {
    padding: calc(var(--spacing) * 8);
  }
  .p-10 {
    padding: calc(var(--spacing) * 10);
  }
  .p-\[1px\] {
    padding: 1px;
  }
  .px-1 {
    padding-inline: calc(var(--spacing) * 1);
  }
  .px-1\.5 {
    padding-inline: calc(var(--spacing) * 1.5);
  }
  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }
  .px-2\.5 {
    padding-inline: calc(var(--spacing) * 2.5);
  }
  .px-3 {
    padding-inline: calc(var(--spacing) * 3);
  }
  .px-3\.5 {
    padding-inline: calc(var(--spacing) * 3.5);
  }
  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }
  .px-5 {
    padding-inline: calc(var(--spacing) * 5);
  }
  .px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }
  .py-0\.5 {
    padding-block: calc(var(--spacing) * 0.5);
  }
  .py-1 {
    padding-block: calc(var(--spacing) * 1);
  }
  .py-1\.5 {
    padding-block: calc(var(--spacing) * 1.5);
  }
  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }
  .py-2\.5 {
    padding-block: calc(var(--spacing) * 2.5);
  }
  .py-3 {
    padding-block: calc(var(--spacing) * 3);
  }
  .py-4 {
    padding-block: calc(var(--spacing) * 4);
  }
  .pt-0\.5 {
    padding-top: calc(var(--spacing) * 0.5);
  }
  .pt-1 {
    padding-top: calc(var(--spacing) * 1);
  }
  .pt-2 {
    padding-top: calc(var(--spacing) * 2);
  }
  .pt-3 {
    padding-top: calc(var(--spacing) * 3);
  }
  .pt-4 {
    padding-top: calc(var(--spacing) * 4);
  }
  .pr-1 {
    padding-right: calc(var(--spacing) * 1);
  }
  .pb-1 {
    padding-bottom: calc(var(--spacing) * 1);
  }
  .pb-3 {
    padding-bottom: calc(var(--spacing) * 3);
  }
  .pb-5 {
    padding-bottom: calc(var(--spacing) * 5);
  }
  .pl-4 {
    padding-left: calc(var(--spacing) * 4);
  }
  .pl-5 {
    padding-left: calc(var(--spacing) * 5);
  }
  .text-center {
    text-align: center;
  }
  .text-left {
    text-align: left;
  }
  .text-right {
    text-align: right;
  }
  .font-mono {
    font-family: var(--font-mono);
  }
  .text-2xl {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
  .text-3xl {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
  }
  .text-4xl {
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
  }
  .text-5xl {
    font-size: var(--text-5xl);
    line-height: var(--tw-leading, var(--text-5xl--line-height));
  }
  .text-6xl {
    font-size: var(--text-6xl);
    line-height: var(--tw-leading, var(--text-6xl--line-height));
  }
  .text-7xl {
    font-size: var(--text-7xl);
    line-height: var(--tw-leading, var(--text-7xl--line-height));
  }
  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .text-xl {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .text-\[10px\] {
    font-size: 10px;
  }
  .text-\[11px\] {
    font-size: 11px;
  }
  .text-\[13px\] {
    font-size: 13px;
  }
  .leading-6 {
    --tw-leading: calc(var(--spacing) * 6);
    line-height: calc(var(--spacing) * 6);
  }
  .leading-none {
    --tw-leading: 1;
    line-height: 1;
  }
  .leading-relaxed {
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
  }
  .leading-tight {
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
  }
  .font-black {
    --tw-font-weight: var(--font-weight-black);
    font-weight: var(--font-weight-black);
  }
  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
  .font-extrabold {
    --tw-font-weight: var(--font-weight-extrabold);
    font-weight: var(--font-weight-extrabold);
  }
  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .font-normal {
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
  }
  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .tracking-\[\.2em\] {
    --tw-tracking: .2em;
    letter-spacing: .2em;
  }
  .tracking-\[\.24em\] {
    --tw-tracking: .24em;
    letter-spacing: .24em;
  }
  .tracking-\[0\.2em\] {
    --tw-tracking: 0.2em;
    letter-spacing: 0.2em;
  }
  .tracking-\[0\.16em\] {
    --tw-tracking: 0.16em;
    letter-spacing: 0.16em;
  }
  .tracking-\[0\.18em\] {
    --tw-tracking: 0.18em;
    letter-spacing: 0.18em;
  }
  .tracking-\[0\.22em\] {
    --tw-tracking: 0.22em;
    letter-spacing: 0.22em;
  }
  .tracking-\[0\.24em\] {
    --tw-tracking: 0.24em;
    letter-spacing: 0.24em;
  }
  .tracking-tight {
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
  }
  .tracking-wide {
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
  }
  .tracking-widest {
    --tw-tracking: var(--tracking-widest);
    letter-spacing: var(--tracking-widest);
  }
  .whitespace-nowrap {
    white-space: nowrap;
  }
  .text-amber-50\/85 {
    color: color-mix(in srgb, oklch(98.7% 0.022 95.277) 85%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-amber-50) 85%, transparent);
    }
  }
  .text-amber-100 {
    color: var(--color-amber-100);
  }
  .text-amber-500 {
    color: var(--color-amber-500);
  }
  .text-amber-600 {
    color: var(--color-amber-600);
  }
  .text-amber-700 {
    color: var(--color-amber-700);
  }
  .text-amber-800 {
    color: var(--color-amber-800);
  }
  .text-amber-900 {
    color: var(--color-amber-900);
  }
  .text-amber-950 {
    color: var(--color-amber-950);
  }
  .text-blue-500 {
    color: var(--color-blue-500);
  }
  .text-blue-600 {
    color: var(--color-blue-600);
  }
  .text-blue-700 {
    color: var(--color-blue-700);
  }
  .text-blue-800 {
    color: var(--color-blue-800);
  }
  .text-blue-900 {
    color: var(--color-blue-900);
  }
  .text-blue-950 {
    color: var(--color-blue-950);
  }
  .text-cyan-600 {
    color: var(--color-cyan-600);
  }
  .text-cyan-700 {
    color: var(--color-cyan-700);
  }
  .text-cyan-800 {
    color: var(--color-cyan-800);
  }
  .text-cyan-900 {
    color: var(--color-cyan-900);
  }
  .text-emerald-500 {
    color: var(--color-emerald-500);
  }
  .text-emerald-600 {
    color: var(--color-emerald-600);
  }
  .text-emerald-700 {
    color: var(--color-emerald-700);
  }
  .text-emerald-800 {
    color: var(--color-emerald-800);
  }
  .text-emerald-900 {
    color: var(--color-emerald-900);
  }
  .text-emerald-950 {
    color: var(--color-emerald-950);
  }
  .text-fuchsia-700 {
    color: var(--color-fuchsia-700);
  }
  .text-fuchsia-800 {
    color: var(--color-fuchsia-800);
  }
  .text-fuchsia-900 {
    color: var(--color-fuchsia-900);
  }
  .text-fuchsia-950 {
    color: var(--color-fuchsia-950);
  }
  .text-gray-700 {
    color: var(--color-gray-700);
  }
  .text-green-500 {
    color: var(--color-green-500);
  }
  .text-green-600 {
    color: var(--color-green-600);
  }
  .text-green-700 {
    color: var(--color-green-700);
  }
  .text-green-800 {
    color: var(--color-green-800);
  }
  .text-indigo-200 {
    color: var(--color-indigo-200);
  }
  .text-indigo-300 {
    color: var(--color-indigo-300);
  }
  .text-indigo-400 {
    color: var(--color-indigo-400);
  }
  .text-indigo-500 {
    color: var(--color-indigo-500);
  }
  .text-indigo-600 {
    color: var(--color-indigo-600);
  }
  .text-indigo-700 {
    color: var(--color-indigo-700);
  }
  .text-indigo-800 {
    color: var(--color-indigo-800);
  }
  .text-indigo-900 {
    color: var(--color-indigo-900);
  }
  .text-lime-700 {
    color: var(--color-lime-700);
  }
  .text-lime-800 {
    color: var(--color-lime-800);
  }
  .text-orange-200 {
    color: var(--color-orange-200);
  }
  .text-orange-500 {
    color: var(--color-orange-500);
  }
  .text-orange-600 {
    color: var(--color-orange-600);
  }
  .text-orange-700 {
    color: var(--color-orange-700);
  }
  .text-orange-800 {
    color: var(--color-orange-800);
  }
  .text-pink-600 {
    color: var(--color-pink-600);
  }
  .text-pink-700 {
    color: var(--color-pink-700);
  }
  .text-pink-800 {
    color: var(--color-pink-800);
  }
  .text-purple-300 {
    color: var(--color-purple-300);
  }
  .text-purple-400 {
    color: var(--color-purple-400);
  }
  .text-purple-600 {
    color: var(--color-purple-600);
  }
  .text-purple-700 {
    color: var(--color-purple-700);
  }
  .text-purple-800 {
    color: var(--color-purple-800);
  }
  .text-red-400 {
    color: var(--color-red-400);
  }
  .text-red-500 {
    color: var(--color-red-500);
  }
  .text-red-600 {
    color: var(--color-red-600);
  }
  .text-red-700 {
    color: var(--color-red-700);
  }
  .text-red-800 {
    color: var(--color-red-800);
  }
  .text-red-900 {
    color: var(--color-red-900);
  }
  .text-rose-50\/85 {
    color: color-mix(in srgb, oklch(96.9% 0.015 12.422) 85%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-rose-50) 85%, transparent);
    }
  }
  .text-rose-100 {
    color: var(--color-rose-100);
  }
  .text-rose-700 {
    color: var(--color-rose-700);
  }
  .text-rose-800 {
    color: var(--color-rose-800);
  }
  .text-rose-900 {
    color: var(--color-rose-900);
  }
  .text-sky-50\/85 {
    color: color-mix(in srgb, oklch(97.7% 0.013 236.62) 85%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-sky-50) 85%, transparent);
    }
  }
  .text-sky-100 {
    color: var(--color-sky-100);
  }
  .text-sky-400 {
    color: var(--color-sky-400);
  }
  .text-sky-600 {
    color: var(--color-sky-600);
  }
  .text-sky-700 {
    color: var(--color-sky-700);
  }
  .text-sky-800 {
    color: var(--color-sky-800);
  }
  .text-sky-900 {
    color: var(--color-sky-900);
  }
  .text-slate-300 {
    color: var(--color-slate-300);
  }
  .text-slate-400 {
    color: var(--color-slate-400);
  }
  .text-slate-500 {
    color: var(--color-slate-500);
  }
  .text-slate-600 {
    color: var(--color-slate-600);
  }
  .text-slate-700 {
    color: var(--color-slate-700);
  }
  .text-slate-800 {
    color: var(--color-slate-800);
  }
  .text-slate-900 {
    color: var(--color-slate-900);
  }
  .text-slate-950 {
    color: var(--color-slate-950);
  }
  .text-teal-500 {
    color: var(--color-teal-500);
  }
  .text-teal-600 {
    color: var(--color-teal-600);
  }
  .text-teal-700 {
    color: var(--color-teal-700);
  }
  .text-teal-800 {
    color: var(--color-teal-800);
  }
  .text-teal-900 {
    color: var(--color-teal-900);
  }
  .text-transparent {
    color: transparent;
  }
  .text-violet-600 {
    color: var(--color-violet-600);
  }
  .text-violet-700 {
    color: var(--color-violet-700);
  }
  .text-violet-800 {
    color: var(--color-violet-800);
  }
  .text-violet-900 {
    color: var(--color-violet-900);
  }
  .text-white {
    color: var(--color-white);
  }
  .text-yellow-600 {
    color: var(--color-yellow-600);
  }
  .text-yellow-700 {
    color: var(--color-yellow-700);
  }
  .text-yellow-800 {
    color: var(--color-yellow-800);
  }
  .text-yellow-900 {
    color: var(--color-yellow-900);
  }
  .text-zinc-700 {
    color: var(--color-zinc-700);
  }
  .text-zinc-800 {
    color: var(--color-zinc-800);
  }
  .uppercase {
    text-transform: uppercase;
  }
  .underline {
    text-decoration-line: underline;
  }
  .decoration-2 {
    text-decoration-thickness: 2px;
  }
  .underline-offset-2 {
    text-underline-offset: 2px;
  }
  .accent-amber-700 {
    accent-color: var(--color-amber-700);
  }
  .accent-cyan-700 {
    accent-color: var(--color-cyan-700);
  }
  .accent-emerald-700 {
    accent-color: var(--color-emerald-700);
  }
  .accent-rose-700 {
    accent-color: var(--color-rose-700);
  }
  .accent-slate-900 {
    accent-color: var(--color-slate-900);
  }
  .opacity-50 {
    opacity: 50%;
  }
  .shadow {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-2xl {
    --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / 0.25));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-inner {
    --tw-shadow: inset 0 2px 4px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-lg {
    --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-md {
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-sm {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-xl {
    --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring-2 {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring-4 {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring-blue-100 {
    --tw-ring-color: var(--color-blue-100);
  }
  .ring-emerald-200\/80 {
    --tw-ring-color: color-mix(in srgb, oklch(90.5% 0.093 164.15) 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--color-emerald-200) 80%, transparent);
    }
  }
  .ring-slate-900\/20 {
    --tw-ring-color: color-mix(in srgb, oklch(20.8% 0.042 265.755) 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--color-slate-900) 20%, transparent);
    }
  }
  .blur-\[1px\] {
    --tw-blur: blur(1px);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .blur-sm {
    --tw-blur: blur(var(--blur-sm));
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .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(var(--blur-sm));
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .backdrop-blur-xl {
    --tw-backdrop-blur: blur(var(--blur-xl));
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, visibility, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-all {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .duration-500 {
    --tw-duration: 500ms;
    transition-duration: 500ms;
  }
  .outline-none {
    --tw-outline-style: none;
    outline-style: none;
  }
  .placeholder\:text-slate-400 {
    &::placeholder {
      color: var(--color-slate-400);
    }
  }
  .last\:border-0 {
    &:last-child {
      border-style: var(--tw-border-style);
      border-width: 0px;
    }
  }
  .focus-within\:ring-2 {
    &:focus-within {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .focus-within\:ring-blue-200 {
    &:focus-within {
      --tw-ring-color: var(--color-blue-200);
    }
  }
  .hover\:-translate-y-0\.5 {
    &:hover {
      @media (hover: hover) {
        --tw-translate-y: calc(var(--spacing) * -0.5);
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .hover\:-translate-y-1 {
    &:hover {
      @media (hover: hover) {
        --tw-translate-y: calc(var(--spacing) * -1);
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .hover\:scale-\[1\.01\] {
    &:hover {
      @media (hover: hover) {
        scale: 1.01;
      }
    }
  }
  .hover\:border-blue-200 {
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-blue-200);
      }
    }
  }
  .hover\:bg-amber-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-amber-50);
      }
    }
  }
  .hover\:bg-amber-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-amber-100);
      }
    }
  }
  .hover\:bg-blue-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-blue-50);
      }
    }
  }
  .hover\:bg-blue-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-blue-100);
      }
    }
  }
  .hover\:bg-blue-700 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-blue-700);
      }
    }
  }
  .hover\:bg-blue-800 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-blue-800);
      }
    }
  }
  .hover\:bg-cyan-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-cyan-50);
      }
    }
  }
  .hover\:bg-cyan-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-cyan-100);
      }
    }
  }
  .hover\:bg-cyan-800 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-cyan-800);
      }
    }
  }
  .hover\:bg-emerald-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-emerald-50);
      }
    }
  }
  .hover\:bg-emerald-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-emerald-100);
      }
    }
  }
  .hover\:bg-emerald-700 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-emerald-700);
      }
    }
  }
  .hover\:bg-emerald-800 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-emerald-800);
      }
    }
  }
  .hover\:bg-fuchsia-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-fuchsia-100);
      }
    }
  }
  .hover\:bg-indigo-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-indigo-50);
      }
    }
  }
  .hover\:bg-indigo-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-indigo-100);
      }
    }
  }
  .hover\:bg-indigo-600 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-indigo-600);
      }
    }
  }
  .hover\:bg-indigo-800 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-indigo-800);
      }
    }
  }
  .hover\:bg-lime-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-lime-100);
      }
    }
  }
  .hover\:bg-lime-800 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-lime-800);
      }
    }
  }
  .hover\:bg-rose-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-rose-50);
      }
    }
  }
  .hover\:bg-rose-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-rose-100);
      }
    }
  }
  .hover\:bg-sky-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-sky-100);
      }
    }
  }
  .hover\:bg-slate-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-slate-50);
      }
    }
  }
  .hover\:bg-slate-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-slate-100);
      }
    }
  }
  .hover\:bg-slate-200 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-slate-200);
      }
    }
  }
  .hover\:bg-slate-800 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-slate-800);
      }
    }
  }
  .hover\:bg-teal-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-teal-100);
      }
    }
  }
  .hover\:bg-violet-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-violet-50);
      }
    }
  }
  .hover\:bg-violet-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-violet-100);
      }
    }
  }
  .hover\:bg-violet-700 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-violet-700);
      }
    }
  }
  .hover\:bg-white {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-white);
      }
    }
  }
  .hover\:bg-yellow-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-yellow-100);
      }
    }
  }
  .hover\:from-emerald-800 {
    &:hover {
      @media (hover: hover) {
        --tw-gradient-from: var(--color-emerald-800);
        --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
      }
    }
  }
  .hover\:from-rose-700 {
    &:hover {
      @media (hover: hover) {
        --tw-gradient-from: var(--color-rose-700);
        --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
      }
    }
  }
  .hover\:to-orange-700 {
    &:hover {
      @media (hover: hover) {
        --tw-gradient-to: var(--color-orange-700);
        --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
      }
    }
  }
  .hover\:to-rose-800 {
    &:hover {
      @media (hover: hover) {
        --tw-gradient-to: var(--color-rose-800);
        --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
      }
    }
  }
  .hover\:to-teal-700 {
    &:hover {
      @media (hover: hover) {
        --tw-gradient-to: var(--color-teal-700);
        --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
      }
    }
  }
  .hover\:text-blue-700 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-blue-700);
      }
    }
  }
  .hover\:text-blue-800 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-blue-800);
      }
    }
  }
  .hover\:text-cyan-600 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-cyan-600);
      }
    }
  }
  .hover\:text-cyan-900 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-cyan-900);
      }
    }
  }
  .hover\:text-sky-600 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-sky-600);
      }
    }
  }
  .hover\:text-slate-700 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-slate-700);
      }
    }
  }
  .hover\:text-slate-800 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-slate-800);
      }
    }
  }
  .hover\:underline {
    &:hover {
      @media (hover: hover) {
        text-decoration-line: underline;
      }
    }
  }
  .hover\:opacity-80 {
    &:hover {
      @media (hover: hover) {
        opacity: 80%;
      }
    }
  }
  .hover\:shadow-2xl {
    &:hover {
      @media (hover: hover) {
        --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / 0.25));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  .hover\:shadow-md {
    &:hover {
      @media (hover: hover) {
        --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  .hover\:shadow-xl {
    &:hover {
      @media (hover: hover) {
        --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  .focus\:border-blue-300 {
    &:focus {
      border-color: var(--color-blue-300);
    }
  }
  .focus\:border-blue-400 {
    &:focus {
      border-color: var(--color-blue-400);
    }
  }
  .focus\:border-blue-500 {
    &:focus {
      border-color: var(--color-blue-500);
    }
  }
  .focus\:border-cyan-500 {
    &:focus {
      border-color: var(--color-cyan-500);
    }
  }
  .focus\:border-emerald-500 {
    &:focus {
      border-color: var(--color-emerald-500);
    }
  }
  .focus\:border-violet-400 {
    &:focus {
      border-color: var(--color-violet-400);
    }
  }
  .focus\:ring-2 {
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .focus\:ring-blue-100 {
    &:focus {
      --tw-ring-color: var(--color-blue-100);
    }
  }
  .focus\:outline-none {
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
  }
  .disabled\:cursor-not-allowed {
    &:disabled {
      cursor: not-allowed;
    }
  }
  .disabled\:opacity-35 {
    &:disabled {
      opacity: 35%;
    }
  }
  .disabled\:opacity-40 {
    &:disabled {
      opacity: 40%;
    }
  }
  .sm\:block {
    @media (width >= 40rem) {
      display: block;
    }
  }
  .sm\:inline {
    @media (width >= 40rem) {
      display: inline;
    }
  }
  .sm\:grid-cols-2 {
    @media (width >= 40rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .sm\:grid-cols-3 {
    @media (width >= 40rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .sm\:grid-cols-4 {
    @media (width >= 40rem) {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }
  .sm\:grid-cols-\[1fr_auto\] {
    @media (width >= 40rem) {
      grid-template-columns: 1fr auto;
    }
  }
  .sm\:grid-cols-\[1fr_auto_auto\] {
    @media (width >= 40rem) {
      grid-template-columns: 1fr auto auto;
    }
  }
  .sm\:flex-row {
    @media (width >= 40rem) {
      flex-direction: row;
    }
  }
  .sm\:items-center {
    @media (width >= 40rem) {
      align-items: center;
    }
  }
  .sm\:items-end {
    @media (width >= 40rem) {
      align-items: flex-end;
    }
  }
  .sm\:justify-between {
    @media (width >= 40rem) {
      justify-content: space-between;
    }
  }
  .sm\:p-7 {
    @media (width >= 40rem) {
      padding: calc(var(--spacing) * 7);
    }
  }
  .sm\:p-8 {
    @media (width >= 40rem) {
      padding: calc(var(--spacing) * 8);
    }
  }
  .sm\:p-10 {
    @media (width >= 40rem) {
      padding: calc(var(--spacing) * 10);
    }
  }
  .sm\:text-4xl {
    @media (width >= 40rem) {
      font-size: var(--text-4xl);
      line-height: var(--tw-leading, var(--text-4xl--line-height));
    }
  }
  .sm\:text-5xl {
    @media (width >= 40rem) {
      font-size: var(--text-5xl);
      line-height: var(--tw-leading, var(--text-5xl--line-height));
    }
  }
  .md\:col-span-6 {
    @media (width >= 48rem) {
      grid-column: span 6 / span 6;
    }
  }
  .md\:h-14 {
    @media (width >= 48rem) {
      height: calc(var(--spacing) * 14);
    }
  }
  .md\:w-\[390px\] {
    @media (width >= 48rem) {
      width: 390px;
    }
  }
  .md\:grid-cols-2 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .md\:grid-cols-3 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .md\:grid-cols-6 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(6, minmax(0, 1fr));
    }
  }
  .md\:justify-end {
    @media (width >= 48rem) {
      justify-content: flex-end;
    }
  }
  .md\:p-4 {
    @media (width >= 48rem) {
      padding: calc(var(--spacing) * 4);
    }
  }
  .md\:p-5 {
    @media (width >= 48rem) {
      padding: calc(var(--spacing) * 5);
    }
  }
  .md\:px-4 {
    @media (width >= 48rem) {
      padding-inline: calc(var(--spacing) * 4);
    }
  }
  .md\:px-6 {
    @media (width >= 48rem) {
      padding-inline: calc(var(--spacing) * 6);
    }
  }
  .md\:py-3 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 3);
    }
  }
  .lg\:col-span-2 {
    @media (width >= 64rem) {
      grid-column: span 2 / span 2;
    }
  }
  .lg\:mr-3 {
    @media (width >= 64rem) {
      margin-right: calc(var(--spacing) * 3);
    }
  }
  .lg\:h-20 {
    @media (width >= 64rem) {
      height: calc(var(--spacing) * 20);
    }
  }
  .lg\:w-auto {
    @media (width >= 64rem) {
      width: auto;
    }
  }
  .lg\:min-w-\[240px\] {
    @media (width >= 64rem) {
      min-width: 240px;
    }
  }
  .lg\:grid-cols-2 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-3 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-4 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-5 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(5, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-\[0\.9fr_1\.1fr\] {
    @media (width >= 64rem) {
      grid-template-columns: 0.9fr 1.1fr;
    }
  }
  .lg\:grid-cols-\[0\.75fr_1\.25fr\] {
    @media (width >= 64rem) {
      grid-template-columns: 0.75fr 1.25fr;
    }
  }
  .lg\:grid-cols-\[1\.2fr_0\.8fr\] {
    @media (width >= 64rem) {
      grid-template-columns: 1.2fr 0.8fr;
    }
  }
  .lg\:grid-cols-\[1\.05fr_0\.95fr\] {
    @media (width >= 64rem) {
      grid-template-columns: 1.05fr 0.95fr;
    }
  }
  .lg\:grid-cols-\[1\.05fr_1fr\] {
    @media (width >= 64rem) {
      grid-template-columns: 1.05fr 1fr;
    }
  }
  .lg\:grid-cols-\[1\.6fr_1fr\] {
    @media (width >= 64rem) {
      grid-template-columns: 1.6fr 1fr;
    }
  }
  .lg\:grid-cols-\[1fr_1\.1fr\] {
    @media (width >= 64rem) {
      grid-template-columns: 1fr 1.1fr;
    }
  }
  .lg\:grid-cols-\[360px_1fr\] {
    @media (width >= 64rem) {
      grid-template-columns: 360px 1fr;
    }
  }
  .lg\:flex-row {
    @media (width >= 64rem) {
      flex-direction: row;
    }
  }
  .lg\:items-center {
    @media (width >= 64rem) {
      align-items: center;
    }
  }
  .lg\:items-start {
    @media (width >= 64rem) {
      align-items: flex-start;
    }
  }
  .lg\:justify-between {
    @media (width >= 64rem) {
      justify-content: space-between;
    }
  }
  .lg\:gap-4 {
    @media (width >= 64rem) {
      gap: calc(var(--spacing) * 4);
    }
  }
  .xl\:col-span-2 {
    @media (width >= 80rem) {
      grid-column: span 2 / span 2;
    }
  }
  .xl\:col-span-3 {
    @media (width >= 80rem) {
      grid-column: span 3 / span 3;
    }
  }
  .xl\:col-span-12 {
    @media (width >= 80rem) {
      grid-column: span 12 / span 12;
    }
  }
  .xl\:flex {
    @media (width >= 80rem) {
      display: flex;
    }
  }
  .xl\:hidden {
    @media (width >= 80rem) {
      display: none;
    }
  }
  .xl\:h-24 {
    @media (width >= 80rem) {
      height: calc(var(--spacing) * 24);
    }
  }
  .xl\:w-\[420px\] {
    @media (width >= 80rem) {
      width: 420px;
    }
  }
  .xl\:grid-cols-2 {
    @media (width >= 80rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .xl\:grid-cols-3 {
    @media (width >= 80rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .xl\:grid-cols-4 {
    @media (width >= 80rem) {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }
  .xl\:grid-cols-12 {
    @media (width >= 80rem) {
      grid-template-columns: repeat(12, minmax(0, 1fr));
    }
  }
  .xl\:grid-cols-\[0\.92fr_1\.08fr\] {
    @media (width >= 80rem) {
      grid-template-columns: 0.92fr 1.08fr;
    }
  }
  .xl\:px-6 {
    @media (width >= 80rem) {
      padding-inline: calc(var(--spacing) * 6);
    }
  }
  .\32 xl\:grid-cols-5 {
    @media (width >= 96rem) {
      grid-template-columns: repeat(5, minmax(0, 1fr));
    }
  }
}
@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-gradient-position {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-via {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-to {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-via-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0%;
}
@property --tw-gradient-via-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 50%;
}
@property --tw-gradient-to-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-tracking {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes pulse {
  50% {
    opacity: 0.5;
  }
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-space-y-reverse: 0;
      --tw-border-style: solid;
      --tw-gradient-position: initial;
      --tw-gradient-from: #0000;
      --tw-gradient-via: #0000;
      --tw-gradient-to: #0000;
      --tw-gradient-stops: initial;
      --tw-gradient-via-stops: initial;
      --tw-gradient-from-position: 0%;
      --tw-gradient-via-position: 50%;
      --tw-gradient-to-position: 100%;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
      --tw-duration: initial;
    }
  }
}

/* ===== SOURCE: styles/gomathy-excellence.css ===== */
:root {
    --gomathy-reading-scale: 1;
}

html.gomathy-text-large { --gomathy-reading-scale: 1.12; }
html.gomathy-text-xlarge { --gomathy-reading-scale: 1.24; }

html.gomathy-text-large #pages,
html.gomathy-text-xlarge #pages {
    font-size: calc(1rem * var(--gomathy-reading-scale));
}
html.gomathy-text-large #pages p,
html.gomathy-text-large #pages li,
html.gomathy-text-xlarge #pages p,
html.gomathy-text-xlarge #pages li {
    line-height: 1.68;
}

html.gomathy-reading-font #pages,
html.gomathy-reading-font input,
html.gomathy-reading-font select,
html.gomathy-reading-font button {
    font-family: Arial, Verdana, sans-serif !important;
    letter-spacing: 0.015em;
    word-spacing: 0.05em;
}

html.gomathy-high-contrast body {
    background: #f8fafc !important;
}
html.gomathy-high-contrast #pages [class*="text-slate-5"],
html.gomathy-high-contrast #pages [class*="text-slate-6"] {
    color: #1e293b !important;
}
html.gomathy-high-contrast #pages [class*="border-slate-2"] {
    border-color: #64748b !important;
}
html.gomathy-high-contrast #site-header {
    background: rgba(255,255,255,0.98) !important;
    border-color: #64748b !important;
}

html.gomathy-reduce-motion *,
html.gomathy-reduce-motion *::before,
html.gomathy-reduce-motion *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
}

.gomathy-excellence-modal {
    position: fixed;
    inset: 0;
    z-index: 500;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: min(10vh, 72px) 14px 24px;
    background: rgba(15, 23, 42, 0.56);
    backdrop-filter: blur(10px);
}
.gomathy-excellence-modal[hidden] { display: none !important; }
.gomathy-excellence-dialog {
    width: min(820px, 100%);
    max-height: min(78vh, 760px);
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.85);
    border-radius: 28px;
    background: rgba(255,255,255,.98);
    box-shadow: 0 36px 90px -34px rgba(15,23,42,.75);
}
.gomathy-excellence-results {
    max-height: min(56vh, 560px);
    overflow-y: auto;
    overscroll-behavior: contain;
}
.gomathy-search-result[aria-selected="true"],
.gomathy-search-result:hover {
    background: #eff6ff;
    border-color: #bfdbfe;
}

.gomathy-learning-path {
    position: relative;
    overflow: hidden;
    border: 1px solid #dbeafe;
    border-radius: 24px;
    background: linear-gradient(135deg, rgba(239,246,255,.96), rgba(255,255,255,.96));
    padding: 14px;
    box-shadow: 0 12px 30px -28px rgba(30,64,175,.65);
}
.gomathy-learning-path::after {
    content: "";
    position: absolute;
    width: 90px;
    height: 90px;
    right: -34px;
    top: -42px;
    border-radius: 999px;
    background: rgba(147,197,253,.22);
}

.gomathy-floating-tools {
    position: fixed;
    right: 16px;
    bottom: 16px;
    z-index: 170;
    display: flex;
    flex-direction: column;
    gap: 9px;
}
.gomathy-floating-button {
    display: inline-flex;
    width: 46px;
    height: 46px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(203,213,225,.9);
    border-radius: 16px;
    background: rgba(255,255,255,.96);
    color: #0f172a;
    box-shadow: 0 14px 30px -20px rgba(15,23,42,.7);
    font-size: 20px;
    transition: transform .16s ease, box-shadow .16s ease;
}
.gomathy-floating-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 34px -20px rgba(15,23,42,.8);
}

.gomathy-a11y-panel {
    position: fixed;
    right: 16px;
    bottom: 124px;
    z-index: 180;
    width: min(340px, calc(100vw - 32px));
    border: 1px solid #cbd5e1;
    border-radius: 24px;
    background: rgba(255,255,255,.98);
    padding: 16px;
    box-shadow: 0 30px 70px -30px rgba(15,23,42,.75);
}
.gomathy-a11y-panel[hidden] { display: none !important; }

.gomathy-toast-stack {
    position: fixed;
    right: 16px;
    top: 16px;
    z-index: 700;
    display: grid;
    gap: 9px;
    width: min(390px, calc(100vw - 32px));
    pointer-events: none;
}
.gomathy-toast {
    border: 1px solid #cbd5e1;
    border-radius: 17px;
    background: rgba(255,255,255,.98);
    padding: 12px 14px;
    color: #0f172a;
    box-shadow: 0 18px 40px -24px rgba(15,23,42,.75);
    animation: gomathy-toast-in .2s ease-out both;
}
@keyframes gomathy-toast-in {
    from { opacity: 0; transform: translateY(-7px); }
    to { opacity: 1; transform: translateY(0); }
}

.gomathy-physics-detail-card details > summary {
    cursor: pointer;
    list-style: none;
}
.gomathy-physics-detail-card details > summary::-webkit-details-marker { display: none; }

@media (max-width: 640px) {
    .gomathy-excellence-modal { padding-top: 12px; }
    .gomathy-excellence-dialog { border-radius: 22px; max-height: calc(100vh - 24px); }
    .gomathy-excellence-results { max-height: calc(100vh - 235px); }
    .gomathy-floating-tools { right: 10px; bottom: 10px; }
    .gomathy-floating-button { width: 43px; height: 43px; border-radius: 14px; }
    .gomathy-learning-path { border-radius: 20px; }
}

@media print {
    .gomathy-floating-tools,
    .gomathy-a11y-panel,
    .gomathy-excellence-modal,
    #gomathy-header-search-button,
    .gomathy-learning-path {
        display: none !important;
    }
}

/* ===== SOURCE: styles/gomathy-qcm-readable-v49.css ===== */
/* GoMathy V49 — QCM lisible + validation question par question */
.gm-qcm-shell {
    max-width: 980px;
    margin: 0 auto;
    color: #1f2937;
}

.gm-qcm-back {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    margin-bottom: 1.25rem;
    color: #1e3a8a;
    font-weight: 700;
}

.gm-qcm-title-row {
    margin-bottom: 1.25rem;
}

.gm-qcm-eyebrow {
    margin-bottom: .35rem;
    color: #6d28d9;
    font-size: .76rem;
    font-weight: 800;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.gm-qcm-title {
    margin: 0;
    color: #172033;
    font-size: clamp(1.8rem, 3vw, 2.55rem);
    line-height: 1.12;
    font-weight: 900;
}

.gm-qcm-subtitle {
    max-width: 760px;
    margin-top: .7rem;
    color: #64748b;
    font-size: 1rem;
    line-height: 1.65;
}

.gm-qcm-progress-card {
    margin-bottom: 1.6rem;
    padding: 1rem 1.15rem;
    border: 1px solid #e7dfd2;
    border-radius: 20px;
    background: #fbf7ef;
}

.gm-qcm-progress-top {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: .65rem 1.25rem;
    color: #475569;
    font-size: .92rem;
}

.gm-qcm-progress-top strong {
    color: #312e81;
}

.gm-qcm-progress-track {
    height: 9px;
    margin-top: .8rem;
    overflow: hidden;
    border-radius: 999px;
    background: #e9e4da;
}

.gm-qcm-progress-track > span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: #6d5ce7;
    transition: width .22s ease;
}

.gm-qcm-score {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid #e7dfd2;
}

.gm-qcm-score > div {
    display: flex;
    align-items: baseline;
    gap: .7rem;
}

.gm-qcm-score-label {
    color: #475569;
    font-weight: 700;
}

.gm-qcm-score strong {
    color: #166534;
    font-size: 1.35rem;
}

.gm-qcm-retry,
.gm-qcm-validate {
    appearance: none;
    border: 1px solid #6557d9;
    border-radius: 12px;
    background: #6557d9;
    color: #fff;
    font-weight: 800;
    cursor: pointer;
    transition: transform .15s ease, background .15s ease, border-color .15s ease;
}

.gm-qcm-retry {
    padding: .62rem .95rem;
    font-size: .88rem;
}

.gm-qcm-validate {
    min-width: 210px;
    padding: .78rem 1.15rem;
    font-size: .94rem;
}

.gm-qcm-retry:hover,
.gm-qcm-validate:hover {
    background: #5144c8;
    border-color: #5144c8;
}

.gm-qcm-retry:focus-visible,
.gm-qcm-validate:focus-visible,
.gm-qcm-option:focus-within {
    outline: 3px solid rgba(99, 102, 241, .23);
    outline-offset: 2px;
}

.gm-qcm-list {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 1.45rem;
}

.gm-qcm-card {
    padding: clamp(1.2rem, 2.4vw, 1.75rem);
    border: 1px solid #e5dfd5;
    border-radius: 24px;
    background: #fffdf8;
    box-shadow: 0 7px 22px rgba(51, 65, 85, .055);
}

.gm-qcm-card--correct {
    border-color: #a7d9b3;
}

.gm-qcm-card--wrong {
    border-color: #efb2b2;
}

.gm-qcm-question-head {
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr) auto;
    align-items: start;
    gap: .9rem;
}

.gm-qcm-number {
    display: inline-flex;
    width: 46px;
    height: 46px;
    flex: 0 0 46px;
    align-items: center;
    justify-content: center;
    border: 1px solid #d8d2ef;
    border-radius: 50%;
    background: #f2efff;
    color: #4c3fc0;
    font-size: 1rem;
    font-weight: 900;
    line-height: 1;
}

.gm-qcm-question-main {
    min-width: 0;
}

.gm-qcm-question-kicker {
    margin-bottom: .35rem;
    color: #8b7b68;
    font-size: .76rem;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.gm-qcm-question-text {
    color: #172033;
    font-size: clamp(1.03rem, 1.7vw, 1.16rem);
    font-weight: 750;
    line-height: 1.62;
    overflow-wrap: anywhere;
}

.gm-qcm-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    padding: .28rem .66rem;
    border: 1px solid #e2e8f0;
    border-radius: 999px;
    background: #fff;
    color: #64748b;
    font-size: .74rem;
    font-weight: 800;
    white-space: nowrap;
}

.gm-qcm-status--chosen {
    border-color: #c7c2ef;
    background: #f4f1ff;
    color: #5546c8;
}

.gm-qcm-status--correct {
    border-color: #b7dec0;
    background: #eff9f1;
    color: #166534;
}

.gm-qcm-status--wrong {
    border-color: #efc0c0;
    background: #fff1f1;
    color: #b42318;
}

.gm-qcm-options {
    display: grid;
    gap: .8rem;
    margin-top: 1.35rem;
}

.gm-qcm-option {
    display: grid;
    grid-template-columns: auto 36px minmax(0, 1fr);
    align-items: center;
    gap: .8rem;
    min-height: 58px;
    padding: .78rem 1rem;
    border: 1px solid #e3ddd2;
    border-radius: 15px;
    background: #fff;
    color: #334155;
    cursor: pointer;
    transition: border-color .15s ease, background .15s ease, transform .15s ease;
}

.gm-qcm-option:hover {
    border-color: #b8afea;
    background: #faf9ff;
}

.gm-qcm-option:has(.gm-qcm-radio:disabled) {
    cursor: default;
}

.gm-qcm-radio {
    width: 18px;
    height: 18px;
    margin: 0;
    accent-color: #6557d9;
}

.gm-qcm-option-letter {
    display: inline-flex;
    width: 36px;
    height: 36px;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: #f5f2ed;
    color: #5b6473;
    font-size: .86rem;
    font-weight: 900;
}

.gm-qcm-option-text {
    min-width: 0;
    color: inherit;
    font-size: .98rem;
    line-height: 1.6;
    overflow-wrap: anywhere;
}

.gm-qcm-option--selected {
    border-color: #a89fea;
    background: #f3f0ff;
    color: #352a96;
}

.gm-qcm-option--selected .gm-qcm-option-letter {
    background: #e3ddff;
    color: #4638b6;
}

.gm-qcm-option--correct {
    border-color: #91cf9f;
    background: #edf8ef;
    color: #14532d;
}

.gm-qcm-option--correct .gm-qcm-option-letter {
    background: #d8f0dd;
    color: #166534;
}

.gm-qcm-option--wrong {
    border-color: #e9a4a4;
    background: #fff0f0;
    color: #991b1b;
}

.gm-qcm-option--wrong .gm-qcm-option-letter {
    background: #f9dada;
    color: #991b1b;
}

.gm-qcm-actions {
    display: flex;
    justify-content: flex-start;
    margin-top: 1rem;
}


.gm-qcm-feedback {
    margin-top: .9rem;
    padding: 1rem 1.05rem;
    border: 1px solid;
    border-radius: 15px;
}

.gm-qcm-feedback--correct {
    border-color: #b7dec0;
    background: #f0f9f2;
}

.gm-qcm-feedback--wrong {
    border-color: #efc0c0;
    background: #fff2f2;
}

.gm-qcm-feedback-title {
    display: flex;
    align-items: center;
    gap: .45rem;
    margin-bottom: .4rem;
    font-weight: 900;
}

.gm-qcm-feedback--correct .gm-qcm-feedback-title {
    color: #166534;
}

.gm-qcm-feedback--wrong .gm-qcm-feedback-title {
    color: #b42318;
}

.gm-qcm-correct-answer,
.gm-qcm-explanation {
    margin: .35rem 0 0;
    color: #3f4b5d;
    font-size: .94rem;
    line-height: 1.65;
}

@media (max-width: 700px) {
    .gm-qcm-question-head {
        grid-template-columns: 42px minmax(0, 1fr);
    }

    .gm-qcm-number {
        width: 42px;
        height: 42px;
        flex-basis: 42px;
    }

    .gm-qcm-status {
        grid-column: 2;
        justify-self: start;
        margin-top: .25rem;
    }

    .gm-qcm-option {
        grid-template-columns: auto 32px minmax(0, 1fr);
        gap: .65rem;
        padding: .72rem .8rem;
    }

    .gm-qcm-option-letter {
        width: 32px;
        height: 32px;
    }

    .gm-qcm-validate {
        width: 100%;
    }

    .gm-qcm-score {
        align-items: stretch;
        flex-direction: column;
    }
}

/* V53 — lecture des QCM longs */
.gm-qcm-option { align-items: start; }
.gm-qcm-radio { margin-top: .55rem; }
.gm-qcm-option-letter { margin-top: .15rem; }
.gm-qcm-option-text { line-height: 1.68; }
@media (max-width: 640px) { .gm-qcm-card { padding: 1.1rem; } .gm-qcm-question-head { gap: .7rem; } .gm-qcm-options { gap: .7rem; } }

/* ===== SOURCE: styles/gomathy-qcm-v61.css ===== */
/* GoMathy V61 — QCM plus lisibles + catalogues QCM/exercices alignés sur les cours */
.gm-qcm-shell{max-width:1120px}
.gm-qcm-card{padding:clamp(1.15rem,2vw,1.55rem)}
.gm-qcm-question-text{font-size:clamp(1.04rem,1.45vw,1.16rem);line-height:1.52}
.gm-qcm-shared-work{
  margin-top:1rem;padding:.95rem 1.05rem;border:1px solid #d8d2ef;border-radius:16px;
  background:linear-gradient(135deg,#f7f5ff 0%,#fff 100%);color:#334155
}
.gm-qcm-shared-work__label{
  margin-bottom:.42rem;color:#5b4bc4;font-size:.7rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase
}
.gm-qcm-shared-work__math{font-size:.94rem;line-height:1.7;overflow-wrap:anywhere;word-break:normal}
.gm-qcm-options--short{grid-template-columns:repeat(2,minmax(0,1fr))}
.gm-qcm-options--variants{gap:.7rem;margin-top:.9rem}
.gm-qcm-options--variants .gm-qcm-option{min-height:54px;padding:.65rem .85rem;align-items:center}
.gm-qcm-options--variants .gm-qcm-radio,.gm-qcm-options--variants .gm-qcm-option-letter{margin-top:0}
.gm-qcm-options--variants .gm-qcm-option-text{font-size:1.03rem;font-weight:800;line-height:1.35}
.gm-qcm-option-text{max-width:100%}

.gm-qcm-index-v61__heading,.gm-exercise-index-v61__heading{margin:0 0 1.35rem}
.gm-qcm-index-v61__kicker,.gm-exercise-index-v61__kicker{
  margin-bottom:.35rem;color:#2563eb;font-size:.74rem;font-weight:950;letter-spacing:.09em;text-transform:uppercase
}
.gm-qcm-index-v61__heading h2,.gm-exercise-index-v61__heading h2{
  margin:0;color:#0f172a;font-size:clamp(2rem,3.5vw,3rem);font-weight:950;line-height:1.08
}
.gm-qcm-index-v61__heading p,.gm-exercise-index-v61__heading p{
  max-width:780px;margin:.65rem 0 0;color:#64748b;font-size:.98rem;line-height:1.6
}
.gm-qcm-chapter-card-v61:disabled{opacity:.55;cursor:not-allowed;transform:none!important}
.gomathy-exercise-card-v61 .gomathy-course-card__meta,.gm-qcm-chapter-card-v61 .gomathy-course-card__meta{min-height:2.65rem}

@media(max-width:760px){
  .gm-qcm-options--short{grid-template-columns:1fr}
  .gm-qcm-shared-work{padding:.8rem .85rem}
  .gm-qcm-shared-work__math{font-size:.88rem}
  .gm-qcm-index-v61__heading h2,.gm-exercise-index-v61__heading h2{font-size:1.8rem}
}

/* ===== SOURCE: styles/gomathy-qcm-v63.css ===== */
/* GoMathy V63 — QCM focus : une question à la fois, lisible comme une vraie fiche d'exercice */
.gm-qcm-shell--focus{max-width:1080px;margin:0 auto}
.gm-qcm-focus-top{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1.15rem;margin-bottom:.95rem}
.gm-qcm-focus-top .gm-qcm-back{margin:0;white-space:nowrap}
.gm-qcm-focus-title{min-width:0}
.gm-qcm-focus-title .gm-qcm-eyebrow{margin:0 0 .18rem}
.gm-qcm-focus-title .gm-qcm-title{font-size:clamp(1.55rem,2.5vw,2.15rem);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gm-qcm-focus-progress{display:flex;align-items:baseline;gap:.25rem;min-width:76px;justify-content:flex-end;color:#64748b;font-weight:800}
.gm-qcm-focus-progress strong{font-size:1.55rem;color:#312e81}
.gm-qcm-focus-progress span{font-size:.9rem}

.gm-qcm-step-strip{display:grid;grid-template-columns:repeat(20,minmax(28px,1fr));gap:.34rem;margin-bottom:1rem;padding:.55rem;border:1px solid #e7dfd2;border-radius:16px;background:#faf7f1}
.gm-qcm-step{height:34px;min-width:0;border:1px solid transparent;border-radius:10px;background:transparent;color:#7c756c;font-size:.78rem;font-weight:850;cursor:pointer;transition:.15s ease}
.gm-qcm-step:hover{background:#fff;border-color:#d9d2c7}
.gm-qcm-step--answered{background:#f1efff;color:#5446bc}
.gm-qcm-step--done{background:#eaf7ed;color:#166534}
.gm-qcm-step--current{border-color:#6759df;background:#6759df;color:#fff;box-shadow:0 4px 12px rgba(103,89,223,.18)}

.gm-qcm-card--single{padding:clamp(1.35rem,2.3vw,2rem);border-radius:26px}
.gm-qcm-single-meta{display:flex;align-items:center;gap:.5rem;min-height:30px;margin-bottom:.75rem;color:#8b7b68;font-size:.76rem;font-weight:850;letter-spacing:.035em;text-transform:uppercase}
.gm-qcm-single-meta .gm-qcm-status{margin-left:auto;text-transform:none;letter-spacing:0}
.gm-qcm-single-question{max-width:940px;color:#14213a;font-size:clamp(1.18rem,1.85vw,1.48rem);font-weight:800;line-height:1.62;overflow-wrap:normal;word-break:normal}
.gm-qcm-single-question sub,.gm-qcm-single-question sup{font-size:.72em;line-height:0}

.gm-qcm-card--single .gm-qcm-options{margin-top:1.45rem;gap:.85rem}
.gm-qcm-card--single .gm-qcm-options--short{grid-template-columns:repeat(2,minmax(0,1fr))}
.gm-qcm-card--single .gm-qcm-options--long{grid-template-columns:1fr}
.gm-qcm-card--single .gm-qcm-option{min-height:68px;padding:.88rem 1rem;border-radius:17px;grid-template-columns:auto 40px minmax(0,1fr)}
.gm-qcm-card--single .gm-qcm-option-letter{width:40px;height:40px;border-radius:11px;font-size:.92rem}
.gm-qcm-card--single .gm-qcm-option-text{font-size:clamp(1.02rem,1.35vw,1.15rem);font-weight:700;line-height:1.48;overflow-wrap:normal;word-break:normal}
.gm-qcm-card--single .gm-qcm-radio{width:19px;height:19px}

.gm-qcm-card--single .gm-qcm-feedback{margin-top:1.05rem;padding:1rem 1.05rem;border-radius:17px}
.gm-qcm-card--single .gm-qcm-explanation{margin-top:.45rem;font-size:.96rem;line-height:1.62}
.gm-qcm-card--single .gm-qcm-correct-answer{font-size:.96rem;line-height:1.55}

.gm-qcm-bottom-actions{display:grid;grid-template-columns:160px minmax(0,1fr);align-items:center;gap:1rem;margin-top:1.15rem;padding-top:1rem;border-top:1px solid #ece6dc}
.gm-qcm-main-action{display:flex;justify-content:flex-end;align-items:center;min-height:46px}
.gm-qcm-primary-action,.gm-qcm-secondary-action{appearance:none;border-radius:13px;font-weight:850;cursor:pointer;transition:.15s ease}
.gm-qcm-primary-action{min-width:205px;padding:.78rem 1.15rem;border:1px solid #6557d9;background:#6557d9;color:#fff}
.gm-qcm-primary-action:hover{background:#5144c8;border-color:#5144c8}
.gm-qcm-secondary-action{padding:.72rem .95rem;border:1px solid #ddd6cb;background:#fff;color:#475569}
.gm-qcm-secondary-action:hover:not(:disabled){border-color:#bdb4a8;background:#faf8f4}
.gm-qcm-secondary-action:disabled{opacity:.38;cursor:not-allowed}
.gm-qcm-action-hint{color:#7c756c;font-size:.9rem;font-weight:700}
.gm-qcm-score--final{margin:0 0 1rem;padding:1rem 1.1rem;border:1px solid #b7dec0;border-radius:18px;background:#f0f8f1}

/* L'ancien système de "calcul commun" n'est plus utilisé en V63. */
.gm-qcm-shared-work{display:none!important}

@media(max-width:900px){
  .gm-qcm-step-strip{grid-template-columns:repeat(10,minmax(28px,1fr));}
  .gm-qcm-focus-top{grid-template-columns:1fr auto}
  .gm-qcm-focus-top .gm-qcm-back{grid-column:1/-1}
}
@media(max-width:720px){
  .gm-qcm-card--single .gm-qcm-options--short{grid-template-columns:1fr}
  .gm-qcm-step-strip{grid-template-columns:repeat(5,minmax(34px,1fr))}
  .gm-qcm-bottom-actions{grid-template-columns:1fr;gap:.75rem}
  .gm-qcm-main-action{justify-content:stretch}
  .gm-qcm-primary-action,.gm-qcm-secondary-action{width:100%}
  .gm-qcm-single-meta{flex-wrap:wrap}
  .gm-qcm-single-meta .gm-qcm-status{margin-left:0}
}

/* ===== SOURCE: styles/gomathy-qcm-visual-v108.css ===== */
/* GoMathy V108 — QCM Maths visuels & diagnostiques. Scope QCM uniquement. */
.gm108-qcm-visual{
  margin:14px 0 18px;padding:14px;border:1px solid #dbe5f0;border-radius:18px;background:linear-gradient(180deg,#fbfdff,#f6f9fc);box-shadow:0 10px 30px rgba(15,23,42,.06);overflow:hidden
}
.gm108-qcm-visual__top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.gm108-qcm-visual__badge{display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border-radius:999px;background:#eaf2ff;color:#173d77;font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.gm108-qcm-visual__hint{font-size:.78rem;color:#64748b;font-weight:650}
.gm108-qcm-visual__canvas{min-height:164px;display:grid;place-items:center;padding:8px;border-radius:14px;background:#fff;border:1px solid #e7edf4}
.gm108-qcm-visual svg{display:block;max-width:100%;height:auto;overflow:visible}
.gm108-qcm-visual text{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;fill:#263548;font-weight:650}
.gm108-qcm-visual .gm108-grid{stroke:#e6edf5;stroke-width:1}
.gm108-qcm-visual .gm108-axis{stroke:#516174;stroke-width:2}
.gm108-qcm-visual .gm108-main{stroke:#315f9d;stroke-width:3;fill:none;stroke-linecap:round;stroke-linejoin:round}
.gm108-qcm-visual .gm108-accent{stroke:#b55f3f;stroke-width:3;fill:none;stroke-linecap:round;stroke-linejoin:round}
.gm108-qcm-visual .gm108-soft{fill:#edf4ff;stroke:#9cb9df;stroke-width:1.5}
.gm108-qcm-visual .gm108-fill{fill:#dbeafe;stroke:#315f9d;stroke-width:2}
.gm108-qcm-visual .gm108-dot{fill:#315f9d}
.gm108-qcm-visual .gm108-dot2{fill:#b55f3f}
.gm108-qcm-visual .gm108-note{fill:#64748b;font-size:12px;font-weight:600}
.gm108-qcm-visual .gm108-label{font-size:13px;font-weight:800}
.gm108-qcm-visual .gm108-value{font-size:15px;font-weight:850}
.gm108-qcm-visual .gm108-dash{stroke:#8394a8;stroke-width:1.6;stroke-dasharray:5 5}
.gm108-qcm-visual .gm108-right{fill:none;stroke:#64748b;stroke-width:1.6}
.gm108-bars{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;width:min(360px,100%);height:145px;align-items:end;padding:12px 18px 28px;border-left:2px solid #64748b;border-bottom:2px solid #64748b;position:relative}
.gm108-bars span{display:flex;align-items:flex-start;justify-content:center;border-radius:9px 9px 2px 2px;background:#dbeafe;border:1px solid #91b4dd;font-weight:850;color:#244b79;padding-top:5px;min-height:16px}
.gm108-bars em{position:absolute;bottom:5px;font-size:11px;color:#64748b;font-style:normal}
.gm108-fracbar{width:min(420px,100%);display:grid;grid-template-columns:repeat(4,1fr);gap:5px}
.gm108-fracbar i{display:block;height:76px;border-radius:10px;border:1px solid #b9c8d8;background:#f8fafc}
.gm108-fracbar i.on{background:#dbeafe;border-color:#7ba2d0}
.gm108-code{width:min(520px,100%);margin:0;padding:16px 18px;border-radius:12px;background:#111827;color:#f8fafc;font:600 14px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre-wrap;text-align:left}
.gm108-copy-card{width:min(560px,100%);padding:15px 17px;border-radius:14px;background:#fffdf7;border:1px solid #eadfbd;box-shadow:0 5px 18px rgba(120,90,30,.07);text-align:left}
.gm108-copy-card strong{display:block;color:#8a4f2d;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;margin-bottom:7px}
.gm108-copy-card p{margin:0;color:#263548;font-size:.96rem;line-height:1.45}
.gm108-qcm-type{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:#eef6f2;color:#226447;font-weight:800;font-size:.72rem;margin-left:4px}
.gm108-qcm-card--diagnostic .gm-qcm-single-question{border-left:4px solid #d97706;padding-left:12px}
.gm108-qcm-card--method .gm-qcm-single-question{border-left:4px solid #2563eb;padding-left:12px}
.gm108-qcm-card--visual .gm-qcm-single-question{border-left:4px solid #0f766e;padding-left:12px}
@media(max-width:680px){
  .gm108-qcm-visual{padding:10px;margin:10px 0 14px;border-radius:14px}
  .gm108-qcm-visual__canvas{min-height:140px;padding:5px}
  .gm108-qcm-visual__hint{display:none}
  .gm108-qcm-visual svg{max-height:190px}
  .gm108-bars{height:125px}
}

/* ===== SOURCE: styles/gomathy-exercises-clean-v76.css ===== */
/* GoMathy V76 — QCM / Exercices / Fiches : priorité à la lisibilité */

/* ===== Exercices ===== */
.gm-ex76-page{max-width:1180px;margin:0 auto;color:#0f172a}
.gm-ex76-back{margin-bottom:18px;font-weight:800;color:#1e3a8a}
.gm-ex76-page__head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:16px;padding:0 2px}
.gm-ex76-page__head>div:first-child{display:flex;align-items:center;gap:13px}.gm-ex76-page__head>div:first-child>span{font-size:2rem}.gm-ex76-page__head p{margin:0;color:#64748b;font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.gm-ex76-page__head h2{margin:2px 0 0;font:900 clamp(1.8rem,3vw,2.6rem)/1.08 Georgia,serif}.gm-ex76-counts{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.gm-ex76-counts span{border:1px solid #dbe5ef;background:#fff;border-radius:999px;padding:8px 12px;font-size:.78rem;font-weight:800;color:#475569}
.gm-ex76-filters{margin:0 0 18px;border:1px solid #e2e8f0;background:#fff;border-radius:18px;box-shadow:0 7px 20px -20px rgba(15,23,42,.45)}.gm-ex76-filters>summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;font-weight:900;color:#334155}.gm-ex76-filters>summary::-webkit-details-marker{display:none}.gm-ex76-filters>summary small{font-size:.73rem;color:#64748b;font-weight:700}.gm-ex76-filters__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:0 16px 12px}.gm-ex76-filters label{font-size:.76rem;font-weight:900;color:#475569}.gm-ex76-filters select{display:block;width:100%;margin-top:5px;border:1px solid #dbe3ec;border-radius:10px;background:#fff;padding:8px 9px;font-size:.82rem;color:#0f172a}.gm-ex76-filter-reset{margin:0 16px 14px;border:0;background:#f1f5f9;border-radius:10px;padding:8px 11px;font-size:.75rem;font-weight:900;color:#475569}
.gm-ex76-series-list{display:grid;gap:18px}.gm-ex76-series{overflow:hidden;border:1px solid #dbe3ec;background:#fff;border-radius:24px;box-shadow:0 16px 36px -32px rgba(15,23,42,.65)}.gm-ex76-series__head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px 22px 15px;border-bottom:1px solid #edf2f7;background:#fbfdff}.gm-ex76-series__head p{margin:0 0 3px;color:#64748b;font-size:.68rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.gm-ex76-series__head h3{margin:0;font:900 1.22rem/1.25 Georgia,serif;color:#0f172a}.gm-ex76-series__description{margin-top:6px;max-width:820px;color:#64748b;font-size:.88rem;line-height:1.5}.gm-ex76-series__summary{min-width:92px;border-left:1px solid #e2e8f0;padding-left:15px;text-align:right}.gm-ex76-series__summary strong{display:block;font-size:1.2rem}.gm-ex76-series__summary span,.gm-ex76-series__summary small{display:block;color:#64748b;font-size:.72rem;font-weight:700}
.gm-ex76-question-list{list-style:none;margin:0;padding:0 22px}.gm-ex76-question{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:16px;padding:19px 0;border-bottom:1px solid #eef2f6}.gm-ex76-question:last-child{border-bottom:0}.gm-ex76-question__main{display:flex;align-items:flex-start;gap:13px;min-width:0}.gm-ex76-question__number{display:flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;height:34px;border-radius:11px;background:#0f172a;color:#fff;font-weight:950}.gm-ex76-question__content{min-width:0;flex:1}.gm-ex76-statement{color:#0f172a;font:700 1.06rem/1.72 Georgia,serif;overflow-wrap:anywhere}.gm-ex76-statement .math-inline{font-size:1.05em}.gm-ex76-statement .math-inline-fraction{margin:0 .12em;vertical-align:-.4em;transform:scale(1.04);transform-origin:center}
.gm-ex76-meta{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:12px}.gm-ex76-meta span{display:inline-flex;align-items:center;min-height:29px;border:1px solid #dbe3ec;background:#f8fafc;border-radius:999px;padding:5px 9px;font-size:.71rem;font-weight:850;color:#475569}.gm-ex76-meta__difficulty{border-color:#bfdbfe!important;background:#eff6ff!important;color:#1d4ed8!important}
.gm-ex76-helpbar{display:flex;flex-direction:column;gap:8px;align-self:start}.gm-ex76-help{border:1px solid #e2e8f0;border-radius:12px;background:#fff;overflow:hidden}.gm-ex76-help summary{cursor:pointer;list-style:none;padding:8px 10px;font-size:.72rem;font-weight:900;color:#475569}.gm-ex76-help summary::-webkit-details-marker{display:none}.gm-ex76-help>div{border-top:1px solid #edf2f7;padding:9px 10px;font-size:.76rem;line-height:1.45;color:#475569}.gm-ex76-help small{display:block;padding:0 10px 9px;font-size:.68rem;color:#64748b}.gm-ex76-help--hint[open]{border-color:#bfdbfe;background:#f8fbff}.gm-ex76-help--mistake[open]{border-color:#fed7aa;background:#fffaf5}
.gm-ex76-correction-actions{padding:10px 22px 18px}.gm-ex76-correction-button{display:inline-flex;align-items:center;gap:8px;border:1px solid #cbd5e1;background:#0f172a;color:#fff;border-radius:12px;padding:10px 14px;font-size:.8rem;font-weight:900}.gm-ex76-correction-panel{border-top:1px solid #d1fae5;background:#f8fffb;padding:16px 22px 19px}.gm-ex76-correction-panel ol{list-style:none;margin:0;padding:0}.gm-ex76-correction-row{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;padding:10px 0;border-bottom:1px solid #dcfce7;font-size:.9rem;line-height:1.65}.gm-ex76-correction-row:last-child{border-bottom:0}.gm-ex76-correction-row>span{display:flex;align-items:center;justify-content:center;width:27px;height:27px;border-radius:9px;background:#047857;color:#fff;font-weight:900}.gm-ex76-empty{text-align:center;border:1px dashed #cbd5e1;background:#fff;border-radius:22px;padding:36px}.gm-ex76-empty>div{font-size:2rem}.gm-ex76-empty button{margin-top:12px;background:#0f172a;color:#fff;border-radius:10px;padding:9px 13px;font-weight:900}
@media(max-width:900px){.gm-ex76-question{grid-template-columns:1fr}.gm-ex76-helpbar{display:grid;grid-template-columns:1fr 1fr}.gm-ex76-filters__grid{grid-template-columns:1fr 1fr}.gm-ex76-page__head{align-items:flex-start;flex-direction:column}.gm-ex76-counts{justify-content:flex-start}}
@media(max-width:600px){.gm-ex76-question-list{padding:0 14px}.gm-ex76-series__head{padding:16px}.gm-ex76-helpbar,.gm-ex76-filters__grid{grid-template-columns:1fr}.gm-ex76-statement{font-size:1rem}}

/* ===== SOURCE: styles/gomathy-maths-exercises-reference-v104.css ===== */
/* GoMathy V104 — corrections maths niveau référence */
.gm-v104-objectives{display:block;margin-top:.35rem;color:#475569;font-size:.86rem;line-height:1.45;font-weight:600}
.gm-v104-correction{display:grid;gap:.55rem}
.gm-v104-correction__row{display:grid;grid-template-columns:minmax(145px,190px) 1fr;gap:.75rem;align-items:start;padding:.62rem .72rem;border:1px solid #e2e8f0;border-radius:.8rem;background:#fff}
.gm-v104-correction__row strong{font-size:.78rem;letter-spacing:.01em;color:#0f172a}
.gm-v104-correction__row span{min-width:0;color:#334155;line-height:1.5}
.gm-v104-correction__solution{background:#f8fafc;border-color:#cbd5e1}
.gm-v104-correction__solution span{color:#0f172a;font-weight:600}
@media (max-width:700px){
  .gm-v104-correction__row{grid-template-columns:1fr;gap:.25rem}
}
@media print{
  .gm-v104-correction__row{break-inside:avoid}
}

/* ===== SOURCE: styles/gomathy-maths-long-problems-v109.css ===== */
/* GoMathy V109 — grands problèmes maths, 3e → Terminale */
.gm-v109-brief{display:grid;gap:.7rem;padding:.9rem 1rem;border:1px solid #cbd5e1;border-radius:1rem;background:linear-gradient(180deg,#fff 0%,#f8fafc 100%);box-shadow:0 10px 24px rgba(15,23,42,.06)}
.gm-v109-brief__top{display:flex;align-items:center;justify-content:space-between;gap:.75rem;font-size:.78rem;font-weight:800;color:#475569}
.gm-v109-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.3rem .55rem;background:#0f172a;color:#fff;letter-spacing:.04em;font-size:.7rem}
.gm-v109-brief p{margin:0;color:#0f172a;line-height:1.55;font-weight:650}
.gm-v109-skills{display:flex;flex-wrap:wrap;gap:.4rem}
.gm-v109-skills span{padding:.28rem .52rem;border-radius:999px;border:1px solid #dbeafe;background:#eff6ff;color:#1e3a8a;font-size:.74rem;font-weight:750}
.gm-v109-rule{padding:.55rem .7rem;border-left:3px solid #0f172a;background:#fff;color:#475569;font-size:.8rem;line-height:1.45}
.gm-v109-correction{display:grid;gap:.5rem}
.gm-v109-correction__step{display:grid;grid-template-columns:minmax(145px,180px) 1fr;gap:.75rem;padding:.62rem .72rem;border:1px solid #e2e8f0;border-radius:.82rem;background:#fff;align-items:start}
.gm-v109-correction__step strong{font-size:.77rem;color:#0f172a}
.gm-v109-correction__step span{font-size:.88rem;color:#334155;line-height:1.55;min-width:0}
.gm-v109-correction__work{border-color:#bfdbfe;background:#f8fbff}
.gm-v109-correction__work span{font-weight:650;color:#0f172a}
.gm-v109-correction__progress{text-align:right;color:#64748b;font-size:.72rem;font-weight:700}
@media(max-width:700px){
  .gm-v109-correction__step{grid-template-columns:1fr;gap:.25rem}
  .gm-v109-brief__top{align-items:flex-start}
}
@media print{
  .gm-v109-brief,.gm-v109-correction__step{break-inside:avoid}
}

/* ===== SOURCE: styles/gomathy-maths-micromethods-v119.css ===== */
/* GoMathy V105 — micro-méthodes maths, contenu uniquement */
.math-micro-v105,.math-decision-v105{font-family:inherit;color:#0f172a}
.math-micro-v105{margin:1rem 0 1.2rem;border:1px solid #cbd5e1;border-radius:20px;background:#fff;box-shadow:0 10px 28px rgba(15,23,42,.07);overflow:hidden}
.math-micro-v105__head{display:flex;justify-content:space-between;gap:1rem;padding:1rem 1.1rem .8rem;background:linear-gradient(135deg,#eef2ff,#f8fafc 58%,#ecfeff)}
.math-micro-v105__head h3{font-size:1.12rem;font-weight:900;margin:.12rem 0}.math-micro-v105__head p{font-size:.82rem;line-height:1.45;color:#475569;margin:0;max-width:68ch}
.math-micro-v105__eyebrow{font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#4338ca}
.math-micro-v105__count{align-self:flex-start;background:#0f172a;color:white;border-radius:999px;padding:.32rem .58rem;font-size:.68rem;font-weight:800;white-space:nowrap}
.math-micro-v105__chooser{display:flex;gap:.38rem;align-items:center;flex-wrap:wrap;padding:.6rem 1rem;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;background:#f8fafc;font-size:.72rem}
.math-micro-v105__chooser strong{color:#334155}.math-micro-v105__chooser span{padding:.2rem .42rem;border:1px solid #dbeafe;background:white;border-radius:999px;color:#334155}
.math-micro-v105__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;padding:.8rem}
.math-micro-v105__card{border:1px solid #dbe3ee;border-radius:14px;background:#fff;overflow:hidden;align-self:start}.math-micro-v105__card[open]{border-color:#a5b4fc;box-shadow:0 5px 18px rgba(79,70,229,.08)}
.math-micro-v105__card summary{list-style:none;display:grid;grid-template-columns:auto 1fr auto;gap:.6rem;align-items:center;cursor:pointer;padding:.7rem .75rem}.math-micro-v105__card summary::-webkit-details-marker{display:none}
.math-micro-v105__card summary strong{display:block;font-size:.84rem;line-height:1.2}.math-micro-v105__card summary small{display:block;font-size:.67rem;color:#64748b;line-height:1.3;margin-top:.16rem}.math-micro-v105__card summary b{font-size:1.1rem;color:#6366f1}.math-micro-v105__card[open] summary b{transform:rotate(45deg)}
.math-micro-v105__num{display:grid;place-items:center;width:1.7rem;height:1.7rem;border-radius:9px;background:#eef2ff;color:#4338ca;font-size:.72rem;font-weight:900}
.math-micro-v105__body{display:grid;grid-template-columns:1.2fr .8fr;gap:.48rem;padding:0 .72rem .72rem}.math-micro-v105__body>div{border-radius:10px;padding:.55rem .6rem;font-size:.71rem;line-height:1.38}.math-micro-v105__body p{margin:0}.math-micro-v105__body p+p{margin-top:.25rem}
.math-micro-v105__steps{grid-row:span 2;background:#f8fafc;border:1px solid #e2e8f0}.math-micro-v105__steps ol{margin:.32rem 0 0 1.05rem;padding:0}.math-micro-v105__steps li{margin:.18rem 0}.math-micro-v105__example{background:#ecfdf5;border:1px solid #bbf7d0}.math-micro-v105__copy{background:#eff6ff;border:1px solid #bfdbfe}.math-micro-v105__trap{background:#fff7ed;border:1px solid #fed7aa}
.math-decision-v105{margin:.7rem 0;border-left:4px solid #8b5cf6;border-radius:12px;background:#faf5ff;padding:.65rem .8rem;display:grid;grid-template-columns:minmax(160px,.55fr) 1.45fr;gap:.7rem;font-size:.72rem}.math-decision-v105>div:first-child span{display:block;font-size:.66rem;color:#7c3aed;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.math-decision-v105>div:first-child strong{display:block;margin-top:.15rem}.math-decision-v105>div:last-child{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.3rem}.math-decision-v105 p{margin:0;background:white;border:1px solid #e9d5ff;border-radius:8px;padding:.34rem .42rem;color:#475569}
@media(max-width:820px){.math-micro-v105__grid{grid-template-columns:1fr}.math-decision-v105{grid-template-columns:1fr}.math-decision-v105>div:last-child{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.math-micro-v105__head{display:block}.math-micro-v105__count{display:inline-block;margin-top:.45rem}.math-micro-v105__body{grid-template-columns:1fr}.math-micro-v105__steps{grid-row:auto}.math-decision-v105>div:last-child{grid-template-columns:1fr}}
/* Ne jamais cibler les shells outils V95 / écrans outils */
body.gomathy-tools-fullscreen-v75 .math-micro-v105,body.gomathy-tools-fullscreen-v75 .math-decision-v105,#tools-page .math-micro-v105,#tools-page .math-decision-v105{display:none!important}

/* GoMathy V119 — les méthodes sont développées par défaut. */
.math-micro-v105__card[open] .math-micro-v105__body{animation:gm119-method-open .14s ease-out}
@keyframes gm119-method-open{from{opacity:.72;transform:translateY(-2px)}to{opacity:1;transform:none}}

/* ===== SOURCE: styles/gomathy-exercises-v50.css ===== */
/* GoMathy v50 — exercices : lecture homogène, aérée et proche des cartes de cours */
.gomathy-exercise-page-v50{
  --exercise-paper:#fbf6ec;
  --exercise-card:#fffdf8;
  --exercise-ink:#172033;
  --exercise-muted:#667085;
  --exercise-border:#e4d8c7;
  --exercise-accent:#234b6f;
  --exercise-accent-soft:#edf4f8;
  width:min(100%,1180px);
  margin:0 auto;
  padding:2px 0 44px;
}
.gomathy-exercise-page-v50 .gomathy-exercise-filter-v50{
  background:linear-gradient(180deg,#fffdf9,#fbf7ef);
  border-color:#e7dccd;
  box-shadow:none;
}
.gomathy-exercise-list-v50{display:grid;grid-template-columns:1fr;gap:20px;max-width:1080px}
.gomathy-exercise-card-v50{
  position:relative;
  overflow:hidden;
  border:1px solid var(--exercise-border);
  border-radius:24px;
  background:var(--exercise-card);
  box-shadow:0 12px 28px -26px rgba(15,23,42,.42);
}
.gomathy-exercise-card-v50:hover{box-shadow:0 18px 34px -28px rgba(15,23,42,.52)}
.gomathy-exercise-head-v50{
  display:grid;
  grid-template-columns:52px minmax(0,1fr) auto;
  gap:14px;
  align-items:start;
  padding:20px 22px 16px;
  border-bottom:1px solid #ede4d8;
  background:linear-gradient(180deg,#fffdf8,#fbf6ec);
}
.gomathy-exercise-number-v50{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  min-width:42px;
  border:1px solid #c7d8e6;
  border-radius:13px;
  background:#f2f7fa;
  color:#234b6f;
  font-size:1rem;
  font-weight:900;
  line-height:1;
}
.gomathy-exercise-title-v50{margin:0;color:var(--exercise-ink);font-size:1.1rem;font-weight:850;line-height:1.3}
.gomathy-exercise-context-v50{margin:.35rem 0 0;color:var(--exercise-muted);font-size:.9rem;line-height:1.55}
.gomathy-exercise-head-meta-v50{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;align-items:center}
.gomathy-exercise-pill-v50{display:inline-flex;align-items:center;white-space:nowrap;border:1px solid #d9dfe6;border-radius:999px;background:#fff;padding:5px 9px;color:#546174;font-size:.72rem;font-weight:800}
.gomathy-exercise-body-v50{padding:18px 22px 21px}
.gomathy-exercise-statement-v50{
  border:1px solid #e7dccd;
  border-radius:18px;
  background:var(--exercise-paper);
  padding:16px;
}
.gomathy-exercise-label-v50{margin:0 0 10px;color:#7c684f;font-size:.7rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.gomathy-exercise-questions-v50{display:grid;gap:10px}
.gomathy-exercise-question-v50{
  display:grid;
  grid-template-columns:30px minmax(0,1fr);
  gap:11px;
  align-items:start;
  border:1px solid #e8e1d8;
  border-radius:14px;
  background:#fff;
  padding:12px 13px;
}
.gomathy-exercise-qnumber-v50{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  min-width:28px;
  border-radius:9px;
  background:var(--exercise-accent-soft);
  color:var(--exercise-accent);
  font-size:.79rem;
  font-weight:900;
  line-height:1;
}
.gomathy-exercise-question-text-v50{min-width:0;color:#1f2937;font-size:.98rem;line-height:1.68}
.gomathy-exercise-question-meta-v50{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}
.gomathy-exercise-question-meta-v50 span{border-radius:999px;background:#f8fafc;padding:3px 7px;color:#718096;font-size:.67rem;font-weight:750}
.gomathy-exercise-hints-v50{margin-top:12px;border:1px solid #ead9ae;border-radius:15px;background:#fffaf0;overflow:hidden}
.gomathy-exercise-hints-v50>summary{cursor:pointer;list-style:none;padding:11px 13px;color:#855f14;font-size:.84rem;font-weight:850}
.gomathy-exercise-hints-v50>summary::-webkit-details-marker{display:none}
.gomathy-exercise-hints-v50[open]>summary{border-bottom:1px solid #f0e2bd}
.gomathy-exercise-hint-list-v50{display:grid;gap:8px;padding:11px 13px 13px}
.gomathy-exercise-hint-v50{display:grid;grid-template-columns:25px minmax(0,1fr);gap:9px;align-items:start;color:#675530;font-size:.88rem;line-height:1.55}
.gomathy-exercise-hint-v50 .gomathy-exercise-qnumber-v50{width:24px;height:24px;min-width:24px;border-radius:8px;background:#fff3cd;color:#8a6314;font-size:.7rem}
.gomathy-exercise-correction-button-v50{display:inline-flex;align-items:center;gap:8px;margin-top:13px;border:1px solid #bdd7c9;border-radius:12px;background:#f0f9f4;padding:9px 13px;color:#17603c;font-size:.84rem;font-weight:850;transition:.18s ease}
.gomathy-exercise-correction-button-v50:hover{background:#e7f5ed}
.gomathy-exercise-correction-v50{margin-top:12px;border:1px solid #c9dfd1;border-radius:17px;background:#f5fbf7;padding:14px}
.gomathy-exercise-correction-v50 .gomathy-exercise-label-v50{color:#27734c}
.gomathy-exercise-correction-list-v50{display:grid;gap:9px}
.gomathy-exercise-correction-row-v50{display:grid;grid-template-columns:30px minmax(0,1fr);gap:11px;align-items:start;border:1px solid #dcebe2;border-radius:13px;background:#fff;padding:11px 12px;color:#26362d;line-height:1.62}
.gomathy-exercise-correction-row-v50 .gomathy-exercise-qnumber-v50{background:#e7f5ed;color:#17603c}
.gomathy-exercise-page-v50 .math-inline{overflow-wrap:anywhere}
@media(max-width:720px){
  .gomathy-exercise-head-v50{grid-template-columns:44px minmax(0,1fr);padding:16px;gap:10px}
  .gomathy-exercise-number-v50{width:38px;height:38px;min-width:38px}
  .gomathy-exercise-head-meta-v50{grid-column:1/-1;justify-content:flex-start;padding-left:48px}
  .gomathy-exercise-body-v50{padding:14px}
  .gomathy-exercise-statement-v50{padding:12px}
  .gomathy-exercise-question-v50{padding:11px 10px;gap:9px}
  .gomathy-exercise-question-text-v50{font-size:.94rem;line-height:1.62}
  .gomathy-exercise-correction-button-v50{width:100%;justify-content:center}
}

/* GoMathy v51 — index des exercices : même langage visuel que les cartes de cours,
   sans effet « feuille de papier » ni bordure noire. */
.gomathy-exercise-index-v51{
  background:linear-gradient(180deg,#f8fbff 0%,#fffdf8 52%,#fbfdff 100%)!important;
  border-color:#dbeafe!important;
  box-shadow:0 18px 50px -42px rgba(37,99,235,.42)!important;
}
.gomathy-exercise-index-v51__heading{margin:0 0 1.45rem}
.gomathy-exercise-index-v51__kicker{color:#2563eb;font-size:.78rem;font-weight:950;letter-spacing:.16em;text-transform:uppercase}
.gomathy-exercise-index-v51__heading h2{margin:.4rem 0 0;color:#0f172a;font-size:clamp(2rem,4vw,2.6rem);font-weight:950;line-height:1.08}
.gomathy-exercise-index-v51__heading p{max-width:760px;margin:.65rem 0 0;color:#64748b;font-size:.97rem;line-height:1.58}
.gomathy-exercise-index-v51__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px!important}
.gomathy-exercise-chapter-card-v51{
  min-height:228px!important;
  padding:1.28rem 1.35rem 1.22rem!important;
  border-width:1.5px!important;
  box-shadow:0 14px 30px -27px color-mix(in srgb,var(--gmc-accent) 55%,transparent)!important;
}
.gomathy-exercise-chapter-card-v51::before{width:5px}
.gomathy-exercise-chapter-card-v51::after{width:112px;height:112px;right:-34px;top:-42px;opacity:.065}
.gomathy-exercise-chapter-card-v51:hover{transform:translateY(-2px);box-shadow:0 18px 34px -27px color-mix(in srgb,var(--gmc-accent) 68%,transparent)!important}
.gomathy-exercise-chapter-card-v51 .gomathy-course-card__icon{width:46px;height:46px;border-radius:15px;font-size:1.45rem;box-shadow:none}
.gomathy-exercise-chapter-card-v51 .gomathy-course-card__badge{background:rgba(255,255,255,.78);font-size:.7rem;padding:.32rem .68rem}
.gomathy-exercise-chapter-card-v51 .gomathy-course-card__title{margin-bottom:.65rem;font-size:1.16rem;line-height:1.28}
.gomathy-exercise-chapter-card-v51__meta{margin-bottom:.72rem!important;font-size:.86rem!important;line-height:1.45!important}
.gomathy-exercise-chapter-card-v51__skills{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:.35rem .75rem;margin:0 0 1rem;padding:.68rem .75rem;border-radius:13px;background:rgba(255,255,255,.58);color:#64748b;font-size:.72rem;font-weight:800;line-height:1.25}
.gomathy-exercise-chapter-card-v51__skills span{display:inline-flex;align-items:center;gap:.35rem}
.gomathy-exercise-chapter-card-v51__skills span::before{content:"•";color:var(--gmc-accent);font-size:1rem;line-height:0}
.gomathy-exercise-chapter-card-v51 .gomathy-course-card__action{font-size:.9rem}
@media(max-width:1180px){.gomathy-exercise-index-v51__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
  .gomathy-exercise-index-v51__grid{grid-template-columns:1fr}
  .gomathy-exercise-chapter-card-v51{min-height:205px!important;padding:1.08rem 1.08rem 1rem!important}
}
/* Spécificité renforcée : ces règles doivent rester prioritaires même si les CSS des cours
   sont chargées plus tard dans la page. */
.gomathy-exercise-index-v51 .gomathy-exercise-index-v51__grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.gomathy-exercise-index-v51 .gomathy-exercise-chapter-card-v51{
  min-height:228px!important;
  padding:1.28rem 1.35rem 1.22rem!important;
  border-width:1.5px!important;
}
@media(max-width:1180px){.gomathy-exercise-index-v51 .gomathy-exercise-index-v51__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:760px){
  .gomathy-exercise-index-v51 .gomathy-exercise-index-v51__grid{grid-template-columns:1fr!important}
  .gomathy-exercise-index-v51 .gomathy-exercise-chapter-card-v51{min-height:205px!important;padding:1.08rem 1.08rem 1rem!important}
}

/* ===== SOURCE: styles/gomathy-recaps-premium-v54.css ===== */
/* Utilities required by the v54 premium recap experience.
   Kept local so the fiches stay fully styled even with the purged Tailwind build. */
.hover\:text-slate-950:hover{color:#020617}
.px-7{padding-left:1.75rem;padding-right:1.75rem}
.py-10{padding-top:2.5rem;padding-bottom:2.5rem}
.border-slate-700{border-color:#334155}
.text-violet-200{color:#ddd6fe}
.max-w-2xl{max-width:42rem}
.leading-7{line-height:1.75rem}
.text-slate-200{color:#e2e8f0}
.gap-8{gap:2rem}
.leading-8{line-height:2rem}
.border-slate-800{border-color:#1e293b}
.text-violet-300{color:#c4b5fd}
.border-violet-400{border-color:#a78bfa}
.bg-slate-800{background-color:#1e293b}
.text-slate-100{color:#f1f5f9}
.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}
.hover\:shadow-lg:hover{box-shadow:0 10px 15px -3px rgb(15 23 42 / .12),0 4px 6px -4px rgb(15 23 42 / .08)}
.text-blue-300{color:#93c5fd}
.text-blue-200{color:#bfdbfe}
.bg-white\/15{background-color:rgb(255 255 255 / .15)}
.bg-emerald-400{background-color:#34d399}
.leading-5{line-height:1.25rem}
@media (min-width:768px){
  .md\:px-10{padding-left:2.5rem;padding-right:2.5rem}
  .md\:text-4xl{font-size:2.25rem;line-height:2.5rem}
  .md\:p-10{padding:2.5rem}
  .md\:text-5xl{font-size:3rem;line-height:1}
  .md\:p-8{padding:2rem}
  .md\:p-7{padding:1.75rem}
  .md\:items-center{align-items:center}
  .md\:p-9{padding:2.25rem}
  .md\:min-w-\[245px\]{min-width:245px}
}
@media (min-width:1024px){.lg\:items-end{align-items:flex-end}}

/* ===== SOURCE: styles/gomathy-fiches-value-v98.css ===== */
/* GoMathy V98 — fiches maths à forte valeur perçue. Hors Outils/. */
.gm98-recap-root{max-width:1180px!important}
.gm98-premium-wrap{--gm98-ink:#0f172a;--gm98-muted:#64748b;--gm98-line:#dbe3ef;--gm98-blue:#1d4ed8;--gm98-navy:#172554;--gm98-green:#047857;--gm98-amber:#b45309;--gm98-red:#b91c1c;color:var(--gm98-ink);padding-bottom:28px}
.gm98-topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 14px}.gm98-top-actions,.gm98-after{display:flex;gap:9px;flex-wrap:wrap}.gm98-back,.gm98-print,.gm98-qcm{border:1px solid #cbd5e1;border-radius:12px;background:#fff;padding:10px 13px;font-weight:850;color:#334155;cursor:pointer}.gm98-back{border:0;background:transparent;padding-left:0}.gm98-print{border-color:#bfdbfe;background:#eff6ff;color:#1e40af}.gm98-qcm{border-color:#c7d2fe;background:#172554;color:#fff}
.gm98-premium-sheet{overflow:hidden;border:1px solid #d7deea;border-radius:26px;background:#f8fafc;box-shadow:0 24px 60px -45px rgba(15,23,42,.55)}
.gm98-sheet-head{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.75fr);gap:24px;align-items:end;padding:28px 30px 22px;background:linear-gradient(135deg,#fff 0%,#f5f8ff 58%,#eef2ff 100%);border-bottom:1px solid #e2e8f0}.gm98-kicker{margin:0;color:#4338ca;font-size:.68rem;font-weight:950;letter-spacing:.14em}.gm98-sheet-head h2{margin:7px 0 8px;font-size:clamp(1.85rem,3.5vw,2.7rem);line-height:1.06;letter-spacing:-.035em}.gm98-promise{margin:0;max-width:760px;color:#475569;font-size:.94rem;line-height:1.55}.gm98-scan{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.gm98-metric{min-width:0;border:1px solid #dbeafe;border-radius:15px;background:rgba(255,255,255,.88);padding:10px 8px;text-align:center}.gm98-metric>span{display:block;font-size:1.1rem}.gm98-metric strong{display:block;margin-top:2px;font-size:.78rem}.gm98-metric small{display:block;margin-top:1px;color:#64748b;font-size:.6rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.gm98-value-strip{padding:10px 30px;border-bottom:1px solid #e2e8f0;background:#172554;color:#e0e7ff;font-size:.76rem;line-height:1.45}.gm98-value-strip strong{color:#fff}
.gm98-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px;padding:14px}.gm98-card{min-width:0;border:1px solid var(--gm98-line);border-radius:18px;background:#fff;padding:17px;box-shadow:0 10px 28px -28px rgba(15,23,42,.45)}.gm98-formulas{grid-column:span 7;border-color:#c7d2fe;background:linear-gradient(145deg,#fff,#f8faff)}.gm98-visual-card{grid-column:span 5;border-color:#bfdbfe}.gm98-essentials{grid-column:span 7}.gm98-method-card{grid-column:span 5;border-color:#bbf7d0;background:#fbfffd}.gm98-example-card{grid-column:span 7;border-color:#e9d5ff;background:#fdfbff}.gm98-traps{grid-column:span 5;border-color:#fed7aa;background:#fffcf7}.gm98-check{grid-column:span 6;border-color:#bae6fd;background:#fbfeff}.gm98-vocab{grid-column:span 6;background:#fbfafc}.gm98-card-title{display:flex;align-items:center;gap:9px;margin-bottom:12px}.gm98-card-title>span{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:10px;background:#eef2ff;font-size:1.05rem;font-weight:950;color:#3730a3}.gm98-card-title small{display:block;margin-bottom:1px;color:#64748b;font-size:.58rem;font-weight:950;letter-spacing:.09em}.gm98-card-title h3{margin:0;font-size:1.02rem;line-height:1.18;letter-spacing:-.015em}.gm98-list{display:grid;gap:7px;margin:0;padding:0;list-style:none}.gm98-list li{position:relative;padding-left:17px;color:#334155;font-size:.78rem;line-height:1.48}.gm98-list li::before{content:'•';position:absolute;left:2px;top:0;color:#4f46e5;font-weight:950}.gm98-danger li::before{content:'×';color:#dc2626}.gm98-checklist li::before{content:'✓';color:#059669}
.gm98-method{display:grid;gap:7px;margin:0;padding:0;list-style:none}.gm98-method li{display:grid;grid-template-columns:25px 1fr;gap:8px;align-items:start}.gm98-method li>span{display:grid;place-items:center;width:25px;height:25px;border-radius:999px;background:#047857;color:#fff;font-size:.65rem;font-weight:950}.gm98-method p{margin:2px 0 0;color:#334155;font-size:.77rem;line-height:1.45}.gm98-example{margin:0;padding:13px 14px;border-radius:13px;background:#fff;border:1px solid #f3e8ff;color:#334155;font-size:.8rem;line-height:1.55}.gm98-vocab-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.gm98-vocab-grid>div{padding:9px 10px;border-radius:11px;background:#f8fafc}.gm98-vocab-grid strong{display:block;font-size:.72rem}.gm98-vocab-grid span{display:block;margin-top:2px;color:#64748b;font-size:.66rem;line-height:1.35}
.gm98-formula-body{font-size:.78rem}.gm98-formula-body .math-formula-v31,.gm98-formula-body [class*="math-formula"]{margin:0!important}.gm98-formula-body section{margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}.gm98-formula-body h3,.gm98-formula-body .math-formula-v31__head{display:none!important}.gm98-formula-body table{width:100%!important;font-size:.7rem!important;border-collapse:separate!important;border-spacing:0!important}.gm98-formula-body th,.gm98-formula-body td{padding:7px 8px!important;vertical-align:top!important}.gm98-formula-body tr:nth-child(even) td{background:#f8fafc}.gm98-formula-fallback ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0;padding:0;list-style:none}.gm98-formula-fallback li{padding:9px 10px;border:1px solid #e0e7ff;border-radius:11px;background:#fff;font-size:.75rem;line-height:1.42;font-weight:760;color:#1e293b}
.gm98-visual{overflow:hidden}.gm98-visual .math-visual-v17{margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}.gm98-visual .math-visual-v17__head{margin:0 0 7px!important;padding:0!important}.gm98-visual .math-visual-v17__head>div:first-child{display:none!important}.gm98-visual .math-visual-v17__head p{display:none!important}.gm98-visual .math-visual-v17__head h3{font-size:.8rem!important;margin:0!important}.gm98-visual .math-visual-v17__head span{font-size:.66rem!important;line-height:1.3!important;color:#64748b!important}.gm98-visual .math-visual-v17__grid{display:grid!important;grid-template-columns:1fr!important;gap:5px!important}.gm98-visual .math-visual-v17__graphic{padding:4px!important;border:0!important;background:#fff!important;min-height:0!important}.gm98-visual .math-visual-v17__table{display:none!important}.gm98-visual svg{display:block;width:100%!important;max-height:205px!important}.gm98-visual-empty{display:flex;gap:10px;align-items:flex-start;padding:14px;border-radius:13px;background:#f8fafc;color:#475569;font-size:.76rem;line-height:1.5}.gm98-visual-empty span{font-size:1.3rem}.gm98-visual-empty p{margin:0}.gm98-sheet-foot{display:flex;justify-content:space-between;gap:12px;padding:10px 17px;border-top:1px solid #e2e8f0;color:#94a3b8;font-size:.6rem;font-weight:800}.gm98-after{justify-content:center;margin-top:13px}.gm98-print-large,.gm98-qcm-large{padding:12px 16px}
@media (max-width:900px){.gm98-sheet-head{grid-template-columns:1fr}.gm98-formulas,.gm98-visual-card,.gm98-essentials,.gm98-method-card,.gm98-example-card,.gm98-traps,.gm98-check,.gm98-vocab{grid-column:1/-1}.gm98-grid{grid-template-columns:1fr}.gm98-vocab-grid{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.gm98-topbar{align-items:flex-start}.gm98-top-actions{justify-content:flex-end}.gm98-premium-sheet{border-radius:20px}.gm98-sheet-head{padding:21px 18px 17px}.gm98-sheet-head h2{font-size:1.75rem}.gm98-scan{grid-template-columns:1fr 1fr 1fr}.gm98-metric{padding:8px 4px}.gm98-value-strip{padding:9px 18px}.gm98-grid{gap:9px;padding:9px}.gm98-card{padding:14px;border-radius:15px}.gm98-vocab-grid{grid-template-columns:1fr}.gm98-formula-fallback ul{grid-template-columns:1fr}.gm98-formula-body table{font-size:.64rem!important}.gm98-formula-body th,.gm98-formula-body td{padding:6px 5px!important}.gm98-sheet-foot{flex-direction:column}.gm98-after{display:grid;grid-template-columns:1fr;width:100%}.gm98-after button{width:100%}}
@media print{
  @page{size:A4 portrait;margin:8mm}
  html.gm98-printing body>*{visibility:hidden!important}
  html.gm98-printing .gm98-premium-wrap,html.gm98-printing .gm98-premium-wrap *{visibility:visible!important}
  html.gm98-printing .gm98-premium-wrap{position:absolute!important;inset:0 auto auto 0!important;width:100%!important;padding:0!important;background:#fff!important}
  html.gm98-printing .gm98-topbar,html.gm98-printing .gm98-after{display:none!important}
  html.gm98-printing .gm98-premium-sheet{border:0!important;border-radius:0!important;box-shadow:none!important}
  html.gm98-printing .gm98-sheet-head{padding:12px 14px 10px!important;grid-template-columns:1.7fr .8fr!important}.gm98-sheet-head h2{font-size:21pt!important}.gm98-promise{font-size:8.6pt!important}.gm98-value-strip{padding:5px 14px!important;font-size:7pt!important}.gm98-grid{gap:6px!important;padding:7px!important}.gm98-card{padding:8px!important;border-radius:9px!important;break-inside:avoid}.gm98-card-title{margin-bottom:5px!important}.gm98-card-title>span{width:25px!important;height:25px!important;flex-basis:25px!important;font-size:.8rem!important}.gm98-card-title small{font-size:5.5pt!important}.gm98-card-title h3{font-size:8.5pt!important}.gm98-list{gap:3px!important}.gm98-list li,.gm98-method p,.gm98-example{font-size:6.6pt!important;line-height:1.3!important}.gm98-method{gap:3px!important}.gm98-method li{grid-template-columns:18px 1fr!important;gap:5px!important}.gm98-method li>span{width:18px!important;height:18px!important;font-size:5.5pt!important}.gm98-formula-body table{font-size:5.9pt!important}.gm98-formula-body th,.gm98-formula-body td{padding:3px 4px!important}.gm98-visual svg{max-height:112px!important}.gm98-vocab-grid{gap:3px!important}.gm98-vocab-grid>div{padding:4px 5px!important}.gm98-vocab-grid strong{font-size:6.1pt!important}.gm98-vocab-grid span{font-size:5.5pt!important}.gm98-sheet-foot{padding:4px 8px!important;font-size:5pt!important}
}

/* ===== SOURCE: styles/gomathy-fiches-maitrise-v101.css ===== */
/* GoMathy V101 — fiches = noyau de maîtrise + rappel actif. Ne cible aucun outil. */
.gm101-math-sheet,.gm101-pc-sheet,.gm101-subject-card,.gm101-recall{--m101-ink:#172033;--m101-muted:#607083;--m101-line:#dbe3ec;--m101-navy:#172554;--m101-blue:#3153a4;--m101-green:#0f766e;--m101-red:#b42318;color:var(--m101-ink)}
/* Maths : ne garder au premier regard que le noyau utile. */
.gm101-math-sheet .gm98-scan{opacity:.82}.gm101-math-sheet .gm98-promise{font-weight:650}.gm101-math-sheet .gm98-grid{align-items:start}.gm101-math-sheet .gm98-formulas{order:1}.gm101-math-sheet .gm98-essentials{order:2}.gm101-math-sheet .gm98-visual-card{order:3}.gm101-math-sheet .gm98-method-card{order:4}.gm101-math-sheet .gm98-traps{order:5}.gm101-math-sheet .gm98-check{order:6}.gm101-math-sheet .gm101-secondary{order:7;grid-column:1/-1}.gm101-math-sheet .gm98-example-card,.gm101-math-sheet .gm98-vocab{grid-column:auto!important;margin:0}.gm101-secondary{border:1px dashed #cbd5e1;border-radius:15px;background:#fff;color:#475569}.gm101-secondary>summary{cursor:pointer;padding:11px 14px;font-size:.74rem;font-weight:850;list-style:none}.gm101-secondary>summary::-webkit-details-marker{display:none}.gm101-secondary-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:10px;padding:0 10px 10px}.gm101-secondary-content{padding:0 14px 14px}
/* Zone de rappel actif */
.gm101-recall{margin:12px 14px 14px;border:1px solid #bdd7d2;border-radius:18px;background:linear-gradient(145deg,#f6fffc,#ffffff);overflow:hidden}.gm101-recall>summary{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;cursor:pointer;padding:14px 16px;list-style:none}.gm101-recall>summary::-webkit-details-marker{display:none}.gm101-recall>summary>span{display:grid;place-items:center;width:35px;height:35px;border-radius:11px;background:#dff6ef;font-size:1.1rem}.gm101-recall>summary strong{display:block;font-size:.91rem}.gm101-recall>summary small{display:block;margin-top:2px;color:#64748b;font-size:.69rem}.gm101-recall>summary em{font-style:normal;border-radius:999px;background:#172554;color:#fff;padding:5px 8px;font-size:.64rem;font-weight:900}.gm101-recall-body{border-top:1px solid #dcebe7;padding:14px 16px 16px}.gm101-recall-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.gm101-recall-top p{flex:1 1 360px;margin:0;color:#526072;font-size:.73rem;line-height:1.5}.gm101-recall-top button,.gm101-reveal{border:0;border-radius:10px;background:#172554;color:#fff;padding:8px 10px;font-size:.68rem;font-weight:900;cursor:pointer}.gm101-recall-top span{min-width:52px;text-align:center;font-variant-numeric:tabular-nums;font-weight:950;color:#0f766e}.gm101-clock-done{color:#b42318!important}.gm101-prompts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:12px 0;padding:0;list-style:none}.gm101-prompts li{display:grid;grid-template-columns:24px 1fr;gap:7px;align-items:start;border:1px solid #e1e8ef;border-radius:12px;background:#fff;padding:9px}.gm101-prompts li>span{display:grid;place-items:center;width:24px;height:24px;border-radius:999px;background:#eef2ff;color:#3730a3;font-size:.65rem;font-weight:950}.gm101-prompts p{margin:2px 0 0;color:#334155;font-size:.71rem;line-height:1.42}.gm101-recall textarea{width:100%;resize:vertical;border:1px solid #cbd5e1;border-radius:12px;background:#fff;padding:11px 12px;color:#172033;font:inherit;font-size:.76rem;line-height:1.5;outline:none}.gm101-recall textarea:focus{border-color:#7c9ce8;box-shadow:0 0 0 3px rgba(49,83,164,.1)}.gm101-reveal{margin-top:9px;background:#0f766e}.gm101-answers{display:grid;gap:8px;margin-top:10px}.gm101-answers article{display:grid;grid-template-columns:25px 1fr;gap:8px;border:1px solid #dce3eb;border-radius:12px;background:#fff;padding:10px}.gm101-answers article>b{display:grid;place-items:center;width:25px;height:25px;border-radius:999px;background:#e8eefc;color:#233f86;font-size:.65rem}.gm101-answers article p{margin:0 0 5px;font-size:.72rem;line-height:1.45;color:#334155}.gm101-answers h5{margin:0 0 5px;font-size:.71rem}.gm101-selfscore{margin-top:12px;border-top:1px dashed #cbd5e1;padding-top:11px}.gm101-selfscore>div:first-child{display:flex;justify-content:space-between;gap:12px}.gm101-selfscore>div:first-child span{font-weight:950;color:#0f766e}.gm101-selfscore>p{margin:3px 0 9px;color:#64748b;font-size:.68rem}.gm101-scorechecks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.gm101-scorechecks label{display:flex;gap:7px;align-items:flex-start;border:1px solid #e2e8f0;border-radius:10px;background:#fff;padding:8px;font-size:.67rem;line-height:1.35;color:#475569}.gm101-scorechecks input{margin-top:2px;accent-color:#0f766e}.gm101-masterybar{height:7px;margin-top:10px;border-radius:999px;background:#e2e8f0;overflow:hidden}.gm101-masterybar i{display:block;width:0;height:100%;background:linear-gradient(90deg,#0f766e,#22a67d);transition:width .2s}.gm101-selfscore>small{display:block;margin-top:5px;color:#475569;font-weight:800}
.gm101-list{display:grid;gap:6px;margin:0;padding:0;list-style:none}.gm101-list li{position:relative;padding-left:17px;color:#344256;font-size:.76rem;line-height:1.45}.gm101-list li:before{content:'✓';position:absolute;left:0;color:#0f766e;font-weight:950}.gm101-list.gm101-danger li:before{content:'×';color:#c2410c}.gm101-steps{display:grid;gap:6px;margin:0;padding:0;list-style:none}.gm101-steps li{display:grid;grid-template-columns:24px 1fr;gap:7px;align-items:start}.gm101-steps b{display:grid;place-items:center;width:24px;height:24px;border-radius:999px;background:#0f766e;color:#fff;font-size:.64rem}.gm101-steps span{padding-top:2px;color:#344256;font-size:.74rem;line-height:1.42}.gm101-chips{display:flex;flex-wrap:wrap;gap:6px}.gm101-chips span{border-radius:9px;background:#f1f5f9;padding:5px 7px;color:#475569;font-size:.65rem;font-weight:800}
/* Physique-chimie : feuille de maîtrise construite hors des outils. */
.gm101-hide-original-visual,.gm101-pc-secondary-old{display:none!important}.gm101-pc-sheet{margin:15px 0 20px}.gm101-sheet-head{display:flex;justify-content:space-between;gap:15px;align-items:center;border-radius:20px 20px 0 0;background:linear-gradient(135deg,#172033,#243652);padding:17px 19px;color:#fff}.gm101-sheet-head span{display:block;font-size:.62rem;font-weight:950;letter-spacing:.11em;color:#b9d6d1}.gm101-sheet-head h3{margin:4px 0 3px;font-size:1.35rem;line-height:1.12}.gm101-sheet-head p{margin:0;color:#d5dee9;font-size:.72rem}.gm101-sheet-head>b{white-space:nowrap;border-radius:999px;background:rgba(255,255,255,.12);padding:7px 9px;font-size:.68rem}.gm101-core-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:10px;padding:11px;border:1px solid #dce3eb;border-top:0;background:#f8fafc}.gm101-core{min-width:0;border:1px solid #dde5ec;border-radius:17px;background:#fff;padding:14px}.gm101-core--heart{grid-column:span 7}.gm101-core--visual{grid-column:span 5}.gm101-core--do{grid-column:span 7}.gm101-core--trap{grid-column:span 5}.gm101-core-title{display:flex;gap:8px;align-items:center;margin-bottom:10px}.gm101-core-title>span{font-size:1.05rem}.gm101-core-title small{display:block;color:#0f766e;font-size:.56rem;font-weight:950;letter-spacing:.08em}.gm101-core-title h4{margin:1px 0 0;font-size:.94rem}.gm101-pc-formulas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-bottom:9px}.gm101-pc-formulas>div{border:1px solid #dbe4ed;border-radius:11px;background:#fbfdff;padding:8px}.gm101-pc-formulas small{display:block;color:#0f766e;font-size:.59rem;font-weight:900}.gm101-pc-formulas strong{display:block;margin-top:2px;color:#111827;font-size:.79rem;line-height:1.3}.gm101-pc-formulas em{display:block;margin-top:3px;color:#64748b;font-size:.58rem;line-height:1.35;font-style:normal}.gm101-pc-formulas b{display:block;margin-top:3px;color:#6d28d9;font-size:.56rem}.gm101-pc-visual{overflow:hidden;margin-bottom:8px}.gm101-pc-visual svg{display:block;width:100%!important;max-height:210px!important}.gm101-measure{display:grid;grid-template-columns:1fr auto 1fr;gap:7px;align-items:stretch;margin-top:10px}.gm101-measure>div{border-radius:11px;background:#f7fafc;border:1px solid #e2e8f0;padding:9px}.gm101-measure small{display:block;color:#64748b;font-size:.56rem;font-weight:950;text-transform:uppercase}.gm101-measure strong{display:block;margin-top:3px;font-size:.69rem;line-height:1.35}.gm101-measure>span{display:grid;place-items:center;color:#0f766e;font-weight:950}.gm101-core h5{margin:10px 0 6px;font-size:.68rem}.gm101-pc-sheet>.gm101-recall{margin-top:10px}
/* SVT / NSI / méthodologie */
.gm101-subject-card{border:1px solid #dce4e8!important;border-radius:22px!important;background:#fff!important;padding:17px!important;box-shadow:0 10px 28px -24px rgba(15,23,42,.35)!important;min-width:0}.gm101-subject-card>header{display:flex;gap:11px;align-items:flex-start}.gm101-subject-card>header>span{font-size:1.65rem}.gm101-subject-card>header small{display:block;color:#0f766e;font-size:.59rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.gm101-subject-card>header h3{margin:2px 0 4px;font-size:1.08rem;line-height:1.2;color:#172033}.gm101-subject-card>header p{margin:0;color:#64748b;font-size:.7rem;line-height:1.42}.gm101-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.gm101-card-grid>section,.gm101-card-grid>details{border:1px solid #e2e8f0;border-radius:13px;background:#fbfcfe;padding:10px;min-width:0}.gm101-card-grid h4{margin:0 0 7px;font-size:.72rem}.gm101-card-trap{border-color:#fed7aa!important;background:#fffaf5!important}.gm101-card-trap p{margin:0;color:#8a4b13;font-size:.69rem;line-height:1.43}.gm101-schema-chain{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.gm101-schema-chain span{border-radius:8px;background:#ecfdf5;padding:5px 7px;color:#0f766e;font-size:.63rem;font-weight:850}.gm101-schema-chain b{color:#64748b}.gm101-defs{display:grid;gap:5px}.gm101-defs>div{border-bottom:1px dashed #e2e8f0;padding-bottom:4px}.gm101-defs>div:last-child{border-bottom:0}.gm101-defs strong{display:block;font-size:.65rem}.gm101-defs span{display:block;margin-top:1px;color:#64748b;font-size:.59rem;line-height:1.35}.gm101-subject-card>.gm101-recall{margin:12px 0 0}.gm101-course-link{margin-top:10px;border:0;background:transparent;color:#0f766e;font-size:.68rem;font-weight:900;cursor:pointer}.gm101-mini-example summary{cursor:pointer;font-size:.68rem;font-weight:900}.gm101-mini-example p{margin:7px 0 0;font-size:.67rem;line-height:1.4;color:#475569}.gm101-defs-answer{display:grid;gap:5px;margin:0}.gm101-defs-answer div{display:grid;grid-template-columns:minmax(90px,.3fr) 1fr;gap:8px}.gm101-defs-answer dt{font-weight:900;font-size:.7rem}.gm101-defs-answer dd{margin:0;font-size:.68rem;color:#475569}.gm101-generic-card .gm101-generic-mastery{margin-top:12px;border-top:1px dashed #cbd5e1;padding-top:10px}.gm101-generic-card .gm101-generic-mastery>h4{font-size:.75rem;margin:0 0 7px}.gm101-generic-card .gm101-recall{margin-left:0;margin-right:0}
.gm101-answer-visual svg{max-width:100%;max-height:210px}.gm101-answer-formula{font-weight:750;color:#1e293b!important}
@media(max-width:900px){.gm101-core--heart,.gm101-core--visual,.gm101-core--do,.gm101-core--trap{grid-column:1/-1}.gm101-core-grid{grid-template-columns:1fr}.gm101-secondary-grid{grid-template-columns:1fr}.gm101-pc-formulas{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.gm101-prompts,.gm101-scorechecks,.gm101-card-grid{grid-template-columns:1fr}.gm101-recall{margin-left:9px;margin-right:9px}.gm101-recall>summary{grid-template-columns:auto 1fr}.gm101-recall>summary em{grid-column:2}.gm101-pc-formulas{grid-template-columns:1fr}.gm101-sheet-head{align-items:flex-start;flex-direction:column}.gm101-measure{grid-template-columns:1fr}.gm101-measure>span{transform:rotate(90deg)}.gm101-subject-card{padding:13px!important}}
@media print{.gm101-recall,.gm101-secondary,.gm101-course-link{display:none!important}.gm101-sheet-head{background:#fff!important;color:#111!important;border:1px solid #bbb}.gm101-sheet-head p,.gm101-sheet-head span{color:#444!important}.gm101-core-grid{background:#fff!important;gap:5px!important;padding:6px!important}.gm101-core{padding:7px!important;border-radius:8px!important;break-inside:avoid}.gm101-core-title{margin-bottom:4px!important}.gm101-pc-formulas{gap:4px!important}.gm101-pc-formulas>div{padding:5px!important}.gm101-pc-visual svg{max-height:115px!important}.gm101-subject-card{break-inside:avoid;box-shadow:none!important}}

/* ===== SOURCE: styles/gomathy-fiches-maths-v106.css ===== */

/* GoMathy V106 — fiches maths : restitution 100 % spécifique */
.gm106-mastery-strip{display:flex;flex-wrap:wrap;gap:.45rem .65rem;align-items:center;margin:.65rem 0 0;padding:.55rem .7rem;border:1px solid #dbeafe;border-radius:14px;background:#f8fbff;font-size:.76rem;color:#475569}.gm106-mastery-strip b{display:inline-grid;place-items:center;min-width:1.8rem;height:1.8rem;padding:0 .38rem;border-radius:999px;background:#0f172a;color:#fff;font-size:.78rem}.gm106-mastery-strip span{font-weight:750}.gm106-checklist{counter-reset:gm106check}.gm106-checklist li{position:relative;padding-left:1.9rem}.gm106-checklist li::before{counter-increment:gm106check;content:counter(gm106check);position:absolute;left:0;top:.05rem;width:1.35rem;height:1.35rem;display:grid;place-items:center;border-radius:50%;background:#ecfdf5;color:#047857;font-weight:900;font-size:.68rem}.gm106-recall{border-width:2px!important;border-color:#c7d2fe!important}.gm106-recall>summary{background:linear-gradient(135deg,#eef2ff,#f8fafc)!important}.gm106-recall>summary em{font-style:normal;text-transform:uppercase;letter-spacing:.06em;font-size:.62rem;font-weight:900;color:#4338ca;background:#fff;border:1px solid #c7d2fe;border-radius:999px;padding:.28rem .5rem}.gm106-rule{margin-bottom:.65rem;padding:.65rem .8rem;border-radius:12px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;font-size:.77rem;line-height:1.45}.gm106-prompts li>div{min-width:0;flex:1}.gm106-prompts li em{display:inline-block;margin-bottom:.2rem;padding:.16rem .42rem;border-radius:999px;background:#eef2ff;color:#4338ca;font-size:.58rem;font-style:normal;font-weight:950;letter-spacing:.055em}.gm106-prompts li p{margin:0}.gm106-answer-method>p{margin:.35rem 0}.gm106-answer-method ol{margin:.4rem 0 .55rem 1.25rem}.gm106-answer-method li{margin:.16rem 0}.gm106-copy{padding:.38rem .5rem;border-left:3px solid #2563eb;background:#eff6ff}.gm106-trap{padding:.38rem .5rem;border-left:3px solid #dc2626;background:#fef2f2}.gm106-allskills{display:grid;gap:.35rem}.gm106-allskills p{display:grid;grid-template-columns:minmax(150px,.7fr) 1.3fr;gap:.55rem;margin:0;padding:.42rem .5rem;border-bottom:1px solid #e2e8f0}.gm106-allskills b{color:#0f172a}.gm106-allskills span{color:#475569}.gm106-formula-answer .math-formula-v20,.gm106-visual-answer .math-visual-v17{margin:.25rem 0}.gm106-specific-sheet .gm98-check{order:5}.gm106-specific-sheet .gm101-secondary{order:6}.gm106-specific-sheet .gm106-recall{order:7}
@media(max-width:760px){.gm106-allskills p{grid-template-columns:1fr}.gm106-mastery-strip{font-size:.71rem}.gm106-prompts li{align-items:flex-start}}
@media print{.gm106-recall{break-inside:avoid}.gm106-recall:not([open])>.gm101-recall-body{display:none}.gm106-mastery-strip{background:#fff}}

/* ===== SOURCE: styles/gomathy-math-typography-v107.css ===== */
/* GoMathy V107 — typographie mathématique robuste, limitée aux pages de contenu maths. */
.gm107-math{display:inline;white-space:normal;font-variant-numeric:lining-nums tabular-nums}
.gm107-vector{position:relative;display:inline-block;padding:.18em .06em 0;line-height:1;vertical-align:.02em;font-family:inherit;font-style:italic}
.gm107-vector::before{content:"";position:absolute;left:.05em;right:.13em;top:.02em;border-top:.085em solid currentColor}
.gm107-vector::after{content:"";position:absolute;right:.02em;top:-.115em;width:0;height:0;border-top:.13em solid transparent;border-bottom:.13em solid transparent;border-left:.22em solid currentColor}
.gm107-vector>span{letter-spacing:.015em}
.gm107-limit{display:inline-flex;align-items:flex-end;gap:.02em;font-family:Georgia,"Times New Roman",serif;font-style:normal;white-space:nowrap}
.gm107-limit sub{font-size:.66em;line-height:1;margin-bottom:-.12em}
.gm107-frac{display:inline-grid;grid-template-rows:auto 1px auto;align-items:center;justify-items:center;vertical-align:-.42em;line-height:1.02;margin:0 .08em;min-width:1.15em}
.gm107-frac>i{display:block;width:100%;border-top:1.35px solid currentColor}
.gm107-frac>span{padding:.05em .15em;white-space:nowrap}
.gm107-math sup,.gm107-math sub{line-height:0;font-size:.72em}
.gm107-math sup{vertical-align:.55em}.gm107-math sub{vertical-align:-.25em}
/* Les nouvelles couches de contenu n'utilisent plus les glyphes de flèche combinée comme rendu final. */
.gm106-specific-sheet .gm107-vector,.math-micro-v105 .gm107-vector,.gm-ex76-page .gm107-vector,.gm-qcm-shell .gm107-vector{font-weight:650}
@media print{.gm107-vector::before{border-top-width:1px}.gm107-vector::after{border-left-width:.18em}}

/* ===== SOURCE: styles/gomathy-control-math-v110.css ===== */
/* V110 — notation vectorielle robuste, limitée au contrôle sur mesure. */
.gmx-v72-control .gm110-control-vector{display:inline-block;position:relative;padding-top:.2em;margin:0 .04em;line-height:1;white-space:nowrap}
.gmx-v72-control .gm110-control-vector::before{content:"";position:absolute;left:.03em;right:.03em;top:.04em;border-top:1.4px solid currentColor}
.gmx-v72-control .gm110-control-vector::after{content:"";position:absolute;right:.01em;top:-.055em;width:.28em;height:.28em;border-top:1.4px solid currentColor;border-right:1.4px solid currentColor;transform:rotate(45deg)}
@media print{.gmx-v72-control .gm110-control-vector::before,.gmx-v72-control .gm110-control-vector::after{border-width:1px}}

/* ===== SOURCE: styles/gomathy-maths-exercises-annalesplus-v111.css ===== */
/* GoMathy V111 — fiches d'exercices complètes + difficulté lisible. */
.gm111-sheet-head{
  display:grid;gap:.35rem;padding:.7rem .85rem;border-radius:14px;
  background:linear-gradient(135deg,rgba(237,244,255,.92),rgba(248,250,252,.96));
  border:1px solid #cbd5e1;color:#263548
}
.gm111-sheet-head>strong{font-size:.76rem;letter-spacing:.08em}
.gm111-sheet-head>span{font-weight:750}
.gm111-sheet-head>small{color:#64748b;font-weight:650}
.gm111-sheet-head--control{background:linear-gradient(135deg,rgba(255,247,237,.96),rgba(255,251,235,.96));border-color:#fed7aa}
.gm111-correction{display:grid;gap:.55rem}
.gm111-correction>div{display:grid;grid-template-columns:minmax(125px,.38fr) 1fr;gap:.65rem;align-items:start;padding:.55rem .65rem;border-radius:10px;background:rgba(248,250,252,.88);border:1px solid #e2e8f0}
.gm111-correction strong{color:#263548}
.gm111-correction__answer{background:#f0fdf4!important;border-color:#bbf7d0!important}
.gm111-correction__level{display:block!important;text-align:right;font-size:.78rem;font-weight:850;color:#64748b;background:transparent!important;border:0!important;padding:.15rem 0!important}
.gm111-difficulty-legend{
  display:grid;grid-template-columns:auto repeat(4,minmax(0,1fr));align-items:stretch;gap:.45rem;
  margin:.65rem 0 .9rem;padding:.55rem;border:1px solid #d7e0ea;border-radius:14px;background:#fff
}
.gm111-difficulty-legend>strong{display:flex;align-items:center;padding:0 .55rem;font-size:.78rem;color:#475569}
.gm111-difficulty-legend>span{display:grid;grid-template-columns:64px 1fr;grid-template-rows:auto auto;column-gap:.45rem;align-items:center;padding:.45rem .55rem;border-radius:10px;background:#f8fafc}
.gm111-difficulty-legend b{grid-row:1/3;min-width:58px;height:30px;padding:0 .35rem;border-radius:999px;display:grid;place-items:center;background:#e2e8f0;color:#263548}
.gm111-difficulty-legend em{font-style:normal;font-weight:850;font-size:.79rem;color:#263548}
.gm111-difficulty-legend small{font-size:.67rem;color:#64748b}
.gm-ex76-meta__difficulty[data-gm111-difficulty="1"]{background:#ecfdf5!important;color:#047857!important;border-color:#a7f3d0!important}
.gm-ex76-meta__difficulty[data-gm111-difficulty="2"]{background:#eff6ff!important;color:#1d4ed8!important;border-color:#bfdbfe!important}
.gm-ex76-meta__difficulty[data-gm111-difficulty="3"]{background:#f5f3ff!important;color:#6d28d9!important;border-color:#ddd6fe!important}
.gm-ex76-meta__difficulty[data-gm111-difficulty="4"]{background:#fff7ed!important;color:#c2410c!important;border-color:#fed7aa!important}
@media(max-width:900px){
 .gm111-difficulty-legend{grid-template-columns:1fr 1fr}
 .gm111-difficulty-legend>strong{grid-column:1/-1}
 .gm111-correction>div{grid-template-columns:1fr;gap:.25rem}
}

/* ===== SOURCE: styles/gomathy-math-typography-v111.css ===== */
/* GoMathy V111 — fractions réellement visuelles, sans slash brut dans les zones mathématiques. */
.gm111-frac,.gm107-frac{
  display:inline-grid!important;
  grid-template-rows:auto 2px auto!important;
  align-items:center;justify-items:center;
  vertical-align:-.48em;
  line-height:1.02;
  margin:0 .10em;
  min-width:1.35em;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.02em;
}
.gm111-frac>i,.gm107-frac>i{
  display:block;width:100%;min-width:1.25em;
  border-top:1.8px solid currentColor!important;
  margin:.04em 0;
}
.gm111-frac>span,.gm107-frac>span{padding:.03em .18em;white-space:nowrap}
.gm111-frac sup,.gm111-frac sub{line-height:0;font-size:.7em}
.gm111-checked-graph svg{max-width:100%;height:auto}
.gm111-checked-graph .gm108-main,.gm111-checked-graph .gm108-accent{stroke-linecap:round;stroke-linejoin:round}

/* Fractions dans les légendes SVG de cours/QCM : même barre horizontale, sans slash brut. */
.gm111-svg-math{overflow:visible;pointer-events:none}
.gm111-svg-math__inner{display:flex;align-items:center;width:100%;height:100%;line-height:1.02;white-space:nowrap;font-family:Georgia,"Times New Roman",serif}
.gm111-svg-math__inner .gm111-frac{font-size:1em;vertical-align:middle;margin:0 .14em}
