/* [next]/internal/font/google/geist_a71539c9.module.css [app-client] (css) */
@font-face {
  font-family: Geist;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/8a480f0b521d4e75-s.8e0177b5.woff2") format("woff2");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

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

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

@font-face {
  font-family: Geist Fallback;
  src: local(Arial);
  ascent-override: 95.94%;
  descent-override: 28.16%;
  line-gap-override: 0.0%;
  size-adjust: 104.76%;
}

.geist_a71539c9-module__T19VSG__className {
  font-family: Geist, Geist Fallback;
  font-style: normal;
}

.geist_a71539c9-module__T19VSG__variable {
  --font-geist-sans: "Geist", "Geist Fallback";
}

/* [next]/internal/font/google/geist_mono_8d43a2aa.module.css [app-client] (css) */
@font-face {
  font-family: Geist Mono;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/4fa387ec64143e14-s.c1fdd6c2.woff2") format("woff2");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

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

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

@font-face {
  font-family: Geist Mono Fallback;
  src: local(Arial);
  ascent-override: 74.67%;
  descent-override: 21.92%;
  line-gap-override: 0.0%;
  size-adjust: 134.59%;
}

.geist_mono_8d43a2aa-module__8Li5zG__className {
  font-family: Geist Mono, Geist Mono Fallback;
  font-style: normal;
}

.geist_mono_8d43a2aa-module__8Li5zG__variable {
  --font-geist-mono: "Geist Mono", "Geist Mono Fallback";
}

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

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

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

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

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

@font-face {
  font-family: Raleway;
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../media/198d17f2fc7b7e24-s.ca672327.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

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

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

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

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

@font-face {
  font-family: Raleway;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../media/198d17f2fc7b7e24-s.ca672327.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

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

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

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

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

@font-face {
  font-family: Raleway;
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("../media/198d17f2fc7b7e24-s.ca672327.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

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

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

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

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

@font-face {
  font-family: Raleway Fallback;
  src: local(Arial);
  ascent-override: 90.51%;
  descent-override: 22.53%;
  line-gap-override: 0.0%;
  size-adjust: 103.86%;
}

.raleway_ba293ed-module__P78Uga__className {
  font-family: Raleway, Raleway Fallback;
  font-style: normal;
}

.raleway_ba293ed-module__P78Uga__variable {
  --font-raleway: "Raleway", "Raleway Fallback";
}

/* [project]/app/globals.css [app-client] (css) */
@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-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-space-y-reverse: 0;
      --tw-space-x-reverse: 0;
      --tw-divide-x-reverse: 0;
      --tw-border-style: solid;
      --tw-divide-y-reverse: 0;
      --tw-gradient-position: initial;
      --tw-gradient-from: #0000;
      --tw-gradient-via: #0000;
      --tw-gradient-to: #0000;
      --tw-gradient-stops: initial;
      --tw-gradient-via-stops: initial;
      --tw-gradient-from-position: 0%;
      --tw-gradient-via-position: 50%;
      --tw-gradient-to-position: 100%;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-ordinal: initial;
      --tw-slashed-zero: initial;
      --tw-numeric-figure: initial;
      --tw-numeric-spacing: initial;
      --tw-numeric-fraction: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-outline-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
      --tw-duration: initial;
      --tw-ease: initial;
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
    }
  }
}

@layer theme {
  :root, :host {
    --font-sans: var(--font-geist-sans);
    --color-red-50: #fef2f2;
    --color-red-300: #ffa3a3;
    --color-red-800: #9f0712;
    --color-red-950: #460809;
    --color-amber-50: #fffbeb;
    --color-amber-100: #fef3c6;
    --color-amber-200: #fee685;
    --color-amber-300: #ffd236;
    --color-amber-700: #b75000;
    --color-amber-800: #953d00;
    --color-amber-900: #7b3306;
    --color-amber-950: #461901;
    --color-yellow-50: #fefce8;
    --color-yellow-100: #fef9c2;
    --color-yellow-200: #fff085;
    --color-yellow-300: #ffe02a;
    --color-yellow-700: #a36100;
    --color-yellow-800: #874b00;
    --color-yellow-900: #733e0a;
    --color-lime-400: #9de500;
    --color-lime-600: #62a400;
    --color-green-50: #f0fdf4;
    --color-green-100: #dcfce7;
    --color-green-200: #b9f8cf;
    --color-green-300: #7bf1a8;
    --color-green-700: #008138;
    --color-green-800: #016630;
    --color-green-900: #0d542b;
    --color-emerald-50: #ecfdf5;
    --color-emerald-100: #d0fae5;
    --color-emerald-200: #a4f4cf;
    --color-emerald-300: #5ee9b5;
    --color-emerald-400: #00d294;
    --color-emerald-500: #00bb7f;
    --color-emerald-600: #009767;
    --color-emerald-700: #007956;
    --color-emerald-800: #005f46;
    --color-emerald-900: #004e3b;
    --color-teal-50: #f0fdfa;
    --color-teal-100: #cbfbf1;
    --color-teal-200: #96f7e4;
    --color-teal-300: #46ecd5;
    --color-teal-400: #00d3bd;
    --color-teal-700: #00776e;
    --color-teal-800: #005f5a;
    --color-teal-900: #0b4f4a;
    --color-cyan-50: #ecfeff;
    --color-cyan-100: #cefafe;
    --color-cyan-200: #a2f4fd;
    --color-cyan-300: #53eafd;
    --color-cyan-400: #00d2ef;
    --color-cyan-500: #00b7d7;
    --color-cyan-700: #007492;
    --color-cyan-800: #005f78;
    --color-cyan-900: #104e64;
    --color-blue-50: #eff6ff;
    --color-blue-100: #dbeafe;
    --color-blue-200: #bedbff;
    --color-blue-300: #90c5ff;
    --color-blue-400: #54a2ff;
    --color-blue-500: #3080ff;
    --color-blue-600: #155dfc;
    --color-blue-700: #1447e6;
    --color-blue-800: #193cb8;
    --color-blue-900: #1c398e;
    --color-blue-950: #162456;
    --color-indigo-50: #eef2ff;
    --color-indigo-100: #e0e7ff;
    --color-indigo-200: #c7d2ff;
    --color-indigo-300: #a4b3ff;
    --color-indigo-400: #7d87ff;
    --color-indigo-500: #625fff;
    --color-indigo-600: #4f39f6;
    --color-indigo-700: #432dd7;
    --color-indigo-800: #372aac;
    --color-indigo-900: #312c85;
    --color-violet-100: #ede9fe;
    --color-violet-400: #a685ff;
    --color-violet-700: #7008e7;
    --color-violet-900: #4d179a;
    --color-purple-50: #faf5ff;
    --color-purple-100: #f3e8ff;
    --color-purple-200: #e9d5ff;
    --color-purple-300: #d9b3ff;
    --color-purple-400: #c07eff;
    --color-purple-500: #ac4bff;
    --color-purple-600: #9810fa;
    --color-purple-700: #8200da;
    --color-purple-800: #6e11b0;
    --color-purple-900: #59168b;
    --color-pink-100: #fce7f3;
    --color-pink-200: #fccee8;
    --color-pink-500: #f6339a;
    --color-pink-600: #e30076;
    --color-pink-800: #a2004c;
    --color-pink-900: #861043;
    --color-rose-50: #fff1f2;
    --color-rose-100: #ffe4e6;
    --color-rose-400: #ff667f;
    --color-rose-500: #ff2357;
    --color-rose-600: #e70044;
    --color-rose-900: #8b0836;
    --color-slate-400: #90a1b9;
    --color-slate-500: #62748e;
    --color-gray-50: #f9fafb;
    --color-gray-100: #f3f4f6;
    --color-gray-200: #e5e7eb;
    --color-gray-300: #d1d5dc;
    --color-gray-400: #99a1af;
    --color-gray-500: #6a7282;
    --color-gray-600: #4a5565;
    --color-gray-700: #364153;
    --color-gray-800: #1e2939;
    --color-gray-900: #101828;
    --color-gray-950: #030712;
    --color-stone-400: #a6a09b;
    --color-stone-500: #79716b;
    --color-black: #000;
    --color-white: #fff;
    --spacing: .25rem;
    --container-xs: 20rem;
    --container-sm: 24rem;
    --container-md: 28rem;
    --container-lg: 32rem;
    --container-2xl: 42rem;
    --container-3xl: 48rem;
    --container-4xl: 56rem;
    --container-5xl: 64rem;
    --container-6xl: 72rem;
    --container-7xl: 80rem;
    --text-xs: .75rem;
    --text-xs--line-height: calc(1 / .75);
    --text-sm: .875rem;
    --text-sm--line-height: calc(1.25 / .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-8xl: 6rem;
    --text-8xl--line-height: 1;
    --font-weight-light: 300;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --tracking-wide: .025em;
    --tracking-wider: .05em;
    --tracking-widest: .1em;
    --leading-tight: 1.25;
    --leading-snug: 1.375;
    --leading-relaxed: 1.625;
    --radius-sm: .25rem;
    --radius-md: .375rem;
    --radius-lg: .5rem;
    --radius-xl: .75rem;
    --ease-in-out: cubic-bezier(.4, 0, .2, 1);
    --animate-spin: spin 1s linear infinite;
    --animate-ping: ping 1s cubic-bezier(0, 0, .2, 1) infinite;
    --animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;
    --animate-bounce: bounce 1s infinite;
    --blur-sm: 8px;
    --blur-2xl: 40px;
    --blur-3xl: 64px;
    --aspect-video: 16 / 9;
    --default-transition-duration: .15s;
    --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    --default-font-family: var(--font-geist-sans);
    --default-mono-font-family: var(--font-geist-mono);
    --color-ida-primary: #072238;
    --color-ida-primary-hover: #6d7a86;
    --color-ida-secondary: #beccd9;
    --color-ida-accent: #6d7a86;
    --color-ida-button-text: #edf6ff;
    --color-ida-scale-line: #6d7a86;
    --color-ida-scale-circle-bg: #6d7a86;
    --color-ida-scale-circle-bg-selected: #beccd9;
    --color-ida-scale-circle-text-selected: #101820;
    --color-ida-scale-circle-border: #48545f;
    --color-ida-scale-circle-text: #edf6ff;
    --color-mancave-heading: #101820;
    --color-mancave-text: #101820;
    --color-mancave-accent: #4f2d1d;
    --color-mancave-accent-hover: #4f2d1d;
    --color-mancave-button-bg: #02426d;
    --color-mancave-button-border: #02426d;
    --color-mancave-button-hover-bg: #4f2d1d;
    --color-mancave-button-hover-border: #4f2d1d;
    --color-mancave-text-on-blue: #f2fafe;
    --color-mancave-text-on-brown: #fff8f3;
    --color-mancave-text-on-gradient: #f9fcff;
    --color-custom-green: #448843;
    --color-custom-red: #fb471f;
    --typography-primary-font-family: var(--font-raleway), "Raleway", sans-serif;
    --typography-primary-font-size: 1.8rem;
    --typography-primary-font-weight: 900;
    --typography-primary-text-transform: uppercase;
    --typography-primary-letter-spacing: -.7px;
    --typography-secondary-font-family: var(--font-raleway), "Raleway", sans-serif;
    --typography-secondary-font-size: 1.5rem;
    --typography-secondary-font-weight: 900;
    --typography-secondary-letter-spacing: -.7px;
    --typography-text-font-family: var(--font-raleway), "Raleway", sans-serif;
    --typography-text-font-size: 1rem;
    --typography-text-font-weight: 400;
    --typography-accent-font-family: var(--font-raleway), "Raleway", sans-serif;
    --typography-accent-font-size: 1rem;
    --typography-accent-font-weight: 600;
  }

  @supports (color: lab(0% 0 0)) {
    :root, :host {
      --color-red-50: lab(96.5005% 4.18508 1.52328);
      --color-red-300: lab(76.5514% 36.422 15.5335);
      --color-red-800: lab(33.7174% 55.8993 41.0293);
      --color-red-950: lab(13.003% 29.04 16.7519);
      --color-amber-50: lab(98.6252% -.635922 8.42309);
      --color-amber-100: lab(95.916% -1.21653 23.111);
      --color-amber-200: lab(91.7203% -.505269 49.9084);
      --color-amber-300: lab(86.4156% 6.13147 78.3961);
      --color-amber-700: lab(47.2709% 42.9082 69.2966);
      --color-amber-800: lab(37.8822% 37.1699 52.2718);
      --color-amber-900: lab(31.2288% 30.2627 40.0378);
      --color-amber-950: lab(15.8111% 20.9107 23.3752);
      --color-yellow-50: lab(98.6846% -1.79055 9.7766);
      --color-yellow-100: lab(97.3564% -4.51407 27.344);
      --color-yellow-200: lab(94.3433% -5.00429 52.9663);
      --color-yellow-300: lab(89.7033% -.480294 84.4917);
      --color-yellow-700: lab(47.8202% 25.2426 66.5015);
      --color-yellow-800: lab(38.7484% 23.5833 51.4916);
      --color-yellow-900: lab(32.3865% 21.1273 38.5959);
      --color-lime-400: lab(83.7876% -45.0447 88.4738);
      --color-lime-600: lab(61.1055% -41.0235 73.1483);
      --color-green-50: lab(98.1563% -5.60117 2.75915);
      --color-green-100: lab(96.1861% -13.8464 6.52365);
      --color-green-200: lab(92.4222% -26.4702 12.9427);
      --color-green-300: lab(86.9953% -47.2691 25.0054);
      --color-green-700: lab(47.0329% -47.0239 31.4788);
      --color-green-800: lab(37.4616% -36.7971 22.9692);
      --color-green-900: lab(30.797% -29.6927 17.382);
      --color-emerald-50: lab(97.8462% -6.94966 1.85487);
      --color-emerald-100: lab(94.9004% -17.0769 5.63836);
      --color-emerald-200: lab(90.2247% -31.039 9.47084);
      --color-emerald-300: lab(83.9203% -48.7124 13.8849);
      --color-emerald-400: lab(75.0771% -60.7313 19.4147);
      --color-emerald-500: lab(66.9756% -58.27 19.5419);
      --color-emerald-600: lab(55.0481% -49.9246 15.93);
      --color-emerald-700: lab(44.4871% -41.0396 11.0361);
      --color-emerald-800: lab(35.3675% -33.1188 8.04002);
      --color-emerald-900: lab(28.8637% -26.9249 5.45986);
      --color-teal-50: lab(98.3189% -4.74921 -.111711);
      --color-teal-100: lab(95.1845% -17.4212 -.425422);
      --color-teal-200: lab(90.7612% -33.1343 -.542295);
      --color-teal-300: lab(84.8977% -48.1516 -1.3321);
      --color-teal-400: lab(76.0109% -53.3483 -2.27906);
      --color-teal-700: lab(44.4134% -33.1436 -4.22149);
      --color-teal-800: lab(35.5975% -26.6648 -4.34487);
      --color-teal-900: lab(29.506% -21.4706 -3.59886);
      --color-cyan-50: lab(98.3304% -5.97432 -2.62108);
      --color-cyan-100: lab(95.3146% -13.8285 -6.84732);
      --color-cyan-200: lab(91.0821% -24.0435 -12.8306);
      --color-cyan-300: lab(85.3886% -36.7636 -21.5716);
      --color-cyan-400: lab(76.6045% -40.9406 -29.6231);
      --color-cyan-500: lab(67.805% -35.3952 -30.2018);
      --color-cyan-700: lab(44.7267% -21.5987 -26.118);
      --color-cyan-800: lab(36.5114% -17.1989 -21.6292);
      --color-cyan-900: lab(30.372% -13.1853 -18.7887);
      --color-blue-50: lab(96.492% -1.14644 -5.11479);
      --color-blue-100: lab(92.0301% -2.24757 -11.6453);
      --color-blue-200: lab(86.15% -4.04379 -21.0797);
      --color-blue-300: lab(77.5052% -6.4629 -36.42);
      --color-blue-400: lab(65.0361% -1.42065 -56.9802);
      --color-blue-500: lab(54.1736% 13.3369 -74.6839);
      --color-blue-600: lab(44.0605% 29.0279 -86.0352);
      --color-blue-700: lab(36.9089% 35.0961 -85.6872);
      --color-blue-800: lab(30.2514% 27.7853 -70.2699);
      --color-blue-900: lab(26.1542% 15.7545 -51.5504);
      --color-blue-950: lab(15.6723% 8.86232 -32.2945);
      --color-indigo-50: lab(95.4818% .411302 -6.78529);
      --color-indigo-100: lab(91.6577% 1.04591 -12.7199);
      --color-indigo-200: lab(84.4329% 3.18977 -23.9688);
      --color-indigo-300: lab(74.0235% 8.54138 -41.6075);
      --color-indigo-400: lab(59.866% 22.4834 -64.4485);
      --color-indigo-500: lab(48.295% 38.3129 -81.9673);
      --color-indigo-600: lab(38.4009% 52.6132 -92.3857);
      --color-indigo-700: lab(32.4486% 49.2217 -84.6695);
      --color-indigo-800: lab(26.6645% 37.9804 -68.6402);
      --color-indigo-900: lab(23.3911% 24.6978 -50.4718);
      --color-violet-100: lab(93.0838% 4.35197 -9.88284);
      --color-violet-400: lab(62.8239% 34.9159 -60.0512);
      --color-violet-700: lab(35.2783% 67.9912 -88.793);
      --color-violet-900: lab(24.3783% 45.7525 -61.4902);
      --color-purple-50: lab(97.1627% 2.99937 -4.13398);
      --color-purple-100: lab(93.3333% 6.97437 -9.83434);
      --color-purple-200: lab(87.8405% 13.4282 -18.7159);
      --color-purple-300: lab(78.3298% 26.2195 -34.9499);
      --color-purple-400: lab(63.6946% 47.6127 -59.2066);
      --color-purple-500: lab(52.0183% 66.11 -78.2316);
      --color-purple-600: lab(43.0295% 75.21 -86.5669);
      --color-purple-700: lab(36.1758% 69.8525 -80.0381);
      --color-purple-800: lab(30.6017% 56.7637 -64.4751);
      --color-purple-900: lab(24.9401% 45.2703 -51.2728);
      --color-pink-100: lab(93.5864% 9.01193 -3.15079);
      --color-pink-200: lab(87.4504% 19.6 -6.46662);
      --color-pink-500: lab(56.9303% 76.8162 -8.07021);
      --color-pink-600: lab(49.5493% 79.8381 2.31768);
      --color-pink-800: lab(34.9559% 60.2885 5.99639);
      --color-pink-900: lab(29.4367% 49.3962 3.35757);
      --color-rose-50: lab(96.2369% 4.94155 1.28011);
      --color-rose-100: lab(92.8221% 9.86832 2.60075);
      --color-rose-400: lab(64.4125% 63.0291 19.2068);
      --color-rose-500: lab(56.101% 79.4328 31.4532);
      --color-rose-600: lab(49.1882% 81.577 36.0311);
      --color-rose-900: lab(29.7104% 51.514 12.6253);
      --color-slate-400: lab(65.5349% -2.25151 -14.5072);
      --color-slate-500: lab(48.0876% -2.03595 -16.5814);
      --color-gray-50: lab(98.2596% -.247031 -.706708);
      --color-gray-100: lab(96.1596% -.0823438 -1.13575);
      --color-gray-200: lab(91.6229% -.159115 -2.26791);
      --color-gray-300: lab(85.1236% -.612259 -3.7138);
      --color-gray-400: lab(65.9269% -.832707 -8.17473);
      --color-gray-500: lab(47.7841% -.393182 -10.0268);
      --color-gray-600: lab(35.6337% -1.58697 -10.8425);
      --color-gray-700: lab(27.1134% -.956401 -12.3224);
      --color-gray-800: lab(16.1051% -1.18239 -11.7533);
      --color-gray-900: lab(8.11897% .811279 -12.254);
      --color-gray-950: lab(1.90334% .278696 -5.48866);
      --color-stone-400: lab(66.2166% 1.88044 3.20326);
      --color-stone-500: lab(48.1164% 2.35701 4.26852);
    }
  }
}

@layer base {
  *, :after, :before, ::backdrop {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  ::file-selector-button {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

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

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

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

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

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

  b, strong {
    font-weight: bolder;
  }

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

  small {
    font-size: 80%;
  }

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

  sub {
    bottom: -.25em;
  }

  sup {
    top: -.5em;
  }

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

  :-moz-focusring {
    outline: auto;
  }

  progress {
    vertical-align: baseline;
  }

  summary {
    display: list-item;
  }

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

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

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

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

  ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

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

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

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

  ::placeholder {
    opacity: 1;
  }

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

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

  textarea {
    resize: vertical;
  }

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

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

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

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

  ::-webkit-datetime-edit {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-year-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-month-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-day-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-hour-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-minute-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-second-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-millisecond-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }

  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }

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

  button, input:where([type="button"], [type="reset"], [type="submit"]) {
    appearance: button;
  }

  ::file-selector-button {
    appearance: button;
  }

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

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

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

@layer components;

@layer utilities {
  .pointer-events-auto {
    pointer-events: auto;
  }

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

  .collapse {
    visibility: collapse;
  }

  .invisible {
    visibility: hidden;
  }

  .visible {
    visibility: visible;
  }

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

  .absolute {
    position: absolute;
  }

  .fixed {
    position: fixed;
  }

  .fixed\! {
    position: fixed !important;
  }

  .relative {
    position: relative;
  }

  .static {
    position: static;
  }

  .sticky {
    position: sticky;
  }

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

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

  .inset-y-0 {
    inset-block: calc(var(--spacing) * 0);
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .top-full {
    top: 100%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .bottom-full {
    bottom: 100%;
  }

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

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

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

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

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

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

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

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

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

  .isolate {
    isolation: isolate;
  }

  .-z-10 {
    z-index: calc(10 * -1);
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

  .container {
    width: 100%;
  }

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

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

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

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

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

  .m-auto {
    margin: auto;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .mr-auto {
    margin-right: auto;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .\!block {
    display: block !important;
  }

  .block {
    display: block;
  }

  .contents {
    display: contents;
  }

  .flex {
    display: flex;
  }

  .grid {
    display: grid;
  }

  .hidden {
    display: none;
  }

  .inline {
    display: inline;
  }

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

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

  .table {
    display: table;
  }

  .aspect-square {
    aspect-ratio: 1;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .h-auto {
    height: auto;
  }

  .h-dvh {
    height: 100dvh;
  }

  .h-full {
    height: 100%;
  }

  .h-px {
    height: 1px;
  }

  .h-screen {
    height: 100vh;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .max-h-full {
    max-height: 100%;
  }

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

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

  .min-h-\[1\.5rem\] {
    min-height: 1.5rem;
  }

  .min-h-\[2\.5rem\] {
    min-height: 2.5rem;
  }

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

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

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

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

  .min-h-full {
    min-height: 100%;
  }

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

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

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

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

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

  .w-1\/3 {
    width: 33.3333%;
  }

  .w-1\/4 {
    width: 25%;
  }

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

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

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

  .w-2\/5 {
    width: 40%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .w-auto {
    width: auto;
  }

  .w-full {
    width: 100%;
  }

  .w-px {
    width: 1px;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .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-xs {
    max-width: var(--container-xs);
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .min-w-fit {
    min-width: fit-content;
  }

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

  .flex-1 {
    flex: 1;
  }

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

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

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

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

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

  .translate-x-1 {
    --tw-translate-x: calc(var(--spacing) * 1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .translate-x-4 {
    --tw-translate-x: calc(var(--spacing) * 4);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .translate-x-6 {
    --tw-translate-x: calc(var(--spacing) * 6);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .translate-x-\[22px\] {
    --tw-translate-x: 22px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

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

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

  .-rotate-90 {
    rotate: -90deg;
  }

  .rotate-90 {
    rotate: 90deg;
  }

  .rotate-180 {
    rotate: 180deg;
  }

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

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

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

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

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

  .cursor-default {
    cursor: default;
  }

  .cursor-grab {
    cursor: grab;
  }

  .cursor-move {
    cursor: move;
  }

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

  .cursor-ns-resize {
    cursor: ns-resize;
  }

  .cursor-pointer {
    cursor: pointer;
  }

  .cursor-wait {
    cursor: wait;
  }

  .resize {
    resize: both;
  }

  .resize-none {
    resize: none;
  }

  .resize-y {
    resize: vertical;
  }

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

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

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

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

  .appearance-none {
    appearance: none;
  }

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

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

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

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

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

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

  .grid-cols-\[100px_1fr\] {
    grid-template-columns: 100px 1fr;
  }

  .grid-cols-\[100px_2fr_1fr\] {
    grid-template-columns: 100px 2fr 1fr;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .gap-px {
    gap: 1px;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  :where(.divide-x > :not(:last-child)) {
    --tw-divide-x-reverse: 0;
    border-inline-style: var(--tw-border-style);
    border-inline-start-width: calc(1px * var(--tw-divide-x-reverse));
    border-inline-end-width: calc(1px * calc(1 - var(--tw-divide-x-reverse)));
  }

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

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

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

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

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

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

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

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

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

  .overflow-auto {
    overflow: auto;
  }

  .overflow-hidden {
    overflow: hidden;
  }

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

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

  .overscroll-contain {
    overscroll-behavior: contain;
  }

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

  .rounded-full {
    border-radius: 3.40282e38px;
  }

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

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

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

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

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

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

  .rounded-l {
    border-top-left-radius: .25rem;
    border-bottom-left-radius: .25rem;
  }

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

  .rounded-r {
    border-top-right-radius: .25rem;
    border-bottom-right-radius: .25rem;
  }

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

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

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

  .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-t-0 {
    border-top-style: var(--tw-border-style);
    border-top-width: 0;
  }

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

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

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

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

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

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

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

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

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

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

  .\!border-green-400 {
    border-color: #5ca95b !important;
  }

  .\!border-red-400 {
    border-color: #fc7a5c !important;
  }

  .border-\[\#02426d\] {
    border-color: #02426d;
  }

  .border-\[\#hex\] {
    border-color: #hex;
  }

  .border-\[color\:var\(--color-mancave-button-bg\)\], .border-\[var\(--color-mancave-button-bg\)\] {
    border-color: var(--color-mancave-button-bg);
  }

  .border-\[var\(--color-mancave-button-border\)\] {
    border-color: var(--color-mancave-button-border);
  }

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

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

  .border-amber-400 {
    border-color: #fbbf24;
  }

  .border-amber-500 {
    border-color: #f59e0b;
  }

  .border-amber-600 {
    border-color: #d97706;
  }

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

  .border-black\/10 {
    border-color: #0000001a;
  }

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

  .border-black\/20 {
    border-color: #0003;
  }

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

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

  .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-blue-500 {
    border-color: var(--color-blue-500);
  }

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

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

  .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-emerald-600 {
    border-color: var(--color-emerald-600);
  }

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

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

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

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

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

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

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

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

  .border-gray-700\/50 {
    border-color: #36415380;
  }

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

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

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

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

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

  .border-green-400 {
    border-color: #5ca95b;
  }

  .border-green-500 {
    border-color: #448843;
  }

  .border-green-600 {
    border-color: #366d36;
  }

  .border-ida-primary\/10 {
    border-color: #0722381a;
    border-color: lab(12.1806% -3.24874 -17.5392 / .1);
  }

  .border-ida-secondary {
    border-color: #beccd9;
  }

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

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

  .border-mancave-accent {
    border-color: #4f2d1d;
  }

  .border-mancave-button-bg {
    border-color: #02426d;
  }

  .border-mancave-heading {
    border-color: #101820;
  }

  .border-orange-200 {
    border-color: #fed7aa;
  }

  .border-orange-300 {
    border-color: #fdba74;
  }

  .border-orange-400 {
    border-color: #fb923c;
  }

  .border-orange-500 {
    border-color: #e87928;
  }

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

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

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

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

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

  .border-red-100 {
    border-color: #fee5df;
  }

  .border-red-200 {
    border-color: #feccbf;
  }

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

  .border-red-400 {
    border-color: #fc7a5c;
  }

  .border-red-500 {
    border-color: #fb471f;
  }

  .border-red-600 {
    border-color: #e03d18;
  }

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

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

  .border-white\/20 {
    border-color: #fff3;
  }

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

  .border-white\/30 {
    border-color: #ffffff4d;
  }

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

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

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

  .border-yellow-400 {
    border-color: #facc15;
  }

  .border-yellow-500 {
    border-color: #eab308;
  }

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

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

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

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

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

  .border-t-mancave-accent {
    border-top-color: #4f2d1d;
  }

  .border-t-transparent {
    border-top-color: #0000;
  }

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

  .border-l-blue-500 {
    border-left-color: var(--color-blue-500);
  }

  .border-l-cyan-500 {
    border-left-color: var(--color-cyan-500);
  }

  .border-l-gray-300 {
    border-left-color: var(--color-gray-300);
  }

  .border-l-gray-400 {
    border-left-color: var(--color-gray-400);
  }

  .border-l-green-500 {
    border-left-color: #448843;
  }

  .border-l-mancave-accent {
    border-left-color: #4f2d1d;
  }

  .border-l-orange-500 {
    border-left-color: #e87928;
  }

  .border-l-pink-500 {
    border-left-color: var(--color-pink-500);
  }

  .border-l-purple-500 {
    border-left-color: var(--color-purple-500);
  }

  .border-l-transparent {
    border-left-color: #0000;
  }

  .border-l-yellow-500 {
    border-left-color: #eab308;
  }

  .bg-\[\#072238\] {
    background-color: #072238;
  }

  .bg-\[\#hex\] {
    background-color: #hex;
  }

  .bg-\[var\(--color-mancave-button-bg\)\] {
    background-color: var(--color-mancave-button-bg);
  }

  .bg-\[var\(--color-mancave-heading\)\] {
    background-color: var(--color-mancave-heading);
  }

  .bg-\[var\(--color-mancave-text-on-blue\)\] {
    background-color: var(--color-mancave-text-on-blue);
  }

  .bg-\[var\(--color-mancave-text-on-brown\)\] {
    background-color: var(--color-mancave-text-on-brown);
  }

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

  .bg-amber-50\/50 {
    background-color: #fffbeb80;
  }

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

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

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

  .bg-amber-400 {
    background-color: #fbbf24;
  }

  .bg-amber-500 {
    background-color: #f59e0b;
  }

  .bg-amber-600 {
    background-color: #d97706;
  }

  .bg-amber-900\/80 {
    background-color: #7b3306cc;
  }

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

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

  .bg-black\/0 {
    background-color: #0000;
  }

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

  .bg-black\/20 {
    background-color: #0003;
  }

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

  .bg-black\/30 {
    background-color: #0000004d;
  }

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

  .bg-black\/40 {
    background-color: #0006;
  }

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

  .bg-black\/50 {
    background-color: #00000080;
  }

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

  .bg-black\/60 {
    background-color: #0009;
  }

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

  .bg-black\/90 {
    background-color: #000000e6;
  }

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

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

  .bg-blue-50\/30 {
    background-color: #eff6ff4d;
  }

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

  .bg-blue-50\/50 {
    background-color: #eff6ff80;
  }

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

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

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

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

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

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

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

  .bg-current {
    background-color: currentColor;
  }

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

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

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

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

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

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

  .bg-emerald-600\/20 {
    background-color: #00976733;
  }

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

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

  .bg-gray-50\/50 {
    background-color: #f9fafb80;
  }

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

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

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

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

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

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

  .bg-gray-500\/75 {
    background-color: #6a7282bf;
  }

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

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

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

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

  .bg-gray-800\/80 {
    background-color: #1e2939cc;
  }

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

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

  .bg-gray-900\/60 {
    background-color: #10182899;
  }

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

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

  .bg-green-50\/30 {
    background-color: #f0fdf44d;
  }

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

  .bg-green-50\/50 {
    background-color: #f0fdf480;
  }

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

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

  .bg-green-100\/50 {
    background-color: #dcfce780;
  }

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

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

  .bg-green-400 {
    background-color: #5ca95b;
  }

  .bg-green-500 {
    background-color: #448843;
  }

  .bg-green-600 {
    background-color: #366d36;
  }

  .bg-green-600\/30 {
    background-color: #366d364d;
    background-color: lab(41.228% -28.3623 24.7229 / .3);
  }

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

  .bg-ida-primary {
    background-color: #072238;
  }

  .bg-ida-primary\/5 {
    background-color: #0722380d;
    background-color: lab(12.1806% -3.24874 -17.5392 / .05);
  }

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

  .bg-indigo-50\/50 {
    background-color: #eef2ff80;
  }

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

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

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

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

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

  .bg-mancave-accent {
    background-color: #4f2d1d;
  }

  .bg-mancave-accent\/5 {
    background-color: #4f2d1d0d;
    background-color: lab(22.6374% 14.7433 17.2476 / .05);
  }

  .bg-mancave-accent\/10 {
    background-color: #4f2d1d1a;
    background-color: lab(22.6374% 14.7433 17.2476 / .1);
  }

  .bg-mancave-button-bg {
    background-color: #02426d;
  }

  .bg-mancave-heading {
    background-color: #101820;
  }

  .bg-orange-50 {
    background-color: #fff7ed;
  }

  .bg-orange-50\/50 {
    background-color: #fff7ed80;
    background-color: lab(97.6568% 1.51449 5.82145 / .5);
  }

  .bg-orange-100 {
    background-color: #ffedd5;
  }

  .bg-orange-200 {
    background-color: #fed7aa;
  }

  .bg-orange-400 {
    background-color: #fb923c;
  }

  .bg-orange-500 {
    background-color: #e87928;
  }

  .bg-orange-600 {
    background-color: #d56a1f;
  }

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

  .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-500 {
    background-color: var(--color-purple-500);
  }

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

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

  .bg-red-50\/30 {
    background-color: #fef2f24d;
  }

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

  .bg-red-50\/50 {
    background-color: #fef2f280;
  }

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

  .bg-red-100 {
    background-color: #fee5df;
  }

  .bg-red-400 {
    background-color: #fc7a5c;
  }

  .bg-red-500 {
    background-color: #fb471f;
  }

  .bg-red-500\/30 {
    background-color: #fb471f4d;
    background-color: lab(58.0975% 67.5466 61.991 / .3);
  }

  .bg-red-500\/90 {
    background-color: #fb471fe6;
    background-color: lab(58.0975% 67.5466 61.991 / .9);
  }

  .bg-red-600 {
    background-color: #e03d18;
  }

  .bg-red-600\/30 {
    background-color: #e03d184d;
    background-color: lab(51.8208% 62.3923 57.7017 / .3);
  }

  .bg-red-600\/90 {
    background-color: #e03d18e6;
    background-color: lab(51.8208% 62.3923 57.7017 / .9);
  }

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

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

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

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

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

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

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

  .bg-white\/10 {
    background-color: #ffffff1a;
  }

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

  .bg-white\/20 {
    background-color: #fff3;
  }

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

  .bg-white\/50 {
    background-color: #ffffff80;
  }

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

  .bg-white\/60 {
    background-color: #fff9;
  }

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

  .bg-white\/80 {
    background-color: #fffc;
  }

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

  .bg-white\/90 {
    background-color: #ffffffe6;
  }

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

  .bg-white\/95 {
    background-color: #fffffff2;
  }

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

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

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

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

  .bg-yellow-400 {
    background-color: #facc15;
  }

  .bg-yellow-500 {
    background-color: #eab308;
  }

  .bg-yellow-600 {
    background-color: #ca8a04;
  }

  .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-gradient-to-t {
    --tw-gradient-position: to top in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }

  .from-black\/80 {
    --tw-gradient-from: #000c;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .from-black\/80 {
      --tw-gradient-from: color-mix(in oklab, var(--color-black) 80%, transparent);
    }
  }

  .from-black\/80 {
    --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-gray-50 {
    --tw-gradient-from: var(--color-gray-50);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

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

  .from-green-500 {
    --tw-gradient-from: #448843;
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .from-purple-50 {
    --tw-gradient-from: var(--color-purple-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-purple-600 {
    --tw-gradient-from: var(--color-purple-600);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

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

  .via-yellow-500 {
    --tw-gradient-via: #eab308;
    --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-amber-50 {
    --tw-gradient-to: 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));
  }

  .to-blue-700 {
    --tw-gradient-to: var(--color-blue-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-gray-50 {
    --tw-gradient-to: var(--color-gray-50);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .to-gray-100 {
    --tw-gradient-to: var(--color-gray-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-gray-800 {
    --tw-gradient-to: var(--color-gray-800);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .to-indigo-50 {
    --tw-gradient-to: var(--color-indigo-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-indigo-600 {
    --tw-gradient-to: var(--color-indigo-600);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .to-red-500 {
    --tw-gradient-to: #fb471f;
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

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

  .fill-green-500 {
    fill: #448843;
  }

  .fill-red-500 {
    fill: #fb471f;
  }

  .fill-yellow-400 {
    fill: #facc15;
  }

  .fill-yellow-500 {
    fill: #eab308;
  }

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

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

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

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

  .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-4 {
    padding: calc(var(--spacing) * 4);
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .py-0\.5 {
    padding-block: calc(var(--spacing) * .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);
  }

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

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

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

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

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

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

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

  .py-px {
    padding-block: 1px;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .font-mono {
    font-family: var(--font-geist-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-6xl {
    font-size: var(--text-6xl);
    line-height: var(--tw-leading, var(--text-6xl--line-height));
  }

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

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

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

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

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

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

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

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

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

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

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

  .leading-5 {
    --tw-leading: calc(var(--spacing) * 5);
    line-height: calc(var(--spacing) * 5);
  }

  .leading-6 {
    --tw-leading: calc(var(--spacing) * 6);
    line-height: calc(var(--spacing) * 6);
  }

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

  .leading-relaxed {
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
  }

  .leading-snug {
    --tw-leading: var(--leading-snug);
    line-height: var(--leading-snug);
  }

  .leading-tight {
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
  }

  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }

  .font-light {
    --tw-font-weight: var(--font-weight-light);
    font-weight: var(--font-weight-light);
  }

  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .font-normal {
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
  }

  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .tracking-wide {
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
  }

  .tracking-wider {
    --tw-tracking: var(--tracking-wider);
    letter-spacing: var(--tracking-wider);
  }

  .tracking-widest {
    --tw-tracking: var(--tracking-widest);
    letter-spacing: var(--tracking-widest);
  }

  .break-words {
    overflow-wrap: break-word;
  }

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

  .text-ellipsis {
    text-overflow: ellipsis;
  }

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

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

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

  .text-\[\#00A2E5\] {
    color: #00a2e5;
  }

  .text-\[\#4DBC15\] {
    color: #4dbc15;
  }

  .text-\[\#635BFF\] {
    color: #635bff;
  }

  .text-\[\#02426d\] {
    color: #02426d;
  }

  .text-\[\#072238\] {
    color: #072238;
  }

  .text-\[\#E60023\] {
    color: #e60023;
  }

  .text-\[color\:var\(--color-mancave-button-bg\)\], .text-\[var\(--color-mancave-button-bg\)\] {
    color: var(--color-mancave-button-bg);
  }

  .text-\[var\(--color-mancave-text-on-blue\)\] {
    color: var(--color-mancave-text-on-blue);
  }

  .text-amber-200 {
    color: var(--color-amber-200);
  }

  .text-amber-300 {
    color: var(--color-amber-300);
  }

  .text-amber-400 {
    color: #fbbf24;
  }

  .text-amber-500 {
    color: #f59e0b;
  }

  .text-amber-600 {
    color: #d97706;
  }

  .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-black {
    color: var(--color-black);
  }

  .text-blue-100 {
    color: var(--color-blue-100);
  }

  .text-blue-300 {
    color: var(--color-blue-300);
  }

  .text-blue-400 {
    color: var(--color-blue-400);
  }

  .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-custom-green {
    color: #448843;
  }

  .text-custom-red {
    color: #fb471f;
  }

  .text-cyan-500 {
    color: var(--color-cyan-500);
  }

  .text-cyan-700 {
    color: var(--color-cyan-700);
  }

  .text-cyan-800 {
    color: var(--color-cyan-800);
  }

  .text-emerald-400 {
    color: var(--color-emerald-400);
  }

  .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-gray-200 {
    color: var(--color-gray-200);
  }

  .text-gray-300 {
    color: var(--color-gray-300);
  }

  .text-gray-400 {
    color: var(--color-gray-400);
  }

  .text-gray-500 {
    color: var(--color-gray-500);
  }

  .text-gray-600 {
    color: var(--color-gray-600);
  }

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

  .text-gray-800 {
    color: var(--color-gray-800);
  }

  .text-gray-900 {
    color: var(--color-gray-900);
  }

  .text-green-400 {
    color: #5ca95b;
  }

  .text-green-500 {
    color: #448843;
  }

  .text-green-600 {
    color: #366d36;
  }

  .text-green-700 {
    color: var(--color-green-700);
  }

  .text-green-800 {
    color: var(--color-green-800);
  }

  .text-green-900 {
    color: var(--color-green-900);
  }

  .text-ida-accent {
    color: #6d7a86;
  }

  .text-ida-primary {
    color: #072238;
  }

  .text-ida-secondary {
    color: #beccd9;
  }

  .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-inherit {
    color: inherit;
  }

  .text-lime-600 {
    color: var(--color-lime-600);
  }

  .text-mancave-accent {
    color: #4f2d1d;
  }

  .text-mancave-accent\/70 {
    color: #4f2d1db3;
    color: lab(22.6374% 14.7433 17.2476 / .7);
  }

  .text-mancave-button-bg {
    color: #02426d;
  }

  .text-mancave-heading {
    color: #101820;
  }

  .text-mancave-text-on-blue {
    color: #f2fafe;
  }

  .text-orange-400 {
    color: #fb923c;
  }

  .text-orange-500 {
    color: #e87928;
  }

  .text-orange-600 {
    color: #d56a1f;
  }

  .text-orange-700 {
    color: #b45a1a;
  }

  .text-orange-800 {
    color: #8f4815;
  }

  .text-orange-900 {
    color: #6b3510;
  }

  .text-pink-600 {
    color: var(--color-pink-600);
  }

  .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-500 {
    color: var(--color-purple-500);
  }

  .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-purple-900 {
    color: var(--color-purple-900);
  }

  .text-red-300 {
    color: var(--color-red-300);
  }

  .text-red-400 {
    color: #fc7a5c;
  }

  .text-red-500 {
    color: #fb471f;
  }

  .text-red-600 {
    color: #e03d18;
  }

  .text-red-700 {
    color: #b33113;
  }

  .text-red-800 {
    color: var(--color-red-800);
  }

  .text-red-900 {
    color: #66200b;
  }

  .text-rose-600 {
    color: var(--color-rose-600);
  }

  .text-slate-500 {
    color: var(--color-slate-500);
  }

  .text-stone-500 {
    color: var(--color-stone-500);
  }

  .text-teal-700 {
    color: var(--color-teal-700);
  }

  .text-teal-800 {
    color: var(--color-teal-800);
  }

  .text-violet-700 {
    color: var(--color-violet-700);
  }

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

  .text-white\/50 {
    color: #ffffff80;
  }

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

  .text-white\/60 {
    color: #fff9;
  }

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

  .text-white\/70 {
    color: #ffffffb3;
  }

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

  .text-white\/80 {
    color: #fffc;
  }

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

  .text-white\/90 {
    color: #ffffffe6;
  }

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

  .text-yellow-400 {
    color: #facc15;
  }

  .text-yellow-500 {
    color: #eab308;
  }

  .text-yellow-600 {
    color: #ca8a04;
  }

  .text-yellow-700 {
    color: var(--color-yellow-700);
  }

  .text-yellow-800 {
    color: var(--color-yellow-800);
  }

  .text-yellow-900 {
    color: var(--color-yellow-900);
  }

  .capitalize {
    text-transform: capitalize;
  }

  .lowercase {
    text-transform: lowercase;
  }

  .uppercase {
    text-transform: uppercase;
  }

  .italic {
    font-style: italic;
  }

  .tabular-nums {
    --tw-numeric-spacing: tabular-nums;
    font-variant-numeric: var(--tw-ordinal, ) var(--tw-slashed-zero, ) var(--tw-numeric-figure, ) var(--tw-numeric-spacing, ) var(--tw-numeric-fraction, );
  }

  .line-through {
    text-decoration-line: line-through;
  }

  .overline {
    text-decoration-line: overline;
  }

  .underline {
    text-decoration-line: underline;
  }

  .antialiased {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }

  .placeholder-gray-400::placeholder {
    color: var(--color-gray-400);
  }

  .placeholder-gray-500::placeholder {
    color: var(--color-gray-500);
  }

  .accent-\[var\(--color-mancave-accent\)\] {
    accent-color: var(--color-mancave-accent);
  }

  .accent-\[var\(--color-mancave-button-bg\)\] {
    accent-color: var(--color-mancave-button-bg);
  }

  .accent-amber-600 {
    accent-color: #d97706;
  }

  .accent-black {
    accent-color: var(--color-black);
  }

  .accent-blue-600 {
    accent-color: var(--color-blue-600);
  }

  .accent-green-600 {
    accent-color: #366d36;
  }

  .accent-mancave-accent {
    accent-color: #4f2d1d;
  }

  .accent-mancave-heading {
    accent-color: #101820;
  }

  .accent-purple-600 {
    accent-color: var(--color-purple-600);
  }

  .opacity-0 {
    opacity: 0;
  }

  .opacity-10 {
    opacity: .1;
  }

  .opacity-20 {
    opacity: .2;
  }

  .opacity-25 {
    opacity: .25;
  }

  .opacity-30 {
    opacity: .3;
  }

  .opacity-50 {
    opacity: .5;
  }

  .opacity-60 {
    opacity: .6;
  }

  .opacity-70 {
    opacity: .7;
  }

  .opacity-75 {
    opacity: .75;
  }

  .opacity-80 {
    opacity: .8;
  }

  .opacity-85 {
    opacity: .85;
  }

  .opacity-90 {
    opacity: .9;
  }

  .opacity-100 {
    opacity: 1;
  }

  .shadow {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-2xl {
    --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, #00000040);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-lg {
    --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, #0000001a), 0 4px 6px -4px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-md {
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, #0000001a), 0 2px 4px -2px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-none {
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-sm {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-xl {
    --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, #0000001a), 0 8px 10px -6px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .ring, .ring-1 {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .ring-2 {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .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-400 {
    --tw-ring-color: var(--color-blue-400);
  }

  .ring-gray-400 {
    --tw-ring-color: var(--color-gray-400);
  }

  .ring-gray-500 {
    --tw-ring-color: var(--color-gray-500);
  }

  .ring-green-400 {
    --tw-ring-color: #5ca95b;
  }

  .ring-green-500 {
    --tw-ring-color: #448843;
  }

  .ring-mancave-button-bg {
    --tw-ring-color: #02426d;
  }

  .ring-orange-300 {
    --tw-ring-color: #fdba74;
  }

  .ring-orange-400 {
    --tw-ring-color: #fb923c;
  }

  .ring-purple-400 {
    --tw-ring-color: var(--color-purple-400);
  }

  .ring-purple-500\/20 {
    --tw-ring-color: #ac4bff33;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .ring-purple-500\/20 {
      --tw-ring-color: color-mix(in oklab, var(--color-purple-500) 20%, transparent);
    }
  }

  .ring-offset-1 {
    --tw-ring-offset-width: 1px;
    --tw-ring-offset-shadow: var(--tw-ring-inset, ) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  }

  .ring-offset-2 {
    --tw-ring-offset-width: 2px;
    --tw-ring-offset-shadow: var(--tw-ring-inset, ) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  }

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

  .blur {
    --tw-blur: blur(8px);
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .blur-2xl {
    --tw-blur: blur(var(--blur-2xl));
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .blur-3xl {
    --tw-blur: blur(var(--blur-3xl));
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .drop-shadow {
    --tw-drop-shadow-size: drop-shadow(0 1px 2px var(--tw-drop-shadow-color, #0000001a)) drop-shadow(0 1px 1px var(--tw-drop-shadow-color, #0000000f));
    --tw-drop-shadow: drop-shadow(0 1px 2px #0000001a) drop-shadow(0 1px 1px #0000000f);
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .grayscale {
    --tw-grayscale: grayscale(100%);
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .invert {
    --tw-invert: invert(100%);
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .filter {
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

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

  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-all {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-colors {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-opacity {
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-shadow {
    transition-property: box-shadow;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-transform {
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .duration-100 {
    --tw-duration: .1s;
    transition-duration: .1s;
  }

  .duration-150 {
    --tw-duration: .15s;
    transition-duration: .15s;
  }

  .duration-200 {
    --tw-duration: .2s;
    transition-duration: .2s;
  }

  .duration-300 {
    --tw-duration: .3s;
    transition-duration: .3s;
  }

  .duration-500 {
    --tw-duration: .5s;
    transition-duration: .5s;
  }

  .duration-1000 {
    --tw-duration: 1s;
    transition-duration: 1s;
  }

  .ease-in-out {
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
  }

  .ease-linear {
    --tw-ease: linear;
    transition-timing-function: linear;
  }

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

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

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

  .ring-inset {
    --tw-ring-inset: inset;
  }

  @media (hover: hover) {
    .group-hover\:block:is(:where(.group):hover *) {
      display: block;
    }
  }

  @media (hover: hover) {
    .group-hover\:inline-flex:is(:where(.group):hover *) {
      display: inline-flex;
    }
  }

  @media (hover: hover) {
    .group-hover\:scale-105:is(:where(.group):hover *) {
      --tw-scale-x: 105%;
      --tw-scale-y: 105%;
      --tw-scale-z: 105%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
  }

  @media (hover: hover) {
    .group-hover\:gap-3:is(:where(.group):hover *) {
      gap: calc(var(--spacing) * 3);
    }
  }

  @media (hover: hover) {
    .group-hover\:bg-black\/20:is(:where(.group):hover *) {
      background-color: #0003;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .group-hover\:bg-black\/20:is(:where(.group):hover *) {
        background-color: color-mix(in oklab, var(--color-black) 20%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .group-hover\:bg-black\/30:is(:where(.group):hover *) {
      background-color: #0000004d;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .group-hover\:bg-black\/30:is(:where(.group):hover *) {
        background-color: color-mix(in oklab, var(--color-black) 30%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .group-hover\:bg-black\/40:is(:where(.group):hover *) {
      background-color: #0006;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .group-hover\:bg-black\/40:is(:where(.group):hover *) {
        background-color: color-mix(in oklab, var(--color-black) 40%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .group-hover\:bg-gray-50:is(:where(.group):hover *) {
      background-color: var(--color-gray-50);
    }
  }

  @media (hover: hover) {
    .group-hover\:bg-mancave-accent\/10:is(:where(.group):hover *) {
      background-color: #4f2d1d1a;
      background-color: lab(22.6374% 14.7433 17.2476 / .1);
    }
  }

  @media (hover: hover) {
    .group-hover\:text-\[color\:var\(--color-mancave-button-bg\)\]:is(:where(.group):hover *) {
      color: var(--color-mancave-button-bg);
    }
  }

  @media (hover: hover) {
    .group-hover\:text-gray-600:is(:where(.group):hover *) {
      color: var(--color-gray-600);
    }
  }

  @media (hover: hover) {
    .group-hover\:text-gray-900:is(:where(.group):hover *) {
      color: var(--color-gray-900);
    }
  }

  @media (hover: hover) {
    .group-hover\:text-mancave-accent:is(:where(.group):hover *) {
      color: #4f2d1d;
    }
  }

  @media (hover: hover) {
    .group-hover\:text-mancave-accent\/80:is(:where(.group):hover *) {
      color: #4f2d1dcc;
      color: lab(22.6374% 14.7433 17.2476 / .8);
    }
  }

  @media (hover: hover) {
    .group-hover\:text-mancave-heading:is(:where(.group):hover *) {
      color: #101820;
    }
  }

  @media (hover: hover) {
    .group-hover\:opacity-0:is(:where(.group):hover *) {
      opacity: 0;
    }
  }

  @media (hover: hover) {
    .group-hover\:opacity-100:is(:where(.group):hover *) {
      opacity: 1;
    }
  }

  .placeholder\:text-gray-400::placeholder {
    color: var(--color-gray-400);
  }

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

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

  .first\:border-t-0:first-child {
    border-top-style: var(--tw-border-style);
    border-top-width: 0;
  }

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

  .last\:border-0:last-child {
    border-style: var(--tw-border-style);
    border-width: 0;
  }

  .last\:border-b-0:last-child {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0;
  }

  .focus-within\:border-black:focus-within {
    border-color: var(--color-black);
  }

  .focus-within\:ring-1:focus-within {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  @media (hover: hover) {
    .hover\:scale-105:hover {
      --tw-scale-x: 105%;
      --tw-scale-y: 105%;
      --tw-scale-z: 105%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
  }

  @media (hover: hover) {
    .hover\:scale-110:hover {
      --tw-scale-x: 110%;
      --tw-scale-y: 110%;
      --tw-scale-z: 110%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
  }

  @media (hover: hover) {
    .hover\:border-\[color\:var\(--color-mancave-button-bg\)\]:hover {
      border-color: var(--color-mancave-button-bg);
    }
  }

  @media (hover: hover) {
    .hover\:border-amber-300:hover {
      border-color: var(--color-amber-300);
    }
  }

  @media (hover: hover) {
    .hover\:border-amber-400:hover {
      border-color: #fbbf24;
    }
  }

  @media (hover: hover) {
    .hover\:border-black:hover {
      border-color: var(--color-black);
    }
  }

  @media (hover: hover) {
    .hover\:border-blue-300:hover {
      border-color: var(--color-blue-300);
    }
  }

  @media (hover: hover) {
    .hover\:border-blue-400:hover {
      border-color: var(--color-blue-400);
    }
  }

  @media (hover: hover) {
    .hover\:border-blue-500:hover {
      border-color: var(--color-blue-500);
    }
  }

  @media (hover: hover) {
    .hover\:border-gray-300:hover {
      border-color: var(--color-gray-300);
    }
  }

  @media (hover: hover) {
    .hover\:border-gray-400:hover {
      border-color: var(--color-gray-400);
    }
  }

  @media (hover: hover) {
    .hover\:border-gray-500:hover {
      border-color: var(--color-gray-500);
    }
  }

  @media (hover: hover) {
    .hover\:border-gray-600:hover {
      border-color: var(--color-gray-600);
    }
  }

  @media (hover: hover) {
    .hover\:border-green-400:hover {
      border-color: #5ca95b;
    }
  }

  @media (hover: hover) {
    .hover\:border-green-500:hover {
      border-color: #448843;
    }
  }

  @media (hover: hover) {
    .hover\:border-mancave-accent:hover {
      border-color: #4f2d1d;
    }
  }

  @media (hover: hover) {
    .hover\:border-mancave-button-bg:hover {
      border-color: #02426d;
    }
  }

  @media (hover: hover) {
    .hover\:border-orange-300:hover {
      border-color: #fdba74;
    }
  }

  @media (hover: hover) {
    .hover\:border-purple-300:hover {
      border-color: var(--color-purple-300);
    }
  }

  @media (hover: hover) {
    .hover\:border-purple-400:hover {
      border-color: var(--color-purple-400);
    }
  }

  @media (hover: hover) {
    .hover\:border-purple-500:hover {
      border-color: var(--color-purple-500);
    }
  }

  @media (hover: hover) {
    .hover\:border-red-300:hover {
      border-color: var(--color-red-300);
    }
  }

  @media (hover: hover) {
    .hover\:border-red-400:hover {
      border-color: #fc7a5c;
    }
  }

  @media (hover: hover) {
    .hover\:bg-\[var\(--color-mancave-button-hover-bg\)\]:hover {
      background-color: var(--color-mancave-button-hover-bg);
    }
  }

  @media (hover: hover) {
    .hover\:bg-amber-50:hover {
      background-color: var(--color-amber-50);
    }
  }

  @media (hover: hover) {
    .hover\:bg-amber-100:hover {
      background-color: var(--color-amber-100);
    }
  }

  @media (hover: hover) {
    .hover\:bg-amber-200:hover {
      background-color: var(--color-amber-200);
    }
  }

  @media (hover: hover) {
    .hover\:bg-amber-600:hover {
      background-color: #d97706;
    }
  }

  @media (hover: hover) {
    .hover\:bg-amber-700:hover {
      background-color: var(--color-amber-700);
    }
  }

  @media (hover: hover) {
    .hover\:bg-black\/5:hover {
      background-color: #0000000d;
    }

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

  @media (hover: hover) {
    .hover\:bg-black\/70:hover {
      background-color: #000000b3;
    }

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

  @media (hover: hover) {
    .hover\:bg-black\/80:hover {
      background-color: #000c;
    }

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

  @media (hover: hover) {
    .hover\:bg-blue-50:hover {
      background-color: var(--color-blue-50);
    }
  }

  @media (hover: hover) {
    .hover\:bg-blue-100:hover {
      background-color: var(--color-blue-100);
    }
  }

  @media (hover: hover) {
    .hover\:bg-blue-200:hover {
      background-color: var(--color-blue-200);
    }
  }

  @media (hover: hover) {
    .hover\:bg-blue-600:hover {
      background-color: var(--color-blue-600);
    }
  }

  @media (hover: hover) {
    .hover\:bg-blue-700:hover {
      background-color: var(--color-blue-700);
    }
  }

  @media (hover: hover) {
    .hover\:bg-emerald-600\/30:hover {
      background-color: #0097674d;
    }

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

  @media (hover: hover) {
    .hover\:bg-gray-50:hover {
      background-color: var(--color-gray-50);
    }
  }

  @media (hover: hover) {
    .hover\:bg-gray-100:hover {
      background-color: var(--color-gray-100);
    }
  }

  @media (hover: hover) {
    .hover\:bg-gray-100\/50:hover {
      background-color: #f3f4f680;
    }

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

  @media (hover: hover) {
    .hover\:bg-gray-200:hover {
      background-color: var(--color-gray-200);
    }
  }

  @media (hover: hover) {
    .hover\:bg-gray-300:hover {
      background-color: var(--color-gray-300);
    }
  }

  @media (hover: hover) {
    .hover\:bg-gray-400:hover {
      background-color: var(--color-gray-400);
    }
  }

  @media (hover: hover) {
    .hover\:bg-gray-500:hover {
      background-color: var(--color-gray-500);
    }
  }

  @media (hover: hover) {
    .hover\:bg-gray-600:hover {
      background-color: var(--color-gray-600);
    }
  }

  @media (hover: hover) {
    .hover\:bg-gray-700:hover {
      background-color: var(--color-gray-700);
    }
  }

  @media (hover: hover) {
    .hover\:bg-gray-800:hover {
      background-color: var(--color-gray-800);
    }
  }

  @media (hover: hover) {
    .hover\:bg-green-50:hover {
      background-color: var(--color-green-50);
    }
  }

  @media (hover: hover) {
    .hover\:bg-green-100:hover {
      background-color: var(--color-green-100);
    }
  }

  @media (hover: hover) {
    .hover\:bg-green-200:hover {
      background-color: var(--color-green-200);
    }
  }

  @media (hover: hover) {
    .hover\:bg-green-600:hover {
      background-color: #366d36;
    }
  }

  @media (hover: hover) {
    .hover\:bg-green-700:hover {
      background-color: var(--color-green-700);
    }
  }

  @media (hover: hover) {
    .hover\:bg-green-800:hover {
      background-color: var(--color-green-800);
    }
  }

  @media (hover: hover) {
    .hover\:bg-ida-primary-hover:hover {
      background-color: #6d7a86;
    }
  }

  @media (hover: hover) {
    .hover\:bg-indigo-100:hover {
      background-color: var(--color-indigo-100);
    }
  }

  @media (hover: hover) {
    .hover\:bg-indigo-200:hover {
      background-color: var(--color-indigo-200);
    }
  }

  @media (hover: hover) {
    .hover\:bg-mancave-accent\/5:hover {
      background-color: #4f2d1d0d;
      background-color: lab(22.6374% 14.7433 17.2476 / .05);
    }
  }

  @media (hover: hover) {
    .hover\:bg-mancave-accent\/20:hover {
      background-color: #4f2d1d33;
      background-color: lab(22.6374% 14.7433 17.2476 / .2);
    }
  }

  @media (hover: hover) {
    .hover\:bg-mancave-button-bg:hover {
      background-color: #02426d;
    }
  }

  @media (hover: hover) {
    .hover\:bg-mancave-button-bg\/90:hover {
      background-color: #02426de6;
      background-color: lab(26.2919% -4.81081 -30.6284 / .9);
    }
  }

  @media (hover: hover) {
    .hover\:bg-orange-50:hover {
      background-color: #fff7ed;
    }
  }

  @media (hover: hover) {
    .hover\:bg-orange-100:hover {
      background-color: #ffedd5;
    }
  }

  @media (hover: hover) {
    .hover\:bg-orange-200:hover {
      background-color: #fed7aa;
    }
  }

  @media (hover: hover) {
    .hover\:bg-orange-700:hover {
      background-color: #b45a1a;
    }
  }

  @media (hover: hover) {
    .hover\:bg-purple-50:hover {
      background-color: var(--color-purple-50);
    }
  }

  @media (hover: hover) {
    .hover\:bg-purple-100:hover {
      background-color: var(--color-purple-100);
    }
  }

  @media (hover: hover) {
    .hover\:bg-purple-100\/50:hover {
      background-color: #f3e8ff80;
    }

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

  @media (hover: hover) {
    .hover\:bg-purple-200:hover {
      background-color: var(--color-purple-200);
    }
  }

  @media (hover: hover) {
    .hover\:bg-purple-700:hover {
      background-color: var(--color-purple-700);
    }
  }

  @media (hover: hover) {
    .hover\:bg-red-50:hover {
      background-color: var(--color-red-50);
    }
  }

  @media (hover: hover) {
    .hover\:bg-red-100:hover {
      background-color: #fee5df;
    }
  }

  @media (hover: hover) {
    .hover\:bg-red-200:hover {
      background-color: #feccbf;
    }
  }

  @media (hover: hover) {
    .hover\:bg-red-500:hover {
      background-color: #fb471f;
    }
  }

  @media (hover: hover) {
    .hover\:bg-red-600:hover {
      background-color: #e03d18;
    }
  }

  @media (hover: hover) {
    .hover\:bg-red-700:hover {
      background-color: #b33113;
    }
  }

  @media (hover: hover) {
    .hover\:bg-rose-100:hover {
      background-color: var(--color-rose-100);
    }
  }

  @media (hover: hover) {
    .hover\:bg-teal-200:hover {
      background-color: var(--color-teal-200);
    }
  }

  @media (hover: hover) {
    .hover\:bg-white:hover {
      background-color: var(--color-white);
    }
  }

  @media (hover: hover) {
    .hover\:bg-white\/10:hover {
      background-color: #ffffff1a;
    }

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

  @media (hover: hover) {
    .hover\:bg-white\/20:hover {
      background-color: #fff3;
    }

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

  @media (hover: hover) {
    .hover\:bg-yellow-50:hover {
      background-color: var(--color-yellow-50);
    }
  }

  @media (hover: hover) {
    .hover\:bg-yellow-100:hover {
      background-color: var(--color-yellow-100);
    }
  }

  @media (hover: hover) {
    .hover\:bg-yellow-200:hover {
      background-color: var(--color-yellow-200);
    }
  }

  @media (hover: hover) {
    .hover\:bg-yellow-700:hover {
      background-color: var(--color-yellow-700);
    }
  }

  @media (hover: hover) {
    .hover\:from-purple-700:hover {
      --tw-gradient-from: var(--color-purple-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));
    }
  }

  @media (hover: hover) {
    .hover\:to-indigo-700:hover {
      --tw-gradient-to: var(--color-indigo-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));
    }
  }

  @media (hover: hover) {
    .hover\:text-\[color\:var\(--color-mancave-button-bg\)\]:hover {
      color: var(--color-mancave-button-bg);
    }
  }

  @media (hover: hover) {
    .hover\:text-\[var\(--color-mancave-accent\)\]:hover {
      color: var(--color-mancave-accent);
    }
  }

  @media (hover: hover) {
    .hover\:text-amber-200:hover {
      color: var(--color-amber-200);
    }
  }

  @media (hover: hover) {
    .hover\:text-amber-400:hover {
      color: #fbbf24;
    }
  }

  @media (hover: hover) {
    .hover\:text-amber-500:hover {
      color: #f59e0b;
    }
  }

  @media (hover: hover) {
    .hover\:text-amber-600:hover {
      color: #d97706;
    }
  }

  @media (hover: hover) {
    .hover\:text-amber-700:hover {
      color: var(--color-amber-700);
    }
  }

  @media (hover: hover) {
    .hover\:text-amber-800:hover {
      color: var(--color-amber-800);
    }
  }

  @media (hover: hover) {
    .hover\:text-amber-950:hover {
      color: var(--color-amber-950);
    }
  }

  @media (hover: hover) {
    .hover\:text-black:hover {
      color: var(--color-black);
    }
  }

  @media (hover: hover) {
    .hover\:text-blue-300:hover {
      color: var(--color-blue-300);
    }
  }

  @media (hover: hover) {
    .hover\:text-blue-600:hover {
      color: var(--color-blue-600);
    }
  }

  @media (hover: hover) {
    .hover\:text-blue-700:hover {
      color: var(--color-blue-700);
    }
  }

  @media (hover: hover) {
    .hover\:text-blue-800:hover {
      color: var(--color-blue-800);
    }
  }

  @media (hover: hover) {
    .hover\:text-blue-900:hover {
      color: var(--color-blue-900);
    }
  }

  @media (hover: hover) {
    .hover\:text-emerald-300:hover {
      color: var(--color-emerald-300);
    }
  }

  @media (hover: hover) {
    .hover\:text-emerald-800:hover {
      color: var(--color-emerald-800);
    }
  }

  @media (hover: hover) {
    .hover\:text-gray-500:hover {
      color: var(--color-gray-500);
    }
  }

  @media (hover: hover) {
    .hover\:text-gray-600:hover {
      color: var(--color-gray-600);
    }
  }

  @media (hover: hover) {
    .hover\:text-gray-700:hover {
      color: var(--color-gray-700);
    }
  }

  @media (hover: hover) {
    .hover\:text-gray-800:hover {
      color: var(--color-gray-800);
    }
  }

  @media (hover: hover) {
    .hover\:text-gray-900:hover {
      color: var(--color-gray-900);
    }
  }

  @media (hover: hover) {
    .hover\:text-green-500:hover {
      color: #448843;
    }
  }

  @media (hover: hover) {
    .hover\:text-green-600:hover {
      color: #366d36;
    }
  }

  @media (hover: hover) {
    .hover\:text-green-700:hover {
      color: var(--color-green-700);
    }
  }

  @media (hover: hover) {
    .hover\:text-green-800:hover {
      color: var(--color-green-800);
    }
  }

  @media (hover: hover) {
    .hover\:text-green-900:hover {
      color: var(--color-green-900);
    }
  }

  @media (hover: hover) {
    .hover\:text-mancave-accent:hover {
      color: #4f2d1d;
    }
  }

  @media (hover: hover) {
    .hover\:text-mancave-button-bg\/80:hover {
      color: #02426dcc;
      color: lab(26.2919% -4.81081 -30.6284 / .8);
    }
  }

  @media (hover: hover) {
    .hover\:text-mancave-heading:hover {
      color: #101820;
    }
  }

  @media (hover: hover) {
    .hover\:text-orange-300:hover {
      color: #fdba74;
    }
  }

  @media (hover: hover) {
    .hover\:text-orange-800:hover {
      color: #8f4815;
    }
  }

  @media (hover: hover) {
    .hover\:text-orange-900:hover {
      color: #6b3510;
    }
  }

  @media (hover: hover) {
    .hover\:text-purple-300:hover {
      color: var(--color-purple-300);
    }
  }

  @media (hover: hover) {
    .hover\:text-purple-600:hover {
      color: var(--color-purple-600);
    }
  }

  @media (hover: hover) {
    .hover\:text-purple-700:hover {
      color: var(--color-purple-700);
    }
  }

  @media (hover: hover) {
    .hover\:text-purple-900:hover {
      color: var(--color-purple-900);
    }
  }

  @media (hover: hover) {
    .hover\:text-red-300:hover {
      color: var(--color-red-300);
    }
  }

  @media (hover: hover) {
    .hover\:text-red-400:hover {
      color: #fc7a5c;
    }
  }

  @media (hover: hover) {
    .hover\:text-red-500:hover {
      color: #fb471f;
    }
  }

  @media (hover: hover) {
    .hover\:text-red-600:hover {
      color: #e03d18;
    }
  }

  @media (hover: hover) {
    .hover\:text-red-700:hover {
      color: #b33113;
    }
  }

  @media (hover: hover) {
    .hover\:text-red-800:hover {
      color: var(--color-red-800);
    }
  }

  @media (hover: hover) {
    .hover\:text-red-900:hover {
      color: #66200b;
    }
  }

  @media (hover: hover) {
    .hover\:text-white:hover {
      color: var(--color-white);
    }
  }

  @media (hover: hover) {
    .hover\:text-yellow-400:hover {
      color: #facc15;
    }
  }

  @media (hover: hover) {
    .hover\:text-yellow-600:hover {
      color: #ca8a04;
    }
  }

  @media (hover: hover) {
    .hover\:text-yellow-900:hover {
      color: var(--color-yellow-900);
    }
  }

  @media (hover: hover) {
    .hover\:no-underline:hover {
      text-decoration-line: none;
    }
  }

  @media (hover: hover) {
    .hover\:underline:hover {
      text-decoration-line: underline;
    }
  }

  @media (hover: hover) {
    .hover\:opacity-70:hover {
      opacity: .7;
    }
  }

  @media (hover: hover) {
    .hover\:opacity-80:hover {
      opacity: .8;
    }
  }

  @media (hover: hover) {
    .hover\:opacity-90:hover {
      opacity: .9;
    }
  }

  @media (hover: hover) {
    .hover\:opacity-100:hover {
      opacity: 1;
    }
  }

  @media (hover: hover) {
    .hover\:shadow-md:hover {
      --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, #0000001a), 0 2px 4px -2px var(--tw-shadow-color, #0000001a);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }

  @media (hover: hover) {
    .hover\:shadow-sm:hover {
      --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }

  @media (hover: hover) {
    .hover\:shadow-xl:hover {
      --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, #0000001a), 0 8px 10px -6px var(--tw-shadow-color, #0000001a);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }

  @media (hover: hover) {
    .hover\:ring-2:hover {
      --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);
    }
  }

  @media (hover: hover) {
    .hover\:ring-blue-500:hover {
      --tw-ring-color: var(--color-blue-500);
    }
  }

  .focus\:\!border-green-500:focus {
    border-color: #448843 !important;
  }

  .focus\:\!border-red-500:focus {
    border-color: #fb471f !important;
  }

  .focus\:border-\[color\:var\(--color-mancave-button-bg\)\]:focus {
    border-color: var(--color-mancave-button-bg);
  }

  .focus\:border-\[var\(--color-mancave-button-bg\)\]:focus {
    border-color: var(--color-mancave-button-bg);
  }

  .focus\:border-amber-500:focus {
    border-color: #f59e0b;
  }

  .focus\:border-black:focus {
    border-color: var(--color-black);
  }

  .focus\:border-blue-400:focus {
    border-color: var(--color-blue-400);
  }

  .focus\:border-blue-500:focus {
    border-color: var(--color-blue-500);
  }

  .focus\:border-gray-400:focus {
    border-color: var(--color-gray-400);
  }

  .focus\:border-gray-500:focus {
    border-color: var(--color-gray-500);
  }

  .focus\:border-green-500:focus {
    border-color: #448843;
  }

  .focus\:border-ida-primary:focus {
    border-color: #072238;
  }

  .focus\:border-mancave-button-bg:focus {
    border-color: #02426d;
  }

  .focus\:border-purple-500:focus {
    border-color: var(--color-purple-500);
  }

  .focus\:border-red-500:focus {
    border-color: #fb471f;
  }

  .focus\:border-transparent:focus {
    border-color: #0000;
  }

  .focus\:ring-0:focus {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .focus\:ring-1:focus {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .focus\:ring-2:focus {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .focus\:ring-\[var\(--color-mancave-button-bg\)\]:focus {
    --tw-ring-color: var(--color-mancave-button-bg);
  }

  .focus\:ring-amber-500:focus {
    --tw-ring-color: #f59e0b;
  }

  .focus\:ring-black\/30:focus {
    --tw-ring-color: #0000004d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .focus\:ring-black\/30:focus {
      --tw-ring-color: color-mix(in oklab, var(--color-black) 30%, transparent);
    }
  }

  .focus\:ring-blue-400:focus {
    --tw-ring-color: var(--color-blue-400);
  }

  .focus\:ring-blue-500:focus {
    --tw-ring-color: var(--color-blue-500);
  }

  .focus\:ring-gray-300:focus {
    --tw-ring-color: var(--color-gray-300);
  }

  .focus\:ring-gray-400:focus {
    --tw-ring-color: var(--color-gray-400);
  }

  .focus\:ring-gray-500:focus {
    --tw-ring-color: var(--color-gray-500);
  }

  .focus\:ring-indigo-500:focus {
    --tw-ring-color: var(--color-indigo-500);
  }

  .focus\:ring-mancave-accent:focus {
    --tw-ring-color: #4f2d1d;
  }

  .focus\:ring-mancave-button-bg:focus {
    --tw-ring-color: #02426d;
  }

  .focus\:ring-orange-500:focus {
    --tw-ring-color: #e87928;
  }

  .focus\:ring-purple-500:focus {
    --tw-ring-color: var(--color-purple-500);
  }

  .focus\:ring-red-400:focus {
    --tw-ring-color: #fc7a5c;
  }

  .focus\:ring-red-500:focus {
    --tw-ring-color: #fb471f;
  }

  .focus\:ring-offset-0:focus {
    --tw-ring-offset-width: 0px;
    --tw-ring-offset-shadow: var(--tw-ring-inset, ) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  }

  .focus\:ring-offset-1:focus {
    --tw-ring-offset-width: 1px;
    --tw-ring-offset-shadow: var(--tw-ring-inset, ) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  }

  .focus\:ring-offset-2:focus {
    --tw-ring-offset-width: 2px;
    --tw-ring-offset-shadow: var(--tw-ring-inset, ) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  }

  .focus\:outline-none:focus {
    --tw-outline-style: none;
    outline-style: none;
  }

  .focus-visible\:ring-2:focus-visible {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .focus-visible\:ring-blue-500:focus-visible {
    --tw-ring-color: var(--color-blue-500);
  }

  .focus-visible\:ring-offset-1:focus-visible {
    --tw-ring-offset-width: 1px;
    --tw-ring-offset-shadow: var(--tw-ring-inset, ) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  }

  .active\:cursor-grabbing:active {
    cursor: grabbing;
  }

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

  .disabled\:cursor-wait:disabled {
    cursor: wait;
  }

  .disabled\:bg-amber-400:disabled {
    background-color: #fbbf24;
  }

  .disabled\:bg-blue-400:disabled {
    background-color: var(--color-blue-400);
  }

  .disabled\:bg-gray-50:disabled {
    background-color: var(--color-gray-50);
  }

  .disabled\:bg-gray-100:disabled {
    background-color: var(--color-gray-100);
  }

  .disabled\:bg-gray-300:disabled {
    background-color: var(--color-gray-300);
  }

  .disabled\:bg-gray-400:disabled {
    background-color: var(--color-gray-400);
  }

  .disabled\:bg-green-400:disabled {
    background-color: #5ca95b;
  }

  .disabled\:bg-yellow-400:disabled {
    background-color: #facc15;
  }

  .disabled\:text-gray-500:disabled {
    color: var(--color-gray-500);
  }

  .disabled\:opacity-30:disabled {
    opacity: .3;
  }

  .disabled\:opacity-40:disabled {
    opacity: .4;
  }

  .disabled\:opacity-50:disabled {
    opacity: .5;
  }

  .disabled\:opacity-70:disabled {
    opacity: .7;
  }

  @media (hover: hover) {
    .disabled\:hover\:bg-gray-100:disabled:hover {
      background-color: var(--color-gray-100);
    }
  }

  @media not (min-width: 40rem) {
    .max-sm\:right-0 {
      right: calc(var(--spacing) * 0);
    }
  }

  @media not (min-width: 40rem) {
    .max-sm\:bottom-0 {
      bottom: calc(var(--spacing) * 0);
    }
  }

  @media not (min-width: 40rem) {
    .max-sm\:left-0 {
      left: calc(var(--spacing) * 0);
    }
  }

  @media not (min-width: 40rem) {
    .max-sm\:max-h-\[80vh\] {
      max-height: 80vh;
    }
  }

  @media not (min-width: 40rem) {
    .max-sm\:w-full {
      width: 100%;
    }
  }

  @media not (min-width: 40rem) {
    .max-sm\:border-x-0 {
      border-inline-style: var(--tw-border-style);
      border-inline-width: 0;
    }
  }

  @media not (min-width: 40rem) {
    .max-sm\:border-t {
      border-top-style: var(--tw-border-style);
      border-top-width: 1px;
    }
  }

  @media not (min-width: 40rem) {
    .max-sm\:border-b-0 {
      border-bottom-style: var(--tw-border-style);
      border-bottom-width: 0;
    }
  }

  @media (min-width: 40rem) {
    .sm\:col-span-2 {
      grid-column: span 2 / span 2;
    }
  }

  @media (min-width: 40rem) {
    .sm\:col-span-3 {
      grid-column: span 3 / span 3;
    }
  }

  @media (min-width: 40rem) {
    .sm\:hidden {
      display: none;
    }
  }

  @media (min-width: 40rem) {
    .sm\:inline {
      display: inline;
    }
  }

  @media (min-width: 40rem) {
    .sm\:inline-flex {
      display: inline-flex;
    }
  }

  @media (min-width: 40rem) {
    .sm\:h-10 {
      height: calc(var(--spacing) * 10);
    }
  }

  @media (min-width: 40rem) {
    .sm\:w-10 {
      width: calc(var(--spacing) * 10);
    }
  }

  @media (min-width: 40rem) {
    .sm\:w-36 {
      width: calc(var(--spacing) * 36);
    }
  }

  @media (min-width: 40rem) {
    .sm\:w-64 {
      width: calc(var(--spacing) * 64);
    }
  }

  @media (min-width: 40rem) {
    .sm\:w-96 {
      width: calc(var(--spacing) * 96);
    }
  }

  @media (min-width: 40rem) {
    .sm\:w-auto {
      width: auto;
    }
  }

  @media (min-width: 40rem) {
    .sm\:max-w-\[75\%\] {
      max-width: 75%;
    }
  }

  @media (min-width: 40rem) {
    .sm\:max-w-md {
      max-width: var(--container-md);
    }
  }

  @media (min-width: 40rem) {
    .sm\:min-w-\[140px\] {
      min-width: 140px;
    }
  }

  @media (min-width: 40rem) {
    .sm\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media (min-width: 40rem) {
    .sm\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }

  @media (min-width: 40rem) {
    .sm\:grid-cols-4 {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }

  @media (min-width: 40rem) {
    .sm\:grid-cols-5 {
      grid-template-columns: repeat(5, minmax(0, 1fr));
    }
  }

  @media (min-width: 40rem) {
    .sm\:flex-col {
      flex-direction: column;
    }
  }

  @media (min-width: 40rem) {
    .sm\:flex-row {
      flex-direction: row;
    }
  }

  @media (min-width: 40rem) {
    .sm\:items-center {
      align-items: center;
    }
  }

  @media (min-width: 40rem) {
    .sm\:items-start {
      align-items: flex-start;
    }
  }

  @media (min-width: 40rem) {
    .sm\:justify-between {
      justify-content: space-between;
    }
  }

  @media (min-width: 40rem) {
    .sm\:gap-2 {
      gap: calc(var(--spacing) * 2);
    }
  }

  @media (min-width: 40rem) {
    .sm\:gap-8 {
      gap: calc(var(--spacing) * 8);
    }
  }

  @media (min-width: 40rem) {
    .sm\:p-0 {
      padding: calc(var(--spacing) * 0);
    }
  }

  @media (min-width: 40rem) {
    .sm\:p-6 {
      padding: calc(var(--spacing) * 6);
    }
  }

  @media (min-width: 40rem) {
    .sm\:p-8 {
      padding: calc(var(--spacing) * 8);
    }
  }

  @media (min-width: 40rem) {
    .sm\:px-0 {
      padding-inline: calc(var(--spacing) * 0);
    }
  }

  @media (min-width: 40rem) {
    .sm\:px-3 {
      padding-inline: calc(var(--spacing) * 3);
    }
  }

  @media (min-width: 40rem) {
    .sm\:px-4 {
      padding-inline: calc(var(--spacing) * 4);
    }
  }

  @media (min-width: 40rem) {
    .sm\:px-6 {
      padding-inline: calc(var(--spacing) * 6);
    }
  }

  @media (min-width: 40rem) {
    .sm\:px-8 {
      padding-inline: calc(var(--spacing) * 8);
    }
  }

  @media (min-width: 40rem) {
    .sm\:pt-32 {
      padding-top: calc(var(--spacing) * 32);
    }
  }

  @media (min-width: 40rem) {
    .sm\:text-3xl {
      font-size: var(--text-3xl);
      line-height: var(--tw-leading, var(--text-3xl--line-height));
    }
  }

  @media (min-width: 40rem) {
    .sm\:text-5xl {
      font-size: var(--text-5xl);
      line-height: var(--tw-leading, var(--text-5xl--line-height));
    }
  }

  @media (min-width: 40rem) {
    .sm\:text-base {
      font-size: var(--text-base);
      line-height: var(--tw-leading, var(--text-base--line-height));
    }
  }

  @media (min-width: 40rem) {
    .sm\:text-sm {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }

  @media (min-width: 48rem) {
    .md\:order-1 {
      order: 1;
    }
  }

  @media (min-width: 48rem) {
    .md\:order-2 {
      order: 2;
    }
  }

  @media (min-width: 48rem) {
    .md\:col-span-1 {
      grid-column: span 1 / span 1;
    }
  }

  @media (min-width: 48rem) {
    .md\:col-span-2 {
      grid-column: span 2 / span 2;
    }
  }

  @media (min-width: 48rem) {
    .md\:col-span-3 {
      grid-column: span 3 / span 3;
    }
  }

  @media (min-width: 48rem) {
    .md\:hidden {
      display: none;
    }
  }

  @media (min-width: 48rem) {
    .md\:w-64 {
      width: calc(var(--spacing) * 64);
    }
  }

  @media (min-width: 48rem) {
    .md\:w-\[288px\] {
      width: 288px;
    }
  }

  @media (min-width: 48rem) {
    .md\:max-w-\[256px\] {
      max-width: 256px;
    }
  }

  @media (min-width: 48rem) {
    .md\:max-w-\[288px\] {
      max-width: 288px;
    }
  }

  @media (min-width: 48rem) {
    .md\:min-w-\[256px\] {
      min-width: 256px;
    }
  }

  @media (min-width: 48rem) {
    .md\:min-w-\[288px\] {
      min-width: 288px;
    }
  }

  @media (min-width: 48rem) {
    .md\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media (min-width: 48rem) {
    .md\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }

  @media (min-width: 48rem) {
    .md\:grid-cols-4 {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }

  @media (min-width: 48rem) {
    .md\:grid-cols-5 {
      grid-template-columns: repeat(5, minmax(0, 1fr));
    }
  }

  @media (min-width: 48rem) {
    .md\:grid-cols-6 {
      grid-template-columns: repeat(6, minmax(0, 1fr));
    }
  }

  @media (min-width: 48rem) {
    .md\:flex-row {
      flex-direction: row;
    }
  }

  @media (min-width: 48rem) {
    .md\:items-center {
      align-items: center;
    }
  }

  @media (min-width: 48rem) {
    .md\:p-8 {
      padding: calc(var(--spacing) * 8);
    }
  }

  @media (min-width: 48rem) {
    .md\:text-2xl {
      font-size: var(--text-2xl);
      line-height: var(--tw-leading, var(--text-2xl--line-height));
    }
  }

  @media (min-width: 48rem) {
    .md\:text-4xl {
      font-size: var(--text-4xl);
      line-height: var(--tw-leading, var(--text-4xl--line-height));
    }
  }

  @media (min-width: 48rem) {
    .md\:text-5xl {
      font-size: var(--text-5xl);
      line-height: var(--tw-leading, var(--text-5xl--line-height));
    }
  }

  @media (min-width: 64rem) {
    .lg\:relative {
      position: relative;
    }
  }

  @media (min-width: 64rem) {
    .lg\:sticky {
      position: sticky;
    }
  }

  @media (min-width: 64rem) {
    .lg\:top-8 {
      top: calc(var(--spacing) * 8);
    }
  }

  @media (min-width: 64rem) {
    .lg\:z-auto {
      z-index: auto;
    }
  }

  @media (min-width: 64rem) {
    .lg\:col-span-2 {
      grid-column: span 2 / span 2;
    }
  }

  @media (min-width: 64rem) {
    .lg\:mb-0 {
      margin-bottom: calc(var(--spacing) * 0);
    }
  }

  @media (min-width: 64rem) {
    .lg\:block {
      display: block;
    }
  }

  @media (min-width: 64rem) {
    .lg\:flex {
      display: flex;
    }
  }

  @media (min-width: 64rem) {
    .lg\:hidden {
      display: none;
    }
  }

  @media (min-width: 64rem) {
    .lg\:w-1\/2 {
      width: 50%;
    }
  }

  @media (min-width: 64rem) {
    .lg\:w-32 {
      width: calc(var(--spacing) * 32);
    }
  }

  @media (min-width: 64rem) {
    .lg\:w-36 {
      width: calc(var(--spacing) * 36);
    }
  }

  @media (min-width: 64rem) {
    .lg\:w-64 {
      width: calc(var(--spacing) * 64);
    }
  }

  @media (min-width: 64rem) {
    .lg\:w-72 {
      width: calc(var(--spacing) * 72);
    }
  }

  @media (min-width: 64rem) {
    .lg\:flex-shrink-0 {
      flex-shrink: 0;
    }
  }

  @media (min-width: 64rem) {
    .lg\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media (min-width: 64rem) {
    .lg\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }

  @media (min-width: 64rem) {
    .lg\:grid-cols-4 {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }

  @media (min-width: 64rem) {
    .lg\:grid-cols-5 {
      grid-template-columns: repeat(5, minmax(0, 1fr));
    }
  }

  @media (min-width: 64rem) {
    .lg\:grid-cols-6 {
      grid-template-columns: repeat(6, minmax(0, 1fr));
    }
  }

  @media (min-width: 64rem) {
    .lg\:grid-cols-7 {
      grid-template-columns: repeat(7, minmax(0, 1fr));
    }
  }

  @media (min-width: 64rem) {
    .lg\:grid-cols-\[1fr_340px\] {
      grid-template-columns: 1fr 340px;
    }
  }

  @media (min-width: 64rem) {
    .lg\:flex-row {
      flex-direction: row;
    }
  }

  @media (min-width: 64rem) {
    .lg\:items-center {
      align-items: center;
    }
  }

  @media (min-width: 64rem) {
    .lg\:items-start {
      align-items: flex-start;
    }
  }

  @media (min-width: 64rem) {
    .lg\:gap-4 {
      gap: calc(var(--spacing) * 4);
    }
  }

  @media (min-width: 64rem) {
    .lg\:gap-12 {
      gap: calc(var(--spacing) * 12);
    }
  }

  @media (min-width: 64rem) {
    .lg\:gap-20 {
      gap: calc(var(--spacing) * 20);
    }
  }

  @media (min-width: 64rem) {
    .lg\:p-10 {
      padding: calc(var(--spacing) * 10);
    }
  }

  @media (min-width: 64rem) {
    .lg\:px-8 {
      padding-inline: calc(var(--spacing) * 8);
    }
  }

  @media (min-width: 64rem) {
    .lg\:py-28 {
      padding-block: calc(var(--spacing) * 28);
    }
  }

  @media (min-width: 64rem) {
    .lg\:pt-3 {
      padding-top: calc(var(--spacing) * 3);
    }
  }

  @media (min-width: 64rem) {
    .lg\:text-2xl {
      font-size: var(--text-2xl);
      line-height: var(--tw-leading, var(--text-2xl--line-height));
    }
  }

  @media (min-width: 64rem) {
    .lg\:text-3xl {
      font-size: var(--text-3xl);
      line-height: var(--tw-leading, var(--text-3xl--line-height));
    }
  }

  @media (min-width: 64rem) {
    .lg\:text-6xl {
      font-size: var(--text-6xl);
      line-height: var(--tw-leading, var(--text-6xl--line-height));
    }
  }

  @media (min-width: 80rem) {
    .xl\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }

  @media (min-width: 80rem) {
    .xl\:grid-cols-5 {
      grid-template-columns: repeat(5, minmax(0, 1fr));
    }
  }

  @media (min-width: 80rem) {
    .xl\:grid-cols-6 {
      grid-template-columns: repeat(6, minmax(0, 1fr));
    }
  }

  @media (min-width: 96rem) {
    .\32 xl\:mr-80 {
      margin-right: calc(var(--spacing) * 80);
    }
  }

  @media (prefers-color-scheme: dark) {
    :where(.dark\:divide-gray-700 > :not(:last-child)) {
      border-color: var(--color-gray-700);
    }
  }

  @media (prefers-color-scheme: dark) {
    :where(.dark\:divide-gray-800 > :not(:last-child)) {
      border-color: var(--color-gray-800);
    }
  }

  @media (prefers-color-scheme: dark) {
    :where(.dark\:divide-yellow-800 > :not(:last-child)) {
      border-color: var(--color-yellow-800);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:\!border-green-500 {
      border-color: #448843 !important;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:\!border-red-500 {
      border-color: #fb471f !important;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-amber-500 {
      border-color: #f59e0b;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-amber-600 {
      border-color: #d97706;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-amber-700 {
      border-color: var(--color-amber-700);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-amber-800 {
      border-color: var(--color-amber-800);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-amber-800\/50 {
      border-color: #953d0080;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .dark\:border-amber-800\/50 {
        border-color: color-mix(in oklab, var(--color-amber-800) 50%, transparent);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-blue-400 {
      border-color: var(--color-blue-400);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-blue-500 {
      border-color: var(--color-blue-500);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-blue-600 {
      border-color: var(--color-blue-600);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-blue-700 {
      border-color: var(--color-blue-700);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-blue-800 {
      border-color: var(--color-blue-800);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-blue-900 {
      border-color: var(--color-blue-900);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-cyan-800 {
      border-color: var(--color-cyan-800);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-emerald-700 {
      border-color: var(--color-emerald-700);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-emerald-800 {
      border-color: var(--color-emerald-800);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-gray-200 {
      border-color: var(--color-gray-200);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-gray-400 {
      border-color: var(--color-gray-400);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-gray-500 {
      border-color: var(--color-gray-500);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-gray-600 {
      border-color: var(--color-gray-600);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-gray-600\/50 {
      border-color: #4a556580;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .dark\:border-gray-600\/50 {
        border-color: color-mix(in oklab, var(--color-gray-600) 50%, transparent);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-gray-700 {
      border-color: var(--color-gray-700);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-gray-700\/50 {
      border-color: #36415380;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .dark\:border-gray-700\/50 {
        border-color: color-mix(in oklab, var(--color-gray-700) 50%, transparent);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-gray-800 {
      border-color: var(--color-gray-800);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-gray-900 {
      border-color: var(--color-gray-900);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-green-400 {
      border-color: #5ca95b;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-green-500 {
      border-color: #448843;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-green-600 {
      border-color: #366d36;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-green-700 {
      border-color: var(--color-green-700);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-green-800 {
      border-color: var(--color-green-800);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-green-800\/50 {
      border-color: #01663080;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .dark\:border-green-800\/50 {
        border-color: color-mix(in oklab, var(--color-green-800) 50%, transparent);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-indigo-800 {
      border-color: var(--color-indigo-800);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-orange-600 {
      border-color: #d56a1f;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-orange-700 {
      border-color: #b45a1a;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-orange-800 {
      border-color: #8f4815;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-purple-400 {
      border-color: var(--color-purple-400);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-purple-600 {
      border-color: var(--color-purple-600);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-purple-700 {
      border-color: var(--color-purple-700);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-purple-800 {
      border-color: var(--color-purple-800);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-red-400 {
      border-color: #fc7a5c;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-red-500 {
      border-color: #fb471f;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-red-600 {
      border-color: #e03d18;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-red-700 {
      border-color: #b33113;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-red-800 {
      border-color: var(--color-red-800);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-red-800\/50 {
      border-color: #9f071280;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:border-red-900 {
      border-color: #66200b;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-white {
      border-color: var(--color-white);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-white\/15 {
      border-color: #ffffff26;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:border-white\/30 {
      border-color: #ffffff4d;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:border-yellow-400 {
      border-color: #facc15;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-yellow-500 {
      border-color: #eab308;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-yellow-600 {
      border-color: #ca8a04;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-yellow-700 {
      border-color: var(--color-yellow-700);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-yellow-800 {
      border-color: var(--color-yellow-800);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-t-gray-200 {
      border-top-color: var(--color-gray-200);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-t-gray-500 {
      border-top-color: var(--color-gray-500);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-l-gray-500 {
      border-left-color: var(--color-gray-500);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-amber-400 {
      background-color: #fbbf24;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-amber-800 {
      background-color: var(--color-amber-800);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-amber-800\/30 {
      background-color: #953d004d;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-amber-800\/50 {
      background-color: #953d0080;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-amber-900 {
      background-color: var(--color-amber-900);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-amber-900\/10 {
      background-color: #7b33061a;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-amber-900\/15 {
      background-color: #7b330626;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-amber-900\/20 {
      background-color: #7b330633;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-amber-900\/30 {
      background-color: #7b33064d;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-amber-900\/40 {
      background-color: #7b330666;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-amber-950\/30 {
      background-color: #4619014d;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-black\/20 {
      background-color: #0003;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-blue-400 {
      background-color: var(--color-blue-400);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-blue-500 {
      background-color: var(--color-blue-500);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-blue-700 {
      background-color: var(--color-blue-700);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-blue-800 {
      background-color: var(--color-blue-800);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-blue-800\/50 {
      background-color: #193cb880;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-blue-900 {
      background-color: var(--color-blue-900);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-blue-900\/10 {
      background-color: #1c398e1a;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-blue-900\/15 {
      background-color: #1c398e26;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-blue-900\/20 {
      background-color: #1c398e33;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-blue-900\/30 {
      background-color: #1c398e4d;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-blue-900\/40 {
      background-color: #1c398e66;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-blue-900\/50 {
      background-color: #1c398e80;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-blue-950\/30 {
      background-color: #1624564d;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-cyan-900 {
      background-color: var(--color-cyan-900);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-cyan-900\/20 {
      background-color: #104e6433;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-cyan-900\/30 {
      background-color: #104e644d;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-emerald-900\/20 {
      background-color: #004e3b33;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-emerald-900\/30 {
      background-color: #004e3b4d;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-emerald-900\/50 {
      background-color: #004e3b80;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-gray-100 {
      background-color: var(--color-gray-100);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-gray-200 {
      background-color: var(--color-gray-200);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-gray-400 {
      background-color: var(--color-gray-400);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-gray-500 {
      background-color: var(--color-gray-500);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-gray-600 {
      background-color: var(--color-gray-600);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-gray-700 {
      background-color: var(--color-gray-700);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-gray-700\/30 {
      background-color: #3641534d;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-gray-700\/50 {
      background-color: #36415380;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-gray-800 {
      background-color: var(--color-gray-800);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-gray-800\/30 {
      background-color: #1e29394d;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-gray-800\/40 {
      background-color: #1e293966;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-gray-800\/50 {
      background-color: #1e293980;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-gray-800\/60 {
      background-color: #1e293999;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-gray-800\/80 {
      background-color: #1e2939cc;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-gray-800\/90 {
      background-color: #1e2939e6;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-gray-900 {
      background-color: var(--color-gray-900);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-gray-900\/20 {
      background-color: #10182833;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-gray-900\/30 {
      background-color: #1018284d;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-gray-900\/40 {
      background-color: #10182866;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-gray-900\/50 {
      background-color: #10182880;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-gray-900\/75 {
      background-color: #101828bf;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-gray-900\/95 {
      background-color: #101828f2;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-gray-950 {
      background-color: var(--color-gray-950);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-green-600 {
      background-color: #366d36;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-green-800 {
      background-color: var(--color-green-800);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-green-800\/30 {
      background-color: #0166304d;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-green-900 {
      background-color: var(--color-green-900);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-green-900\/10 {
      background-color: #0d542b1a;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-green-900\/20 {
      background-color: #0d542b33;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-green-900\/30 {
      background-color: #0d542b4d;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-green-900\/40 {
      background-color: #0d542b66;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-green-900\/50 {
      background-color: #0d542b80;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-indigo-800\/30 {
      background-color: #372aac4d;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-indigo-900 {
      background-color: var(--color-indigo-900);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-indigo-900\/10 {
      background-color: #312c851a;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-indigo-900\/15 {
      background-color: #312c8526;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-indigo-900\/20 {
      background-color: #312c8533;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-indigo-900\/30 {
      background-color: #312c854d;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-mancave-accent\/20 {
      background-color: #4f2d1d33;
      background-color: lab(22.6374% 14.7433 17.2476 / .2);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-orange-800 {
      background-color: #8f4815;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-orange-800\/30 {
      background-color: #8f48154d;
      background-color: lab(39.2458% 28.2474 42.1184 / .3);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-orange-900 {
      background-color: #6b3510;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-orange-900\/10 {
      background-color: #6b35101a;
      background-color: lab(29.0433% 22.6079 32.9742 / .1);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-orange-900\/20 {
      background-color: #6b351033;
      background-color: lab(29.0433% 22.6079 32.9742 / .2);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-orange-900\/30 {
      background-color: #6b35104d;
      background-color: lab(29.0433% 22.6079 32.9742 / .3);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-orange-900\/40 {
      background-color: #6b351066;
      background-color: lab(29.0433% 22.6079 32.9742 / .4);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-orange-900\/50 {
      background-color: #6b351080;
      background-color: lab(29.0433% 22.6079 32.9742 / .5);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-pink-900 {
      background-color: var(--color-pink-900);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-purple-400 {
      background-color: var(--color-purple-400);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-purple-600 {
      background-color: var(--color-purple-600);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-purple-700 {
      background-color: var(--color-purple-700);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-purple-800 {
      background-color: var(--color-purple-800);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-purple-800\/50 {
      background-color: #6e11b080;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-purple-900 {
      background-color: var(--color-purple-900);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-purple-900\/10 {
      background-color: #59168b1a;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-purple-900\/15 {
      background-color: #59168b26;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-purple-900\/20 {
      background-color: #59168b33;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-purple-900\/30 {
      background-color: #59168b4d;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-purple-900\/40 {
      background-color: #59168b66;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-purple-900\/50 {
      background-color: #59168b80;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-red-500 {
      background-color: #fb471f;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-red-600 {
      background-color: #e03d18;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-red-800 {
      background-color: var(--color-red-800);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-red-900 {
      background-color: #66200b;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-red-900\/10 {
      background-color: #66200b1a;
      background-color: lab(23.711% 31.2507 30.2316 / .1);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-red-900\/20 {
      background-color: #66200b33;
      background-color: lab(23.711% 31.2507 30.2316 / .2);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-red-900\/30 {
      background-color: #66200b4d;
      background-color: lab(23.711% 31.2507 30.2316 / .3);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-red-900\/40 {
      background-color: #66200b66;
      background-color: lab(23.711% 31.2507 30.2316 / .4);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-red-900\/50 {
      background-color: #66200b80;
      background-color: lab(23.711% 31.2507 30.2316 / .5);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-red-950\/30 {
      background-color: #4608094d;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-rose-900\/20 {
      background-color: #8b083633;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-teal-900 {
      background-color: var(--color-teal-900);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-teal-900\/15 {
      background-color: #0b4f4a26;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-teal-900\/30 {
      background-color: #0b4f4a4d;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-violet-900\/30 {
      background-color: #4d179a4d;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-white {
      background-color: var(--color-white);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-white\/10 {
      background-color: #ffffff1a;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-yellow-600 {
      background-color: #ca8a04;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-yellow-700\/50 {
      background-color: #a3610080;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-yellow-800 {
      background-color: var(--color-yellow-800);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-yellow-900 {
      background-color: var(--color-yellow-900);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-yellow-900\/10 {
      background-color: #733e0a1a;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-yellow-900\/15 {
      background-color: #733e0a26;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-yellow-900\/20 {
      background-color: #733e0a33;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-yellow-900\/30 {
      background-color: #733e0a4d;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-yellow-900\/40 {
      background-color: #733e0a66;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:bg-yellow-900\/50 {
      background-color: #733e0a80;
    }

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

  @media (prefers-color-scheme: dark) {
    .dark\:from-amber-900\/30 {
      --tw-gradient-from: #7b33064d;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .dark\:from-amber-900\/30 {
        --tw-gradient-from: color-mix(in oklab, var(--color-amber-900) 30%, transparent);
      }
    }

    .dark\:from-amber-900\/30 {
      --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));
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:from-gray-900 {
      --tw-gradient-from: var(--color-gray-900);
      --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:from-purple-900\/20 {
      --tw-gradient-from: #59168b33;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .dark\:from-purple-900\/20 {
        --tw-gradient-from: color-mix(in oklab, var(--color-purple-900) 20%, transparent);
      }
    }

    .dark\:from-purple-900\/20 {
      --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));
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:via-gray-800 {
      --tw-gradient-via: var(--color-gray-800);
      --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
      --tw-gradient-stops: var(--tw-gradient-via-stops);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:to-black {
      --tw-gradient-to: var(--color-black);
      --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));
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:to-gray-900 {
      --tw-gradient-to: var(--color-gray-900);
      --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:to-indigo-900\/20 {
      --tw-gradient-to: #312c8533;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .dark\:to-indigo-900\/20 {
        --tw-gradient-to: color-mix(in oklab, var(--color-indigo-900) 20%, transparent);
      }
    }

    .dark\:to-indigo-900\/20 {
      --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));
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:to-yellow-900\/20 {
      --tw-gradient-to: #733e0a33;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .dark\:to-yellow-900\/20 {
        --tw-gradient-to: color-mix(in oklab, var(--color-yellow-900) 20%, transparent);
      }
    }

    .dark\:to-yellow-900\/20 {
      --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));
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-amber-100 {
      color: var(--color-amber-100);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-amber-200 {
      color: var(--color-amber-200);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-amber-300 {
      color: var(--color-amber-300);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-amber-300\/70 {
      color: #ffd236b3;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .dark\:text-amber-300\/70 {
        color: color-mix(in oklab, var(--color-amber-300) 70%, transparent);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-amber-400 {
      color: #fbbf24;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-amber-500 {
      color: #f59e0b;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-black {
      color: var(--color-black);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-blue-100 {
      color: var(--color-blue-100);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-blue-200 {
      color: var(--color-blue-200);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-blue-300 {
      color: var(--color-blue-300);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-blue-400 {
      color: var(--color-blue-400);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-blue-500 {
      color: var(--color-blue-500);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-cyan-200 {
      color: var(--color-cyan-200);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-cyan-300 {
      color: var(--color-cyan-300);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-cyan-400 {
      color: var(--color-cyan-400);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-emerald-200 {
      color: var(--color-emerald-200);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-emerald-300 {
      color: var(--color-emerald-300);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-emerald-400 {
      color: var(--color-emerald-400);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-emerald-500 {
      color: var(--color-emerald-500);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-gray-100 {
      color: var(--color-gray-100);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-gray-200 {
      color: var(--color-gray-200);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-gray-300 {
      color: var(--color-gray-300);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-gray-400 {
      color: var(--color-gray-400);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-gray-500 {
      color: var(--color-gray-500);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-gray-600 {
      color: var(--color-gray-600);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-gray-700 {
      color: var(--color-gray-700);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-gray-900 {
      color: var(--color-gray-900);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-green-100 {
      color: var(--color-green-100);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-green-200 {
      color: var(--color-green-200);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-green-300 {
      color: var(--color-green-300);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-green-400 {
      color: #5ca95b;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-green-500 {
      color: #448843;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-ida-secondary {
      color: #beccd9;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-indigo-200 {
      color: var(--color-indigo-200);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-indigo-300 {
      color: var(--color-indigo-300);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-indigo-400 {
      color: var(--color-indigo-400);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-lime-400 {
      color: var(--color-lime-400);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-orange-100 {
      color: #ffedd5;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-orange-200 {
      color: #fed7aa;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-orange-300 {
      color: #fdba74;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-orange-400 {
      color: #fb923c;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-orange-500 {
      color: #e87928;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-pink-200 {
      color: var(--color-pink-200);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-purple-100 {
      color: var(--color-purple-100);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-purple-200 {
      color: var(--color-purple-200);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-purple-300 {
      color: var(--color-purple-300);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-purple-400 {
      color: var(--color-purple-400);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-red-100 {
      color: #fee5df;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-red-200 {
      color: #feccbf;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-red-300 {
      color: var(--color-red-300);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-red-400 {
      color: #fc7a5c;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-red-400\/80 {
      color: #fc7a5ccc;
      color: lab(66.7175% 49.0615 40.7962 / .8);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-red-500 {
      color: #fb471f;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-red-600 {
      color: #e03d18;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-rose-400 {
      color: var(--color-rose-400);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-slate-400 {
      color: var(--color-slate-400);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-stone-400 {
      color: var(--color-stone-400);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-teal-200 {
      color: var(--color-teal-200);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-teal-300 {
      color: var(--color-teal-300);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-teal-400 {
      color: var(--color-teal-400);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-violet-400 {
      color: var(--color-violet-400);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-white {
      color: var(--color-white);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-yellow-100 {
      color: var(--color-yellow-100);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-yellow-200 {
      color: var(--color-yellow-200);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-yellow-300 {
      color: var(--color-yellow-300);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-yellow-400 {
      color: #facc15;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-yellow-500 {
      color: #eab308;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:placeholder-gray-400::placeholder {
      color: var(--color-gray-400);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:placeholder-gray-500::placeholder {
      color: var(--color-gray-500);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:accent-white {
      accent-color: var(--color-white);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:ring-green-400 {
      --tw-ring-color: #5ca95b;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:ring-offset-gray-800 {
      --tw-ring-offset-color: var(--color-gray-800);
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:group-hover\:text-gray-100:is(:where(.group):hover *) {
        color: var(--color-gray-100);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:group-hover\:text-gray-300:is(:where(.group):hover *) {
        color: var(--color-gray-300);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:group-hover\:text-white:is(:where(.group):hover *) {
        color: var(--color-white);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:placeholder\:text-gray-500::placeholder {
      color: var(--color-gray-500);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:focus-within\:border-white:focus-within {
      border-color: var(--color-white);
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:border-blue-400:hover {
        border-color: var(--color-blue-400);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:border-blue-500:hover {
        border-color: var(--color-blue-500);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:border-gray-400:hover {
        border-color: var(--color-gray-400);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:border-gray-500:hover {
        border-color: var(--color-gray-500);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:border-gray-600:hover {
        border-color: var(--color-gray-600);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:border-green-600:hover {
        border-color: #366d36;
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:border-purple-400:hover {
        border-color: var(--color-purple-400);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:border-purple-600:hover {
        border-color: var(--color-purple-600);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:border-white:hover {
        border-color: var(--color-white);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-amber-800:hover {
        background-color: var(--color-amber-800);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-amber-800\/50:hover {
        background-color: #953d0080;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-amber-900\/20:hover {
        background-color: #7b330633;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-amber-900\/30:hover {
        background-color: #7b33064d;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-amber-900\/40:hover {
        background-color: #7b330666;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-amber-900\/50:hover {
        background-color: #7b330680;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-blue-800:hover {
        background-color: var(--color-blue-800);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-blue-800\/50:hover {
        background-color: #193cb880;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-blue-900\/20:hover {
        background-color: #1c398e33;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-blue-900\/30:hover {
        background-color: #1c398e4d;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-blue-900\/40:hover {
        background-color: #1c398e66;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-gray-100:hover {
        background-color: var(--color-gray-100);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-gray-500:hover {
        background-color: var(--color-gray-500);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-gray-600:hover {
        background-color: var(--color-gray-600);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-gray-700:hover {
        background-color: var(--color-gray-700);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-gray-700\/30:hover {
        background-color: #3641534d;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-gray-700\/50:hover {
        background-color: #36415380;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-gray-800:hover {
        background-color: var(--color-gray-800);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-gray-800\/50:hover {
        background-color: #1e293980;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-gray-800\/60:hover {
        background-color: #1e293999;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-gray-900\/50:hover {
        background-color: #10182880;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-gray-900\/70:hover {
        background-color: #101828b3;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-green-800:hover {
        background-color: var(--color-green-800);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-green-900\/20:hover {
        background-color: #0d542b33;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-green-900\/30:hover {
        background-color: #0d542b4d;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-green-900\/40:hover {
        background-color: #0d542b66;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-green-900\/50:hover {
        background-color: #0d542b80;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-green-900\/60:hover {
        background-color: #0d542b99;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-indigo-800\/50:hover {
        background-color: #372aac80;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-indigo-900\/20:hover {
        background-color: #312c8533;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-orange-900\/20:hover {
        background-color: #6b351033;
        background-color: lab(29.0433% 22.6079 32.9742 / .2);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-orange-900\/30:hover {
        background-color: #6b35104d;
        background-color: lab(29.0433% 22.6079 32.9742 / .3);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-orange-900\/50:hover {
        background-color: #6b351080;
        background-color: lab(29.0433% 22.6079 32.9742 / .5);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-purple-700:hover {
        background-color: var(--color-purple-700);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-purple-800:hover {
        background-color: var(--color-purple-800);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-purple-800\/20:hover {
        background-color: #6e11b033;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-purple-800\/50:hover {
        background-color: #6e11b080;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-purple-900\/20:hover {
        background-color: #59168b33;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-purple-900\/30:hover {
        background-color: #59168b4d;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-purple-900\/40:hover {
        background-color: #59168b66;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-purple-900\/50:hover {
        background-color: #59168b80;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-red-800:hover {
        background-color: var(--color-red-800);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-red-900\/20:hover {
        background-color: #66200b33;
        background-color: lab(23.711% 31.2507 30.2316 / .2);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-red-900\/30:hover {
        background-color: #66200b4d;
        background-color: lab(23.711% 31.2507 30.2316 / .3);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-red-900\/40:hover {
        background-color: #66200b66;
        background-color: lab(23.711% 31.2507 30.2316 / .4);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-red-900\/50:hover {
        background-color: #66200b80;
        background-color: lab(23.711% 31.2507 30.2316 / .5);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-red-900\/60:hover {
        background-color: #66200b99;
        background-color: lab(23.711% 31.2507 30.2316 / .6);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-rose-900\/40:hover {
        background-color: #8b083666;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-teal-800\/50:hover {
        background-color: #005f5a80;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-white:hover {
        background-color: var(--color-white);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-white\/5:hover {
        background-color: #ffffff0d;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-yellow-900\/20:hover {
        background-color: #733e0a33;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-yellow-900\/30:hover {
        background-color: #733e0a4d;
      }

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

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:text-\[var\(--color-mancave-accent\)\]:hover {
        color: var(--color-mancave-accent);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:text-amber-200:hover {
        color: var(--color-amber-200);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:text-amber-400:hover {
        color: #fbbf24;
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:text-black:hover {
        color: var(--color-black);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:text-blue-200:hover {
        color: var(--color-blue-200);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:text-blue-300:hover {
        color: var(--color-blue-300);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:text-blue-400:hover {
        color: var(--color-blue-400);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:text-emerald-200:hover {
        color: var(--color-emerald-200);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:text-gray-200:hover {
        color: var(--color-gray-200);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:text-gray-300:hover {
        color: var(--color-gray-300);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:text-gray-400:hover {
        color: var(--color-gray-400);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:text-green-200:hover {
        color: var(--color-green-200);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:text-green-300:hover {
        color: var(--color-green-300);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:text-green-400:hover {
        color: #5ca95b;
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:text-purple-100:hover {
        color: var(--color-purple-100);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:text-purple-300:hover {
        color: var(--color-purple-300);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:text-purple-400:hover {
        color: var(--color-purple-400);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:text-red-100:hover {
        color: #fee5df;
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:text-red-300:hover {
        color: var(--color-red-300);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:text-red-400:hover {
        color: #fc7a5c;
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:text-white:hover {
        color: var(--color-white);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:text-yellow-100:hover {
        color: var(--color-yellow-100);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:focus\:\!border-green-500:focus {
      border-color: #448843 !important;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:focus\:\!border-red-500:focus {
      border-color: #fb471f !important;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:focus\:border-blue-400:focus {
      border-color: var(--color-blue-400);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:focus\:border-gray-500:focus {
      border-color: var(--color-gray-500);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:focus\:border-red-500:focus {
      border-color: #fb471f;
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:focus\:border-white:focus {
      border-color: var(--color-white);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:focus\:ring-blue-400:focus {
      --tw-ring-color: var(--color-blue-400);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:focus\:ring-blue-600:focus {
      --tw-ring-color: var(--color-blue-600);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:focus\:ring-white\/30:focus {
      --tw-ring-color: #ffffff4d;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .dark\:focus\:ring-white\/30:focus {
        --tw-ring-color: color-mix(in oklab, var(--color-white) 30%, transparent);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:disabled\:bg-gray-600:disabled {
      background-color: var(--color-gray-600);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:disabled\:bg-gray-700:disabled {
      background-color: var(--color-gray-700);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:disabled\:bg-gray-900:disabled {
      background-color: var(--color-gray-900);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:disabled\:text-gray-400:disabled {
      color: var(--color-gray-400);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:disabled\:text-gray-600:disabled {
      color: var(--color-gray-600);
    }
  }

  @media print {
    .print\:block {
      display: block;
    }
  }

  @media print {
    .print\:hidden {
      display: none;
    }
  }

  .\[\&_li\]\:my-0\.5 li {
    margin-block: calc(var(--spacing) * .5);
  }

  .\[\&_ol\]\:my-1 ol {
    margin-block: calc(var(--spacing) * 1);
  }

  .\[\&_p\]\:my-1 p {
    margin-block: calc(var(--spacing) * 1);
  }

  .\[\&_ul\]\:my-1 ul {
    margin-block: calc(var(--spacing) * 1);
  }
}

:root {
  --background: #fff;
  --foreground: #171717;
}

.btn-ida-nav {
  background-color: var(--color-ida-primary);
  color: var(--color-ida-button-text);
  border-radius: 2px;
  transition: background-color .2s;
}

.btn-ida-nav:hover:not(:disabled) {
  background-color: var(--color-ida-primary-hover);
}

.btn-ida-nav-light {
  color: #072238;
  background-color: #edf6ff;
  border-radius: 2px;
  transition: background-color .2s;
}

.btn-ida-nav-light:hover:not(:disabled) {
  background-color: #beccd9;
}

.btn-mancave {
  background-color: var(--color-mancave-button-bg);
  color: var(--color-mancave-text-on-blue);
  border: 2px solid var(--color-mancave-button-border);
  border-radius: 2px;
  transition: background-color .2s, color .2s;
}

.btn-mancave:hover:not(:disabled) {
  background-color: var(--color-mancave-button-hover-bg);
  color: var(--color-mancave-text-on-brown);
  border-color: var(--color-mancave-button-hover-border);
}

.btn-mancave-outline {
  color: var(--color-mancave-button-bg);
  border: 2px solid var(--color-mancave-button-border);
  background-color: #0000;
  border-radius: 2px;
  transition: background-color .2s, color .2s;
}

.btn-mancave-outline:hover:not(:disabled) {
  background-color: var(--color-mancave-button-hover-bg);
  border-color: var(--color-mancave-button-hover-border);
  color: var(--color-mancave-text-on-brown);
}

.btn-mancave-on-gradient {
  background-color: var(--color-mancave-text-on-gradient);
  color: var(--color-mancave-heading);
  border: 2px solid var(--color-mancave-text-on-gradient);
  border-radius: 2px;
  transition: background-color .2s, color .2s;
}

.btn-mancave-on-gradient:hover:not(:disabled) {
  color: var(--color-mancave-text-on-gradient);
  background-color: #0000;
}

.text-mancave-heading {
  color: var(--color-mancave-heading);
}

.text-on-blue {
  color: var(--color-mancave-text-on-blue);
}

.text-on-brown {
  color: var(--color-mancave-text-on-brown);
}

.text-on-gradient {
  color: var(--color-mancave-text-on-gradient);
}

.bg-mancave-button-bg {
  background-color: #02426d !important;
}

.bg-mancave-heading {
  background-color: #101820 !important;
}

.bg-mancave-heading-70 {
  background-color: #101820b3 !important;
}

.hover-bg-mancave-accent:hover {
  background-color: #4f2d1d !important;
}

.hover-bg-mancave-heading:hover {
  background-color: #101820 !important;
}

.bg-mancave-accent-70 {
  background-color: #4f2d1db3 !important;
}

.bg-mancave-gradient {
  background: linear-gradient(155deg, var(--color-mancave-accent) 7%, var(--color-mancave-heading) 40%, var(--color-mancave-heading) 60%, var(--color-mancave-button-bg) 100%);
}

.headline-primary {
  font-family: var(--typography-primary-font-family);
  font-size: var(--typography-primary-font-size);
  font-weight: var(--typography-primary-font-weight);
  text-transform: var(--typography-primary-text-transform);
  letter-spacing: var(--typography-primary-letter-spacing);
}

.headline-secondary {
  font-family: var(--typography-secondary-font-family);
  font-size: var(--typography-secondary-font-size);
  font-weight: var(--typography-secondary-font-weight);
  letter-spacing: var(--typography-secondary-letter-spacing);
}

.text-mancave-body {
  font-family: var(--typography-text-font-family);
  font-size: var(--typography-text-font-size);
  font-weight: var(--typography-text-font-weight);
}

.text-mancave-accent-style {
  font-family: var(--typography-accent-font-family);
  font-size: var(--typography-accent-font-size);
  font-weight: var(--typography-accent-font-weight);
}

.product-description {
  color: var(--color-mancave-text);
  line-height: 1.7;
}

.product-description h2 {
  color: var(--color-mancave-heading);
  margin-top: 2rem;
  margin-bottom: 1rem;
  font-size: 1.5rem;
  font-weight: 700;
}

.product-description h3 {
  color: var(--color-mancave-heading);
  margin-top: 1.5rem;
  margin-bottom: .75rem;
  font-size: 1.25rem;
  font-weight: 600;
}

.product-description h4 {
  color: var(--color-mancave-heading);
  margin-top: 1.25rem;
  margin-bottom: .5rem;
  font-size: 1.1rem;
  font-weight: 600;
}

.product-description p {
  margin-bottom: 1rem;
}

.product-description ul, .product-description ol {
  margin-top: .5rem;
  margin-bottom: 1rem;
  padding-left: 1.5rem;
}

.product-description ul {
  list-style-type: disc;
}

.product-description ol {
  list-style-type: decimal;
}

.product-description li {
  margin-bottom: .25rem;
  padding-left: .25rem;
}

.product-description strong, .product-description b {
  font-weight: 700;
}

.product-description em, .product-description i {
  font-style: italic;
}

.product-description hr {
  border: none;
  border-top: 1px solid #e5e7eb;
  margin: 1.5rem 0;
}

.product-description blockquote {
  border-left: 4px solid var(--color-mancave-accent);
  color: #4b5563;
  margin: 1rem 0;
  padding-left: 1rem;
  font-style: italic;
}

@media (prefers-color-scheme: dark) {
  .product-description {
    color: #d1d5db;
  }

  .product-description h2, .product-description h3, .product-description h4 {
    color: #fff;
  }

  .product-description hr {
    border-top-color: #374151;
  }

  .product-description blockquote {
    color: #9ca3af;
  }
}

.dark .product-description {
  color: #d1d5db;
}

.dark .product-description h2, .dark .product-description h3, .dark .product-description h4 {
  color: #fff;
}

.dark .product-description hr {
  border-top-color: #374151;
}

.dark .product-description blockquote {
  color: #9ca3af;
}

.text-ida-accent {
  color: var(--color-ida-accent);
}

.text-ida-question {
  color: var(--color-ida-button-text);
  font-weight: 500;
}

.ida-scale-line {
  background-color: var(--color-ida-scale-line);
}

.ida-scale-circle {
  background-color: var(--color-ida-scale-circle-bg);
  border: 1px solid var(--color-ida-scale-circle-border);
  color: var(--color-ida-scale-circle-text);
  font-size: .875rem;
  font-weight: 400;
  transition: transform .2s, background-color .2s;
}

.ida-scale-circle:hover:not(:disabled):not(.selected) {
  transform: scale(1.1);
}

.ida-scale-circle.selected {
  background-color: var(--color-ida-scale-circle-bg-selected);
  color: var(--color-ida-scale-circle-text-selected);
  border-width: 1px;
  width: 58px;
  height: 58px;
  font-size: 1.125rem;
  font-weight: 700;
}

.has-selection .ida-scale-circle:not(.selected) {
  width: 28px;
  height: 28px;
  font-size: .625rem;
}

.ida-scale-circle-light {
  color: #374151;
  background-color: #e5e7eb;
  border: 1px solid #9ca3af;
  font-size: .875rem;
  font-weight: 400;
  transition: transform .2s, background-color .2s, width .2s, height .2s;
}

.ida-scale-circle-light:hover:not(:disabled):not(.selected) {
  transform: scale(1.1);
}

.ida-scale-circle-light.selected {
  color: var(--color-mancave-text-on-blue);
  background-color: #02426d;
  border: 1px solid #02426d;
  width: 58px;
  height: 58px;
  font-size: 1.125rem;
  font-weight: 700;
}

.has-selection .ida-scale-circle-light:not(.selected) {
  width: 28px;
  height: 28px;
  font-size: .625rem;
}

.ida-radio-card {
  background-color: var(--color-ida-scale-circle-bg);
  border: 1px solid var(--color-ida-scale-circle-border);
  color: var(--color-ida-scale-circle-text);
  transition: background-color .2s, border-color .2s;
}

.ida-radio-card:hover:not(.selected) {
  border-color: var(--color-ida-secondary);
}

.ida-radio-card.selected {
  background-color: var(--color-ida-scale-circle-bg-selected);
  border-color: var(--color-ida-scale-circle-bg-selected);
  color: var(--color-ida-scale-circle-text-selected);
  font-weight: 700;
}

@keyframes typing-dot {
  0%, 80%, 100% {
    opacity: .3;
    transform: translateY(0)scale(1);
  }

  40% {
    opacity: 1;
    transform: translateY(-8px)scale(1.2);
  }
}

.typing-dot {
  animation: 1.2s ease-in-out infinite typing-dot;
}

.typing-dot-1 {
  animation-delay: 0s;
}

.typing-dot-2 {
  animation-delay: .16s;
}

.typing-dot-3 {
  animation-delay: .32s;
}

@keyframes scale-pulse {
  0% {
    transform: scale(1);
    box-shadow: 0 0 #02426d66;
  }

  50% {
    transform: scale(1.05);
    box-shadow: 0 0 0 8px #02426d00;
  }

  100% {
    transform: scale(1);
    box-shadow: 0 0 #02426d00;
  }
}

@keyframes scale-pulse-dark {
  0% {
    transform: scale(1);
    box-shadow: 0 0 #beccd966;
  }

  50% {
    transform: scale(1.05);
    box-shadow: 0 0 0 8px #beccd900;
  }

  100% {
    transform: scale(1);
    box-shadow: 0 0 #beccd900;
  }
}

.scale-pulse-container {
  border-radius: 4px;
  animation: .6s ease-in-out scale-pulse;
}

.scale-pulse-container-dark {
  border-radius: 4px;
  animation: .6s ease-in-out scale-pulse-dark;
}

.color-progress-bar-track {
  background-color: var(--color-ida-scale-circle-border);
  border-radius: 2px;
  width: 100%;
  height: 3px;
  overflow: hidden;
}

.color-progress-bar-fill {
  background-color: var(--color-ida-secondary);
  border-radius: 2px;
  height: 100%;
  transition: width .3s;
}

.color-image-container {
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 600px;
  display: flex;
  position: relative;
}

.color-image {
  object-fit: contain;
  border-radius: 2px;
  max-width: 100%;
  height: auto;
  max-height: 50vh;
  transition: opacity .3s;
}

.color-image-visible {
  opacity: 1;
}

.color-image-hidden {
  opacity: 0;
  position: absolute;
}

.color-image-loading-container {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 400px;
  display: flex;
}

.color-image-shimmer {
  aspect-ratio: 4 / 3;
  background: linear-gradient(90deg, #2a3a4a 25%, #3a4a5a 50%, #2a3a4a 75%) 0 0 / 200% 100%;
  border-radius: 2px;
  width: 100%;
  animation: 1.5s ease-in-out infinite color-shimmer;
}

.color-image-shimmer-dark {
  background: linear-gradient(90deg, #1a2a3a 25%, #2a3a4a 50%, #1a2a3a 75%) 0 0 / 200% 100%;
}

@keyframes color-shimmer {
  0% {
    background-position: -200% 0;
  }

  100% {
    background-position: 200% 0;
  }
}

.color-generating-notice {
  justify-content: center;
  align-items: center;
  gap: 8px;
  margin-top: 16px;
  animation: .4s ease-out color-generating-fadein;
  display: flex;
}

.color-generating-notice p {
  max-width: 280px;
  font-size: .9375rem;
  line-height: 1.4;
}

.color-generating-dot {
  background-color: var(--color-ida-primary-hover);
  border-radius: 50%;
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  animation: 1.2s ease-in-out infinite color-generating-pulse;
}

@keyframes color-generating-fadein {
  from {
    opacity: 0;
    transform: translateY(4px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes color-generating-pulse {
  0%, 100% {
    opacity: .4;
  }

  50% {
    opacity: 1;
  }
}

.color-trio-grid {
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  width: 100%;
  max-width: 900px;
  display: grid;
}

.color-trio-item {
  flex-direction: column;
  align-items: center;
  display: flex;
}

.color-trio-image-container {
  max-width: none;
}

.color-trio-image-container .color-image {
  max-height: 35vh;
}

@media (max-width: 640px) {
  .color-trio-grid {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .color-trio-image-container .color-image {
    max-height: 25vh;
  }
}

.color-dosage-label {
  text-align: center;
  margin-top: 4px;
  font-size: .75rem;
  font-weight: 500;
}

.color-overlay {
  z-index: 10;
  flex-direction: column;
  gap: 4px;
  display: flex;
  position: absolute;
  bottom: 8px;
  right: 8px;
}

.color-overlay-action {
  justify-content: flex-end;
  align-items: center;
  display: flex;
  position: relative;
}

.color-overlay-icon {
  color: #beccd9;
  cursor: pointer;
  opacity: .3;
  background: #07223899;
  border: none;
  border-radius: 2px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  padding: 0;
  transition: opacity .2s, background-color .15s, color .15s;
  display: flex;
}

.color-overlay-icon svg {
  width: 16px;
  height: 16px;
}

.color-image-container:hover .color-overlay-icon, .color-overlay:hover .color-overlay-icon, .color-overlay-icon.is-active {
  opacity: 1;
}

.color-overlay-icon.is-good {
  color: #bbf7d0;
  background: #166534d9;
}

.color-overlay-icon.is-bad {
  color: #fecaca;
  background: #991b1bd9;
}

.color-overlay-icon:hover:not(.is-active) {
  color: #fff;
  background: #072238d9;
}

.color-overlay-label {
  white-space: nowrap;
  color: #beccd9;
  pointer-events: none;
  opacity: 0;
  background: #072238d9;
  border-radius: 2px;
  padding: 4px 8px;
  font-size: .7rem;
  font-weight: 500;
  line-height: 1;
  transition: opacity .2s, transform .2s;
  position: absolute;
  right: 36px;
  transform: translateX(8px);
}

.color-image-container:hover .color-overlay-action:first-child .color-overlay-label, .color-overlay:hover .color-overlay-action:first-child .color-overlay-label {
  opacity: 1;
  transition-delay: 0s;
  transform: translateX(0);
}

.color-image-container:hover .color-overlay-action:nth-child(2) .color-overlay-label, .color-overlay:hover .color-overlay-action:nth-child(2) .color-overlay-label {
  opacity: 1;
  transition-delay: 60ms;
  transform: translateX(0);
}

.color-image-container:hover .color-overlay-action:nth-child(3) .color-overlay-label, .color-overlay:hover .color-overlay-action:nth-child(3) .color-overlay-label {
  opacity: 1;
  transition-delay: .12s;
  transform: translateX(0);
}

.color-overlay-report-card {
  color: #beccd9;
  background: #072238f2;
  border-radius: 2px;
  width: 220px;
  padding: 12px;
  font-size: .75rem;
  line-height: 1.4;
  animation: .2s ease-out color-generating-fadein;
  position: absolute;
  bottom: 0;
  right: 36px;
}

.color-overlay-report-card p {
  margin: 0 0 8px;
}

.color-overlay-report-btn {
  cursor: pointer;
  border: none;
  border-radius: 2px;
  padding: 4px 10px;
  font-size: .7rem;
  font-weight: 500;
  transition: background-color .15s;
  display: inline-block;
}

.color-overlay-report-btn.confirm {
  color: #fecaca;
  background: #7f1d1d;
  margin-right: 6px;
}

.color-overlay-report-btn.confirm:hover:not(:disabled) {
  background: #991b1b;
}

.color-overlay-report-btn.confirm:disabled {
  opacity: .5;
  cursor: not-allowed;
}

.color-overlay-report-btn.cancel {
  color: #beccd9;
  background: #beccd926;
}

.color-overlay-report-btn.cancel:hover {
  background: #beccd940;
}

.color-overlay-report-error {
  color: #fca5a5;
  margin-top: 6px;
  font-size: .7rem;
}

.color-overlay-report-success {
  color: #86efac;
  font-size: .7rem;
}

.color-overlay-light .color-overlay-icon {
  color: var(--color-ida-primary);
  background: #ffffffbf;
}

.color-overlay-light .color-overlay-icon:hover:not(.is-active) {
  background: #fffffff2;
}

.color-overlay-light .color-overlay-label {
  color: var(--color-ida-primary);
  background: #ffffffe6;
}

@media (hover: none) {
  .color-overlay-icon {
    opacity: .5;
  }

  .color-overlay-label {
    display: none;
  }
}

.color-transition-card {
  text-align: center;
  width: 100%;
  max-width: 480px;
  padding: 32px;
}

.admin-nav-header {
  background-color: #02426d;
}

.admin-nav-text {
  color: #beccd9;
}

.admin-nav-text-active {
  color: #fff;
  background-color: #fff3;
}

.admin-nav-text:hover {
  color: #fff;
  background-color: #ffffff1a;
}

.admin-mobile-header {
  background-color: #02426d;
}

.env-badge {
  text-transform: uppercase;
  letter-spacing: .05em;
  padding: .125rem .375rem;
  font-size: .625rem;
  font-weight: 700;
}

.env-badge-dev {
  color: #fff;
  background-color: #f59e0b;
}

.env-badge-alpha {
  color: #fff;
  background-color: #3b82f6;
}

.env-badge-beta {
  color: #fff;
  background-color: #8b5cf6;
}

.env-badge-prod {
  color: #fff;
  background-color: #10b981;
}

.admin-card {
  border: 1px solid var(--color-ida-secondary);
  background-color: #fff;
  border-radius: 2px;
}

.dark .admin-card {
  background-color: #1f2937;
}

.admin-card-link {
  border: 1px solid var(--color-ida-secondary);
  background-color: #fff;
  border-radius: 2px;
  transition: border-color .2s;
}

.admin-card-link:hover {
  border-color: var(--color-mancave-accent);
}

.dark .admin-card-link {
  background-color: #1f2937;
}

.admin-card-warning {
  border: 2px solid var(--color-mancave-accent);
  background-color: #4f2d1d1a;
  border-radius: 2px;
  transition: border-color .2s;
}

.admin-card-warning:hover {
  border-color: var(--color-mancave-button-bg);
}

.dark .admin-card-warning {
  background-color: #4f2d1d33;
}

.admin-icon-box {
  background-color: #beccd94d;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 3rem;
  height: 3rem;
  display: flex;
}

.dark .admin-icon-box {
  background-color: #02426d4d;
}

.admin-icon-box-warning {
  background-color: #4f2d1d33;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 3rem;
  height: 3rem;
  display: flex;
}

.dark .admin-icon-box-warning {
  background-color: #4f2d1d4d;
}

.admin-icon {
  width: 1.5rem;
  height: 1.5rem;
  color: var(--color-mancave-button-bg);
}

.dark .admin-icon {
  color: var(--color-ida-secondary);
}

.admin-icon-warning {
  width: 1.5rem;
  height: 1.5rem;
  color: var(--color-mancave-accent);
}

.dark .admin-icon-warning {
  color: var(--color-ida-secondary);
}

.admin-badge {
  border-radius: 2px;
  padding: .25rem .5rem;
  font-size: .75rem;
  font-weight: 500;
  display: inline-block;
}

.admin-badge-primary {
  color: var(--color-mancave-button-bg);
  background-color: #02426d33;
}

.dark .admin-badge-primary {
  color: var(--color-ida-secondary);
  background-color: #02426d66;
}

.admin-badge-warning {
  color: var(--color-mancave-accent);
  background-color: #4f2d1d33;
}

.dark .admin-badge-warning {
  color: var(--color-ida-secondary);
  background-color: #4f2d1d66;
}

.admin-badge-success {
  color: var(--color-custom-green);
  background-color: #44884333;
}

.dark .admin-badge-success {
  color: #7cc47b;
  background-color: #44884366;
}

.admin-badge-danger {
  color: var(--color-custom-red);
  background-color: #fb471f33;
}

.dark .admin-badge-danger {
  color: #fc8a70;
  background-color: #fb471f66;
}

.admin-badge-gray {
  color: #6b7280;
  background-color: #6b728033;
}

.dark .admin-badge-gray {
  color: #9ca3af;
  background-color: #6b728066;
}

.admin-badge-pending {
  color: #d97706;
  background-color: #f59e0b33;
}

.dark .admin-badge-pending {
  color: #fbbf24;
  background-color: #f59e0b66;
}

.postal-letter-page {
  color: #072238;
  background: #fff;
  width: 210mm;
  min-height: 297mm;
  padding: 20mm;
  font-family: Georgia, serif;
  font-size: 11pt;
  line-height: 1.5;
  position: relative;
}

.postal-letter-sender-return {
  color: #6b7280;
  margin-bottom: 4mm;
  font-size: 8pt;
  text-decoration: underline;
}

.postal-letter-address-window {
  min-height: 40mm;
  margin-bottom: 8mm;
}

.postal-letter-date {
  text-align: right;
  margin-bottom: 8mm;
}

.postal-letter-subject {
  margin-bottom: 6mm;
  font-size: 12pt;
  font-weight: bold;
}

.postal-letter-code-box {
  border: 2px solid var(--color-mancave-button-bg);
  text-align: center;
  letter-spacing: 8px;
  color: #072238;
  background: #f9fafb;
  border-radius: 2px;
  margin: 24px 0;
  padding: 16px 24px;
  font-family: monospace;
  font-size: 24pt;
  font-weight: bold;
}

.postal-letter-footer {
  color: #6b7280;
  border-top: 1px solid #e5e7eb;
  margin-top: 16mm;
  padding-top: 4mm;
  font-size: 9pt;
}

@media print {
  .postal-letter-print-root {
    z-index: 99999;
    background: #fff;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
  }

  body > :not(.postal-letter-print-root) {
    display: none !important;
  }

  @page {
    size: A4;
    margin: 0;
  }
}

.admin-text-warning {
  color: var(--color-mancave-accent);
}

.dark .admin-text-warning {
  color: var(--color-ida-secondary);
}

.admin-text-warning-muted {
  color: #4f2d1dcc;
}

.dark .admin-text-warning-muted {
  color: #beccd9cc;
}

.admin-border {
  border-color: var(--color-ida-secondary);
}

.admin-link {
  color: var(--color-mancave-button-bg);
  transition: color .2s;
}

.admin-link:hover {
  color: var(--color-mancave-accent);
}

.dark .admin-link {
  color: var(--color-ida-secondary);
}

.dark .admin-link:hover {
  color: #fff;
}

.text-custom-green {
  color: var(--color-custom-green);
}

.text-custom-red {
  color: var(--color-custom-red);
}

.text-mancave-button-bg {
  color: var(--color-mancave-button-bg);
}

.text-ida-secondary {
  color: var(--color-ida-secondary);
}

.border-mancave-secondary {
  border-color: var(--color-ida-secondary);
}

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

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

.spinner-mancave-primary {
  border-color: var(--color-mancave-button-bg);
  border-top-color: #0000;
}

.spinner-mancave-accent {
  border-color: var(--color-mancave-accent);
  border-top-color: #0000;
}

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

.border-l-mancave-accent {
  border-left-color: var(--color-mancave-accent);
}

.border-l-mancave-primary {
  border-left-color: var(--color-mancave-button-bg);
}

.text-mancave-secondary {
  color: var(--color-ida-secondary);
}

.text-mancave-primary {
  color: var(--color-mancave-button-bg);
}

.text-mancave-accent {
  color: var(--color-mancave-accent);
}

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

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

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

.bg-mancave-primary-light {
  background-color: #02426d1a;
}

.bg-mancave-secondary-light {
  background-color: #beccd933;
}

.bg-mancave-accent-light {
  background-color: #4f2d1d1a;
}

.dark .bg-mancave-primary-light {
  background-color: #02426d4d;
}

.dark .bg-mancave-secondary-light {
  background-color: #beccd91a;
}

.dark .bg-mancave-accent-light {
  background-color: #4f2d1d4d;
}

.hover\:bg-mancave-primary:hover {
  background-color: var(--color-mancave-button-bg);
}

.hover\:bg-mancave-accent:hover {
  background-color: var(--color-mancave-accent);
}

.hover\:text-mancave-primary:hover {
  color: var(--color-mancave-button-bg);
}

.admin-nav-text-secondary {
  color: var(--color-ida-secondary);
}

.admin-nav-text-secondary:hover {
  color: #fff;
}

.admin-dropdown {
  border: 1px solid var(--color-ida-secondary);
  background-color: #fff;
  border-radius: 2px;
}

.admin-dropdown-item {
  color: #374151;
  transition: background-color .2s;
}

.admin-dropdown-item:hover {
  background-color: #f3f4f6;
}

.admin-dropdown-item-active {
  background-color: var(--color-mancave-button-bg);
  color: #fff;
}

.stats-card {
  border: 1px solid var(--color-ida-secondary);
  background-color: #fff;
  border-radius: 2px;
}

.stats-card-header {
  border-bottom: 1px solid var(--color-ida-secondary);
}

.stats-tab {
  color: #374151;
  border-bottom: 2px solid #0000;
  transition: color .2s, border-color .2s;
}

.stats-tab:hover {
  color: var(--color-mancave-button-bg);
}

.stats-tab-active {
  border-bottom-color: var(--color-mancave-button-bg);
  color: var(--color-mancave-button-bg);
}

.stats-input {
  border: 1px solid var(--color-ida-secondary);
  border-radius: 2px;
  padding: .375rem .75rem;
}

.stats-input:focus {
  border-color: var(--color-mancave-button-bg);
  outline: none;
}

.status-badge-pending {
  color: var(--color-mancave-accent);
  background-color: #4f2d1d1a;
}

.dark .status-badge-pending {
  color: #d4a574;
  background-color: #4f2d1d4d;
}

.status-badge-active {
  color: var(--color-mancave-button-bg);
  background-color: #02426d1a;
}

.dark .status-badge-active {
  color: #7eb3d8;
  background-color: #02426d4d;
}

.status-badge-cancelled {
  color: var(--color-custom-red);
  background-color: #fb471f1a;
}

.dark .status-badge-cancelled {
  color: #fc7a5c;
  background-color: #fb471f33;
}

.selected-border-accent {
  border-left: 4px solid var(--color-mancave-accent);
  background-color: #f9fafb;
}

.dark .selected-border-accent {
  background-color: #37415180;
}

.bg-gradient-mancave {
  background: linear-gradient(to bottom right, var(--color-mancave-accent), #101921, var(--color-mancave-button-bg));
}

.info-box-mancave {
  border: 1px solid var(--color-mancave-button-bg);
  background-color: #beccd933;
  border-radius: 2px;
}

.dark .info-box-mancave {
  border-color: var(--color-ida-secondary);
  background-color: #02426d33;
}

.spinner-mancave {
  border-color: #0000;
  border-top-color: var(--color-mancave-button-bg);
  border-right-color: var(--color-mancave-button-bg);
}

.admin-filter-btn {
  border-radius: 2px;
  padding: .5rem 1rem;
  font-weight: 500;
  transition: background-color .2s, color .2s;
}

.admin-filter-btn-default {
  color: #374151;
  background-color: #f3f4f6;
}

.admin-filter-btn-default:hover {
  background-color: #e5e7eb;
}

.dark .admin-filter-btn-default {
  color: #d1d5db;
  background-color: #374151;
}

.dark .admin-filter-btn-default:hover {
  background-color: #4b5563;
}

.admin-filter-btn-active {
  background-color: var(--color-mancave-button-bg);
  color: #fff;
}

.admin-filter-btn-warning {
  background-color: var(--color-mancave-accent);
  color: #fff;
}

.admin-filter-btn-warning-inactive {
  color: var(--color-mancave-accent);
  background-color: #4f2d1d33;
}

.admin-filter-btn-warning-inactive:hover {
  background-color: #4f2d1d4d;
}

.dark .admin-filter-btn-warning-inactive {
  color: var(--color-ida-secondary);
  background-color: #4f2d1d66;
}

.admin-filter-btn-success {
  background-color: var(--color-custom-green);
  color: #fff;
}

.admin-filter-btn-success-inactive {
  color: var(--color-custom-green);
  background-color: #44884333;
}

.admin-filter-btn-success-inactive:hover {
  background-color: #4488434d;
}

.dark .admin-filter-btn-success-inactive {
  color: #7cc47b;
  background-color: #44884366;
}

.admin-filter-btn-danger {
  background-color: var(--color-custom-red);
  color: #fff;
}

.admin-filter-btn-danger-inactive {
  color: var(--color-custom-red);
  background-color: #fb471f33;
}

.admin-filter-btn-danger-inactive:hover {
  background-color: #fb471f4d;
}

.dark .admin-filter-btn-danger-inactive {
  color: #fc8a70;
  background-color: #fb471f66;
}

.admin-input {
  border: 1px solid var(--color-ida-secondary);
  color: #111827;
  background-color: #fff;
  border-radius: 2px;
  padding: .5rem 1rem;
}

.admin-input:focus {
  border-color: var(--color-mancave-button-bg);
  outline: none;
  box-shadow: 0 0 0 2px #02426d33;
}

.dark .admin-input {
  color: #fff;
  background-color: #1f2937;
}

.admin-modal-overlay {
  background-color: #00000080;
}

.admin-modal {
  background-color: #fff;
  border-radius: 2px;
  box-shadow: 0 25px 50px -12px #00000040;
}

.dark .admin-modal {
  background-color: #1f2937;
}

.admin-btn-success {
  background-color: var(--color-custom-green);
  color: #fff;
  border-radius: 2px;
  padding: .75rem 1.5rem;
  font-weight: 500;
  transition: background-color .2s;
}

.admin-btn-success:hover:not(:disabled) {
  background-color: #366d36;
}

.admin-btn-success:disabled {
  cursor: not-allowed;
  background-color: #44884380;
}

.admin-btn-danger {
  background-color: var(--color-custom-red);
  color: #fff;
  border-radius: 2px;
  padding: .75rem 1.5rem;
  font-weight: 500;
  transition: background-color .2s;
}

.admin-btn-danger:hover:not(:disabled) {
  background-color: #b33113;
}

.admin-btn-danger:disabled {
  cursor: not-allowed;
  background-color: #fb471f80;
}

.admin-btn-secondary {
  color: #111827;
  background-color: #f3f4f6;
  border-radius: 2px;
  padding: .75rem 1.5rem;
  font-weight: 500;
  transition: background-color .2s;
}

.admin-btn-secondary:hover {
  background-color: #e5e7eb;
}

.dark .admin-btn-secondary {
  color: #fff;
  background-color: #374151;
}

.dark .admin-btn-secondary:hover {
  background-color: #4b5563;
}

.admin-alert-info {
  background-color: #f3f4f6;
  border-radius: 2px;
  padding: 1rem;
}

.dark .admin-alert-info {
  background-color: #11182780;
}

.admin-alert-danger {
  background-color: #fb471f1a;
  border: 1px solid #fb471f4d;
  border-radius: 2px;
  padding: .75rem;
}

.dark .admin-alert-danger {
  background-color: #fb471f33;
  border-color: #fb471f80;
}

.fullscreen-grid-4col {
  flex: 1 !important;
  grid-template-columns: 280px 1fr 1fr 1fr !important;
  gap: 0 !important;
  display: grid !important;
  overflow: hidden !important;
}

.stats-bar-anonymous {
  background-color: #9ca3af;
}

.stats-bar-user {
  background-color: #3b82f6;
}

.stats-bar-admin {
  background-color: #a855f7;
}

.stats-bar-default {
  background-color: #02426d;
}

.stats-legend-anonymous {
  background-color: #9ca3af;
}

.stats-legend-user {
  background-color: #3b82f6;
}

.stats-legend-admin {
  background-color: #a855f7;
}

.stats-text-anonymous {
  color: #6b7280;
}

.stats-text-user {
  color: #2563eb;
}

.stats-text-admin {
  color: #9333ea;
}

.stats-border-anonymous {
  border-left: 4px solid #9ca3af;
}

.stats-border-user {
  border-left: 4px solid #3b82f6;
}

.stats-border-admin {
  border-left: 4px solid #a855f7;
}

.faq-groups > div {
  margin-bottom: 2rem !important;
  padding-bottom: 2rem !important;
}

.faq-groups > div:last-child {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

@media (prefers-color-scheme: dark) {
  .ida-scale-circle-light {
    color: #d1d5db;
    background-color: #4b5563;
    border-color: #6b7280;
  }

  :root {
    --background: #0a0a0a;
    --foreground: #edf6ff;
  }
}

body {
  background: var(--background);
  color: var(--foreground);
  font-family: var(--font-raleway), "Raleway", sans-serif;
}

button, [type="button"], [type="submit"], [type="reset"], img, .rounded-2px {
  border-radius: 2px;
}

.legal-content {
  color: #374151;
  line-height: 1.75;
}

.legal-content h1 {
  color: #111827;
  margin-top: 0;
  margin-bottom: .875rem;
  font-size: 2.25rem;
  font-weight: 800;
  line-height: 1.1;
}

.legal-content h2 {
  color: #111827;
  margin-top: 2rem;
  margin-bottom: 1rem;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.3;
}

.legal-content h3 {
  color: #111827;
  margin-top: 1.6rem;
  margin-bottom: .6rem;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.4;
}

.legal-content h4 {
  color: #111827;
  margin-top: 1.5rem;
  margin-bottom: .5rem;
  font-size: 1.125rem;
  font-weight: 600;
}

.legal-content h5, .legal-content h6 {
  color: #111827;
  margin-top: 1.25rem;
  margin-bottom: .5rem;
  font-size: 1rem;
  font-weight: 600;
}

.legal-content p {
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
}

.legal-content p:first-child {
  margin-top: 0;
}

.legal-content ul, .legal-content ol {
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
  padding-left: 1.625rem;
}

.legal-content ul {
  list-style-type: disc;
}

.legal-content ol {
  list-style-type: decimal;
}

.legal-content li {
  margin-top: .5rem;
  margin-bottom: .5rem;
}

.legal-content a {
  color: var(--color-mancave-accent);
  text-decoration: underline;
}

.legal-content a:hover {
  color: var(--color-mancave-accent-hover);
}

.legal-content strong, .legal-content b {
  color: #111827;
  font-weight: 600;
}

.legal-content em, .legal-content i {
  font-style: italic;
}

.legal-content blockquote {
  color: #4b5563;
  border-left: 4px solid #e5e7eb;
  margin-top: 1.6rem;
  margin-bottom: 1.6rem;
  padding-left: 1rem;
  font-style: italic;
}

.legal-content table {
  border-collapse: collapse;
  width: 100%;
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.legal-content th, .legal-content td {
  text-align: left;
  border: 1px solid #e5e7eb;
  padding: .75rem;
}

.legal-content th {
  background-color: #f9fafb;
  font-weight: 600;
}

.legal-content hr {
  border: none;
  border-top: 1px solid #e5e7eb;
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.chat-message {
  font-size: .9375rem;
  line-height: 1.6;
}

.chat-message p {
  margin-top: 0;
  margin-bottom: .75rem;
}

.chat-message p:last-child {
  margin-bottom: 0;
}

.chat-message ul, .chat-message ol {
  margin-top: .5rem;
  margin-bottom: .75rem;
  padding-left: 1.5rem;
}

.chat-message ul:last-child, .chat-message ol:last-child {
  margin-bottom: 0;
}

.chat-message ul {
  list-style-type: disc;
}

.chat-message ol {
  list-style-type: decimal;
}

.chat-message li {
  margin-top: .375rem;
  margin-bottom: .375rem;
  padding-left: .25rem;
}

.chat-message li::marker {
  color: #6b7280;
}

.chat-message li > p {
  margin: 0;
  display: inline;
}

.chat-message li > ul, .chat-message li > ol {
  margin-top: .375rem;
  margin-bottom: .25rem;
}

.chat-message strong {
  font-weight: 600;
}

.chat-message em {
  font-style: italic;
}

.chat-message h1, .chat-message h2, .chat-message h3, .chat-message h4 {
  margin-top: 1rem;
  margin-bottom: .5rem;
  font-weight: 600;
  line-height: 1.3;
}

.chat-message h1:first-child, .chat-message h2:first-child, .chat-message h3:first-child, .chat-message h4:first-child {
  margin-top: 0;
}

.chat-message h1 {
  font-size: 1.25rem;
}

.chat-message h2 {
  font-size: 1.125rem;
}

.chat-message h3 {
  font-size: 1rem;
}

.chat-message h4 {
  font-size: .9375rem;
}

.chat-message blockquote {
  color: #6b7280;
  border-left: 3px solid #d1d5db;
  margin: .75rem 0;
  padding-left: .75rem;
  font-style: italic;
}

.chat-message code {
  background: #0000000f;
  border-radius: 2px;
  padding: .125rem .375rem;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: .875em;
}

.chat-message pre {
  background: #0000000f;
  border-radius: 2px;
  margin: .75rem 0;
  padding: .75rem;
  overflow-x: auto;
}

.chat-message pre code {
  background: none;
  padding: 0;
}

.chat-message-user {
  color: #fff;
}

.chat-message-user li::marker {
  color: #ffffffb3;
}

.chat-message-user blockquote {
  color: #ffffffd9;
  border-left-color: #fff6;
}

.chat-message-user code {
  background: #ffffff26;
}

.chat-message-user pre {
  background: #ffffff1a;
}

.chat-message-assistant {
  color: #1f2937;
}

.dark .chat-message-assistant, [data-theme="dark"] .chat-message-assistant {
  color: #f3f4f6;
}

.dark .chat-message-assistant li::marker {
  color: #9ca3af;
}

[data-theme="dark"] .chat-message-assistant li::marker {
  color: #9ca3af;
}

.dark .chat-message-assistant blockquote, [data-theme="dark"] .chat-message-assistant blockquote {
  color: #9ca3af;
  border-left-color: #4b5563;
}

.dark .chat-message-assistant code, [data-theme="dark"] .chat-message-assistant code {
  background: #ffffff1a;
}

.dark .chat-message-assistant pre, [data-theme="dark"] .chat-message-assistant pre {
  background: #ffffff14;
}

.price-research-card {
  background: #fafbfc;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  max-width: 85%;
  margin-top: .5rem;
  padding: .75rem 1rem;
}

@media (min-width: 640px) {
  .price-research-card {
    max-width: 75%;
  }
}

.price-research-card-pending {
  background: #f9fafb;
}

.price-research-card-pulse-dot {
  background: #9ca3af;
  border-radius: 50%;
  width: 8px;
  height: 8px;
  animation: 1.4s ease-in-out infinite price-research-pulse;
  display: inline-block;
}

@keyframes price-research-pulse {
  0%, 100% {
    opacity: .4;
  }

  50% {
    opacity: 1;
  }
}

.price-research-progress-bar-track {
  background: #e5e7eb;
  border-radius: 2px;
  height: 3px;
  margin-top: .5rem;
  overflow: hidden;
}

.price-research-progress-bar-fill {
  background: var(--color-ida-primary);
  border-radius: 2px;
  height: 100%;
  transition: width .4s ease-out;
}

.price-research-progress-bar-indeterminate {
  background: linear-gradient(90deg, transparent 30%, var(--color-ida-primary) 50%, transparent 70%);
  background-size: 200% 100%;
  border-radius: 2px;
  height: 100%;
  animation: 1.5s ease-in-out infinite price-research-shimmer;
}

@keyframes price-research-shimmer {
  0% {
    background-position: 200% 0;
  }

  100% {
    background-position: -200% 0;
  }
}

.btn-price-research-cancel {
  color: var(--color-ida-primary);
  border: 1px solid var(--color-ida-primary);
  cursor: pointer;
  background: none;
  border-radius: 2px;
  margin-left: auto;
  padding: .25rem .75rem;
  font-size: .75rem;
  transition: background .15s, color .15s;
}

.btn-price-research-cancel:hover {
  background: var(--color-ida-primary);
  color: #fff;
}

.price-research-evidence-toggle {
  font: inherit;
  color: inherit;
  cursor: pointer;
  text-align: left;
  background: none;
  border: none;
  align-items: center;
  gap: .25rem;
  padding: 0;
  display: inline-flex;
}

.price-research-evidence-toggle:hover {
  color: var(--color-ida-primary);
}

.price-research-evidence-chevron {
  flex-shrink: 0;
  width: .75rem;
  font-size: .75rem;
  transition: transform .15s;
  display: inline-block;
}

.price-research-evidence-chevron[data-open="true"] {
  transform: rotate(90deg);
}

.price-research-evidence-list {
  margin-top: .25rem;
  margin-bottom: .25rem;
  padding-left: 1rem;
}

.price-research-evidence-row {
  color: #64748b;
  border-top: 1px solid #f1f5f9;
  align-items: baseline;
  gap: .5rem;
  padding: .125rem 0;
  font-size: .75rem;
  display: flex;
}

.price-research-evidence-link {
  color: var(--color-ida-primary);
  text-overflow: ellipsis;
  white-space: nowrap;
  flex: 1;
  min-width: 0;
  text-decoration: none;
  overflow: hidden;
}

.price-research-evidence-link:hover {
  text-decoration: underline;
}

.price-research-evidence-quality {
  border-radius: 2px;
  flex-shrink: 0;
  width: 6px;
  height: 6px;
  margin-top: 1px;
}

.price-research-evidence-quality[data-quality="high"] {
  background: #22c55e;
}

.price-research-evidence-quality[data-quality="medium"] {
  background: #eab308;
}

.price-research-evidence-quality[data-quality="low"] {
  background: #cbd5e1;
}

.price-research-evidence-price {
  white-space: nowrap;
  color: #1e293b;
  font-weight: 600;
}

.price-research-evidence-domain {
  white-space: nowrap;
  color: #64748b;
  background: #f1f5f9;
  border-radius: 2px;
  padding: 0 .25rem;
  font-size: .65rem;
}

.price-research-evidence-search {
  flex-shrink: 0;
  gap: .625rem;
  margin-left: auto;
  display: flex;
}

.price-research-search-link {
  color: #64748b;
  align-items: center;
  gap: .2rem;
  font-size: .6875rem;
  text-decoration: none;
  transition: color .15s;
  display: inline-flex;
}

.price-research-search-link:before {
  content: "";
  background: currentColor;
  flex-shrink: 0;
  width: .625rem;
  height: .625rem;
  display: inline-block;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor'%3E%3Cpath fill-rule='evenodd' d='M9 3.5a5.5 5.5 0 1 0 0 11 5.5 5.5 0 0 0 0-11ZM2 9a7 7 0 1 1 12.452 4.391l3.328 3.329a.75.75 0 1 1-1.06 1.06l-3.329-3.328A7 7 0 0 1 2 9Z' clip-rule='evenodd'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='currentColor'%3E%3Cpath fill-rule='evenodd' d='M9 3.5a5.5 5.5 0 1 0 0 11 5.5 5.5 0 0 0 0-11ZM2 9a7 7 0 1 1 12.452 4.391l3.328 3.329a.75.75 0 1 1-1.06 1.06l-3.329-3.328A7 7 0 0 1 2 9Z' clip-rule='evenodd'/%3E%3C/svg%3E");
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.price-research-search-link:hover {
  color: #1e293b;
  text-decoration: underline;
}

.price-research-debug {
  color: #64748b;
  background: #f1f5f9;
  border-top: 1px solid #e2e8f0;
  border-radius: 2px;
  margin-top: .5rem;
  padding: .5rem;
  font-family: monospace;
  font-size: .7rem;
}

.follow-up-suggestion-card {
  text-align: left;
  cursor: pointer;
  background-color: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  align-items: flex-start;
  gap: .5rem;
  width: 100%;
  padding: .75rem 1rem;
  transition: background-color .2s;
  display: flex;
}

.follow-up-suggestion-card:hover {
  background-color: #f3f4f6;
}

.dark .follow-up-suggestion-card {
  background-color: #3741514d;
  border-color: #4b5563;
}

.dark .follow-up-suggestion-card:hover {
  background-color: #37415180;
}

.follow-up-suggestion-number {
  color: #6b7280;
  background-color: #e5e7eb;
  border-radius: 2px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 1.5rem;
  height: 1.5rem;
  font-size: .75rem;
  font-weight: 600;
  display: flex;
}

.dark .follow-up-suggestion-number {
  color: #9ca3af;
  background-color: #4b5563;
}

.follow-up-suggestion-icon {
  flex-shrink: 0;
  font-size: 1rem;
}

.follow-up-suggestion-text {
  color: #374151;
  flex: 1;
  font-size: .875rem;
  line-height: 1.4;
}

.dark .follow-up-suggestion-text {
  color: #d1d5db;
}

.clarify-prompt-container {
  border: 1px solid var(--color-mancave-button-bg);
  background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
  border-radius: 2px;
  margin: .75rem 0;
  padding: 1rem 1.25rem;
}

.dark .clarify-prompt-container {
  background: linear-gradient(135deg, #02426d26 0%, #02426d14 100%);
}

.clarify-prompt-header {
  align-items: flex-start;
  gap: .75rem;
  margin-bottom: 1rem;
  display: flex;
}

.clarify-prompt-header-icon {
  font-size: 1.5rem;
  line-height: 1;
}

.clarify-prompt-title {
  color: var(--color-mancave-button-bg);
  margin: 0 0 .25rem;
  font-size: .9375rem;
  font-weight: 600;
}

.dark .clarify-prompt-title {
  color: #7dd3fc;
}

.clarify-prompt-subtitle {
  color: #64748b;
  margin: 0;
  font-size: .8125rem;
}

.clarify-prompt-questions {
  flex-direction: column;
  gap: .875rem;
  display: flex;
}

.clarify-question {
  flex-direction: column;
  gap: .5rem;
  display: flex;
}

.clarify-question-header {
  align-items: center;
  gap: .5rem;
  display: flex;
}

.clarify-question-icon {
  font-size: 1rem;
}

.clarify-question-text {
  color: #334155;
  font-size: .875rem;
}

.dark .clarify-question-text {
  color: #e2e8f0;
}

.clarify-options {
  flex-wrap: wrap;
  gap: .5rem;
  padding-left: 1.5rem;
  display: flex;
}

.clarify-option {
  cursor: pointer;
  background: #fff;
  border: 1px solid #cbd5e1;
  border-radius: 2px;
  padding: .375rem .75rem;
  font-size: .8125rem;
  transition: all .15s;
}

.dark .clarify-option {
  color: #e2e8f0;
  background: #1e293b;
  border-color: #475569;
}

.clarify-option:hover {
  border-color: var(--color-mancave-button-bg);
  background: #f0f9ff;
}

.dark .clarify-option:hover {
  background: #334155;
}

.clarify-option-selected {
  background: var(--color-mancave-button-bg);
  border-color: var(--color-mancave-button-bg);
  color: #fff;
}

.dark .clarify-option-selected {
  background: var(--color-mancave-button-bg);
  color: #fff;
}

.clarify-actions {
  border-top: 1px solid #02426d26;
  flex-direction: column;
  gap: .625rem;
  margin-top: 1rem;
  padding-top: .875rem;
  display: flex;
}

.clarify-submit {
  background: var(--color-mancave-button-bg);
  color: #fff;
  cursor: pointer;
  border: none;
  border-radius: 2px;
  padding: .625rem 1rem;
  font-size: .875rem;
  font-weight: 500;
  transition: background-color .15s;
}

.clarify-submit:hover {
  background: var(--color-mancave-accent);
}

.clarify-skip {
  color: #64748b;
  cursor: pointer;
  background: none;
  border: 1px dashed #cbd5e1;
  border-radius: 2px;
  flex-direction: column;
  align-items: center;
  padding: .5rem .75rem;
  font-size: .8125rem;
  transition: all .15s;
  display: flex;
}

.dark .clarify-skip {
  color: #94a3b8;
  border-color: #475569;
}

.clarify-skip:hover {
  background: #00000005;
  border-color: #94a3b8;
}

.dark .clarify-skip:hover {
  background: #ffffff05;
}

.clarify-skip-hint {
  opacity: .8;
  margin-top: .125rem;
  font-size: .75rem;
}

@media (prefers-color-scheme: dark) {
  .legal-content {
    color: #d1d5db;
  }

  .legal-content h1, .legal-content h2, .legal-content h3, .legal-content h4, .legal-content h5, .legal-content h6, .legal-content strong, .legal-content b {
    color: #f9fafb;
  }

  .legal-content a {
    color: #a87b6a;
  }

  .legal-content a:hover {
    color: #c9a090;
  }

  .legal-content blockquote {
    color: #9ca3af;
    border-left-color: #4b5563;
  }

  .legal-content th, .legal-content td {
    border-color: #4b5563;
  }

  .legal-content th {
    background-color: #1f2937;
  }

  .legal-content hr {
    border-top-color: #4b5563;
  }
}

.klaro .cookie-notice, .klaro .cookie-modal {
  font-family: var(--font-sans), system-ui, sans-serif;
}

.klaro .cookie-notice {
  border-top: 3px solid var(--color-mancave-heading) !important;
  background-color: #000000f2 !important;
}

.klaro .cookie-notice .cn-body {
  padding: 1.5rem !important;
}

.klaro .cookie-notice .cn-text-container {
  color: #fff !important;
}

.klaro .cookie-notice .cn-buttons {
  flex-wrap: wrap;
  gap: .75rem;
  display: flex;
}

.klaro .cookie-notice .cm-btn {
  border-radius: 2px !important;
  padding: .75rem 1.5rem !important;
  font-weight: 500 !important;
  transition: all .2s !important;
}

.klaro .cookie-notice .cm-btn.cm-btn-success {
  color: #fff !important;
  background-color: #101820 !important;
  border: 2px solid #101820 !important;
}

.klaro .cookie-notice .cm-btn.cm-btn-success:hover {
  color: #101820 !important;
  background-color: #fff !important;
}

.klaro .cookie-notice .cm-btn.cm-btn-danger, .klaro .cookie-notice .cm-btn-info {
  color: #fff !important;
  background-color: #0000 !important;
  border: 2px solid #fff !important;
}

.klaro .cookie-notice .cm-btn.cm-btn-danger:hover, .klaro .cookie-notice .cm-btn-info:hover {
  color: #101820 !important;
  background-color: #fff !important;
}

.klaro .cookie-modal {
  z-index: 10000 !important;
}

.klaro .cookie-modal .cm-modal {
  background-color: #fff !important;
  border-radius: 4px !important;
  max-width: 640px !important;
}

.klaro .cookie-modal .cm-header {
  color: #fff !important;
  background-color: #101820 !important;
  border-radius: 4px 4px 0 0 !important;
  padding: 1.5rem !important;
}

.klaro .cookie-modal .cm-header h1 {
  color: #fff !important;
  font-size: 1.25rem !important;
  font-weight: 600 !important;
}

.klaro .cookie-modal .cm-body {
  color: #101820 !important;
  padding: 1.5rem !important;
}

.klaro .cookie-modal .cm-footer {
  background-color: #f5f5f5 !important;
  border-radius: 0 0 4px 4px !important;
  padding: 1rem 1.5rem !important;
}

.klaro .cookie-modal .cm-services {
  margin-top: 1rem;
}

.klaro .cookie-modal .cm-service {
  border: 1px solid #e5e5e5 !important;
  border-radius: 4px !important;
  margin-bottom: .75rem !important;
  padding: 1rem !important;
}

.klaro .cookie-modal .cm-service .title {
  color: #101820 !important;
  font-weight: 600 !important;
}

.klaro .cookie-modal .cm-service .purposes {
  color: #666 !important;
  font-size: .875rem !important;
}

.klaro .cm-switch {
  width: 48px !important;
  height: 26px !important;
}

.klaro .cm-switch input:checked + .cm-slider {
  background-color: #101820 !important;
}

.klaro .cm-switch .cm-slider {
  background-color: #ccc !important;
  border-radius: 26px !important;
}

.klaro .cm-switch .cm-slider:before {
  border-radius: 50% !important;
}

.klaro .cookie-modal .cm-purpose {
  margin-bottom: 1rem !important;
}

.klaro .cookie-modal .cm-purpose .cm-purpose-title {
  color: var(--color-mancave-heading) !important;
  margin-bottom: .5rem !important;
  font-weight: 600 !important;
}

.klaro a {
  color: var(--color-mancave-heading) !important;
  text-decoration: underline !important;
}

.klaro a:hover {
  color: #101820 !important;
}

.klaro .cookie-modal .cm-footer .cm-btn {
  border-radius: 2px !important;
  padding: .75rem 1.5rem !important;
  font-weight: 500 !important;
}

.klaro .cookie-modal .cm-footer .cm-btn.cm-btn-success {
  color: #fff !important;
  background-color: #101820 !important;
  border: 2px solid #101820 !important;
}

.klaro .cookie-modal .cm-footer .cm-btn.cm-btn-success:hover {
  color: #101820 !important;
  background-color: #fff !important;
}

@media (max-width: 640px) {
  .klaro .cookie-notice .cn-body {
    padding: 1rem !important;
  }

  .klaro .cookie-notice .cn-buttons {
    flex-direction: column;
  }

  .klaro .cookie-notice .cm-btn {
    text-align: center;
    width: 100%;
  }

  .klaro .cookie-modal .cm-modal {
    max-height: calc(100vh - 2rem) !important;
    margin: 1rem !important;
  }
}

@media (prefers-color-scheme: dark) {
  .klaro .cookie-modal .cm-modal {
    background-color: #1f2937 !important;
  }

  .klaro .cookie-modal .cm-body {
    color: #f3f4f6 !important;
  }

  .klaro .cookie-modal .cm-service {
    background-color: #111827 !important;
    border-color: #374151 !important;
  }

  .klaro .cookie-modal .cm-service .title {
    color: #f9fafb !important;
  }

  .klaro .cookie-modal .cm-service .purposes {
    color: #9ca3af !important;
  }

  .klaro .cookie-modal .cm-footer {
    background-color: #111827 !important;
  }

  .klaro a {
    color: #60a5fa !important;
  }
}

.impersonation-banner {
  z-index: 9999;
  color: #1f2937;
  background-color: #f59e0b;
  justify-content: space-between;
  align-items: center;
  padding: 8px 16px;
  font-size: 14px;
  display: flex;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  box-shadow: 0 2px 4px #0000001a;
}

.impersonation-banner-content {
  align-items: center;
  gap: 12px;
  display: flex;
}

.impersonation-banner-icon {
  align-items: center;
  display: flex;
}

.impersonation-banner-text {
  font-weight: 500;
}

.impersonation-banner-time {
  background-color: #0000001a;
  border-radius: 4px;
  padding: 2px 8px;
  font-size: 12px;
}

.impersonation-banner-button {
  color: #fff;
  cursor: pointer;
  background-color: #1f2937;
  border: none;
  border-radius: 2px;
  padding: 6px 16px;
  font-size: 13px;
  font-weight: 600;
  transition: background-color .2s;
}

.impersonation-banner-button:hover {
  background-color: #374151;
}

.impersonation-banner-button:disabled {
  opacity: .6;
  cursor: not-allowed;
}

body:has(.impersonation-banner) {
  padding-top: 44px;
}

.modal-overlay {
  z-index: 10000;
  background-color: #00000080;
  justify-content: center;
  align-items: center;
  padding: 20px;
  display: flex;
  position: fixed;
  inset: 0;
}

.modal-content {
  background-color: #fff;
  border-radius: 2px;
  width: 100%;
  max-width: 480px;
  max-height: 90vh;
  overflow-y: auto;
  box-shadow: 0 4px 20px #00000026;
}

.modal-content-lg {
  max-width: 900px;
}

.modal-header {
  border-bottom: 1px solid #e5e7eb;
  justify-content: space-between;
  align-items: center;
  padding: 16px 20px;
  display: flex;
}

.modal-header h2 {
  color: #101820;
  margin: 0;
  font-size: 18px;
  font-weight: 700;
}

.modal-close {
  cursor: pointer;
  color: #6b7280;
  background: none;
  border: none;
  font-size: 24px;
  line-height: 1;
}

.modal-close:hover {
  color: #1f2937;
}

.modal-body {
  padding: 20px;
}

.modal-footer {
  border-top: 1px solid #e5e7eb;
  justify-content: flex-end;
  gap: 12px;
  padding: 16px 20px;
  display: flex;
}

.radio-group-label {
  color: #101820;
  margin-bottom: 12px;
  font-weight: 600;
  display: block;
}

.radio-option {
  cursor: pointer;
  border: 1px solid #e5e7eb;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 8px;
  padding: 12px;
  transition: border-color .2s;
  display: flex;
}

.radio-option:hover {
  border-color: var(--color-mancave-button-bg);
}

.radio-option input[type="radio"] {
  margin-top: 2px;
}

.radio-content {
  flex-direction: column;
  gap: 4px;
  display: flex;
}

.radio-label {
  color: #101820;
  font-weight: 500;
}

.radio-description {
  color: #6b7280;
  font-size: 13px;
}

.checkbox-option {
  cursor: pointer;
  align-items: center;
  gap: 8px;
  display: flex;
}

.checkbox-option input[type="checkbox"] {
  width: 18px;
  height: 18px;
}

.code-input-container {
  justify-content: center;
  gap: 8px;
  display: flex;
}

.code-input {
  text-align: center;
  border: 2px solid #e5e7eb;
  border-radius: 2px;
  width: 48px;
  height: 56px;
  font-size: 24px;
  font-weight: bold;
  transition: border-color .2s;
}

.code-input:focus {
  border-color: var(--color-mancave-button-bg);
  outline: none;
}

.code-timer {
  color: #6b7280;
  font-size: 14px;
}

.alert {
  border-radius: 2px;
  padding: 12px 16px;
  font-size: 14px;
}

.alert-error {
  color: #991b1b;
  background-color: #fef2f2;
  border-left: 4px solid #ef4444;
}

.report-summary {
  flex-direction: column;
  gap: 12px;
  display: flex;
}

.summary-row {
  gap: 16px;
  display: flex;
}

.summary-label {
  color: #6b7280;
  min-width: 100px;
  font-weight: 600;
}

.summary-value {
  color: #101820;
}

.stats-grid {
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  display: grid;
}

.stat-item {
  text-align: center;
  background-color: #f9fafb;
  border-radius: 2px;
  padding: 20px;
}

.stat-value {
  color: var(--color-mancave-button-bg);
  font-size: 32px;
  font-weight: 700;
  display: block;
}

.stat-label {
  color: #6b7280;
  margin-top: 4px;
  font-size: 13px;
  display: block;
}

.path-cell {
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 300px;
  font-family: var(--font-geist-mono);
  font-size: 12px;
  overflow: hidden;
}

.badge {
  text-transform: uppercase;
  border-radius: 2px;
  padding: 2px 8px;
  font-size: 11px;
  font-weight: 600;
  display: inline-block;
}

.badge-info {
  color: #0369a1;
  background-color: #e0f2fe;
}

.badge-primary {
  background-color: var(--color-mancave-button-bg);
  color: #fff;
}

.badge-warning {
  color: #92400e;
  background-color: #fef3c7;
}

.badge-secondary {
  color: #4b5563;
  background-color: #f3f4f6;
}

.badge-success {
  color: #065f46;
  background-color: #d1fae5;
}

.badge-error {
  color: #991b1b;
  background-color: #fee2e2;
}

.room-type-badge {
  border-radius: 2px;
  align-items: center;
  gap: 4px;
  padding: 2px 8px;
  font-size: 11px;
  font-weight: 500;
  line-height: 1.4;
  display: inline-flex;
}

.room-type-badge-detected {
  color: #1e40af;
  background-color: #dbeafe;
}

:is(.dark .room-type-badge-detected) {
  color: #93c5fd;
  background-color: #1e40af33;
}

.room-type-badge-unknown {
  color: #6b7280;
  background-color: #f3f4f6;
}

:is(.dark .room-type-badge-unknown) {
  color: #9ca3af;
  background-color: #6b728033;
}

.room-type-badge-custom {
  color: #4f2d1d;
  background-color: #f3ece8;
}

:is(.dark .room-type-badge-custom) {
  color: #d4a574;
  background-color: #4f2d1d33;
}

.room-constraint-summary {
  background-color: #eff6ff;
  border: 1px solid #dbeafe;
  border-radius: 2px;
  padding: 8px 12px;
  font-size: 12px;
  line-height: 1.5;
}

:is(.dark .room-constraint-summary) {
  background-color: #1e40af1a;
  border-color: #1e40af4d;
}

.room-constraint-exclusion {
  color: #991b1b;
}

:is(.dark .room-constraint-exclusion) {
  color: #fca5a5;
}

.room-constraint-capability {
  color: #1e40af;
}

:is(.dark .room-constraint-capability) {
  color: #93c5fd;
}

.btn-icon {
  cursor: pointer;
  color: #6b7280;
  background-color: #0000;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  padding: 0;
  transition: all .2s;
  display: inline-flex;
}

.btn-icon:hover {
  color: var(--color-mancave-button-bg);
  border-color: var(--color-mancave-button-bg);
  background-color: #f3f4f6;
}

.btn-secondary {
  color: #374151;
  cursor: pointer;
  background-color: #fff;
  border: 1px solid #d1d5db;
  border-radius: 2px;
  padding: 8px 16px;
  font-size: 14px;
  font-weight: 500;
  transition: all .2s;
}

.btn-secondary:hover {
  background-color: #f9fafb;
}

.btn-secondary:disabled {
  opacity: .6;
  cursor: not-allowed;
}

.text-success {
  color: #059669;
}

.text-warning {
  color: #d97706;
}

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

.text-muted {
  color: #6b7280;
}

.pagination {
  justify-content: center;
  align-items: center;
  gap: 16px;
  margin-top: 24px;
  display: flex;
}

.pagination-info {
  color: #6b7280;
  font-size: 14px;
}

.btn-link {
  color: var(--color-mancave-button-bg);
  font-weight: 500;
  text-decoration: none;
}

.btn-link:hover {
  text-decoration: underline;
}

.admin-header-nav {
  margin-bottom: 16px;
}

.user-info {
  flex-direction: column;
  gap: 2px;
  display: flex;
}

.user-name {
  color: #101820;
  font-weight: 500;
}

.user-email {
  color: #6b7280;
  font-size: 12px;
}

@media (prefers-color-scheme: dark) {
  .impersonation-banner {
    color: #fff;
    background-color: #d97706;
  }

  .impersonation-banner-time {
    background-color: #ffffff26;
  }

  .modal-content {
    background-color: #1f2937;
  }

  .modal-header {
    border-color: #374151;
  }

  .modal-header h2 {
    color: #f9fafb;
  }

  .modal-close {
    color: #9ca3af;
  }

  .modal-close:hover {
    color: #f9fafb;
  }

  .modal-footer {
    border-color: #374151;
  }

  .radio-option {
    background-color: #111827;
    border-color: #374151;
  }

  .radio-option:hover {
    border-color: #60a5fa;
  }

  .radio-label {
    color: #f9fafb;
  }

  .code-input {
    color: #f9fafb;
    background-color: #111827;
    border-color: #374151;
  }

  .code-input:focus {
    border-color: #60a5fa;
  }

  .alert-error {
    color: #fecaca;
    background-color: #450a0a;
  }

  .stat-item {
    background-color: #111827;
  }

  .summary-value {
    color: #f9fafb;
  }

  .btn-secondary {
    color: #f9fafb;
    background-color: #374151;
    border-color: #4b5563;
  }

  .btn-secondary:hover {
    background-color: #4b5563;
  }

  .user-name {
    color: #f9fafb;
  }
}

.uptime-bar {
  gap: 2px;
  height: 32px;
  display: flex;
}

.uptime-day {
  cursor: pointer;
  border-radius: 2px;
  flex: 1;
  min-width: 3px;
  transition: transform .15s;
}

.uptime-day:hover {
  transform: scaleY(1.15);
}

.uptime-day-operational {
  background-color: #22c55e;
}

.uptime-day-degraded {
  background-color: #eab308;
}

.uptime-day-outage {
  background-color: #ef4444;
}

.uptime-day-nodata {
  background-color: #d1d5db;
}

.dark .uptime-day-nodata {
  background-color: #4b5563;
}

.uptime-percent-good {
  color: #16a34a;
}

.uptime-percent-degraded {
  color: #ca8a04;
}

.uptime-percent-bad {
  color: #dc2626;
}

.dark .uptime-percent-good {
  color: #4ade80;
}

.dark .uptime-percent-degraded {
  color: #facc15;
}

.dark .uptime-percent-bad {
  color: #f87171;
}

.incident-badge {
  border-radius: 2px;
  padding: 2px 8px;
  font-size: 12px;
  font-weight: 500;
  display: inline-block;
}

.incident-badge-investigating {
  color: #9a3412;
  background-color: #ffedd5;
}

.dark .incident-badge-investigating {
  color: #fdba74;
  background-color: #fb923c33;
}

.incident-badge-monitoring {
  color: #1e40af;
  background-color: #dbeafe;
}

.dark .incident-badge-monitoring {
  color: #93c5fd;
  background-color: #3b82f633;
}

.incident-badge-resolved {
  color: #166534;
  background-color: #dcfce7;
}

.dark .incident-badge-resolved {
  color: #86efac;
  background-color: #22c55e33;
}

.incident-severity-minor {
  color: #92400e;
  background-color: #fef3c7;
}

.incident-severity-major {
  color: #9a3412;
  background-color: #fed7aa;
}

.incident-severity-critical {
  color: #991b1b;
  background-color: #fee2e2;
}

.dark .incident-severity-minor {
  color: #fde047;
  background-color: #eab30833;
}

.dark .incident-severity-major {
  color: #fdba74;
  background-color: #f9731633;
}

.dark .incident-severity-critical {
  color: #fca5a5;
  background-color: #ef444433;
}

.incident-timeline {
  padding-left: 24px;
  position: relative;
}

.incident-timeline:before {
  content: "";
  background-color: #e5e7eb;
  width: 2px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 8px;
}

.dark .incident-timeline:before {
  background-color: #374151;
}

.incident-timeline-item {
  padding-bottom: 16px;
  position: relative;
}

.incident-timeline-item:last-child {
  padding-bottom: 0;
}

.incident-timeline-dot {
  border: 2px solid #fff;
  border-radius: 50%;
  width: 12px;
  height: 12px;
  position: absolute;
  top: 4px;
  left: -20px;
}

.dark .incident-timeline-dot {
  border-color: #1f2937;
}

.incident-timeline-dot-investigating {
  background-color: #f97316;
}

.incident-timeline-dot-monitoring {
  background-color: #3b82f6;
}

.incident-timeline-dot-resolved {
  background-color: #22c55e;
}

.service-status-indicator {
  align-items: center;
  gap: 8px;
  display: inline-flex;
}

.service-status-dot {
  border-radius: 50%;
  width: 10px;
  height: 10px;
}

.service-status-dot-operational {
  background-color: #22c55e;
}

.service-status-dot-degraded {
  background-color: #eab308;
}

.service-status-dot-outage {
  background-color: #ef4444;
}

.uptime-tooltip {
  z-index: 50;
  color: #fff;
  white-space: nowrap;
  pointer-events: none;
  background-color: #1f2937;
  border-radius: 2px;
  padding: 8px 12px;
  font-size: 12px;
  position: absolute;
  bottom: calc(100% + 8px);
  left: 50%;
  transform: translateX(-50%);
}

.uptime-tooltip:after {
  content: "";
  border: 6px solid #0000;
  border-top-color: #1f2937;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
}

.address-picker {
  position: relative;
}

.address-autocomplete-dropdown {
  z-index: 1000;
  border: 1px solid var(--color-mancave-secondary);
  background-color: #fff;
  border-top: none;
  border-radius: 0 0 2px 2px;
  max-height: 200px;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  overflow-y: auto;
}

.address-autocomplete-item {
  cursor: pointer;
  color: #374151;
  border-bottom: 1px solid #f3f4f6;
  padding: 10px 12px;
  font-size: 14px;
  transition: background-color .15s;
}

.address-autocomplete-item:last-child {
  border-bottom: none;
}

.address-autocomplete-item:hover, .address-autocomplete-item.active {
  background-color: #f3f4f6;
}

.address-autocomplete-item-title {
  color: #111827;
  font-weight: 500;
}

.address-autocomplete-item-subtitle {
  color: #6b7280;
  margin-top: 2px;
  font-size: 12px;
}

.address-autocomplete-loading {
  text-align: center;
  color: #6b7280;
  padding: 12px;
  font-size: 14px;
}

.address-autocomplete-empty {
  text-align: center;
  color: #9ca3af;
  padding: 12px;
  font-size: 14px;
}

.map-container {
  border: 1px solid var(--color-mancave-secondary);
  background-color: #f3f4f6;
  border-radius: 2px;
  overflow: hidden;
}

.map-container-interactive {
  cursor: crosshair;
}

.map-loading {
  color: #6b7280;
  justify-content: center;
  align-items: center;
  height: 100%;
  font-size: 14px;
  display: flex;
}

.map-hint {
  border-top: 1px solid var(--color-mancave-secondary);
  color: #6b7280;
  text-align: center;
  background-color: #f9fafb;
  padding: 8px 12px;
  font-size: 12px;
}

.route-links {
  flex-wrap: wrap;
  gap: 8px;
  display: flex;
}

.route-link-btn {
  color: #374151;
  cursor: pointer;
  background-color: #fff;
  border: 1px solid #d1d5db;
  border-radius: 2px;
  align-items: center;
  gap: 6px;
  padding: 8px 12px;
  font-size: 13px;
  font-weight: 500;
  text-decoration: none;
  transition: all .15s;
  display: inline-flex;
}

.route-link-btn:hover {
  color: #111827;
  background-color: #f9fafb;
  border-color: #9ca3af;
}

.route-link-btn svg {
  width: 16px;
  height: 16px;
}

.route-link-google {
  color: #4285f4;
}

.route-link-google:hover {
  background-color: #e8f0fe;
  border-color: #4285f4;
}

.route-link-apple {
  color: #000;
}

.route-link-apple:hover {
  background-color: #f5f5f5;
  border-color: #000;
}

.route-link-osm {
  color: #7ebc6f;
}

.route-link-osm:hover {
  background-color: #f0f7ee;
  border-color: #7ebc6f;
}

.leaflet-container {
  font-family: inherit;
}

.leaflet-popup-content-wrapper {
  border-radius: 2px;
  box-shadow: 0 2px 8px #00000026;
}

.leaflet-popup-content {
  margin: 12px;
  font-size: 14px;
  line-height: 1.4;
}

.leaflet-popup-tip {
  box-shadow: none;
}

.leaflet-control-zoom {
  border: 1px solid var(--color-mancave-secondary) !important;
  border-radius: 2px !important;
}

.leaflet-control-zoom a {
  color: #374151 !important;
  border: none !important;
  border-radius: 0 !important;
}

.leaflet-control-zoom a:hover {
  background-color: #f3f4f6 !important;
}

.leaflet-control-zoom-in {
  border-bottom: 1px solid var(--color-mancave-secondary) !important;
}

.leaflet-control-attribution {
  font-size: 10px;
  background-color: #fffc !important;
}

.company-marker {
  background-color: var(--color-mancave-button-bg);
  border: 2px solid #fff;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  display: flex;
  box-shadow: 0 2px 4px #0003;
}

.company-marker-inner {
  background-color: #fff;
  border-radius: 50%;
  width: 8px;
  height: 8px;
}

.glossary-term {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
  -webkit-text-decoration-color: var(--color-mancave-accent);
  text-decoration-color: var(--color-mancave-accent);
  text-underline-offset: 3px;
  cursor: pointer;
  transition: color .2s;
}

.glossary-term:hover {
  color: var(--color-mancave-button-bg);
}

.dark .glossary-term {
  -webkit-text-decoration-color: var(--color-ida-secondary);
  text-decoration-color: var(--color-ida-secondary);
}

.dark .glossary-term:hover {
  color: var(--color-ida-secondary);
}

.glossary-term-duplicate {
  cursor: inherit;
  text-decoration: none;
}

.glossary-tooltip {
  border: 1px solid var(--color-mancave-accent);
  background: #fff;
  border-radius: 2px;
  min-width: 200px;
  max-width: 320px;
  padding: .75rem;
  display: block;
  box-shadow: 0 4px 12px #00000026;
}

.dark .glossary-tooltip {
  background: #1f2937;
  border-color: #4b5563;
}

.glossary-tooltip-content {
  align-items: flex-start;
  gap: .75rem;
  display: flex;
}

.glossary-tooltip-thumbnail {
  cursor: zoom-in;
  background: none;
  border: none;
  border-radius: 2px;
  flex-shrink: 0;
  width: 80px;
  height: 60px;
  padding: 0;
  overflow: hidden;
}

.glossary-tooltip-thumbnail img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition: opacity .2s;
}

.glossary-tooltip-thumbnail:hover img {
  opacity: .85;
}

.glossary-tooltip-thumbnail-wrapper {
  flex-shrink: 0;
  position: relative;
}

.glossary-tooltip-nav {
  color: #fff;
  cursor: pointer;
  opacity: 0;
  background: #0009;
  border: none;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 18px;
  height: 18px;
  padding: 0;
  transition: opacity .2s;
  display: flex;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.glossary-tooltip-thumbnail-wrapper:hover .glossary-tooltip-nav {
  opacity: 1;
}

.glossary-tooltip-nav:hover {
  background: #000c;
}

.glossary-tooltip-nav-prev {
  left: 2px;
}

.glossary-tooltip-nav-next {
  right: 2px;
}

.glossary-tooltip-counter {
  color: #fff;
  pointer-events: none;
  background: #0009;
  border-radius: 2px;
  padding: 1px 4px;
  font-size: 9px;
  position: absolute;
  bottom: 2px;
  left: 50%;
  transform: translateX(-50%);
}

.glossary-image-modal {
  z-index: 100;
  background: #000000e6;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 2rem;
  display: flex;
  position: fixed;
  inset: 0;
}

.glossary-image-modal img {
  object-fit: contain;
  border-radius: 2px;
  max-width: 90vw;
  max-height: 80vh;
}

.glossary-image-modal-title {
  color: #fff;
  margin-bottom: 1rem;
  font-size: 1.25rem;
  font-weight: 600;
}

.glossary-image-modal-close {
  color: #fff;
  cursor: pointer;
  background: none;
  border: none;
  padding: .5rem;
  transition: opacity .2s;
  position: absolute;
  top: 1rem;
  right: 1rem;
}

.glossary-image-modal-close:hover {
  opacity: .7;
}

.glossary-gallery-modal {
  z-index: 100;
  background: #000000f2;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 1rem;
  display: flex;
  position: fixed;
  inset: 0;
}

.glossary-gallery-close {
  color: #fff;
  cursor: pointer;
  z-index: 10;
  background: none;
  border: none;
  padding: .5rem;
  transition: opacity .2s;
  position: absolute;
  top: 1rem;
  right: 1rem;
}

.glossary-gallery-close:hover {
  opacity: .7;
}

.glossary-gallery-counter {
  color: #fff;
  background: #00000080;
  border-radius: 2px;
  padding: .375rem .75rem;
  font-size: 1rem;
  position: absolute;
  top: 1.5rem;
  left: 50%;
  transform: translateX(-50%);
}

.glossary-gallery-content {
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 3rem;
  width: 100%;
  max-width: 95vw;
  max-height: 90vh;
  padding: 2rem;
  display: flex;
}

.glossary-gallery-left {
  flex-direction: column;
  flex: none;
  justify-content: center;
  align-items: center;
  max-width: 65%;
  display: flex;
}

.glossary-gallery-right {
  flex-direction: column;
  flex: none;
  justify-content: center;
  min-width: 280px;
  max-width: 350px;
  display: flex;
}

.glossary-gallery-image-container {
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
  position: relative;
}

.glossary-gallery-image {
  object-fit: contain;
  border-radius: 2px;
  max-width: 100%;
  max-height: 75vh;
}

@media (max-width: 900px) {
  .glossary-gallery-content {
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    padding: .5rem;
  }

  .glossary-gallery-left {
    flex: none;
    width: 100%;
  }

  .glossary-gallery-right {
    flex: none;
    width: 100%;
    min-width: auto;
    max-width: 600px;
    padding-top: 0;
  }

  .glossary-gallery-image {
    max-width: 90vw;
    max-height: 50vh;
  }
}

.glossary-gallery-nav-btn {
  color: #fff;
  cursor: pointer;
  z-index: 60;
  background: #00000080;
  border: 1px solid #fff3;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 56px;
  height: 80px;
  transition: background-color .2s;
  display: flex;
  position: fixed;
  top: 50%;
  transform: translateY(-50%);
}

.glossary-gallery-nav-btn:hover {
  background: #000000b3;
}

.glossary-gallery-nav-prev {
  left: 1rem;
}

.glossary-gallery-nav-next {
  right: 1rem;
}

@media (max-width: 768px) {
  .glossary-gallery-nav-btn {
    width: 44px;
    height: 60px;
  }

  .glossary-gallery-nav-prev {
    left: .5rem;
  }

  .glossary-gallery-nav-next {
    right: .5rem;
  }
}

.glossary-gallery-dots {
  gap: .5rem;
  margin-top: 1rem;
  display: flex;
}

.glossary-gallery-dot {
  cursor: pointer;
  background: #ffffff4d;
  border: none;
  border-radius: 50%;
  width: 8px;
  height: 8px;
  padding: 0;
  transition: background-color .2s;
}

.glossary-gallery-dot:hover {
  background: #ffffff80;
}

.glossary-gallery-dot.active {
  background: #fff;
}

.glossary-gallery-thumbnails {
  scrollbar-width: thin;
  scrollbar-color: #ffffff4d transparent;
  flex-flow: column;
  flex-shrink: 0;
  align-items: center;
  gap: .5rem;
  width: 110px;
  min-width: 110px;
  max-width: 110px;
  max-height: 70vh;
  padding: .25rem;
  display: flex;
  overflow-y: auto;
}

.glossary-gallery-thumbnails::-webkit-scrollbar {
  width: 4px;
}

.glossary-gallery-thumbnails::-webkit-scrollbar-track {
  background: none;
}

.glossary-gallery-thumbnails::-webkit-scrollbar-thumb {
  background: #ffffff4d;
  border-radius: 2px;
}

.glossary-gallery-thumbnail {
  cursor: pointer;
  opacity: .5;
  background: none;
  border: 2px solid #0000;
  border-radius: 2px;
  flex-grow: 0;
  flex-shrink: 0;
  width: 100px;
  min-width: 100px;
  max-width: 100px;
  height: 100px;
  min-height: 100px;
  max-height: 100px;
  padding: 0;
  transition: opacity .2s, border-color .2s;
  overflow: hidden;
}

.glossary-gallery-thumbnail:hover {
  opacity: .8;
}

.glossary-gallery-thumbnail.active {
  opacity: 1;
  border-color: #fff;
}

.glossary-gallery-thumbnail img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}

.glossary-gallery-content.has-thumbnails {
  flex-wrap: nowrap;
  align-items: flex-start;
  gap: 1.5rem;
}

.glossary-gallery-content.has-thumbnails .glossary-gallery-left {
  max-width: calc(65% - 110px);
}

.glossary-gallery-content.has-thumbnails .glossary-gallery-thumbnails {
  align-self: center;
}

@media (max-width: 900px) {
  .glossary-gallery-thumbnails {
    scrollbar-width: none;
    flex-flow: row;
    order: 1;
    justify-content: center;
    width: 100%;
    min-width: auto;
    max-width: 100%;
    max-height: none;
    padding-bottom: .5rem;
    overflow: auto hidden;
  }

  .glossary-gallery-thumbnails::-webkit-scrollbar {
    display: none;
  }

  .glossary-gallery-thumbnail {
    width: 60px;
    min-width: 60px;
    max-width: 60px;
    height: 60px;
    min-height: 60px;
    max-height: 60px;
  }

  .glossary-gallery-content.has-thumbnails {
    flex-wrap: wrap;
    align-items: center;
    gap: .75rem;
  }

  .glossary-gallery-content.has-thumbnails .glossary-gallery-left {
    order: 0;
    max-width: 100%;
  }

  .glossary-gallery-content.has-thumbnails .glossary-gallery-right {
    order: 2;
  }

  .glossary-gallery-content.has-thumbnails .glossary-gallery-thumbnails {
    align-self: auto;
  }
}

.glossary-gallery-info {
  text-align: left;
  max-width: 100%;
  margin-top: 0;
}

@media (max-width: 900px) {
  .glossary-gallery-info {
    text-align: center;
    margin-top: .5rem;
  }
}

.glossary-gallery-title {
  color: #fff;
  margin-bottom: .5rem;
  font-size: 1.25rem;
  font-weight: 600;
}

.glossary-gallery-definition {
  color: #fffc;
  font-size: .875rem;
  line-height: 1.5;
}

.glossary-gallery-caption {
  color: #fff9;
  margin-top: .5rem;
  font-size: .75rem;
  font-style: italic;
}

.glossary-gallery-user-note {
  background: #4ade801a;
  border: 1px solid #4ade804d;
  border-radius: 2px;
  margin-top: 1rem;
  padding: .75rem;
}

.glossary-gallery-user-note-header {
  color: #4ade80;
  align-items: center;
  gap: .5rem;
  margin-bottom: .5rem;
  font-size: .75rem;
  font-weight: 500;
  display: flex;
}

.glossary-gallery-user-note-text {
  color: #ffffffe6;
  margin: 0;
  font-size: .875rem;
  line-height: 1.4;
}

.glossary-gallery-status {
  border-radius: 2px;
  align-items: center;
  gap: .5rem;
  margin-top: 1rem;
  padding: .5rem .75rem;
  font-size: .875rem;
  font-weight: 600;
  display: flex;
}

.glossary-gallery-status--preferred {
  color: #4ade80;
  background: #22c55e33;
  border: 1px solid #22c55e66;
}

.glossary-gallery-status--avoided {
  color: #f87171;
  background: #ef444433;
  border: 1px solid #ef444466;
}

.glossary-gallery-status--base {
  color: #60a5fa;
  background: #3b82f633;
  border: 1px solid #3b82f666;
}

.glossary-gallery-status--accent {
  color: #fb923c;
  background: #f9731633;
  border: 1px solid #f9731666;
}

.glossary-gallery-status--secondary {
  color: #4ade80;
  background: #22c55e33;
  border: 1px solid #22c55e66;
}

.glossary-gallery-status--favorited {
  color: #c084fc;
  background: #a855f733;
  border: 1px solid #a855f766;
}

.glossary-gallery-status-list {
  flex-wrap: wrap;
  gap: .375rem;
  display: flex;
}

.glossary-gallery-note-section {
  background: #ffffff14;
  border: 1px solid #ffffff26;
  border-radius: 2px;
  margin-top: 1rem;
  padding: .75rem;
}

.glossary-gallery-note-header {
  color: #ffffffd9;
  align-items: center;
  gap: .5rem;
  margin-bottom: .5rem;
  font-size: .75rem;
  font-weight: 500;
  display: flex;
}

.glossary-gallery-note-edit-btn {
  color: #ffffff80;
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 2px;
  margin-left: auto;
  padding: .25rem;
  transition: all .2s;
}

.glossary-gallery-note-edit-btn:hover {
  color: #ffffffe6;
  background: #ffffff1a;
}

.glossary-gallery-note-edit {
  flex-direction: column;
  gap: .5rem;
  display: flex;
}

.glossary-gallery-note-input {
  color: #fff;
  resize: none;
  background: #0000004d;
  border: 1px solid #fff3;
  border-radius: 2px;
  width: 100%;
  padding: .5rem;
  font-size: .875rem;
}

.glossary-gallery-note-input:focus {
  border-color: #4ade8080;
  outline: none;
}

.glossary-gallery-note-input::placeholder {
  color: #fff6;
}

.glossary-gallery-note-actions {
  justify-content: flex-end;
  gap: .5rem;
  display: flex;
}

.glossary-gallery-note-cancel {
  color: #ffffffb3;
  cursor: pointer;
  background: none;
  border: 1px solid #fff3;
  border-radius: 2px;
  padding: .375rem .75rem;
  font-size: .75rem;
  transition: all .2s;
}

.glossary-gallery-note-cancel:hover {
  color: #fff;
  background: #ffffff1a;
}

.glossary-gallery-note-save {
  color: #4ade80;
  cursor: pointer;
  background: #4ade8033;
  border: 1px solid #4ade8080;
  border-radius: 2px;
  padding: .375rem .75rem;
  font-size: .75rem;
  transition: all .2s;
}

.glossary-gallery-note-save:hover {
  background: #4ade804d;
}

.glossary-gallery-note-text {
  color: #fff;
  cursor: pointer;
  border-radius: 2px;
  margin: 0;
  padding: .25rem;
  font-size: .875rem;
  line-height: 1.4;
  transition: background .2s;
}

.glossary-gallery-note-text:hover {
  background: #ffffff14;
}

.glossary-gallery-note-add {
  color: #ffffffb3;
  cursor: pointer;
  text-align: center;
  background: none;
  border: 1px dashed #ffffff4d;
  border-radius: 2px;
  width: 100%;
  padding: .5rem;
  font-size: .75rem;
  transition: all .2s;
}

.glossary-gallery-note-add:hover {
  color: #4ade80;
  background: #4ade800d;
  border-color: #4ade8080;
}

.glossary-gallery-actions {
  flex-wrap: nowrap;
  justify-content: flex-start;
  gap: .5rem;
  margin-top: 1.5rem;
  display: flex;
}

@media (max-width: 900px) {
  .glossary-gallery-actions {
    justify-content: center;
  }
}

.glossary-gallery-action-btn {
  cursor: pointer;
  white-space: nowrap;
  border-radius: 2px;
  flex-shrink: 0;
  align-items: center;
  padding: .5rem .875rem;
  font-size: .875rem;
  font-weight: 500;
  transition: all .2s;
  display: inline-flex;
}

.glossary-gallery-action-btn.prefer {
  color: #22c55e;
  background: #22c55e26;
  border: 1px solid #22c55e80;
}

.glossary-gallery-action-btn.prefer:hover:not(:disabled) {
  background: #22c55e40;
}

.glossary-gallery-action-btn.avoid {
  color: #ef4444;
  background: #ef444426;
  border: 1px solid #ef444480;
}

.glossary-gallery-action-btn.avoid:hover:not(:disabled) {
  background: #ef444440;
}

.glossary-gallery-action-btn.neutral {
  color: #9ca3af;
  background: #9ca3af26;
  border: 1px solid #9ca3af80;
}

.glossary-gallery-action-btn.neutral:hover:not(:disabled) {
  background: #9ca3af40;
}

.glossary-gallery-action-btn.base {
  color: #3b82f6;
  background: #3b82f626;
  border: 1px solid #3b82f680;
}

.glossary-gallery-action-btn.base:hover:not(:disabled) {
  background: #3b82f640;
}

.glossary-gallery-action-btn.secondary {
  color: #22c55e;
  background: #22c55e26;
  border: 1px solid #22c55e80;
}

.glossary-gallery-action-btn.secondary:hover:not(:disabled) {
  background: #22c55e40;
}

.glossary-gallery-action-btn.accent {
  color: #f97316;
  background: #f9731626;
  border: 1px solid #f9731680;
}

.glossary-gallery-action-btn.accent:hover:not(:disabled) {
  background: #f9731640;
}

.glossary-gallery-action-btn.favorited {
  color: #a855f7;
  background: #a855f726;
  border: 1px solid #a855f780;
}

.glossary-gallery-action-btn.favorited:hover:not(:disabled) {
  background: #a855f740;
}

.glossary-gallery-action-btn.active {
  font-weight: 600;
  box-shadow: inset 0 0 0 1px;
}

.glossary-gallery-action-btn:disabled {
  opacity: .5;
  cursor: default;
}

.glossary-gallery-hint {
  color: #ffffff80;
  margin-top: 1rem;
  font-size: .75rem;
}

.glossary-gallery-aliases {
  color: #fff9;
  margin-bottom: .5rem;
  font-size: .75rem;
  font-style: italic;
}

.glossary-gallery-long-definition {
  color: #ffffffe6;
  text-align: left;
  max-height: 40vh;
  margin-top: .75rem;
  font-size: .9375rem;
  line-height: 1.6;
  overflow-y: auto;
}

@media (max-width: 900px) {
  .glossary-gallery-long-definition {
    text-align: center;
    max-height: 25vh;
  }
}

.glossary-gallery-content.no-images {
  justify-content: center;
  align-items: center;
  padding-top: 2rem;
}

.glossary-gallery-content.no-images .glossary-gallery-right, .glossary-gallery-content.no-images .glossary-gallery-info {
  text-align: center;
  max-width: 600px;
}

.glossary-gallery-content.no-images .glossary-gallery-title {
  margin-bottom: .5rem;
  font-size: 1.5rem;
}

.glossary-gallery-content.no-images .glossary-gallery-definition {
  color: #ffffffe6;
  font-size: 1rem;
}

.glossary-gallery-content.no-images .glossary-gallery-actions {
  justify-content: center;
}

.style-preview-card {
  aspect-ratio: 4 / 3;
  cursor: pointer;
  background: #f3f4f6;
  border-radius: 2px;
  position: relative;
  overflow: hidden;
}

.dark .style-preview-card {
  background: #374151;
}

.style-preview-card__image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition: transform .3s;
}

.style-preview-card:hover .style-preview-card__image {
  transform: scale(1.05);
}

.style-preview-card__overlay {
  background: linear-gradient(to top, #000000b3, #0000);
  flex-direction: column;
  gap: .125rem;
  padding: .5rem .75rem;
  display: flex;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

.style-preview-card__name {
  color: #fff;
  text-shadow: 0 1px 2px #00000080;
  font-size: .875rem;
  font-weight: 600;
}

.style-preview-card__caption {
  color: #fffc;
  text-shadow: 0 1px 2px #00000080;
  font-size: .75rem;
}

.style-preview-card__nav {
  color: #fff;
  cursor: pointer;
  opacity: 0;
  z-index: 10;
  background: #00000080;
  border: none;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 2rem;
  height: 2rem;
  transition: opacity .2s, background .2s;
  display: flex;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.style-preview-card:hover .style-preview-card__nav {
  opacity: 1;
}

.style-preview-card__nav:hover {
  background: #000000b3;
}

.style-preview-card__nav--prev {
  left: .5rem;
}

.style-preview-card__nav--next {
  right: .5rem;
}

.style-preview-card__counter {
  color: #fff;
  z-index: 5;
  background: #0009;
  border-radius: 2px;
  padding: .125rem .375rem;
  font-size: .625rem;
  position: absolute;
  top: .5rem;
  right: .5rem;
}

.style-preview-card--no-image {
  background: #e5e7eb;
  justify-content: center;
  align-items: center;
  display: flex;
}

.dark .style-preview-card--no-image {
  background: #4b5563;
}

.style-preview-card__placeholder {
  text-align: center;
  padding: 1rem;
}

.style-preview-card--no-image .style-preview-card__name {
  color: #6b7280;
  text-shadow: none;
}

.dark .style-preview-card--no-image .style-preview-card__name {
  color: #9ca3af;
}

.style-preview-grid {
  grid-template-columns: repeat(4, 1fr);
  gap: .75rem;
  display: grid;
}

@media (max-width: 1024px) {
  .style-preview-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 768px) {
  .style-preview-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 480px) {
  .style-preview-grid {
    grid-template-columns: 1fr;
  }
}

.dna-text-notes {
  flex-direction: column;
  gap: 4px;
  margin-top: 8px;
  display: flex;
}

.dna-text-note {
  color: #374151;
  background: #dcfce7;
  border: 1px solid #86efac;
  border-radius: 2px;
  align-items: flex-start;
  gap: 6px;
  padding: 4px 8px;
  font-size: .8125rem;
  line-height: 1.4;
  display: flex;
}

.dark .dna-text-note {
  color: #d1d5db;
  background: #14532d66;
  border-color: #15803d;
}

.dna-text-note__icon {
  color: #15803d;
  flex-shrink: 0;
  font-size: .75rem;
  line-height: 1.5;
}

.dark .dna-text-note__icon {
  color: #86efac;
}

.dna-text-note__text {
  flex: 1;
  min-width: 0;
}

.color-preview-card {
  aspect-ratio: 4 / 3;
  cursor: pointer;
  border-radius: 2px;
  transition: transform .15s;
  position: relative;
  overflow: hidden;
}

.color-preview-card:hover {
  transform: scale(1.02);
}

.color-preview-card__surface {
  background: radial-gradient(120% 80% at 25% 20%, #ffffff1f 0%, #ffffff0a 40%, #0000 70%);
  position: absolute;
  inset: 0;
}

.color-preview-card__image {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.color-preview-card__overlay {
  background: linear-gradient(to top, #000000b3, #0000);
  padding: .5rem .75rem;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

.color-preview-card__name {
  color: #fff;
  text-shadow: 0 1px 2px #00000080;
  font-size: .875rem;
  font-weight: 600;
}

.color-preview-card__nav {
  color: #fff;
  cursor: pointer;
  opacity: 0;
  z-index: 10;
  background: #00000080;
  border: none;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 2rem;
  height: 2rem;
  transition: opacity .2s, background .2s;
  display: flex;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.color-preview-card:hover .color-preview-card__nav {
  opacity: 1;
}

.color-preview-card__nav:hover {
  background: #000000b3;
}

.color-preview-card__nav--prev {
  left: .5rem;
}

.color-preview-card__nav--next {
  right: .5rem;
}

.color-preview-card__counter {
  color: #fff;
  z-index: 5;
  background: #0009;
  border-radius: 2px;
  padding: .125rem .375rem;
  font-size: .625rem;
  position: absolute;
  top: .5rem;
  right: .5rem;
}

.color-preview-grid {
  grid-template-columns: repeat(4, 1fr);
  gap: .75rem;
  display: grid;
}

@media (max-width: 768px) {
  .color-preview-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

.room-addition-badge {
  color: #fff;
  z-index: 5;
  letter-spacing: .025em;
  background: #3b82f6d9;
  border-radius: 2px;
  padding: .125rem .375rem;
  font-size: .625rem;
  font-weight: 600;
  position: absolute;
  top: .25rem;
  left: .25rem;
}

.room-excluded-card {
  opacity: .4;
  filter: grayscale(50%);
  position: relative;
}

.room-additions-zone {
  border: 1px dashed #d1d5db;
  border-radius: 2px;
  padding: .75rem;
}

.dark .room-additions-zone {
  border-color: #4b5563;
}

.room-dna-section-header {
  text-align: left;
  cursor: pointer;
  color: #374151;
  align-items: center;
  gap: .5rem;
  width: 100%;
  padding: .5rem 0;
  transition: color .15s;
  display: flex;
}

.room-dna-section-header:hover {
  color: #111827;
}

.dark .room-dna-section-header {
  color: #d1d5db;
}

.dark .room-dna-section-header:hover {
  color: #f3f4f6;
}

.room-style-preview-grid {
  grid-template-columns: repeat(3, 1fr);
  gap: .75rem;
  display: grid;
}

@media (max-width: 768px) {
  .room-style-preview-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 480px) {
  .room-style-preview-grid {
    grid-template-columns: 1fr;
  }
}

.room-color-swatch {
  cursor: pointer;
  border-radius: 2px;
  flex-shrink: 0;
  width: 60px;
  height: 40px;
  transition: transform .15s;
  position: relative;
}

.room-color-swatch:hover {
  transform: scale(1.08);
}

.room-color-swatch--excluded {
  opacity: .35;
  filter: grayscale(60%);
}

.room-color-swatch__action {
  opacity: 0;
  background: #00000080;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  transition: opacity .15s;
  display: flex;
  position: absolute;
  inset: 0;
}

.room-color-swatch:hover .room-color-swatch__action {
  opacity: 1;
}

.project-dna-glossary-item {
  align-items: center;
  display: inline-flex;
  position: relative;
}

.project-dna-glossary-label {
  background: #f3f4f6;
  border-right: 1px solid #e5e7eb;
  border-radius: 2px 0 0 2px;
  align-items: center;
  gap: .25rem;
  padding: .125rem .375rem;
  font-size: .75rem;
  display: inline-flex;
}

.dark .project-dna-glossary-label {
  background: #374151;
  border-color: #4b5563;
}

.project-dna-color-swatch {
  border: 1px solid #0003;
  border-radius: 2px;
  width: 1rem;
  height: 1rem;
}

.project-dna-info-wrapper {
  align-items: center;
  display: inline-flex;
  position: relative;
}

.project-dna-info-icon {
  color: #9ca3af;
  cursor: help;
  background: none;
  border: none;
  justify-content: center;
  align-items: center;
  margin-left: .125rem;
  padding: .125rem;
  transition: color .15s;
  display: inline-flex;
}

.project-dna-info-icon:hover, .dark .project-dna-info-icon {
  color: #6b7280;
}

.dark .project-dna-info-icon:hover {
  color: #9ca3af;
}

.project-dna-glossary-actions {
  display: inline-flex;
}

.project-dna-action-btn {
  cursor: pointer;
  border: none;
  justify-content: center;
  align-items: center;
  height: 100%;
  min-height: 1.5rem;
  padding: .125rem .25rem;
  font-size: .625rem;
  transition: background-color .15s;
  display: flex;
}

.project-dna-action-btn.prefer {
  color: #16a34a;
  background: #dcfce7;
}

.project-dna-action-btn.prefer:hover {
  background: #bbf7d0;
}

.project-dna-action-btn.prefer.active {
  color: #fff;
  background: #16a34a;
}

.project-dna-action-btn.avoid {
  color: #dc2626;
  background: #fee2e2;
}

.project-dna-action-btn.avoid:hover {
  background: #fecaca;
}

.project-dna-action-btn.avoid.active {
  color: #fff;
  background: #dc2626;
}

.project-dna-action-btn.base {
  color: #2563eb;
  background: #dbeafe;
}

.project-dna-action-btn.base:hover {
  background: #bfdbfe;
}

.project-dna-action-btn.base.active {
  color: #fff;
  background: #2563eb;
}

.project-dna-action-btn.accent {
  color: #ea580c;
  background: #ffedd5;
}

.project-dna-action-btn.accent:hover {
  background: #fed7aa;
}

.project-dna-action-btn.accent.active {
  color: #fff;
  background: #ea580c;
}

.project-dna-action-btn:last-child {
  border-radius: 0 2px 2px 0;
}

.project-dna-action-btn:disabled {
  cursor: default;
}

.dark .project-dna-action-btn.prefer {
  background: #16a34a33;
}

.dark .project-dna-action-btn.prefer:hover {
  background: #16a34a4d;
}

.dark .project-dna-action-btn.avoid {
  background: #dc262633;
}

.dark .project-dna-action-btn.avoid:hover {
  background: #dc26264d;
}

.dark .project-dna-action-btn.base {
  background: #2563eb33;
}

.dark .project-dna-action-btn.base:hover {
  background: #2563eb4d;
}

.dark .project-dna-action-btn.accent {
  background: #ea580c33;
}

.dark .project-dna-action-btn.accent:hover {
  background: #ea580c4d;
}

.project-dna-glossary-tooltip {
  z-index: 50;
  border: 1px solid var(--color-mancave-accent);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  background: #fff;
  border-radius: 2px;
  min-width: 200px;
  max-width: 280px;
  padding: .75rem;
  transition: opacity .15s, transform .15s, visibility .15s;
  position: absolute;
  bottom: calc(100% + .25rem);
  transform: translateY(4px);
  box-shadow: 0 4px 12px #00000026;
}

.project-dna-glossary-tooltip.right {
  left: 0;
}

.project-dna-glossary-tooltip.left {
  left: auto;
  right: 0;
}

.project-dna-glossary-tooltip.visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}

.dark .project-dna-glossary-tooltip {
  background: #1f2937;
  border-color: #4b5563;
}

.project-dna-glossary-tooltip-content {
  align-items: flex-start;
  gap: .75rem;
  display: flex;
}

.project-dna-tooltip-thumbnail-wrapper {
  flex-shrink: 0;
  position: relative;
}

.project-dna-tooltip-thumbnail {
  cursor: zoom-in;
  background: none;
  border: none;
  border-radius: 2px;
  width: 64px;
  height: 48px;
  padding: 0;
  overflow: hidden;
}

.project-dna-tooltip-thumbnail img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition: opacity .2s;
}

.project-dna-tooltip-thumbnail:hover img {
  opacity: .85;
}

.project-dna-tooltip-nav {
  color: #fff;
  cursor: pointer;
  opacity: 0;
  background: #0009;
  border: none;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 16px;
  height: 16px;
  padding: 0;
  transition: opacity .2s;
  display: flex;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.project-dna-tooltip-thumbnail-wrapper:hover .project-dna-tooltip-nav {
  opacity: 1;
}

.project-dna-tooltip-nav:hover {
  background: #000c;
}

.project-dna-tooltip-nav-prev {
  left: 2px;
}

.project-dna-tooltip-nav-next {
  right: 2px;
}

.project-dna-tooltip-counter {
  color: #fff;
  pointer-events: none;
  background: #0009;
  border-radius: 2px;
  padding: 1px 3px;
  font-size: 8px;
  position: absolute;
  bottom: 2px;
  left: 50%;
  transform: translateX(-50%);
}

.project-dna-tooltip-text {
  flex: 1;
  min-width: 0;
  display: block;
}

.project-dna-tooltip-title {
  color: #111827;
  margin-bottom: .125rem;
  font-size: .75rem;
  font-weight: 600;
  display: block;
}

.dark .project-dna-tooltip-title {
  color: #fff;
}

.project-dna-tooltip-aliases {
  color: #6b7280;
  margin-bottom: .25rem;
  font-size: .625rem;
  font-style: italic;
  display: block;
}

.dark .project-dna-tooltip-aliases {
  color: #9ca3af;
}

.project-dna-tooltip-definition {
  color: #4b5563;
  font-size: .625rem;
  line-height: 1.4;
  display: block;
}

.dark .project-dna-tooltip-definition {
  color: #d1d5db;
}

.color-swatch-wrapper {
  width: 60px;
  height: 40px;
  display: inline-block;
  position: relative;
}

.color-swatch-box {
  cursor: pointer;
  border-style: solid;
  border-width: 2px;
  border-radius: 2px;
  width: 100%;
  height: 100%;
  transition: border-color .15s, border-width .15s, box-shadow .15s;
  display: block;
}

.color-swatch-box.selected {
  border-width: 1px;
  box-shadow: inset 0 0 0 1px #fff, inset 0 0 0 2px #000;
  border-color: #000 !important;
}

.dark .color-swatch-box.selected {
  box-shadow: inset 0 0 0 1px #000, inset 0 0 0 2px #fff;
  border-color: #fff !important;
}

.color-swatch-info-icon {
  z-index: 70;
  color: #6b7280;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  background-color: #fffffff2;
  border: none;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 14px;
  height: 14px;
  padding: 0;
  transition: opacity .15s, visibility .15s, transform .15s, background-color .15s, color .15s;
  display: flex;
  position: absolute;
  top: 2px;
  right: 2px;
  transform: scale(.8);
}

.color-swatch-info-icon.visible {
  opacity: 1;
  visibility: visible;
  transform: scale(1);
}

.color-swatch-info-icon:hover {
  color: #374151;
  background-color: #fff;
}

.color-swatch-info-icon svg {
  width: 10px;
  height: 10px;
}

.color-swatch-note-indicator {
  color: #22c55e;
  z-index: 5;
  cursor: pointer;
  background-color: #ffffffe6;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 14px;
  height: 14px;
  display: flex;
  position: absolute;
  bottom: 2px;
  left: 2px;
}

.color-swatch-note-indicator svg {
  width: 10px;
  height: 10px;
}

.color-swatch-wrapper .project-dna-glossary-tooltip {
  margin-bottom: 4px;
  top: auto;
  bottom: 100%;
}

.color-swatch-wrapper .project-dna-glossary-tooltip.right {
  left: 0;
  right: auto;
}

.color-swatch-wrapper .project-dna-glossary-tooltip.left {
  left: auto;
  right: 0;
}

.color-swatch-tooltip {
  z-index: 50;
  white-space: nowrap;
  text-align: center;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  background-color: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  margin-top: 4px;
  padding: .25rem .5rem;
  transition: opacity .15s, transform .15s, visibility .15s;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%)translateY(4px);
  box-shadow: 0 2px 8px #0000001a;
}

.color-swatch-tooltip.visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateX(-50%)translateY(0);
}

.dark .color-swatch-tooltip {
  background-color: #374151;
  border-color: #4b5563;
}

.color-swatch-tooltip-name {
  color: #111827;
  font-size: .6875rem;
  font-weight: 500;
  display: block;
}

.dark .color-swatch-tooltip-name {
  color: #f3f4f6;
}

.color-action-popover {
  z-index: 60;
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  background-color: #fffffff2;
  border-radius: 0 0 2px 2px;
  justify-content: center;
  align-items: center;
  gap: 2px;
  height: 18px;
  transition: opacity .2s, transform .2s, visibility .2s;
  display: flex;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  transform: translateY(100%);
}

.color-action-popover.visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}

.dark .color-action-popover {
  background-color: #374151f2;
}

.color-action-btn {
  color: #6b7280;
  cursor: pointer;
  background-color: #0000;
  border: none;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 16px;
  height: 14px;
  padding: 0;
  font-size: 9px;
  font-weight: 500;
  transition: background-color .15s, color .15s;
  display: flex;
}

.color-action-btn:hover:not(:disabled) {
  background-color: #0000001a;
}

.color-action-btn.base:hover:not(:disabled) {
  color: #1d4ed8;
  background-color: #1d4ed826;
}

.color-action-btn.secondary:hover:not(:disabled) {
  color: #15803d;
  background-color: #15803d26;
}

.color-action-btn.accent:hover:not(:disabled) {
  color: #b45309;
  background-color: #b4530926;
}

.color-action-btn.favorited:hover:not(:disabled) {
  color: #7c3aed;
  background-color: #7c3aed26;
}

.color-action-btn.avoid:hover:not(:disabled) {
  color: #dc2626;
  background-color: #dc262626;
}

.color-action-btn.base.active {
  color: #fff;
  background-color: #1d4ed8;
}

.color-action-btn.secondary.active {
  color: #fff;
  background-color: #15803d;
}

.color-action-btn.accent.active {
  color: #fff;
  background-color: #b45309;
}

.color-action-btn.favorited.active {
  color: #fff;
  background-color: #7c3aed;
}

.color-action-btn.avoid.active {
  color: #fff;
  background-color: #dc2626;
}

.color-action-btn:disabled {
  opacity: .3;
  cursor: default;
}

.color-action-btn svg {
  stroke-width: 1.5px;
  width: 14px;
  height: 14px;
}

.dark .color-action-btn {
  color: #9ca3af;
}

.dark .color-action-btn:hover:not(:disabled) {
  background-color: #ffffff1a;
}

.dark .color-action-btn.base:hover:not(:disabled) {
  color: #93c5fd;
  background-color: #93c5fd33;
}

.dark .color-action-btn.secondary:hover:not(:disabled) {
  color: #86efac;
  background-color: #86efac33;
}

.dark .color-action-btn.accent:hover:not(:disabled) {
  color: #fcd34d;
  background-color: #fcd34d33;
}

.dark .color-action-btn.favorited:hover:not(:disabled) {
  color: #d8b4fe;
  background-color: #d8b4fe33;
}

.dark .color-action-btn.avoid:hover:not(:disabled) {
  color: #fca5a5;
  background-color: #fca5a533;
}

.dark .color-action-btn.base.active {
  color: #fff;
  background-color: #2563eb;
}

.dark .color-action-btn.secondary.active {
  color: #fff;
  background-color: #16a34a;
}

.dark .color-action-btn.accent.active {
  color: #fff;
  background-color: #d97706;
}

.dark .color-action-btn.favorited.active {
  color: #fff;
  background-color: #8b5cf6;
}

.dark .color-action-btn.avoid.active {
  color: #fff;
  background-color: #ef4444;
}

.consensus-toggle {
  color: #9ca3af;
  cursor: pointer;
  background: none;
  border: 1px solid #0000;
  border-radius: 2px;
  align-items: center;
  gap: 4px;
  padding: 2px 8px;
  font-size: .65rem;
  transition: color .15s, border-color .15s;
  display: inline-flex;
}

.consensus-toggle:hover {
  color: var(--color-mancave-button-bg);
  border-color: #d1d5db;
}

.consensus-toggle.active {
  color: var(--color-mancave-button-bg);
  border-color: var(--color-mancave-button-bg);
}

.dark .consensus-toggle {
  color: #6b7280;
}

.dark .consensus-toggle:hover {
  color: #93c5fd;
  border-color: #4b5563;
}

.dark .consensus-toggle.active {
  color: #93c5fd;
  border-color: #60a5fa;
}

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

.consensus-label {
  color: #9ca3af;
  white-space: nowrap;
  flex-basis: 100%;
  order: 99;
  font-size: .6rem;
  font-style: italic;
  font-weight: 400;
  line-height: 1;
}

.dark .consensus-label {
  color: #6b7280;
}

.consensus-label-hover {
  opacity: 0;
  transition: opacity .15s;
}

.group:hover .consensus-label-hover {
  opacity: 1;
}

.style-gallery-modal {
  z-index: 100;
  background: #00000080;
  justify-content: center;
  align-items: center;
  padding: 1rem;
  display: flex;
  position: fixed;
  inset: 0;
}

.propagation-dialog-overlay {
  z-index: 110;
  background: #00000080;
  justify-content: center;
  align-items: center;
  display: flex;
  position: fixed;
  inset: 0;
}

.style-gallery-container {
  background: #fff;
  border-radius: 2px;
  flex-direction: column;
  width: 100%;
  max-width: 1200px;
  height: 90vh;
  display: flex;
  overflow: hidden;
}

.dark .style-gallery-container {
  background: #1f2937;
}

.style-gallery-header {
  border-bottom: 1px solid #e5e7eb;
  flex-shrink: 0;
  align-items: center;
  gap: 1rem;
  padding: 1rem 1.5rem;
  display: flex;
}

.dark .style-gallery-header {
  border-color: #374151;
}

.style-gallery-close {
  color: #6b7280;
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 2px;
  padding: .5rem;
  transition: background-color .15s;
}

.style-gallery-close:hover {
  color: #111827;
  background: #f3f4f6;
}

.dark .style-gallery-close:hover {
  color: #f9fafb;
  background: #374151;
}

.style-gallery-title {
  color: #111827;
  flex: 1;
  font-size: 1.125rem;
  font-weight: 600;
}

.dark .style-gallery-title {
  color: #f9fafb;
}

.style-gallery-search-wrapper {
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 2px;
  align-items: center;
  gap: .5rem;
  padding: .5rem .75rem;
  display: flex;
}

.dark .style-gallery-search-wrapper {
  background: #374151;
  border-color: #4b5563;
}

.style-gallery-search {
  color: #111827;
  background: none;
  border: none;
  outline: none;
  width: 150px;
  font-size: .875rem;
}

.dark .style-gallery-search {
  color: #f9fafb;
}

.style-gallery-search::placeholder {
  color: #9ca3af;
}

.style-gallery-tabs {
  border-bottom: 1px solid #e5e7eb;
  flex-shrink: 0;
  gap: .5rem;
  padding: .75rem 1.5rem;
  display: flex;
  overflow-x: auto;
}

.dark .style-gallery-tabs {
  border-color: #374151;
}

.style-gallery-tab {
  color: #6b7280;
  cursor: pointer;
  white-space: nowrap;
  background: none;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  padding: .5rem .75rem;
  font-size: .75rem;
  font-weight: 500;
  transition: all .15s;
}

.dark .style-gallery-tab {
  color: #9ca3af;
  border-color: #4b5563;
}

.style-gallery-tab:hover {
  color: #111827;
  background: #f3f4f6;
}

.dark .style-gallery-tab:hover {
  color: #f9fafb;
  background: #374151;
}

.style-gallery-tab.active {
  background: var(--color-mancave-button-bg);
  color: #fff;
  border-color: var(--color-mancave-button-bg);
}

.style-gallery-tab.category-preferred {
  background: #16a34a1a;
  border-color: #16a34a;
}

.style-gallery-tab.category-avoided {
  background: #dc26261a;
  border-color: #dc2626;
}

.style-gallery-tab.category-preferred.active, .style-gallery-tab.category-avoided.active {
  background: var(--color-mancave-button-bg);
  border-color: var(--color-mancave-button-bg);
}

.category-preference-bar {
  border-bottom: 1px solid #e5e7eb;
  flex-shrink: 0;
}

.dark .category-preference-bar {
  border-color: #374151;
}

.dark .category-preference-bar > div {
  background: #1f2937;
}

.dark .category-preference-bar span {
  color: #d1d5db;
}

.category-pref-btn {
  color: #4b5563;
  cursor: pointer;
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 2px;
  align-items: center;
  gap: .375rem;
  padding: .375rem .75rem;
  font-size: .75rem;
  font-weight: 500;
  transition: all .15s;
  display: inline-flex;
}

.dark .category-pref-btn {
  color: #d1d5db;
  background: #374151;
  border-color: #4b5563;
}

.category-pref-btn:hover {
  border-color: #9ca3af;
}

.category-pref-btn.prefer {
  color: #fff;
  background: #16a34a;
  border-color: #16a34a;
}

.category-pref-btn.prefer:hover {
  background: #15803d;
  border-color: #15803d;
}

.category-pref-btn.prefer.active {
  background: #14532d;
  border-color: #14532d;
}

.category-pref-btn.avoid {
  color: #fff;
  background: #dc2626;
  border-color: #dc2626;
}

.category-pref-btn.avoid:hover {
  background: #b91c1c;
  border-color: #b91c1c;
}

.category-pref-btn.avoid.active {
  background: #991b1b;
  border-color: #991b1b;
}

.category-pref-btn.neutral {
  color: #6b7280;
  border-color: #6b7280;
}

.category-pref-btn.neutral:hover {
  color: #fff;
  background: #6b7280;
}

.style-gallery-grid {
  flex: 1;
  grid-template-columns: repeat(2, 1fr);
  grid-auto-rows: min-content;
  align-content: start;
  gap: 1rem;
  min-height: 0;
  padding: 1.5rem;
  display: grid;
  overflow-y: auto;
}

@media (min-width: 768px) {
  .style-gallery-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .style-gallery-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (min-width: 1280px) {
  .style-gallery-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}

.style-gallery-card {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  flex-direction: column;
  transition: border-color .15s;
  display: flex;
  overflow: hidden;
}

.dark .style-gallery-card {
  background: #1f2937;
  border-color: #374151;
}

.style-gallery-card.preferred {
  background: #f0fdf4;
  border-color: #22c55e;
}

.dark .style-gallery-card.preferred {
  background: #22c55e1a;
  border-color: #22c55e;
}

.style-gallery-card.avoided {
  background: #fef2f2;
  border-color: #ef4444;
}

.dark .style-gallery-card.avoided {
  background: #ef44441a;
  border-color: #ef4444;
}

.style-gallery-card-image {
  aspect-ratio: 4 / 3;
  cursor: pointer;
  background: #f3f4f6;
  border: none;
  width: 100%;
  padding: 0;
  position: relative;
  overflow: hidden;
}

.dark .style-gallery-card-image {
  background: #374151;
}

.style-gallery-card-image:disabled {
  cursor: default;
}

.style-gallery-card-image img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition: transform .2s;
}

.style-gallery-card-image:not(:disabled):hover img {
  transform: scale(1.05);
}

.style-gallery-placeholder {
  color: #6b7280;
  background: linear-gradient(135deg, #e5e7eb 0%, #d1d5db 100%);
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  font-size: 2rem;
  font-weight: 600;
  display: flex;
}

.dark .style-gallery-placeholder {
  color: #9ca3af;
  background: linear-gradient(135deg, #374151 0%, #4b5563 100%);
}

.style-gallery-status-badge {
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 1.5rem;
  height: 1.5rem;
  font-size: .75rem;
  font-weight: 600;
  display: flex;
  position: absolute;
  top: .5rem;
  right: .5rem;
}

.style-gallery-status-badge.preferred {
  color: #fff;
  background: #22c55e;
}

.style-gallery-status-badge.avoided {
  color: #fff;
  background: #ef4444;
}

.style-gallery-card-info {
  flex: 1;
  min-height: 60px;
  padding: .75rem;
}

.style-gallery-card-name {
  color: #111827;
  margin-bottom: .25rem;
  font-size: .875rem;
  font-weight: 500;
  display: block;
}

.dark .style-gallery-card-name {
  color: #f9fafb;
}

.style-gallery-card-desc {
  color: #6b7280;
  font-size: .7rem;
  line-height: 1.3;
  display: block;
}

.dark .style-gallery-card-desc {
  color: #9ca3af;
}

.style-gallery-card-actions {
  border-top: 1px solid #e5e7eb;
  display: flex;
}

.dark .style-gallery-card-actions {
  border-color: #374151;
}

.style-gallery-action {
  cursor: pointer;
  border: none;
  flex: 1;
  padding: .5rem;
  font-size: .875rem;
  transition: background-color .15s;
}

.style-gallery-action.prefer {
  color: #16a34a;
  background: #dcfce7;
}

.dark .style-gallery-action.prefer {
  color: #4ade80;
  background: #22c55e26;
}

.style-gallery-action.prefer:hover:not(:disabled) {
  background: #bbf7d0;
}

.dark .style-gallery-action.prefer:hover:not(:disabled) {
  background: #22c55e40;
}

.style-gallery-action.prefer.active {
  color: #fff;
  background: #16a34a;
}

.style-gallery-action.neutral {
  color: #6b7280;
  background: #f3f4f6;
  border-left: 1px solid #e5e7eb;
}

.dark .style-gallery-action.neutral {
  color: #9ca3af;
  background: #9ca3af26;
  border-left-color: #374151;
}

.style-gallery-action.neutral:hover {
  background: #e5e7eb;
}

.dark .style-gallery-action.neutral:hover {
  background: #9ca3af40;
}

.style-gallery-action.avoid {
  color: #dc2626;
  background: #fee2e2;
  border-left: 1px solid #e5e7eb;
}

.dark .style-gallery-action.avoid {
  color: #f87171;
  background: #ef444426;
  border-left-color: #374151;
}

.style-gallery-action.avoid:hover:not(:disabled) {
  background: #fecaca;
}

.dark .style-gallery-action.avoid:hover:not(:disabled) {
  background: #ef444440;
}

.style-gallery-action.avoid.active {
  color: #fff;
  background: #dc2626;
}

.style-gallery-action:disabled {
  opacity: .5;
  cursor: default;
}

.style-gallery-footer {
  background: #f9fafb;
  border-top: 1px solid #e5e7eb;
  flex-shrink: 0;
  justify-content: space-between;
  align-items: center;
  padding: 1rem 1.5rem;
  display: flex;
}

.dark .style-gallery-footer {
  background: #111827;
  border-color: #374151;
}

.style-gallery-summary {
  color: #6b7280;
  font-size: .875rem;
}

.dark .style-gallery-summary {
  color: #9ca3af;
}

.style-gallery-summary .preferred {
  color: #16a34a;
  font-weight: 600;
}

.style-gallery-summary .avoided {
  color: #dc2626;
  font-weight: 600;
}

.style-gallery-empty {
  text-align: center;
  color: #6b7280;
  grid-column: 1 / -1;
  padding: 3rem 1rem;
}

.dark .style-gallery-empty {
  color: #9ca3af;
}

.style-gallery-image-switcher {
  background: #f3f4f6;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  align-items: center;
  gap: .25rem;
  padding: .25rem;
  display: flex;
}

.dark .style-gallery-image-switcher {
  background: #1f2937;
  border-color: #374151;
}

.style-gallery-image-switcher-label {
  color: #6b7280;
  padding: 0 .5rem;
  font-size: .75rem;
  font-weight: 500;
}

.dark .style-gallery-image-switcher-label {
  color: #9ca3af;
}

.style-gallery-image-switcher-btn {
  color: #6b7280;
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  min-width: 2rem;
  height: 1.75rem;
  padding: 0 .5rem;
  font-size: .75rem;
  font-weight: 600;
  transition: all .15s;
  display: flex;
}

.dark .style-gallery-image-switcher-btn {
  color: #9ca3af;
}

.style-gallery-image-switcher-btn:hover {
  color: #374151;
  background: #e5e7eb;
}

.dark .style-gallery-image-switcher-btn:hover {
  color: #d1d5db;
  background: #374151;
}

.style-gallery-image-switcher-btn.active {
  background: var(--color-mancave-button-bg);
  color: #fff;
  box-shadow: 0 1px 2px #0000001a;
}

.material-placeholder {
  background: linear-gradient(135deg, #f3f4f6 0%, #e5e7eb 100%);
}

.dark .material-placeholder {
  background: linear-gradient(135deg, #374151 0%, #4b5563 100%);
}

.material-card-image {
  aspect-ratio: 1;
}

.material-gallery-grid {
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
}

@media (min-width: 768px) {
  .material-gallery-grid {
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  }
}

.color-gallery-grid {
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
}

@media (min-width: 768px) {
  .color-gallery-grid {
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  }
}

@media (min-width: 1024px) {
  .color-gallery-grid {
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  }
}

.color-gallery-card.base {
  background: #eff6ff;
  border-color: #3b82f6;
}

.dark .color-gallery-card.base {
  background: #3b82f61a;
  border-color: #3b82f6;
}

.color-gallery-card.accent {
  background: #fffbeb;
  border-color: #f59e0b;
}

.dark .color-gallery-card.accent {
  background: #f59e0b1a;
  border-color: #f59e0b;
}

.color-gallery-card.favorited {
  background: #faf5ff;
  border-color: #a855f7;
}

.dark .color-gallery-card.favorited {
  background: #a855f71a;
  border-color: #a855f7;
}

.color-card-image {
  aspect-ratio: 1;
  cursor: pointer;
  position: relative;
}

.color-card-image img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}

.style-gallery-status-badge.base {
  color: #fff;
  background: #3b82f6;
}

.style-gallery-status-badge.secondary {
  color: #fff;
  background: #22c55e;
}

.style-gallery-status-badge.accent {
  color: #fff;
  background: #f59e0b;
}

.style-gallery-status-badge.favorited {
  color: #fff;
  background: #a855f7;
}

.style-gallery-status-badges {
  gap: .25rem;
  display: flex;
  position: absolute;
  top: .5rem;
  right: .5rem;
}

.style-gallery-status-badges .style-gallery-status-badge {
  position: static;
}

.style-gallery-action.base {
  color: #1d4ed8;
  background: #dbeafe;
}

.dark .style-gallery-action.base {
  color: #60a5fa;
  background: #3b82f626;
}

.style-gallery-action.base:hover:not(:disabled) {
  background: #bfdbfe;
}

.dark .style-gallery-action.base:hover:not(:disabled) {
  background: #3b82f640;
}

.style-gallery-action.base.active {
  color: #fff;
  background: #1d4ed8;
}

.style-gallery-action.secondary {
  color: #15803d;
  background: #dcfce7;
  border-left: 1px solid #e5e7eb;
}

.dark .style-gallery-action.secondary {
  color: #4ade80;
  background: #22c55e26;
  border-left-color: #374151;
}

.style-gallery-action.secondary:hover:not(:disabled) {
  background: #bbf7d0;
}

.dark .style-gallery-action.secondary:hover:not(:disabled) {
  background: #22c55e40;
}

.style-gallery-action.secondary.active {
  color: #fff;
  background: #15803d;
}

.style-gallery-action.accent {
  color: #b45309;
  background: #fef3c7;
  border-left: 1px solid #e5e7eb;
}

.dark .style-gallery-action.accent {
  color: #fbbf24;
  background: #f59e0b26;
  border-left-color: #374151;
}

.style-gallery-action.accent:hover:not(:disabled) {
  background: #fde68a;
}

.dark .style-gallery-action.accent:hover:not(:disabled) {
  background: #f59e0b40;
}

.style-gallery-action.accent.active {
  color: #fff;
  background: #b45309;
}

.style-gallery-action.favorited {
  color: #7c3aed;
  background: #f3e8ff;
  border-left: 1px solid #e5e7eb;
}

.dark .style-gallery-action.favorited {
  color: #c084fc;
  background: #a855f726;
  border-left-color: #374151;
}

.style-gallery-action.favorited:hover:not(:disabled) {
  background: #e9d5ff;
}

.dark .style-gallery-action.favorited:hover:not(:disabled) {
  background: #a855f740;
}

.style-gallery-action.favorited.active {
  color: #fff;
  background: #7c3aed;
}

.style-gallery-summary .base {
  color: #1d4ed8;
  font-weight: 600;
}

.style-gallery-summary .secondary {
  color: #15803d;
  font-weight: 600;
}

.style-gallery-summary .accent {
  color: #b45309;
  font-weight: 600;
}

.style-gallery-summary .favorited {
  color: #7c3aed;
  font-weight: 600;
}

.color-detail-visual {
  flex: none;
  justify-content: center;
  align-items: center;
  max-width: 65%;
  display: flex;
  position: relative;
}

.color-detail-swatch {
  border-radius: 2px;
  gap: .5rem;
  box-shadow: 0 8px 24px #0006;
  flex-direction: column !important;
  flex-shrink: 0 !important;
  justify-content: center !important;
  align-items: center !important;
  width: 500px !important;
  min-width: 500px !important;
  height: 375px !important;
  min-height: 375px !important;
  display: flex !important;
}

.color-detail-swatch-name, .color-detail-swatch-hex {
  flex-shrink: 0;
  display: block;
}

@media (max-width: 900px) {
  .color-detail-visual {
    flex: none;
    width: 100%;
    max-width: 100%;
  }

  .color-detail-swatch {
    aspect-ratio: 4 / 3;
    width: 90vw;
    min-width: auto;
    max-width: 400px;
    height: auto;
    min-height: auto;
  }
}

.color-detail-swatch-name {
  text-transform: capitalize;
  text-shadow: 0 1px 2px #0000001a;
  margin-bottom: .5rem;
  font-size: 1.75rem;
  font-weight: 600;
}

.color-detail-swatch-hex {
  text-transform: uppercase;
  font-family: ui-monospace, monospace;
  font-size: 1rem;
}

.color-detail-swatch-small {
  align-items: center;
  gap: .5rem;
  margin-top: .5rem;
  margin-bottom: .75rem;
  display: flex;
}

.color-detail-swatch-chip {
  border: 1px solid #0000001a;
  border-radius: 2px;
  width: 1.5rem;
  height: 1.5rem;
  display: inline-block;
}

.dark .color-detail-swatch-chip {
  border-color: #ffffff26;
}

.color-detail-swatch-label {
  text-transform: uppercase;
  color: #6b7280;
  font-family: ui-monospace, monospace;
  font-size: .875rem;
}

.dark .color-detail-swatch-label {
  color: #9ca3af;
}

.mw-button-section {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  padding: 1.5rem;
}

.dark .mw-button-section {
  background: #1f2937;
  border-color: #374151;
}

.mw-button-header {
  align-items: flex-start;
  gap: .75rem;
  margin-bottom: 1rem;
  display: flex;
}

.mw-button-icon {
  color: var(--color-mancave-button-bg);
  flex-shrink: 0;
  margin-top: .125rem;
  font-size: 1.25rem;
}

.mw-button-text {
  flex-direction: column;
  gap: .125rem;
  display: flex;
}

.mw-button-title {
  color: #111827;
  font-size: 1rem;
  font-weight: 600;
}

.dark .mw-button-title {
  color: #f9fafb;
}

.mw-button-subtitle {
  color: #6b7280;
  font-size: .875rem;
}

.dark .mw-button-subtitle {
  color: #9ca3af;
}

.mw-start-button {
  margin-bottom: .5rem;
}

.mw-source-info {
  color: #6b7280;
  margin: 0;
  font-size: .8125rem;
}

.dark .mw-source-info {
  color: #9ca3af;
}

.mw-source-info-list {
  flex-direction: column;
  gap: .125rem;
  display: flex;
}

.mw-disabled-hint {
  color: #9ca3af;
  margin: 0;
  font-size: .8125rem;
}

.mw-confidence-badge {
  white-space: nowrap;
  align-items: center;
  gap: .375rem;
  font-size: .75rem;
  font-weight: 500;
  display: inline-flex;
}

.mw-confidence-dot {
  border-radius: 50%;
  flex-shrink: 0;
  width: .5rem;
  height: .5rem;
}

.mw-confidence-high .mw-confidence-dot {
  background-color: #16a34a;
}

.mw-confidence-high {
  color: #16a34a;
}

.mw-confidence-medium .mw-confidence-dot {
  background-color: #d97706;
}

.mw-confidence-medium {
  color: #d97706;
}

.mw-confidence-low .mw-confidence-dot {
  background-color: #9ca3af;
}

.mw-confidence-low {
  color: #6b7280;
}

.mw-modal-backdrop {
  z-index: 50;
  background-color: #00000080;
  justify-content: center;
  align-items: center;
  padding: 1rem;
  display: flex;
  position: fixed;
  inset: 0;
}

.mw-modal {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  flex-direction: column;
  width: 100%;
  max-width: 48rem;
  max-height: 90vh;
  display: flex;
}

.dark .mw-modal {
  background: #1f2937;
  border-color: #374151;
}

.mw-modal-header {
  border-bottom: 1px solid #e5e7eb;
  justify-content: space-between;
  align-items: center;
  padding: 1.25rem 1.5rem;
  display: flex;
}

.dark .mw-modal-header {
  border-bottom-color: #374151;
}

.mw-modal-title {
  color: #111827;
  margin: 0;
  font-size: 1.125rem;
  font-weight: 600;
}

.dark .mw-modal-title {
  color: #f9fafb;
}

.mw-modal-close {
  cursor: pointer;
  color: #6b7280;
  background: none;
  border: none;
  padding: .25rem;
  font-size: 1.5rem;
  line-height: 1;
}

.mw-modal-close:hover {
  color: #111827;
}

.dark .mw-modal-close:hover {
  color: #f9fafb;
}

.mw-modal-body {
  flex: 1;
  padding: 1.5rem;
  overflow-y: auto;
}

.mw-modal-subtitle {
  color: #6b7280;
  margin: 0 0 1.25rem;
  font-size: .875rem;
}

.dark .mw-modal-subtitle {
  color: #9ca3af;
}

.mw-modal-footer {
  border-top: 1px solid #e5e7eb;
  justify-content: flex-end;
  gap: .75rem;
  padding: 1rem 1.5rem;
  display: flex;
}

.dark .mw-modal-footer {
  border-top-color: #374151;
}

.mw-loading {
  color: #6b7280;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  padding: 3rem 0;
  display: flex;
}

.mw-loading-spinner {
  border: 2px solid #e5e7eb;
  border-top-color: var(--color-mancave-button-bg);
  border-radius: 50%;
  width: 2rem;
  height: 2rem;
  animation: .8s linear infinite mw-spin;
}

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

.mw-success {
  text-align: center;
  color: #16a34a;
  padding: 2rem 0;
}

.mw-error {
  text-align: center;
  color: #dc2626;
  padding: 2rem 0;
}

.mw-no-suggestions {
  text-align: center;
  padding: 2rem 0;
}

.mw-no-suggestions-title {
  color: #111827;
  margin: 0 0 .5rem;
  font-size: 1rem;
  font-weight: 600;
}

.dark .mw-no-suggestions-title {
  color: #f9fafb;
}

.mw-no-suggestions-hint {
  color: #6b7280;
  margin: 0;
  font-size: .875rem;
}

.mw-global-actions {
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1rem;
  padding: .75rem;
  display: flex;
}

.dark .mw-global-actions {
  background: #111827;
  border-color: #374151;
}

.mw-global-actions-buttons {
  gap: .75rem;
  display: flex;
}

.mw-btn-text {
  color: var(--color-mancave-button-bg);
  cursor: pointer;
  background: none;
  border: none;
  padding: .25rem 0;
  font-size: .8125rem;
  font-weight: 500;
}

.mw-btn-text:hover {
  text-decoration: underline;
}

.mw-btn-secondary {
  color: #374151;
  cursor: pointer;
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 2px;
  padding: .5rem 1rem;
  font-size: .875rem;
}

.mw-btn-secondary:hover {
  background: #f9fafb;
}

.dark .mw-btn-secondary {
  color: #e5e7eb;
  background: #374151;
  border-color: #4b5563;
}

.dark .mw-btn-secondary:hover {
  background: #4b5563;
}

.mw-accepted-count {
  color: #6b7280;
  font-size: .8125rem;
  font-weight: 500;
}

.mw-suggestion-group {
  margin-bottom: 1.5rem;
}

.mw-suggestion-group-header {
  border-bottom: 1px solid #e5e7eb;
  justify-content: space-between;
  align-items: center;
  margin-bottom: .75rem;
  padding: .5rem 0;
  display: flex;
}

.dark .mw-suggestion-group-header {
  border-bottom-color: #374151;
}

.mw-suggestion-group-title {
  align-items: center;
  gap: .5rem;
  display: flex;
}

.mw-suggestion-group-name {
  color: #111827;
  font-size: .9375rem;
  font-weight: 600;
}

.dark .mw-suggestion-group-name {
  color: #f9fafb;
}

.mw-suggestion-group-count {
  color: #6b7280;
  font-size: .75rem;
}

.mw-suggestion-group-toggle {
  color: var(--color-mancave-button-bg);
  cursor: pointer;
  background: none;
  border: none;
  font-size: .75rem;
}

.mw-suggestion-group-toggle:hover {
  text-decoration: underline;
}

.mw-suggestion-group-list {
  flex-direction: column;
  gap: .75rem;
  display: flex;
}

.mw-suggestion-row {
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  padding: 1rem;
  transition: border-color .15s;
}

.mw-suggestion-row-accepted {
  border-color: #bbf7d0;
}

.dark .mw-suggestion-row {
  border-color: #374151;
}

.dark .mw-suggestion-row-accepted {
  border-color: #166534;
}

.mw-suggestion-header {
  justify-content: space-between;
  align-items: center;
  margin-bottom: .75rem;
  display: flex;
}

.mw-suggestion-checkbox-label {
  cursor: pointer;
  align-items: center;
  gap: .5rem;
  display: flex;
}

.mw-suggestion-checkbox {
  width: 1rem;
  height: 1rem;
  accent-color: var(--color-mancave-button-bg);
  cursor: pointer;
}

.mw-suggestion-field-label {
  color: #111827;
  font-size: .9375rem;
  font-weight: 500;
}

.dark .mw-suggestion-field-label {
  color: #f9fafb;
}

.mw-suggestion-body {
  padding-left: 1.5rem;
}

.mw-suggestion-reason {
  color: #374151;
  margin: .5rem 0;
  font-size: .8125rem;
  line-height: 1.5;
}

.dark .mw-suggestion-reason {
  color: #d1d5db;
}

.mw-suggestion-source {
  color: #9ca3af;
  margin: .25rem 0 0;
  font-size: .75rem;
}

.mw-diff {
  flex-direction: column;
  gap: .375rem;
  display: flex;
}

.mw-diff-row {
  align-items: flex-start;
  gap: .5rem;
  display: flex;
}

.mw-diff-label {
  color: #9ca3af;
  flex-shrink: 0;
  width: 5.5rem;
  padding-top: .125rem;
  font-size: .75rem;
}

.mw-diff-value {
  flex: 1;
  min-width: 0;
}

.mw-empty-value {
  color: #d1d5db;
  font-size: .8125rem;
  font-style: italic;
}

.mw-chip-list {
  flex-wrap: wrap;
  gap: .375rem;
  display: flex;
}

.mw-chip {
  border-radius: 2px;
  align-items: center;
  gap: .25rem;
  max-width: 100%;
  padding: .1875rem .5rem;
  font-size: .8125rem;
  display: inline-flex;
}

.mw-chip-current {
  color: #374151;
  background: #f3f4f6;
  border: 1px solid #e5e7eb;
}

.dark .mw-chip-current {
  color: #e5e7eb;
  background: #374151;
  border-color: #4b5563;
}

.mw-chip-suggested {
  color: #065f46;
  background: #ecfdf5;
  border: 1px solid #a7f3d0;
}

.dark .mw-chip-suggested {
  color: #a7f3d0;
  background: #064e3b;
  border-color: #065f46;
}

.mw-chip-avoid {
  color: #991b1b;
  background: #fef2f2;
  border: 1px solid #fca5a5;
}

.dark .mw-chip-avoid {
  color: #fca5a5;
  background: #7f1d1d;
  border-color: #991b1b;
}

.mw-chip-thumb {
  object-fit: cover;
  border-radius: 2px;
  width: 1.5rem;
  height: 1.5rem;
}

.mw-color-swatch {
  border: 1px solid #00000026;
  border-radius: 2px;
  flex-shrink: 0;
  width: .875rem;
  height: .875rem;
  display: inline-block;
}

.mw-color-preview-grid {
  grid-template-columns: repeat(3, 1fr);
  gap: .5rem;
}

.mw-color-tile--suggested .color-preview-card {
  outline-offset: -2px;
  outline: 2px solid #10b981;
}

.mw-color-tile--avoid .color-preview-card {
  outline-offset: -2px;
  outline: 2px solid #ef4444;
}

.mw-chip-descriptive {
  border-style: dashed;
  font-style: italic;
}

.mw-scalar-value {
  color: #374151;
  font-size: .8125rem;
}

.dark .mw-scalar-value {
  color: #e5e7eb;
}

.mw-conflict-hints {
  margin-top: .5rem;
}

.mw-conflict-hint {
  color: #92400e;
  background: #fffbeb;
  border: 1px solid #fde68a;
  border-radius: 2px;
  margin-top: .375rem;
  padding: .375rem .625rem;
  font-size: .75rem;
}

.dark .mw-conflict-hint {
  color: #fde68a;
  background: #451a03;
  border-color: #92400e;
}

.mw-conflict-hint-label {
  font-weight: 600;
}

.mw-conflict-hint-note {
  color: #b45309;
  margin-top: .125rem;
  font-style: italic;
  display: block;
}

.dark .mw-conflict-hint-note {
  color: #fbbf24;
}

.mw-rejection-note {
  margin-top: .5rem;
  padding-left: 1.5rem;
}

.mw-rejection-note-prompt {
  color: #9ca3af;
  margin-bottom: .25rem;
  font-size: .75rem;
  display: block;
}

.mw-rejection-note-input {
  color: #374151;
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 2px;
  width: 100%;
  padding: .375rem .5rem;
  font-size: .8125rem;
}

.mw-rejection-note-input:focus {
  border-color: var(--color-mancave-button-bg);
  outline: none;
}

.dark .mw-rejection-note-input {
  color: #e5e7eb;
  background: #111827;
  border-color: #4b5563;
}

.dark .mw-rejection-note-input:focus {
  border-color: #60a5fa;
}

.mw-apply-mode-fieldset {
  border: none;
  margin: 1.5rem 0 0;
  padding: 0;
}

.mw-apply-mode-legend {
  color: #111827;
  margin-bottom: .75rem;
  font-size: .9375rem;
  font-weight: 600;
}

.dark .mw-apply-mode-legend {
  color: #f9fafb;
}

.mw-apply-mode-options {
  flex-direction: column;
  gap: .5rem;
  display: flex;
}

.mw-apply-mode-option {
  cursor: pointer;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  align-items: flex-start;
  gap: .625rem;
  padding: .75rem;
  transition: border-color .15s;
  display: flex;
}

.mw-apply-mode-option:hover {
  border-color: #d1d5db;
}

.mw-apply-mode-option-selected {
  border-color: var(--color-mancave-button-bg);
  background: #f0f9ff;
}

.dark .mw-apply-mode-option {
  border-color: #374151;
}

.dark .mw-apply-mode-option:hover {
  border-color: #4b5563;
}

.dark .mw-apply-mode-option-selected {
  background: #172554;
  border-color: #60a5fa;
}

.mw-apply-mode-radio {
  accent-color: var(--color-mancave-button-bg);
  margin-top: .1875rem;
}

.mw-apply-mode-content {
  flex-direction: column;
  gap: .125rem;
  display: flex;
}

.mw-apply-mode-label {
  color: #111827;
  font-size: .875rem;
  font-weight: 500;
}

.dark .mw-apply-mode-label {
  color: #f9fafb;
}

.mw-apply-mode-recommended {
  color: #16a34a;
  font-size: .75rem;
  font-weight: 400;
}

.mw-apply-mode-desc {
  color: #6b7280;
  font-size: .8125rem;
  line-height: 1.4;
}

.dark .mw-apply-mode-desc {
  color: #9ca3af;
}

.mw-modal-wide {
  max-width: 56rem;
}

.rwand-modal-header-content {
  align-items: flex-start;
  gap: .75rem;
  display: flex;
}

.rwand-modal-icon {
  color: var(--color-mancave-button-bg);
  flex-shrink: 0;
  margin-top: .125rem;
  font-size: 1.25rem;
}

.rwand-error-banner {
  color: #991b1b;
  background: #fef2f2;
  border: 1px solid #fecaca;
  border-radius: 2px;
  margin-bottom: 1rem;
  padding: .75rem 1rem;
  font-size: .875rem;
}

.dark .rwand-error-banner {
  color: #fca5a5;
  background: #450a0a;
  border-color: #7f1d1d;
}

.rwand-phase-a {
  flex-direction: column;
  gap: 1.5rem;
  display: flex;
}

.rwand-section {
  flex-direction: column;
  gap: .75rem;
  display: flex;
}

.rwand-section-title {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: #6b7280;
  font-size: .8125rem;
  font-weight: 600;
}

.dark .rwand-section-title {
  color: #9ca3af;
}

.rwand-member-list {
  flex-direction: column;
  gap: .625rem;
  display: flex;
}

.rwand-member-row {
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  align-items: center;
  gap: .75rem;
  padding: .75rem;
  transition: opacity .15s;
  display: flex;
}

.dark .rwand-member-row {
  background: #111827;
  border-color: #374151;
}

.rwand-member-disabled {
  opacity: .5;
}

.rwand-member-checkbox {
  cursor: pointer;
  flex-shrink: 0;
  align-items: center;
  gap: .5rem;
  min-width: 8rem;
  display: flex;
}

.rwand-member-checkbox input[type="checkbox"] {
  width: 1rem;
  height: 1rem;
  accent-color: var(--color-mancave-button-bg);
  cursor: pointer;
  flex-shrink: 0;
}

.rwand-member-name {
  color: #111827;
  white-space: nowrap;
  font-size: .9375rem;
  font-weight: 500;
}

.dark .rwand-member-name {
  color: #f9fafb;
}

.rwand-member-type {
  color: #9ca3af;
  font-size: .75rem;
  font-weight: 400;
}

.rwand-pet-hint {
  color: #6b7280;
  margin-left: .25rem;
  font-size: .75rem;
}

.dark .rwand-pet-hint {
  color: #9ca3af;
}

.rwand-slider-container {
  flex: 1;
  align-items: center;
  gap: .625rem;
  min-width: 0;
  display: flex;
}

.rwand-slider {
  appearance: none;
  cursor: pointer;
  background: #d1d5db;
  border-radius: 2px;
  outline: none;
  flex: 1;
  height: 4px;
}

.rwand-slider::-webkit-slider-thumb {
  appearance: none;
  background: var(--color-mancave-button-bg);
  cursor: pointer;
  border-radius: 50%;
  width: 14px;
  height: 14px;
}

.rwand-slider::-moz-range-thumb {
  background: var(--color-mancave-button-bg);
  cursor: pointer;
  border: none;
  border-radius: 50%;
  width: 14px;
  height: 14px;
}

.dark .rwand-slider {
  background: #4b5563;
}

.rwand-weight-display {
  color: var(--color-mancave-button-bg);
  text-align: right;
  font-variant-numeric: tabular-nums;
  min-width: 2.5rem;
  font-size: .8125rem;
  font-weight: 600;
}

.dark .rwand-weight-display {
  color: #60a5fa;
}

.rwand-actions {
  border-top: 1px solid #e5e7eb;
  justify-content: flex-end;
  gap: .75rem;
  padding-top: .75rem;
  display: flex;
}

.dark .rwand-actions {
  border-top-color: #374151;
}

.rwand-phase-b {
  flex-direction: column;
  gap: 1.25rem;
  display: flex;
}

.rwand-weight-summary {
  background: #f0f9ff;
  border: 1px solid #bae6fd;
  border-radius: 2px;
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem;
  padding: .75rem 1rem;
  font-size: .875rem;
  display: flex;
}

.dark .rwand-weight-summary {
  background: #0c2340;
  border-color: #1e3a5f;
}

.rwand-weight-summary-label {
  color: #0369a1;
  margin-right: .25rem;
  font-weight: 600;
}

.dark .rwand-weight-summary-label {
  color: #38bdf8;
}

.rwand-weight-chip {
  color: #374151;
  align-items: center;
  gap: .25rem;
  font-size: .8125rem;
  display: inline-flex;
}

.dark .rwand-weight-chip {
  color: #d1d5db;
}

.rwand-change-weights-link {
  color: var(--color-mancave-button-bg);
  cursor: pointer;
  text-underline-offset: 2px;
  background: none;
  border: none;
  margin-left: auto;
  padding: 0;
  font-size: .8125rem;
  text-decoration: underline;
}

.rwand-change-weights-link:hover {
  color: var(--color-mancave-accent);
}

.dark .rwand-change-weights-link {
  color: #60a5fa;
}

.dark .rwand-change-weights-link:hover {
  color: #93c5fd;
}

.rwand-text-summary {
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  padding: 1rem;
}

.dark .rwand-text-summary {
  background: #111827;
  border-color: #374151;
}

.rwand-text-summary-title {
  color: #374151;
  margin: 0 0 .5rem;
  font-size: .8125rem;
  font-weight: 600;
}

.dark .rwand-text-summary-title {
  color: #d1d5db;
}

.rwand-text-summary-body {
  color: #4b5563;
  white-space: pre-line;
  margin: 0;
  font-size: .875rem;
  line-height: 1.5;
}

.dark .rwand-text-summary-body {
  color: #9ca3af;
}

.rwand-empty {
  text-align: center;
  color: #6b7280;
  padding: 2rem 1rem;
}

.rwand-empty-hint {
  color: #9ca3af;
  margin-top: .5rem;
  font-size: .875rem;
}

.rwand-suggestions {
  flex-direction: column;
  gap: 1.25rem;
  display: flex;
}

.rwand-category-group {
  flex-direction: column;
  gap: .5rem;
  display: flex;
}

.rwand-category-title {
  color: #111827;
  border-bottom: 1px solid #e5e7eb;
  align-items: center;
  gap: .5rem;
  padding-bottom: .375rem;
  font-size: .875rem;
  font-weight: 600;
  display: flex;
}

.dark .rwand-category-title {
  color: #f9fafb;
  border-bottom-color: #374151;
}

.rwand-category-count {
  color: #9ca3af;
  font-size: .75rem;
  font-weight: 400;
}

.rwand-suggestion-list {
  flex-direction: column;
  gap: .375rem;
  display: flex;
}

.rwand-actions-split {
  border-top: 1px solid #e5e7eb;
  justify-content: space-between;
  align-items: center;
  gap: .75rem;
  padding-top: .75rem;
  display: flex;
}

.dark .rwand-actions-split {
  border-top-color: #374151;
}

.rwand-cancel-button {
  color: #374151;
  cursor: pointer;
  background: none;
  border: 1px solid #d1d5db;
  border-radius: 2px;
  padding: .5rem 1rem;
  font-size: .875rem;
}

.rwand-cancel-button:hover {
  background: #f3f4f6;
  border-color: #9ca3af;
}

.dark .rwand-cancel-button {
  color: #d1d5db;
  border-color: #4b5563;
}

.dark .rwand-cancel-button:hover {
  background: #1f2937;
  border-color: #6b7280;
}

.rwand-sug-row {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  grid-template-columns: 2rem 1fr 5rem;
  align-items: start;
  gap: .625rem;
  padding: .625rem .75rem;
  transition: background .1s;
  display: grid;
}

.dark .rwand-sug-row {
  background: #1f2937;
  border-color: #374151;
}

.rwand-sug-row:hover {
  background: #f9fafb;
}

.dark .rwand-sug-row:hover {
  background: #111827;
}

.rwand-sug-already-applied {
  background: #f0fdf4;
  border-color: #bbf7d0;
}

.dark .rwand-sug-already-applied {
  background: #052e16;
  border-color: #166534;
}

.rwand-sug-rejected {
  opacity: .6;
}

.rwand-sug-weak {
  opacity: .75;
}

.rwand-sug-check {
  justify-content: center;
  align-items: center;
  padding-top: .125rem;
  display: flex;
}

.rwand-sug-check-icon {
  font-size: 1rem;
  line-height: 1;
}

.rwand-sug-check-done {
  color: #16a34a;
  font-weight: 700;
}

.rwand-sug-check-rejected {
  color: #9ca3af;
  font-weight: 700;
}

.rwand-sug-checkbox {
  width: 1rem;
  height: 1rem;
  accent-color: var(--color-mancave-button-bg);
  cursor: pointer;
}

.rwand-sug-content {
  flex-direction: column;
  gap: .25rem;
  min-width: 0;
  display: flex;
}

.rwand-sug-chip {
  border: 1px solid;
  border-radius: 2px;
  align-items: center;
  gap: .375rem;
  padding: .1875rem .625rem;
  font-size: .8125rem;
  font-weight: 500;
  line-height: 1.4;
  display: inline-flex;
}

.rwand-sug-chip-stil {
  color: #15803d;
  background-color: #f0fdf4;
  border-color: #bbf7d0;
}

.dark .rwand-sug-chip-stil {
  color: #86efac;
  background-color: #22c55e1f;
  border-color: #22c55e4d;
}

.rwand-sug-chip-material {
  color: #1d4ed8;
  background-color: #eff6ff;
  border-color: #bfdbfe;
}

.dark .rwand-sug-chip-material {
  color: #93c5fd;
  background-color: #3b82f61f;
  border-color: #3b82f64d;
}

.rwand-sug-chip-farbe {
  color: #c2410c;
  background-color: #fff7ed;
  border-color: #fed7aa;
}

.dark .rwand-sug-chip-farbe {
  color: #fdba74;
  background-color: #fb923c1f;
  border-color: #fb923c4d;
}

.rwand-sug-chip-nogo {
  color: #dc2626;
  background-color: #fef2f2;
  border-color: #fecaca;
}

.dark .rwand-sug-chip-nogo {
  color: #fca5a5;
  background-color: #ef44441f;
  border-color: #ef44444d;
}

.rwand-sug-chip-dimmed {
  opacity: .5;
  text-decoration: line-through;
}

.rwand-sug-color-dot {
  border: 1px solid #00000026;
  border-radius: 2px;
  flex-shrink: 0;
  width: .875rem;
  height: .875rem;
}

.dark .rwand-sug-color-dot {
  border-color: #fff3;
}

.rwand-sug-category-icon {
  opacity: .6;
  font-size: .5rem;
  line-height: 1;
}

.rwand-sug-badge {
  border-radius: 2px;
  width: fit-content;
  padding: .125rem .5rem;
  font-size: .6875rem;
  font-weight: 500;
  display: inline-block;
}

.rwand-sug-badge-applied {
  color: #166534;
  background: #dcfce7;
}

.dark .rwand-sug-badge-applied {
  color: #4ade80;
  background: #052e16;
}

.rwand-sug-badge-rejected {
  color: #6b7280;
  background: #f3f4f6;
}

.dark .rwand-sug-badge-rejected {
  color: #9ca3af;
  background: #1f2937;
}

.rwand-sug-badge-recommended {
  color: #1e40af;
  background: #dbeafe;
}

.dark .rwand-sug-badge-recommended {
  color: #60a5fa;
  background: #1e3a5f;
}

.rwand-sug-badge-neutral {
  color: #92400e;
  background: #fef3c7;
}

.dark .rwand-sug-badge-neutral {
  color: #fbbf24;
  background: #451a03;
}

.rwand-sug-badge-weak {
  color: #6b7280;
  background: #f3f4f6;
}

.dark .rwand-sug-badge-weak {
  color: #9ca3af;
  background: #1f2937;
}

.rwand-sug-badge-prev-accepted {
  color: #15803d;
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
}

.dark .rwand-sug-badge-prev-accepted {
  color: #4ade80;
  background: #052e16;
  border-color: #166534;
}

.rwand-show-again-link {
  color: var(--color-mancave-button-bg);
  cursor: pointer;
  text-underline-offset: 2px;
  background: none;
  border: none;
  width: fit-content;
  padding: 0;
  font-size: .75rem;
  text-decoration: underline;
}

.rwand-show-again-link:hover {
  color: var(--color-mancave-accent);
}

.dark .rwand-show-again-link {
  color: #60a5fa;
}

.dark .rwand-show-again-link:hover {
  color: #93c5fd;
}

.rwand-sug-breakdown {
  flex-wrap: wrap;
  gap: .5rem;
  margin-top: .125rem;
  display: flex;
}

.rwand-sug-member-score {
  color: #6b7280;
  font-variant-numeric: tabular-nums;
  font-size: .75rem;
}

.dark .rwand-sug-member-score {
  color: #9ca3af;
}

.rwand-sug-reason {
  color: #4b5563;
  margin: .125rem 0 0;
  font-size: .8125rem;
  line-height: 1.4;
}

.dark .rwand-sug-reason {
  color: #9ca3af;
}

.rwand-sug-score {
  align-items: center;
  padding-top: .125rem;
  display: flex;
}

.rwand-score-bar-container {
  background: #e5e7eb;
  border-radius: 2px;
  width: 100%;
  height: 1rem;
  position: relative;
  overflow: hidden;
}

.dark .rwand-score-bar-container {
  background: #374151;
}

.rwand-score-bar-fill {
  background: var(--color-mancave-button-bg);
  border-radius: 2px;
  height: 100%;
  transition: width .3s;
  position: absolute;
  top: 0;
  left: 0;
}

.rwand-score-bar-muted {
  background: #9ca3af;
}

.dark .rwand-score-bar-muted {
  background: #4b5563;
}

.rwand-score-bar-label {
  color: #fff;
  text-shadow: 0 0 2px #0000004d;
  font-variant-numeric: tabular-nums;
  justify-content: center;
  align-items: center;
  font-size: .625rem;
  font-weight: 600;
  display: flex;
  position: absolute;
  inset: 0;
}

.sri-modal-backdrop {
  z-index: 50;
  background: #00000080;
  justify-content: center;
  align-items: center;
  padding: 1rem;
  display: flex;
  position: fixed;
  inset: 0;
}

.sri-modal-container {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  flex-direction: column;
  width: 100%;
  max-width: 680px;
  max-height: 85vh;
  display: flex;
  overflow: hidden;
}

.dark .sri-modal-container {
  background: #1f2937;
  border-color: #374151;
}

.sri-header {
  border-bottom: 1px solid #e5e7eb;
  flex-shrink: 0;
  padding: 1.25rem 1.5rem;
}

.dark .sri-header {
  border-color: #374151;
}

.sri-header-title {
  color: #111827;
  align-items: center;
  gap: .5rem;
  font-size: 1.0625rem;
  font-weight: 600;
  display: flex;
}

.dark .sri-header-title {
  color: #f9fafb;
}

.sri-header-icon {
  color: #d97706;
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
}

.sri-header-description {
  color: #6b7280;
  margin-top: .5rem;
  font-size: .875rem;
  line-height: 1.5;
}

.dark .sri-header-description {
  color: #9ca3af;
}

.sri-removed-source {
  color: #374151;
  align-items: center;
  gap: .375rem;
  margin-top: .75rem;
  font-size: .8125rem;
  display: flex;
}

.dark .sri-removed-source {
  color: #d1d5db;
}

.sri-removed-source-label {
  color: #6b7280;
  flex-shrink: 0;
}

.dark .sri-removed-source-label {
  color: #9ca3af;
}

.sri-removed-source-name {
  font-weight: 500;
}

.sri-body {
  flex: 1;
  padding: 1rem 1.5rem;
  overflow-y: auto;
}

.sri-section {
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  overflow: hidden;
}

.sri-section + .sri-section {
  margin-top: .75rem;
}

.dark .sri-section {
  border-color: #374151;
}

.sri-section-header {
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  background: #f9fafb;
  border-bottom: 1px solid #e5e7eb;
  justify-content: space-between;
  align-items: center;
  padding: .625rem .75rem;
  display: flex;
}

.sri-section-header:hover {
  background: #f3f4f6;
}

.dark .sri-section-header {
  background: #111827;
  border-color: #374151;
}

.dark .sri-section-header:hover {
  background: #1a2332;
}

.sri-section-title {
  color: #111827;
  align-items: center;
  gap: .375rem;
  font-size: .875rem;
  font-weight: 600;
  display: flex;
}

.dark .sri-section-title {
  color: #f9fafb;
}

.sri-section-count {
  color: #6b7280;
  font-size: .75rem;
  font-weight: 400;
}

.dark .sri-section-count {
  color: #9ca3af;
}

.sri-section-chevron {
  color: #9ca3af;
  width: 1rem;
  height: 1rem;
  transition: transform .15s;
}

.sri-section-chevron-open {
  transform: rotate(180deg);
}

.sri-section-body {
  padding: 0;
}

.sri-section-info {
  color: #6b7280;
  background: #fefce8;
  border-bottom: 1px solid #e5e7eb;
  padding: .5rem .75rem;
  font-size: .8125rem;
}

.sri-section-info-confirmed {
  background: #f0fdf4;
}

.dark .sri-section-info {
  color: #fde68a;
  background: #422006;
  border-color: #374151;
}

.dark .sri-section-info-confirmed {
  color: #86efac;
  background: #052e16;
}

.sri-field-group {
  padding: .5rem .75rem 0;
}

.sri-field-group:last-child {
  padding-bottom: .5rem;
}

.sri-field-label {
  text-transform: uppercase;
  letter-spacing: .025em;
  color: #9ca3af;
  padding-bottom: .25rem;
  font-size: .75rem;
  font-weight: 500;
}

.dark .sri-field-label {
  color: #6b7280;
}

.sri-value-row {
  align-items: flex-start;
  gap: .5rem;
  padding: .375rem 0;
  display: flex;
}

.sri-value-row + .sri-value-row {
  border-top: 1px solid #f3f4f6;
}

.dark .sri-value-row + .sri-value-row {
  border-top-color: #1f2937;
}

.sri-value-checkbox {
  flex-shrink: 0;
  margin-top: .125rem;
}

.sri-value-content {
  flex: 1;
  min-width: 0;
}

.sri-value-name {
  color: #111827;
  font-size: .875rem;
  font-weight: 500;
}

.dark .sri-value-name {
  color: #f9fafb;
}

.sri-source-label {
  color: #9ca3af;
  margin-top: .125rem;
  font-size: .75rem;
}

.dark .sri-source-label {
  color: #6b7280;
}

.sri-source-label-highlight {
  color: #d97706;
}

.dark .sri-source-label-highlight {
  color: #fbbf24;
}

.sri-source-label-confirmed {
  color: #16a34a;
}

.dark .sri-source-label-confirmed {
  color: #4ade80;
}

.sri-value-row-confirmed {
  align-items: flex-start;
  gap: .5rem;
  padding: .375rem 0;
  display: flex;
}

.sri-value-row-confirmed + .sri-value-row-confirmed {
  border-top: 1px solid #f3f4f6;
}

.dark .sri-value-row-confirmed + .sri-value-row-confirmed {
  border-top-color: #1f2937;
}

.sri-confirmed-icon {
  color: #16a34a;
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
  margin-top: .125rem;
}

.dark .sri-confirmed-icon {
  color: #4ade80;
}

.sri-footer {
  border-top: 1px solid #e5e7eb;
  flex-shrink: 0;
  justify-content: space-between;
  align-items: center;
  gap: .75rem;
  padding: 1rem 1.5rem;
  display: flex;
}

.dark .sri-footer {
  border-color: #374151;
}

.sri-footer-actions {
  align-items: center;
  gap: .5rem;
  display: flex;
}

.sri-btn-keep {
  color: #374151;
  cursor: pointer;
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 2px;
  padding: .5rem 1rem;
  font-size: .875rem;
  font-weight: 500;
}

.sri-btn-keep:hover {
  background: #f9fafb;
  border-color: #9ca3af;
}

.dark .sri-btn-keep {
  color: #d1d5db;
  background: #374151;
  border-color: #4b5563;
}

.dark .sri-btn-keep:hover {
  background: #4b5563;
}

.sri-btn-remove {
  color: #fff;
  cursor: pointer;
  background: #dc2626;
  border: 1px solid #dc2626;
  border-radius: 2px;
  padding: .5rem 1rem;
  font-size: .875rem;
  font-weight: 500;
}

.sri-btn-remove:hover {
  background: #b91c1c;
  border-color: #b91c1c;
}

.sri-btn-remove:disabled {
  opacity: .5;
  cursor: not-allowed;
}

.dark .sri-btn-remove {
  background: #991b1b;
  border-color: #991b1b;
}

.dark .sri-btn-remove:hover {
  background: #7f1d1d;
  border-color: #7f1d1d;
}

.sri-btn-proceed {
  color: #fff;
  background: var(--color-mancave-button-bg);
  border: 1px solid var(--color-mancave-button-bg);
  cursor: pointer;
  border-radius: 2px;
  padding: .5rem 1rem;
  font-size: .875rem;
  font-weight: 500;
}

.sri-btn-proceed:hover {
  opacity: .9;
}

.sri-btn-proceed:disabled {
  opacity: .5;
  cursor: not-allowed;
}

.sri-info-note {
  color: #9ca3af;
  align-items: flex-start;
  gap: .375rem;
  font-size: .75rem;
  line-height: 1.4;
  display: flex;
}

.dark .sri-info-note {
  color: #6b7280;
}

.sri-info-note-icon {
  flex-shrink: 0;
  width: .875rem;
  height: .875rem;
  margin-top: .0625rem;
}

.sri-no-orphans {
  text-align: center;
  padding: 1.5rem;
}

.sri-no-orphans-icon {
  color: #16a34a;
  width: 2rem;
  height: 2rem;
  margin: 0 auto .75rem;
}

.dark .sri-no-orphans-icon {
  color: #4ade80;
}

.sri-no-orphans-title {
  color: #111827;
  font-size: .9375rem;
  font-weight: 600;
}

.dark .sri-no-orphans-title {
  color: #f9fafb;
}

.sri-no-orphans-description {
  color: #6b7280;
  margin-top: .25rem;
  font-size: .8125rem;
}

.dark .sri-no-orphans-description {
  color: #9ca3af;
}

.dna-star {
  cursor: pointer;
  opacity: .3;
  color: #d4a017;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 14px;
  height: 14px;
  transition: opacity .15s;
  display: inline-flex;
}

.group:hover .dna-star {
  opacity: .45;
}

.dna-star:hover {
  opacity: 1 !important;
}

.dna-star--active {
  opacity: .7 !important;
}

.dna-star--active:hover {
  opacity: 1 !important;
}

.dna-star-indicator {
  color: #d4a017;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 28px;
  height: 28px;
  display: inline-flex;
}

.dna-star-indicator svg {
  stroke: #fff;
  stroke-width: 3px;
  paint-order: stroke fill;
}

.dna-star-indicator--inline {
  width: 16px;
  height: 16px;
}

.dna-star-indicator--inline svg {
  stroke-width: 1.5px;
}

.dark .dna-star, .dark .dna-star-indicator {
  color: #f0c040;
}

.dna-star-limit-toast {
  z-index: 100;
  color: #92400e;
  background-color: #fffbeb;
  border: 1px solid #fbbf24;
  border-radius: 2px;
  padding: .5rem 1rem;
  font-size: .75rem;
  animation: .2s ease-out dna-toast-in;
  position: fixed;
  bottom: 1.5rem;
  left: 50%;
  transform: translateX(-50%);
  box-shadow: 0 1px 3px #0000001a;
}

.dark .dna-star-limit-toast {
  color: #fef3c7;
  background-color: #78350f;
  border-color: #b45309;
}

@keyframes dna-toast-in {
  from {
    opacity: 0;
    transform: translateX(-50%)translateY(8px);
  }

  to {
    opacity: 1;
    transform: translateX(-50%)translateY(0);
  }
}

.sidebar-tab-layout {
  flex-direction: row;
  align-items: flex-start;
  gap: 1.5rem;
  min-height: 400px;
  display: flex;
}

.sidebar-tab-nav {
  flex-direction: column;
  flex-shrink: 0;
  gap: 2px;
  width: 160px;
  display: flex;
}

.sidebar-tab-nav button {
  color: #6b7280;
  text-align: left;
  white-space: nowrap;
  cursor: pointer;
  background: none;
  border: 1px solid #0000;
  border-radius: 2px;
  align-items: center;
  gap: .5rem;
  padding: .625rem .75rem;
  font-size: .8125rem;
  font-weight: 500;
  transition: color .15s, background .15s, border-color .15s;
  display: flex;
}

.sidebar-tab-nav button:hover {
  color: #111827;
  background: #f9fafb;
}

.sidebar-tab-nav button:focus-visible {
  outline-offset: 2px;
  outline: 2px solid #02426d59;
}

.sidebar-tab-nav button[aria-selected="true"] {
  color: var(--color-mancave-button-bg);
  background: #02426d0f;
  border-color: #02426d26;
  font-weight: 600;
}

.sidebar-tab-content {
  flex: 1;
  min-width: 0;
}

.sidebar-tab-add-button {
  color: #9ca3af;
  text-align: left;
  cursor: pointer;
  white-space: nowrap;
  background: none;
  border: 1px dashed #d1d5db;
  border-radius: 2px;
  align-items: center;
  gap: .5rem;
  margin-top: .5rem;
  padding: .5rem .75rem;
  font-size: .75rem;
  font-weight: 500;
  transition: color .15s, border-color .15s, background .15s;
  display: flex;
}

.sidebar-tab-add-button:hover {
  color: var(--color-mancave-button-bg);
  border-color: var(--color-mancave-button-bg);
  background: #02426d0a;
}

.sidebar-tab-add-button:focus-visible {
  outline-offset: 2px;
  outline: 2px solid #02426d59;
}

.dark .sidebar-tab-add-button {
  color: #6b7280;
  border-color: #4b5563;
}

.dark .sidebar-tab-add-button:hover {
  color: #60a5fa;
  background: #60a5fa14;
  border-color: #60a5fa;
}

.dark .sidebar-tab-add-button:focus-visible {
  outline-color: #60a5fa80;
}

.sidebar-tab-edit-icon {
  color: #9ca3af;
  border-radius: 2px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  padding: 2px;
  transition: color .15s, background .15s;
  display: none;
}

.sidebar-tab-edit-icon:hover {
  color: var(--color-mancave-button-bg);
  background: #02426d14;
}

.sidebar-tab-nav button:hover .sidebar-tab-edit-icon, .sidebar-tab-nav button:focus-within .sidebar-tab-edit-icon {
  display: flex;
}

.dark .sidebar-tab-nav button {
  color: #9ca3af;
}

.dark .sidebar-tab-nav button:hover {
  color: #f3f4f6;
  background: #374151;
}

.dark .sidebar-tab-nav button:focus-visible {
  outline-color: #60a5fa80;
}

.dark .sidebar-tab-nav button[aria-selected="true"] {
  color: #60a5fa;
  background: #60a5fa1a;
  border-color: #60a5fa33;
}

.dark .sidebar-tab-edit-icon {
  color: #6b7280;
}

.dark .sidebar-tab-edit-icon:hover {
  color: #60a5fa;
  background: #60a5fa1f;
}

@media (max-width: 768px) {
  .sidebar-tab-layout {
    flex-direction: column;
    gap: 1rem;
  }

  .sidebar-tab-nav {
    flex-direction: row;
    gap: 4px;
    width: 100%;
    padding-bottom: 4px;
    overflow-x: auto;
  }

  .sidebar-tab-edit-icon {
    display: flex;
  }
}

.dna-pipeline-columns {
  grid-template-columns: 1fr 1fr;
  gap: 1.5rem;
  display: grid;
}

@media (max-width: 900px) {
  .dna-pipeline-columns {
    grid-template-columns: 1fr;
  }
}

.dna-pipeline-column {
  border: 1px solid var(--border-color, #e5e7eb);
  background: #fff;
  border-radius: 2px;
  padding: 1.5rem;
}

.dark .dna-pipeline-column {
  background: #1f2937;
  border-color: #374151;
}

.dna-pipeline-column-header {
  border-bottom: 1px solid #e5e7eb;
  align-items: center;
  gap: .75rem;
  margin-bottom: 1rem;
  padding-bottom: .75rem;
  display: flex;
}

.dark .dna-pipeline-column-header {
  border-bottom-color: #374151;
}

.dna-pipeline-column-header h3 {
  color: #111827;
  font-size: .875rem;
  font-weight: 600;
}

.dark .dna-pipeline-column-header h3 {
  color: #f3f4f6;
}

.dna-pipeline-flow-arrow {
  color: #9ca3af;
  justify-content: center;
  padding: .75rem 0;
  display: flex;
}

.dark .dna-pipeline-flow-arrow {
  color: #6b7280;
}

.inspiration-dropzone {
  text-align: center;
  cursor: pointer;
  border: 1px dashed #d1d5db;
  border-radius: 2px;
  padding: 2rem;
  transition: border-color .15s, background-color .15s;
}

.dark .inspiration-dropzone {
  border-color: #4b5563;
}

.inspiration-dropzone:hover {
  background-color: #f9fafb;
  border-color: #9ca3af;
}

.dark .inspiration-dropzone:hover {
  background-color: #1f2937;
  border-color: #6b7280;
}

.inspiration-dropzone--active {
  background-color: #eff6ff;
  border-color: #3b82f6;
}

.dark .inspiration-dropzone--active {
  background-color: #3b82f61a;
  border-color: #60a5fa;
}

.inspiration-thumbnail-grid {
  grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
  gap: .5rem;
  display: grid;
}

.inspiration-thumbnail {
  aspect-ratio: 1;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  position: relative;
  overflow: hidden;
}

.dark .inspiration-thumbnail {
  border-color: #374151;
}

.inspiration-thumbnail img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.inspiration-thumbnail-delete {
  color: #fff;
  cursor: pointer;
  opacity: 0;
  background: #00000080;
  border: none;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 1.25rem;
  height: 1.25rem;
  font-size: .75rem;
  line-height: 1;
  transition: opacity .15s;
  display: flex;
  position: absolute;
  top: .25rem;
  right: .25rem;
}

.inspiration-thumbnail:hover .inspiration-thumbnail-delete {
  opacity: 1;
}

.inspiration-thumbnail-status--pending {
  color: #fbbf24;
  text-align: center;
  background: #00000080;
  padding: .125rem;
  font-size: .625rem;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

.inspiration-thumbnail-status--analyzed {
  color: #34d399;
  text-align: center;
  background: #00000080;
  padding: .125rem;
  font-size: .625rem;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

.inspiration-thumbnail-status--failed {
  color: #f87171;
  text-align: center;
  background: #00000080;
  padding: .125rem;
  font-size: .625rem;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

.inspiration-color-swatch {
  color: #374151;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  align-items: center;
  gap: .375rem;
  padding: .25rem .5rem;
  font-size: .75rem;
  display: inline-flex;
}

.dark .inspiration-color-swatch {
  color: #d1d5db;
  border-color: #4b5563;
}

.inspiration-color-dot {
  border: 1px solid #0000001a;
  border-radius: 2px;
  width: .75rem;
  height: .75rem;
}

.inspiration-confidence-badge {
  text-transform: uppercase;
  letter-spacing: .025em;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  align-items: center;
  gap: .25rem;
  padding: .125rem .5rem;
  font-size: .625rem;
  font-weight: 500;
  display: inline-flex;
}

.dark .inspiration-confidence-badge {
  border-color: #4b5563;
}

.inspiration-confidence-badge--high {
  color: #059669;
  background-color: #ecfdf5;
  border-color: #a7f3d0;
}

.dark .inspiration-confidence-badge--high {
  color: #34d399;
  background-color: #0596691a;
  border-color: #064e3b;
}

.inspiration-confidence-badge--medium {
  color: #d97706;
  background-color: #fffbeb;
  border-color: #fde68a;
}

.dark .inspiration-confidence-badge--medium {
  color: #fbbf24;
  background-color: #d977061a;
  border-color: #78350f;
}

.inspiration-confidence-badge--low {
  color: #6b7280;
  background-color: #f9fafb;
  border-color: #e5e7eb;
}

.dark .inspiration-confidence-badge--low {
  color: #9ca3af;
  background-color: #6b72801a;
  border-color: #374151;
}

.inspiration-contradiction-banner {
  color: #92400e;
  background-color: #fffbeb;
  border: 1px solid #fde68a;
  border-radius: 2px;
  align-items: flex-start;
  gap: .5rem;
  padding: .75rem;
  font-size: .8125rem;
  display: flex;
}

.dark .inspiration-contradiction-banner {
  color: #fbbf24;
  background-color: #92400e1a;
  border-color: #78350f;
}

.inspiration-cost-display {
  color: #6b7280;
  background-color: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  align-items: center;
  gap: .375rem;
  padding: .25rem .75rem;
  font-size: .75rem;
  display: inline-flex;
}

.dark .inspiration-cost-display {
  color: #9ca3af;
  background-color: #111827;
  border-color: #374151;
}

.inspiration-member-tabs {
  border-bottom: 1px solid #e5e7eb;
  gap: 0;
  margin-bottom: 1rem;
  display: flex;
}

.dark .inspiration-member-tabs {
  border-bottom-color: #374151;
}

.inspiration-member-tab {
  color: #6b7280;
  cursor: pointer;
  background: none;
  border: none;
  border-bottom: 2px solid #0000;
  padding: .5rem 1rem;
  font-size: .8125rem;
  transition: color .15s, border-color .15s;
}

.dark .inspiration-member-tab {
  color: #9ca3af;
}

.inspiration-member-tab:hover {
  color: #374151;
}

.dark .inspiration-member-tab:hover {
  color: #d1d5db;
}

.inspiration-member-tab--active {
  color: #02426d;
  border-bottom-color: #02426d;
  font-weight: 500;
}

.dark .inspiration-member-tab--active {
  color: #60a5fa;
  border-bottom-color: #60a5fa;
}

.stilprofil-card {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
}

.dark .stilprofil-card {
  background: #1f2937;
  border-color: #374151;
}

.stilprofil-headline {
  color: #111827;
  font-size: .9375rem;
  font-weight: 600;
  line-height: 1.4;
}

.dark .stilprofil-headline {
  color: #f3f4f6;
}

.stilprofil-section {
  border-bottom: 1px solid #f3f4f6;
  padding-bottom: .75rem;
}

.stilprofil-section:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.dark .stilprofil-section {
  border-bottom-color: #374151;
}

.stilprofil-section-title {
  color: #6b7280;
  text-transform: uppercase;
  letter-spacing: .05em;
  margin-bottom: .375rem;
  font-size: .75rem;
  font-weight: 600;
}

.dark .stilprofil-section-title {
  color: #9ca3af;
}

.stilprofil-generating {
  align-items: center;
  gap: .5rem;
  display: flex;
}

.stilprofil-stale-indicator {
  color: #d97706;
}

.dark .stilprofil-stale-indicator {
  color: #fbbf24;
}

.stilprofil-stale-banner {
  color: #92400e;
  background: #fffbeb;
  border-bottom: 1px solid #fde68a;
  align-items: center;
  gap: .5rem;
  padding: .5rem 1rem;
  font-size: .75rem;
  display: flex;
}

.dark .stilprofil-stale-banner {
  color: #fbbf24;
  background: #92400e1a;
  border-bottom-color: #92400e4d;
}

.stilprofil-feedback-bar {
  border-top: 1px solid #e5e7eb;
  justify-content: space-between;
  align-items: center;
  padding: .75rem 1rem;
  display: flex;
}

.dark .stilprofil-feedback-bar {
  border-top-color: #374151;
}

.stilprofil-feedback-modal {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  width: 100%;
  max-width: 28rem;
  padding: 1.5rem;
}

.dark .stilprofil-feedback-modal {
  background: #1f2937;
  border-color: #374151;
}

.stilprofil-readiness-dot {
  border-radius: 50%;
  flex-shrink: 0;
  width: .5rem;
  height: .5rem;
  margin-top: .375rem;
}

.stilprofil-readiness-dot--red {
  background: #ef4444;
}

.stilprofil-readiness-dot--amber {
  background: #f59e0b;
}

.stilprofil-readiness-dot--green {
  background: #22c55e;
}

.stilprofil-readiness-sources {
  background: #f9fafb;
  border: 1px solid #f3f4f6;
  border-radius: 2px;
  padding: .75rem;
}

.dark .stilprofil-readiness-sources {
  background: #111827;
  border-color: #1f2937;
}

.room-context-bar {
  background-color: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 2px;
  padding: .75rem 1rem;
}

.dark .room-context-bar {
  background-color: #1e293b;
  border-color: #334155;
}

.room-pill-nav {
  flex-wrap: wrap;
  gap: .375rem;
  display: flex;
}

.room-pill-tab {
  white-space: nowrap;
  color: #64748b;
  background-color: #f1f5f9;
  border: 1px solid #0000;
  border-radius: 2px;
  align-items: center;
  gap: .375rem;
  padding: .25rem .75rem;
  font-size: .8125rem;
  font-weight: 500;
  line-height: 1.5;
  transition: background-color .15s, color .15s, border-color .15s;
  display: inline-flex;
}

.room-pill-tab:hover {
  color: #475569;
  background-color: #e2e8f0;
}

.room-pill-tab--active {
  background-color: var(--color-mancave-button-bg);
  color: #fff;
  border-color: var(--color-mancave-button-bg);
}

.room-pill-tab--active:hover {
  background-color: var(--color-mancave-button-bg);
  color: #fff;
}

.dark .room-pill-tab {
  color: #94a3b8;
  background-color: #334155;
}

.dark .room-pill-tab:hover {
  color: #cbd5e1;
  background-color: #475569;
}

.dark .room-pill-tab--active {
  color: #fff;
  background-color: #3b82f6;
  border-color: #3b82f6;
}

.dark .room-pill-tab--active:hover {
  color: #fff;
  background-color: #3b82f6;
}

.mr-modal-backdrop {
  z-index: 9999;
  background-color: #000000b3;
  justify-content: center;
  align-items: center;
  display: flex;
  position: fixed;
  inset: 0;
}

.mr-modal {
  background-color: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 2px;
  flex-direction: column;
  width: 90vw;
  max-width: 1600px;
  height: 90vh;
  display: flex;
  position: relative;
  overflow: hidden;
}

.dark .mr-modal {
  background-color: #1e293b;
  border-color: #334155;
}

.mr-header {
  background-color: #f8fafc;
  border-bottom: 1px solid #e2e8f0;
  flex-shrink: 0;
  justify-content: space-between;
  align-items: center;
  padding: .75rem 1rem;
  display: flex;
}

.dark .mr-header {
  background-color: #0f172a;
  border-color: #334155;
}

.mr-header-title {
  color: #1e293b;
  font-size: .9375rem;
  font-weight: 600;
}

.dark .mr-header-title {
  color: #f1f5f9;
}

.mr-header-counter {
  color: #64748b;
  font-size: .8125rem;
}

.dark .mr-header-counter {
  color: #94a3b8;
}

.mr-header-close {
  color: #64748b;
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 2rem;
  height: 2rem;
  transition: background-color .15s, color .15s;
  display: flex;
}

.mr-header-close:hover {
  color: #1e293b;
  background-color: #e2e8f0;
}

.dark .mr-header-close {
  color: #94a3b8;
}

.dark .mr-header-close:hover {
  color: #f1f5f9;
  background-color: #334155;
}

.mr-body {
  flex: 1;
  min-height: 0;
  display: flex;
  overflow: hidden;
}

.mr-sidebar {
  background-color: #f8fafc;
  border-right: 1px solid #e2e8f0;
  flex-shrink: 0;
  width: 280px;
  padding: 1rem;
  overflow-y: auto;
}

.dark .mr-sidebar {
  background-color: #0f172a;
  border-color: #334155;
}

.mr-sidebar-title {
  color: #1e293b;
  align-items: center;
  gap: .5rem;
  margin-bottom: .75rem;
  font-size: .8125rem;
  font-weight: 600;
  display: flex;
}

.dark .mr-sidebar-title {
  color: #f1f5f9;
}

.mr-checklist-item {
  color: #475569;
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  align-items: flex-start;
  gap: .5rem;
  padding: .375rem 0;
  font-size: .8125rem;
  display: flex;
}

.mr-checklist-item:hover {
  color: #1e293b;
}

.dark .mr-checklist-item {
  color: #94a3b8;
}

.dark .mr-checklist-item:hover {
  color: #f1f5f9;
}

.mr-checklist-item input[type="checkbox"] {
  accent-color: var(--color-mancave-button-bg);
  flex-shrink: 0;
  margin-top: .125rem;
}

.mr-canvas-area {
  flex-direction: column;
  flex: 1;
  min-width: 0;
  display: flex;
  overflow: hidden;
}

.mr-toolbar {
  background-color: #f8fafc;
  border-bottom: 1px solid #e2e8f0;
  flex-wrap: wrap;
  flex-shrink: 0;
  align-items: center;
  gap: .25rem;
  padding: .375rem .75rem;
  display: flex;
}

.dark .mr-toolbar {
  background-color: #0f172a;
  border-color: #334155;
}

.mr-toolbar-separator {
  background-color: #e2e8f0;
  width: 1px;
  height: 1.5rem;
  margin: 0 .25rem;
}

.dark .mr-toolbar-separator {
  background-color: #334155;
}

.mr-toolbar-btn {
  color: #475569;
  cursor: pointer;
  white-space: nowrap;
  background: none;
  border: 1px solid #0000;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  gap: .25rem;
  min-width: 2rem;
  height: 2rem;
  padding: 0 .375rem;
  font-size: .75rem;
  font-weight: 500;
  transition: background-color .15s, color .15s, border-color .15s;
  display: inline-flex;
}

.mr-toolbar-btn:hover {
  color: #1e293b;
  background-color: #e2e8f0;
}

.mr-toolbar-btn:disabled {
  opacity: .4;
  cursor: not-allowed;
}

.mr-toolbar-btn:disabled:hover {
  color: #475569;
  background: none;
}

.mr-toolbar-btn--active {
  background-color: var(--color-mancave-button-bg);
  color: #fff;
  border-color: var(--color-mancave-button-bg);
}

.mr-toolbar-btn--active:hover {
  background-color: var(--color-mancave-button-bg);
  color: #fff;
}

.dark .mr-toolbar-btn {
  color: #94a3b8;
}

.dark .mr-toolbar-btn:hover {
  color: #f1f5f9;
  background-color: #334155;
}

.dark .mr-toolbar-btn:disabled:hover {
  color: #94a3b8;
  background: none;
}

.dark .mr-toolbar-btn--active {
  color: #fff;
  background-color: #3b82f6;
  border-color: #3b82f6;
}

.mr-toolbar-btn--pulse {
  animation: 1.2s ease-in-out infinite mr-pulse;
}

@keyframes mr-pulse {
  0%, 100% {
    opacity: 1;
  }

  50% {
    opacity: .4;
  }
}

.mr-toolbar-zoom-label {
  color: #475569;
  cursor: default;
  -webkit-user-select: none;
  user-select: none;
  justify-content: center;
  align-items: center;
  min-width: 2.5rem;
  height: 2rem;
  padding: 0 .25rem;
  font-size: .75rem;
  font-weight: 500;
  display: inline-flex;
}

.dark .mr-toolbar-zoom-label {
  color: #94a3b8;
}

.mr-brush-size-group {
  gap: 2px;
  margin-left: 4px;
  display: inline-flex;
}

.mr-brush-size-btn {
  color: #64748b;
  cursor: pointer;
  background: none;
  border: 1px solid #cbd5e1;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 1.5rem;
  height: 1.5rem;
  font-size: .6875rem;
  font-weight: 600;
  transition: background-color .15s, color .15s, border-color .15s;
  display: inline-flex;
}

.mr-brush-size-btn:hover {
  color: #1e293b;
  background-color: #e2e8f0;
  border-color: #94a3b8;
}

.mr-brush-size-btn--active {
  background-color: var(--color-mancave-button-bg);
  color: #fff;
  border-color: var(--color-mancave-button-bg);
}

.mr-brush-size-btn--active:hover {
  background-color: var(--color-mancave-button-bg);
  color: #fff;
}

.dark .mr-brush-size-btn {
  color: #94a3b8;
  border-color: #475569;
}

.dark .mr-brush-size-btn:hover {
  color: #f1f5f9;
  background-color: #334155;
  border-color: #64748b;
}

.dark .mr-brush-size-btn--active {
  color: #fff;
  background-color: #3b82f6;
  border-color: #3b82f6;
}

.mr-export-toggle {
  border: 1px solid #e2e8f0;
  border-radius: 2px;
  margin-left: auto;
  display: inline-flex;
  overflow: hidden;
}

.dark .mr-export-toggle {
  border-color: #334155;
}

.mr-export-toggle-btn {
  color: #64748b;
  cursor: pointer;
  background: none;
  border: none;
  padding: .25rem .625rem;
  font-size: .75rem;
  font-weight: 500;
  transition: background-color .15s, color .15s;
}

.mr-export-toggle-btn:hover {
  color: #1e293b;
  background-color: #f1f5f9;
}

.mr-export-toggle-btn--active, .mr-export-toggle-btn--active:hover {
  background-color: var(--color-mancave-button-bg);
  color: #fff;
}

.dark .mr-export-toggle-btn {
  color: #94a3b8;
}

.dark .mr-export-toggle-btn:hover {
  color: #f1f5f9;
  background-color: #1e293b;
}

.dark .mr-export-toggle-btn--active {
  color: #fff;
  background-color: #3b82f6;
}

.mr-filmstrip {
  background-color: #f8fafc;
  border-bottom: 1px solid #e2e8f0;
  flex-shrink: 0;
  align-items: center;
  min-height: 44px;
  display: flex;
}

.dark .mr-filmstrip {
  background-color: #0f172a;
  border-bottom-color: #334155;
}

.mr-filmstrip-arrow {
  color: #64748b;
  cursor: pointer;
  background: none;
  border: none;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 1.5rem;
  height: 100%;
  padding: 0;
  font-size: .875rem;
  display: flex;
}

.mr-filmstrip-arrow:hover {
  color: #1e293b;
  background-color: #e2e8f0;
}

.mr-filmstrip-arrow:disabled {
  opacity: .3;
  cursor: default;
}

.mr-filmstrip-arrow:disabled:hover {
  color: #64748b;
  background: none;
}

.dark .mr-filmstrip-arrow {
  color: #94a3b8;
}

.dark .mr-filmstrip-arrow:hover {
  color: #f1f5f9;
  background-color: #1e293b;
}

.dark .mr-filmstrip-arrow:disabled {
  opacity: .3;
}

.dark .mr-filmstrip-arrow:disabled:hover {
  color: #94a3b8;
  background: none;
}

.mr-filmstrip-scroll {
  scrollbar-width: thin;
  flex: 1;
  align-items: center;
  gap: 6px;
  padding: 6px 8px;
  display: flex;
  overflow-x: auto;
}

.mr-filmstrip-scroll::-webkit-scrollbar {
  height: 4px;
}

.mr-filmstrip-scroll::-webkit-scrollbar-thumb {
  background-color: #cbd5e1;
  border-radius: 2px;
}

.dark .mr-filmstrip-scroll::-webkit-scrollbar-thumb {
  background-color: #475569;
}

.mr-filmstrip-thumb {
  cursor: pointer;
  border: 1px solid #e2e8f0;
  border-radius: 2px;
  flex-shrink: 0;
  min-width: 36px;
  height: 48px;
  transition: border-color .15s;
  position: relative;
  overflow: hidden;
}

.mr-filmstrip-thumb:hover {
  border-color: #94a3b8;
}

.mr-filmstrip-thumb--active {
  border-color: var(--color-mancave-button-bg);
  border-width: 2px;
}

.mr-filmstrip-thumb--active:hover {
  border-color: var(--color-mancave-button-bg);
}

.dark .mr-filmstrip-thumb {
  border-color: #334155;
}

.dark .mr-filmstrip-thumb:hover {
  border-color: #64748b;
}

.dark .mr-filmstrip-thumb--active, .dark .mr-filmstrip-thumb--active:hover {
  border-color: #3b82f6;
}

.mr-filmstrip-thumb img {
  object-fit: cover;
  width: auto;
  height: 100%;
  display: block;
}

.mr-filmstrip-status {
  pointer-events: none;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 14px;
  height: 14px;
  font-size: .5625rem;
  line-height: 1;
  display: flex;
  position: absolute;
  top: 2px;
  right: 2px;
}

.mr-filmstrip-status--reviewed {
  color: #fff;
  background-color: #22c55e;
}

.mr-filmstrip-status--unsaved {
  background-color: #f97316;
  border-radius: 50%;
}

.mr-filmstrip-separator {
  background-color: #cbd5e1;
  flex-shrink: 0;
  width: 1px;
  height: 2rem;
}

.dark .mr-filmstrip-separator {
  background-color: #475569;
}

.mr-filmstrip-placeholder {
  color: #94a3b8;
  background-color: #e2e8f0;
  border-radius: 2px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  min-width: 36px;
  height: 48px;
  font-size: .625rem;
  display: flex;
}

.dark .mr-filmstrip-placeholder {
  color: #64748b;
  background-color: #1e293b;
}

.mr-canvas-container {
  cursor: crosshair;
  background-color: #e2e8f0;
  flex: 1;
  position: relative;
  overflow: hidden;
}

.dark .mr-canvas-container {
  background-color: #1e293b;
}

.mr-canvas-container--select {
  cursor: default;
}

.mr-canvas-container--brush {
  cursor: none;
}

.mr-canvas-loading {
  color: #64748b;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: .75rem;
  font-size: .8125rem;
  display: flex;
  position: absolute;
  inset: 0;
}

.dark .mr-canvas-loading {
  color: #94a3b8;
}

.mr-footer {
  background-color: #f8fafc;
  border-top: 1px solid #e2e8f0;
  flex-shrink: 0;
  justify-content: flex-end;
  align-items: center;
  gap: .5rem;
  padding: .75rem 1rem;
  display: flex;
}

.dark .mr-footer {
  background-color: #0f172a;
  border-color: #334155;
}

.mr-footer-btn {
  color: #475569;
  cursor: pointer;
  background: none;
  border: 1px solid #e2e8f0;
  border-radius: 2px;
  padding: .375rem 1rem;
  font-size: .8125rem;
  font-weight: 500;
  transition: background-color .15s, color .15s, border-color .15s;
}

.mr-footer-btn:hover {
  color: #1e293b;
  background-color: #f1f5f9;
}

.dark .mr-footer-btn {
  color: #94a3b8;
  border-color: #334155;
}

.dark .mr-footer-btn:hover {
  color: #f1f5f9;
  background-color: #1e293b;
}

.mr-footer-btn--primary {
  background-color: var(--color-mancave-button-bg);
  color: #fff;
  border-color: var(--color-mancave-button-bg);
}

.mr-footer-btn--primary:hover {
  color: #fff;
  background-color: #03517e;
}

.mr-footer-btn--primary:disabled {
  opacity: .5;
  cursor: not-allowed;
}

.dark .mr-footer-btn--primary {
  color: #fff;
  background-color: #3b82f6;
  border-color: #3b82f6;
}

.dark .mr-footer-btn--primary:hover {
  background-color: #2563eb;
}

.mr-confirm-overlay {
  z-index: 10;
  background-color: #00000080;
  justify-content: center;
  align-items: center;
  display: flex;
  position: absolute;
  inset: 0;
}

.mr-confirm-dialog {
  background-color: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 2px;
  max-width: 420px;
  padding: 1.25rem;
}

.dark .mr-confirm-dialog {
  background-color: #1e293b;
  border-color: #334155;
}

.mr-confirm-text {
  color: #334155;
  margin-bottom: 1rem;
  font-size: .875rem;
  line-height: 1.5;
}

.dark .mr-confirm-text {
  color: #cbd5e1;
}

.mr-confirm-actions {
  justify-content: flex-end;
  gap: .5rem;
  display: flex;
}

.mr-badge {
  border-radius: 2px;
  align-items: center;
  gap: .25rem;
  padding: .125rem .375rem;
  font-size: .6875rem;
  font-weight: 500;
  line-height: 1.5;
  display: inline-flex;
}

.mr-badge--reviewed {
  color: #166534;
  background-color: #dcfce7;
  border: 1px solid #bbf7d0;
}

.dark .mr-badge--reviewed {
  color: #86efac;
  background-color: #14532d;
  border-color: #166534;
}

.mr-badge--pending {
  color: #854d0e;
  background-color: #fef9c3;
  border: 1px solid #fde68a;
}

.dark .mr-badge--pending {
  color: #fde68a;
  background-color: #713f12;
  border-color: #854d0e;
}

.safety-badge {
  letter-spacing: .01em;
  white-space: nowrap;
  pointer-events: auto;
  border-radius: 2px;
  align-items: center;
  gap: .25rem;
  padding: .125rem .375rem;
  font-size: .625rem;
  font-weight: 600;
  line-height: 1.4;
  display: inline-flex;
}

.safety-badge--privacy-flagged {
  color: #fff;
  background-color: #ef4444e6;
}

.safety-badge--privacy-pending {
  color: #fff;
  background-color: #f59e0bd9;
}

.safety-badge--privacy-failed {
  color: #fff;
  background-color: #6b7280d9;
}

.safety-badge--content-flagged {
  color: #fff;
  background-color: #dc2626e6;
}

.safety-badge--content-pending {
  color: #fff;
  background-color: #f59e0bd9;
}

.safety-banner {
  color: #991b1b;
  background-color: #fef2f2;
  border: 1px solid #fca5a5;
  border-radius: 2px;
  align-items: center;
  gap: .5rem;
  padding: .625rem .75rem;
  font-size: .8125rem;
  display: flex;
}

.dark .safety-banner {
  color: #fca5a5;
  background-color: #7f1d1d33;
  border-color: #7f1d1d;
}

.mr-resolution-panel {
  background-color: #f8fafc;
  border-right: 1px solid #e2e8f0;
  flex-direction: column;
  flex-shrink: 0;
  gap: .75rem;
  width: 300px;
  padding: 1rem;
  display: flex;
  overflow-y: auto;
}

.dark .mr-resolution-panel {
  background-color: #0f172a;
  border-color: #334155;
}

.mr-resolution-panel-title {
  color: #1e293b;
  font-size: .8125rem;
  font-weight: 600;
}

.dark .mr-resolution-panel-title {
  color: #f1f5f9;
}

.mr-resolution-cards {
  flex-direction: column;
  flex: 1;
  gap: .5rem;
  min-height: 0;
  display: flex;
  overflow-y: auto;
}

.mr-resolution-card {
  background-color: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 2px;
  padding: .625rem;
  transition: border-color .15s;
}

.dark .mr-resolution-card {
  background-color: #1e293b;
  border-color: #334155;
}

.mr-resolution-card--highlighted {
  border-color: var(--color-mancave-button-bg);
  box-shadow: 0 0 0 1px var(--color-mancave-button-bg);
}

.mr-resolution-card--applied {
  background-color: #f0fdf4;
  border-color: #22c55e;
}

.dark .mr-resolution-card--applied {
  background-color: #16a34a1a;
  border-color: #16a34a;
}

.mr-resolution-card--declined {
  background-color: #fffbeb;
  border-color: #f59e0b;
}

.dark .mr-resolution-card--declined {
  background-color: #d977061a;
  border-color: #d97706;
}

.mr-resolution-card--exempt {
  opacity: .7;
  background-color: #f1f5f9;
  border-color: #94a3b8;
}

.dark .mr-resolution-card--exempt {
  background-color: #47556933;
  border-color: #475569;
}

.mr-resolution-card-header {
  justify-content: space-between;
  align-items: center;
  margin-bottom: .375rem;
  display: flex;
}

.mr-resolution-card-label {
  color: #1e293b;
  font-size: .8125rem;
  font-weight: 600;
}

.dark .mr-resolution-card-label {
  color: #f1f5f9;
}

.mr-resolution-suspicious-badge {
  color: #b45309;
  background: #fef3c7;
  border: 1px solid #fbbf24;
  padding: 0 .25rem;
  font-size: .6875rem;
  font-weight: 500;
}

.dark .mr-resolution-suspicious-badge {
  color: #fbbf24;
  background: #fbbf2426;
  border-color: #fbbf2466;
}

.mr-resolution-card-confidence {
  color: #64748b;
  font-size: .6875rem;
}

.dark .mr-resolution-card-confidence {
  color: #94a3b8;
}

.mr-resolution-card-actions {
  gap: .375rem;
  display: flex;
}

.mr-resolution-btn {
  cursor: pointer;
  color: #475569;
  background-color: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 2px;
  flex: 1;
  padding: .25rem .5rem;
  font-size: .75rem;
  font-weight: 500;
  transition: background-color .15s, border-color .15s;
}

.dark .mr-resolution-btn {
  color: #cbd5e1;
  background-color: #1e293b;
  border-color: #475569;
}

.mr-resolution-btn:hover {
  background-color: #f1f5f9;
}

.dark .mr-resolution-btn:hover {
  background-color: #334155;
}

.mr-resolution-btn--apply {
  color: #15803d;
  border-color: #22c55e;
}

.dark .mr-resolution-btn--apply {
  color: #4ade80;
  border-color: #16a34a;
}

.mr-resolution-btn--apply:hover {
  background-color: #f0fdf4;
}

.dark .mr-resolution-btn--apply:hover {
  background-color: #16a34a26;
}

.mr-resolution-btn--decline {
  color: #92400e;
  border-color: #f59e0b;
}

.dark .mr-resolution-btn--decline {
  color: #fbbf24;
  border-color: #d97706;
}

.mr-resolution-btn--decline:hover {
  background-color: #fffbeb;
}

.dark .mr-resolution-btn--decline:hover {
  background-color: #d9770626;
}

.mr-resolution-status {
  cursor: pointer;
  border-radius: 2px;
  padding: .125rem .375rem;
  font-size: .75rem;
  font-weight: 500;
}

.mr-resolution-status:hover {
  text-decoration: underline;
}

.mr-resolution-status--applied {
  color: #15803d;
  background-color: #dcfce7;
}

.dark .mr-resolution-status--applied {
  color: #4ade80;
  background-color: #16a34a26;
}

.mr-resolution-status--declined {
  color: #92400e;
  background-color: #fef3c7;
}

.dark .mr-resolution-status--declined {
  color: #fbbf24;
  background-color: #d9770626;
}

.mr-resolution-bulk-btn {
  color: #15803d;
  cursor: pointer;
  background-color: #f0fdf4;
  border: 1px solid #22c55e;
  border-radius: 2px;
  width: 100%;
  padding: .375rem .75rem;
  font-size: .75rem;
  font-weight: 500;
  transition: background-color .15s;
}

.dark .mr-resolution-bulk-btn {
  color: #4ade80;
  background-color: #16a34a1a;
  border-color: #16a34a;
}

.mr-resolution-bulk-btn:hover {
  background-color: #dcfce7;
}

.dark .mr-resolution-bulk-btn:hover {
  background-color: #16a34a33;
}

.mr-resolution-exempt {
  color: #475569;
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  background-color: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 2px;
  align-items: flex-start;
  gap: .5rem;
  padding: .5rem .625rem;
  font-size: .8125rem;
  font-weight: 500;
  display: flex;
}

.dark .mr-resolution-exempt {
  color: #cbd5e1;
  background-color: #1e293b;
  border-color: #475569;
}

.mr-resolution-exempt input[type="checkbox"] {
  accent-color: var(--color-mancave-button-bg);
  flex-shrink: 0;
  margin-top: .125rem;
}

.mr-resolution-exempt-hint {
  color: #94a3b8;
  font-size: .6875rem;
  line-height: 1.4;
}

.dark .mr-resolution-exempt-hint {
  color: #64748b;
}

.mr-resolution-note {
  color: #94a3b8;
  font-size: .6875rem;
  font-style: italic;
  line-height: 1.4;
}

.dark .mr-resolution-note {
  color: #64748b;
}

.mr-resolution-empty {
  color: #94a3b8;
  text-align: center;
  padding: 1rem 0;
  font-size: .8125rem;
}

.mr-resolution-pending-hint {
  color: #f59e0b;
  margin-right: auto;
  font-size: .75rem;
}

.dark .mr-resolution-pending-hint {
  color: #fbbf24;
}

.mr-resolution-warning {
  color: #b45309;
  background-color: #fffbeb;
  border: 1px solid #fde68a;
  border-radius: 2px;
  padding: .375rem .5rem;
  font-size: .6875rem;
  line-height: 1.4;
}

.dark .mr-resolution-warning {
  color: #fbbf24;
  background-color: #d977061a;
  border-color: #d977064d;
}

.mr-footer-error {
  color: #dc2626;
  margin-right: auto;
  font-size: .8125rem;
}

.dark .mr-footer-error {
  color: #f87171;
}

.mr-toast {
  color: #fff;
  z-index: 20;
  pointer-events: none;
  background-color: #475569;
  border-radius: 2px;
  padding: .5rem 1rem;
  font-size: .8125rem;
  animation: 3s forwards mr-toast-fade;
  position: absolute;
  bottom: 4.5rem;
  left: 50%;
  transform: translateX(-50%);
}

@keyframes mr-toast-fade {
  0%, 70% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

.pm-card {
  background-color: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  transition: border-color .2s;
  overflow: hidden;
}

.pm-card:hover {
  border-color: var(--color-mancave-accent);
}

.dark .pm-card {
  background-color: #1f2937;
  border-color: #374151;
}

.dark .pm-card:hover {
  border-color: var(--color-mancave-accent);
}

.pm-score-ring {
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 2.75rem;
  height: 2.75rem;
  display: inline-flex;
  position: relative;
}

.pm-score-ring svg {
  transform: rotate(-90deg);
}

.pm-score-ring-track {
  stroke: #e5e7eb;
}

.dark .pm-score-ring-track {
  stroke: #374151;
}

.pm-score-ring-fill {
  transition: stroke-dashoffset .6s;
}

.pm-score-ring-text {
  color: #374151;
  justify-content: center;
  align-items: center;
  font-size: .6875rem;
  font-weight: 600;
  display: flex;
  position: absolute;
  inset: 0;
}

.dark .pm-score-ring-text {
  color: #d1d5db;
}

.pm-score-high {
  stroke: #16a34a;
}

.pm-score-medium {
  stroke: #d97706;
}

.pm-score-low {
  stroke: #9ca3af;
}

.pm-reason-tag {
  white-space: nowrap;
  border-radius: 2px;
  align-items: center;
  gap: .25rem;
  padding: .1875rem .375rem;
  font-size: .6875rem;
  line-height: 1;
  display: inline-flex;
}

.pm-reason-style {
  color: #1d4ed8;
  background-color: #eff6ff;
}

.pm-reason-material {
  color: #a16207;
  background-color: #fefce8;
}

.pm-reason-color {
  color: #15803d;
  background-color: #f0fdf4;
}

.pm-reason-parameter {
  color: #6d28d9;
  background-color: #f5f3ff;
}

.pm-reason-experiment {
  color: #c2410c;
  background-color: #fff7ed;
}

.dark .pm-reason-style {
  color: #93bbfd;
  background-color: #1d4ed826;
}

.dark .pm-reason-material {
  color: #fcd34d;
  background-color: #a1620726;
}

.dark .pm-reason-color {
  color: #86efac;
  background-color: #15803d26;
}

.dark .pm-reason-parameter {
  color: #c4b5fd;
  background-color: #6d28d926;
}

.dark .pm-reason-experiment {
  color: #fdba74;
  background-color: #c2410c26;
}

.pm-action-btn {
  color: #6b7280;
  cursor: pointer;
  background-color: #0000;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 2rem;
  height: 2rem;
  transition: background-color .15s, color .15s, border-color .15s;
  display: inline-flex;
}

.pm-action-btn:hover:not(:disabled) {
  color: #374151;
  background-color: #f9fafb;
  border-color: #9ca3af;
}

.pm-action-btn:disabled {
  opacity: .4;
  cursor: not-allowed;
}

.dark .pm-action-btn {
  color: #9ca3af;
  border-color: #4b5563;
}

.dark .pm-action-btn:hover:not(:disabled) {
  color: #e5e7eb;
  background-color: #374151;
  border-color: #6b7280;
}

.pm-action-btn-saved {
  color: #f59e0b;
  background-color: #fffbeb;
  border-color: #f59e0b;
}

.pm-action-btn-saved:hover:not(:disabled) {
  color: #d97706;
  background-color: #fef3c7;
  border-color: #d97706;
}

.dark .pm-action-btn-saved {
  color: #f59e0b;
  background-color: #f59e0b26;
  border-color: #f59e0b;
}

.pm-action-btn-bookmarked {
  color: #6366f1;
  background-color: #eef2ff;
  border-color: #6366f1;
}

.pm-action-btn-bookmarked:hover:not(:disabled) {
  color: #4f46e5;
  background-color: #e0e7ff;
  border-color: #4f46e5;
}

.dark .pm-action-btn-bookmarked {
  color: #818cf8;
  background-color: #818cf826;
  border-color: #818cf8;
}

.pm-action-btn-sample {
  border-color: var(--color-mancave-button-bg);
  color: var(--color-mancave-button-bg);
  background-color: #eff6ff;
}

.dark .pm-action-btn-sample {
  color: #60a5fa;
  background-color: #60a5fa26;
  border-color: #60a5fa;
}

.pm-experiment-badge {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: #c2410c;
  background-color: #fff7ed;
  border: 1px solid #fed7aa;
  border-radius: 2px;
  align-items: center;
  gap: .25rem;
  padding: .125rem .375rem;
  font-size: .625rem;
  font-weight: 600;
  display: inline-flex;
}

.dark .pm-experiment-badge {
  color: #fdba74;
  background-color: #c2410c26;
  border-color: #c2410c4d;
}

.pm-image-container {
  aspect-ratio: 4 / 3;
  background-color: #f3f4f6;
  width: 100%;
  position: relative;
  overflow: hidden;
}

.pm-image-container img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.dark .pm-image-container {
  background-color: #374151;
}

.pm-category-pill {
  color: #4b5563;
  cursor: pointer;
  background-color: #0000;
  border: 1px solid #d1d5db;
  border-radius: 2px;
  align-items: center;
  padding: .25rem .625rem;
  font-size: .75rem;
  font-weight: 500;
  transition: background-color .15s, border-color .15s, color .15s;
  display: inline-flex;
}

.pm-category-pill:hover {
  background-color: #f9fafb;
  border-color: #9ca3af;
}

.pm-category-pill-active {
  border-color: var(--color-mancave-button-bg);
  background-color: var(--color-mancave-button-bg);
  color: #fff;
}

.pm-category-pill-active:hover {
  background-color: var(--color-mancave-button-hover-bg);
  border-color: var(--color-mancave-button-hover-border);
  color: var(--color-mancave-text-on-brown);
}

.dark .pm-category-pill {
  color: #9ca3af;
  border-color: #4b5563;
}

.dark .pm-category-pill:hover {
  background-color: #374151;
  border-color: #6b7280;
}

.dark .pm-category-pill-active {
  color: #93bbfd;
  background-color: #60a5fa33;
  border-color: #60a5fa;
}

.pm-color-dot {
  border: 1px solid #0000001a;
  border-radius: 50%;
  flex-shrink: 0;
  width: .5rem;
  height: .5rem;
  display: inline-block;
}

.pm-apply-changes-btn {
  color: var(--color-mancave-button-bg);
  border: 1px solid var(--color-mancave-button-bg);
  cursor: pointer;
  white-space: nowrap;
  background-color: #0000;
  border-radius: 2px;
  align-items: center;
  gap: .375rem;
  padding: .25rem .75rem;
  font-size: .8125rem;
  font-weight: 500;
  line-height: 1.5;
  transition: background-color .15s, color .15s;
  display: inline-flex;
}

.pm-apply-changes-btn:hover:not(:disabled) {
  background-color: var(--color-mancave-button-bg);
  color: #fff;
}

.pm-apply-changes-btn:disabled {
  opacity: .55;
  cursor: not-allowed;
}

.dark .pm-apply-changes-btn {
  color: #93bbfd;
  border-color: #60a5fa;
}

.dark .pm-apply-changes-btn:hover:not(:disabled) {
  color: #bfdbfe;
  background-color: #60a5fa33;
}

.pm-group-section {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  padding: .75rem 1rem;
}

.dark .pm-group-section {
  background: #1f2937;
  border-color: #374151;
}

.pm-group-header {
  cursor: pointer;
  text-align: left;
  background: none;
  border: none;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 0;
  display: flex;
}

.pm-group-badge {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: #9333ea;
  background: #f3e8ff;
  border-radius: 2px;
  align-items: center;
  padding: .125rem .5rem;
  font-size: .625rem;
  font-weight: 600;
  display: inline-flex;
}

.dark .pm-group-badge {
  color: #c084fc;
  background: #9333ea26;
}

.pm-group-hint {
  color: #6b7280;
  background: #fffbeb;
  border: 1px solid #fde68a;
  border-radius: 2px;
  margin-top: .5rem;
  padding: .5rem .75rem;
  font-size: .75rem;
}

.dark .pm-group-hint {
  color: #9ca3af;
  background: #fbbf241a;
  border-color: #fbbf244d;
}

.pm-bookmark-btn {
  color: #9ca3af;
  cursor: pointer;
  background: none;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 1.75rem;
  height: 1.75rem;
  transition: color .15s, border-color .15s, background-color .15s;
  display: flex;
}

.pm-bookmark-btn:hover, .pm-bookmark-btn-active {
  color: #6366f1;
  background: #eef2ff;
  border-color: #a5b4fc;
}

.dark .pm-bookmark-btn {
  color: #6b7280;
  border-color: #4b5563;
}

.dark .pm-bookmark-btn:hover, .dark .pm-bookmark-btn-active {
  color: #818cf8;
  background: #6366f126;
  border-color: #6366f1;
}

.pm-assign-btn {
  color: #6b7280;
  cursor: pointer;
  background: none;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  align-items: center;
  gap: .25rem;
  padding: .25rem .5rem;
  font-size: .6875rem;
  transition: color .15s, border-color .15s, background-color .15s;
  display: inline-flex;
}

.pm-assign-btn:hover {
  color: #374151;
  background: #f9fafb;
  border-color: #9ca3af;
}

.dark .pm-assign-btn {
  color: #9ca3af;
  border-color: #4b5563;
}

.dark .pm-assign-btn:hover {
  color: #d1d5db;
  background: #4b55634d;
  border-color: #6b7280;
}

.pm-assign-btn-shortlisted {
  color: #92400e;
  background: #fef3c7;
  border-color: #fcd34d;
}

.pm-assign-btn-shortlisted:hover {
  background: #fde68a;
}

.dark .pm-assign-btn-shortlisted {
  color: #fcd34d;
  background: #fcd34d26;
  border-color: #fcd34d4d;
}

.dark .pm-assign-btn-shortlisted:hover {
  background: #fcd34d40;
}

.pm-assign-btn-bookmarked {
  color: #1e40af;
  background: #dbeafe;
  border-color: #93c5fd;
}

.pm-assign-btn-bookmarked:hover {
  background: #bfdbfe;
}

.dark .pm-assign-btn-bookmarked {
  color: #93c5fd;
  background: #93c5fd26;
  border-color: #93c5fd4d;
}

.dark .pm-assign-btn-bookmarked:hover {
  background: #93c5fd40;
}

.pm-assign-btn-assigned {
  color: #065f46;
  background: #d1fae5;
  border-color: #6ee7b7;
}

.dark .pm-assign-btn-assigned {
  color: #6ee7b7;
  background: #6ee7b726;
  border-color: #6ee7b74d;
}

.pm-assign-btn-sample {
  color: #6b21a8;
  background: #f3e8ff;
  border-color: #c084fc;
}

.dark .pm-assign-btn-sample {
  color: #c084fc;
  background: #c084fc26;
  border-color: #c084fc4d;
}

.pm-assign-count {
  color: #fff;
  background: #6366f1;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  min-width: 1rem;
  height: 1rem;
  padding: 0 .25rem;
  font-size: .5625rem;
  font-weight: 600;
  display: inline-flex;
}

.pm-assign-dropdown {
  z-index: 20;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  min-width: 10rem;
  max-height: 12rem;
  margin-bottom: .25rem;
  position: absolute;
  bottom: 100%;
  left: 0;
  overflow-y: auto;
  box-shadow: 0 -2px 8px #00000014;
}

.dark .pm-assign-dropdown {
  background: #1f2937;
  border-color: #374151;
  box-shadow: 0 -2px 8px #0000004d;
}

.pm-assign-dropdown-item {
  text-align: left;
  color: #374151;
  cursor: pointer;
  background: none;
  border: none;
  border-bottom: 1px solid #f3f4f6;
  justify-content: space-between;
  align-items: center;
  gap: .5rem;
  width: 100%;
  padding: .375rem .625rem;
  font-size: .75rem;
  transition: background-color .1s;
  display: flex;
}

.pm-assign-dropdown-item:last-child {
  border-bottom: none;
}

.pm-assign-dropdown-item:hover:not(:disabled) {
  background: #f9fafb;
}

.pm-assign-dropdown-item:disabled {
  cursor: default;
}

.pm-assign-dropdown-item-active {
  color: #059669;
  font-weight: 500;
}

.dark .pm-assign-dropdown-item {
  color: #d1d5db;
  border-bottom-color: #374151;
}

.dark .pm-assign-dropdown-item:hover:not(:disabled) {
  background: #4b55634d;
}

.dark .pm-assign-dropdown-item-active {
  color: #34d399;
}

.pm-modal-overlay {
  z-index: 50;
  background: #0009;
  justify-content: center;
  align-items: center;
  padding: 1rem;
  display: flex;
  position: fixed;
  inset: 0;
}

.pm-modal-content {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  width: 100%;
  max-width: 56rem;
  max-height: 85vh;
  padding: 1.5rem;
  position: relative;
  overflow-y: auto;
}

.dark .pm-modal-content {
  background: #1f2937;
  border-color: #374151;
}

.pm-modal-close {
  z-index: 10;
  color: #6b7280;
  cursor: pointer;
  background: #ffffffe6;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 2rem;
  height: 2rem;
  transition: color .15s, background-color .15s;
  display: flex;
  position: absolute;
  top: .75rem;
  right: .75rem;
}

.pm-modal-close:hover {
  color: #111827;
  background: #f3f4f6;
}

.dark .pm-modal-close {
  color: #9ca3af;
  background: #1f2937e6;
  border-color: #4b5563;
}

.dark .pm-modal-close:hover {
  color: #f3f4f6;
  background: #374151;
}

.pm-image-gallery {
  aspect-ratio: 4 / 3;
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  width: 100%;
  position: relative;
  overflow: hidden;
}

.dark .pm-image-gallery {
  background: #111827;
  border-color: #374151;
}

.pm-gallery-nav {
  color: #374151;
  cursor: pointer;
  background: #ffffffd9;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 2rem;
  height: 2rem;
  transition: background-color .15s;
  display: flex;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.pm-gallery-nav:hover {
  background: #fff;
}

.pm-gallery-nav-left {
  left: .5rem;
}

.pm-gallery-nav-right {
  right: .5rem;
}

.dark .pm-gallery-nav {
  color: #d1d5db;
  background: #1f2937d9;
  border-color: #4b5563;
}

.dark .pm-gallery-nav:hover {
  background: #374151;
}

.pm-score-breakdown-track {
  background: #f3f4f6;
  border-radius: 2px;
  width: 100%;
  height: .375rem;
  overflow: hidden;
}

.dark .pm-score-breakdown-track {
  background: #374151;
}

.pm-score-breakdown-bar {
  background: #6366f1;
  border-radius: 2px;
  height: 100%;
  transition: width .3s;
}

.pm-score-breakdown-bar-final {
  background: #8b5cf6;
}

.dark .pm-score-breakdown-bar {
  background: #818cf8;
}

.dark .pm-score-breakdown-bar-final {
  background: #a78bfa;
}

.pm-variant-chip {
  color: #374151;
  cursor: pointer;
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  align-items: center;
  gap: .375rem;
  max-width: 12rem;
  padding: .25rem .625rem;
  font-size: .75rem;
  transition: border-color .15s, background-color .15s;
  display: inline-flex;
}

.pm-variant-chip:hover {
  background: #eef2ff;
  border-color: #a5b4fc;
}

.pm-variant-chip-active {
  color: #4338ca;
  background: #eef2ff;
  border-color: #6366f1;
  font-weight: 500;
}

.pm-variant-chip-score {
  color: #6366f1;
  white-space: nowrap;
  font-size: .625rem;
  font-weight: 600;
}

.dark .pm-variant-chip {
  color: #d1d5db;
  background: #1f2937;
  border-color: #4b5563;
}

.dark .pm-variant-chip:hover {
  background: #6366f11a;
  border-color: #6366f1;
}

.dark .pm-variant-chip-active {
  color: #a5b4fc;
  background: #6366f126;
  border-color: #818cf8;
}

.dark .pm-variant-chip-score {
  color: #818cf8;
}

.pm-onboarding-overlay {
  margin-bottom: 1rem;
  position: relative;
}

.pm-onboarding-card {
  background: #f0f4ff;
  border: 1px solid #c7d2fe;
  border-radius: 2px;
  padding: 1.25rem;
}

.dark .pm-onboarding-card {
  background: #6366f114;
  border-color: #6366f14d;
}

.pm-onboarding-icon {
  color: #4f46e5;
  background: #e0e7ff;
  border-radius: 2px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 2.25rem;
  height: 2.25rem;
  display: flex;
}

.dark .pm-onboarding-icon {
  color: #818cf8;
  background: #6366f126;
}

.pm-onboarding-dismiss {
  color: #fff;
  cursor: pointer;
  background: #4f46e5;
  border: none;
  border-radius: 2px;
  width: 100%;
  margin-top: 1rem;
  padding: .5rem 1rem;
  font-size: .8125rem;
  font-weight: 500;
  transition: background-color .15s;
  display: block;
}

.pm-onboarding-dismiss:hover {
  background: #4338ca;
}

.dark .pm-onboarding-dismiss {
  background: #6366f1;
}

.dark .pm-onboarding-dismiss:hover {
  background: #4f46e5;
}

.company-layout {
  align-items: flex-start;
  gap: 2rem;
  max-width: 80rem;
  margin: 0 auto;
  padding: 1.5rem 1rem;
  display: flex;
}

@media (min-width: 640px) {
  .company-layout {
    padding: 1.5rem;
  }
}

@media (min-width: 1024px) {
  .company-layout {
    padding: 2rem;
  }
}

.company-layout-content {
  flex: 1;
  min-width: 0;
}

.company-sidebar {
  flex-direction: column;
  flex-shrink: 0;
  gap: 2px;
  width: 200px;
  display: none;
  position: sticky;
  top: 5rem;
}

@media (min-width: 768px) {
  .company-sidebar {
    display: flex;
  }
}

.company-sidebar-divider {
  background: #e5e7eb;
  height: 1px;
  margin: .375rem 0;
}

.dark .company-sidebar-divider {
  background: #374151;
}

.phase-step-clickable {
  cursor: pointer;
  transition: opacity .15s;
}

.phase-step-clickable:hover {
  opacity: .75;
}

.company-sidebar a {
  color: #6b7280;
  white-space: nowrap;
  border: 1px solid #0000;
  border-radius: 2px;
  align-items: center;
  gap: .625rem;
  padding: .5rem .75rem;
  font-size: .8125rem;
  font-weight: 500;
  text-decoration: none;
  transition: color .15s, background .15s, border-color .15s;
  display: flex;
}

.company-sidebar a:hover {
  color: #111827;
  background: #f9fafb;
}

.company-sidebar a:focus-visible {
  outline-offset: 1px;
  outline: 2px solid #02426d59;
}

.company-sidebar a[aria-current="page"] {
  color: var(--color-mancave-button-bg);
  background: #02426d0f;
  border-color: #02426d26;
  font-weight: 600;
}

.company-sidebar a svg {
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
}

.dark .company-sidebar a {
  color: #9ca3af;
}

.dark .company-sidebar a:hover {
  color: #f3f4f6;
  background: #374151;
}

.dark .company-sidebar a:focus-visible {
  outline-color: #60a5fa80;
}

.dark .company-sidebar a[aria-current="page"] {
  color: #60a5fa;
  background: #60a5fa1a;
  border-color: #60a5fa33;
}

.company-sidebar-toggle {
  color: #374151;
  cursor: pointer;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 2.25rem;
  height: 2.25rem;
  transition: background .15s, border-color .15s;
  display: flex;
}

.company-sidebar-toggle:hover {
  background: #f9fafb;
  border-color: #d1d5db;
}

.company-sidebar-toggle:focus-visible {
  outline-offset: 1px;
  outline: 2px solid #02426d59;
}

.dark .company-sidebar-toggle {
  color: #d1d5db;
  background: #1f2937;
  border-color: #4b5563;
}

.dark .company-sidebar-toggle:hover {
  background: #374151;
  border-color: #6b7280;
}

@media (min-width: 768px) {
  .company-sidebar-toggle {
    display: none;
  }
}

.company-drawer-backdrop {
  z-index: 40;
  opacity: 0;
  pointer-events: none;
  background: #0006;
  transition: opacity .2s;
  position: fixed;
  inset: 0;
}

.company-drawer-backdrop[data-open="true"] {
  opacity: 1;
  pointer-events: auto;
}

.company-drawer {
  z-index: 50;
  background: #fff;
  border-right: 1px solid #e5e7eb;
  flex-direction: column;
  width: 260px;
  max-width: 80vw;
  transition: transform .25s;
  display: flex;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  overflow-y: auto;
  transform: translateX(-100%);
}

.company-drawer[data-open="true"] {
  transform: translateX(0);
}

.dark .company-drawer {
  background: #111827;
  border-color: #374151;
}

.company-drawer-header {
  border-bottom: 1px solid #e5e7eb;
  justify-content: space-between;
  align-items: center;
  padding: 1rem 1rem .75rem;
  display: flex;
}

.dark .company-drawer-header {
  border-color: #374151;
}

.company-drawer-close {
  color: #6b7280;
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 2rem;
  height: 2rem;
  transition: color .15s, background .15s;
  display: flex;
}

.company-drawer-close:hover {
  color: #111827;
  background: #f3f4f6;
}

.dark .company-drawer-close:hover {
  color: #f3f4f6;
  background: #374151;
}

.company-drawer-nav {
  flex-direction: column;
  gap: 2px;
  padding: .5rem;
  display: flex;
}

.company-drawer-nav a {
  color: #374151;
  border: 1px solid #0000;
  border-radius: 2px;
  align-items: center;
  gap: .625rem;
  padding: .625rem .75rem;
  font-size: .875rem;
  font-weight: 500;
  text-decoration: none;
  transition: color .15s, background .15s;
  display: flex;
}

.company-drawer-nav a:hover {
  background: #f3f4f6;
}

.company-drawer-nav a[aria-current="page"] {
  color: var(--color-mancave-button-bg);
  background: #02426d0f;
  border-color: #02426d26;
  font-weight: 600;
}

.company-drawer-nav a svg {
  flex-shrink: 0;
  width: 1.125rem;
  height: 1.125rem;
}

.dark .company-drawer-nav a {
  color: #d1d5db;
}

.dark .company-drawer-nav a:hover {
  background: #1f2937;
}

.dark .company-drawer-nav a[aria-current="page"] {
  color: #60a5fa;
  background: #60a5fa1a;
  border-color: #60a5fa33;
}

.company-drawer-divider {
  background: #e5e7eb;
  height: 1px;
  margin: .375rem .5rem;
}

.dark .company-drawer-divider {
  background: #374151;
}

.company-sidebar-item-group {
  align-items: center;
  display: flex;
}

.company-sidebar-item-group .company-sidebar-item-link {
  color: #6b7280;
  white-space: nowrap;
  border: 1px solid #0000;
  border-radius: 2px;
  flex: 1;
  align-items: center;
  gap: .625rem;
  min-width: 0;
  padding: .5rem .75rem;
  font-size: .8125rem;
  font-weight: 500;
  text-decoration: none;
  transition: color .15s, background .15s, border-color .15s;
  display: flex;
}

.company-sidebar-item-group .company-sidebar-item-link:hover {
  color: #111827;
  background: #f9fafb;
}

.company-sidebar-item-group .company-sidebar-item-link[aria-current="page"] {
  color: var(--color-mancave-button-bg);
  background: #02426d0f;
  border-color: #02426d26;
  font-weight: 600;
}

.company-sidebar-item-group .company-sidebar-item-link svg {
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
}

.dark .company-sidebar-item-group .company-sidebar-item-link {
  color: #9ca3af;
}

.dark .company-sidebar-item-group .company-sidebar-item-link:hover {
  color: #f3f4f6;
  background: #374151;
}

.dark .company-sidebar-item-group .company-sidebar-item-link[aria-current="page"] {
  color: #60a5fa;
  background: #60a5fa1a;
  border-color: #60a5fa33;
}

.company-sidebar-expand {
  color: #9ca3af;
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 2px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 1.5rem;
  height: 1.5rem;
  margin-right: .25rem;
  padding: 0;
  transition: color .15s, background .15s;
  display: flex;
}

.company-sidebar-expand:hover {
  color: #6b7280;
  background: #f3f4f6;
}

.dark .company-sidebar-expand {
  color: #6b7280;
}

.dark .company-sidebar-expand:hover {
  color: #d1d5db;
  background: #374151;
}

.company-sidebar-subnav {
  flex-direction: column;
  gap: 1px;
  margin-bottom: 2px;
  padding-left: 1.75rem;
  display: flex;
}

.company-sidebar-subnav .company-sidebar-subnav-item {
  color: #9ca3af;
  white-space: nowrap;
  border: 1px solid #0000;
  border-radius: 2px;
  align-items: center;
  gap: .375rem;
  padding: .25rem .625rem;
  font-size: .75rem;
  font-weight: 400;
  text-decoration: none;
  transition: color .15s, background .15s;
  display: flex;
  overflow: hidden;
}

.company-sidebar-subnav .company-sidebar-subnav-item:hover {
  color: #6b7280;
  background: #f9fafb;
}

.company-sidebar-subnav .company-sidebar-subnav-item[aria-current="page"] {
  color: var(--color-mancave-button-bg);
  background: #02426d0a;
  font-weight: 500;
}

.dark .company-sidebar-subnav .company-sidebar-subnav-item {
  color: #6b7280;
}

.dark .company-sidebar-subnav .company-sidebar-subnav-item:hover {
  color: #d1d5db;
  background: #374151;
}

.dark .company-sidebar-subnav .company-sidebar-subnav-item[aria-current="page"] {
  color: #60a5fa;
  background: #60a5fa14;
}

.company-sidebar-subnav-label {
  text-overflow: ellipsis;
  min-width: 0;
  overflow: hidden;
}

.company-sidebar-subnav-count {
  color: #9ca3af;
  flex-shrink: 0;
  margin-left: auto;
  font-size: .625rem;
}

.dark .company-sidebar-subnav-count {
  color: #6b7280;
}

.company-sidebar-subnav-parent {
  align-items: center;
  display: flex;
}

.company-sidebar-subnav-parent > .company-sidebar-subnav-item {
  flex: 1;
  min-width: 0;
}

.company-sidebar-subnav-toggle {
  color: #9ca3af;
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 2px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 1.125rem;
  height: 1.125rem;
  padding: 0;
  transition: color .15s;
  display: flex;
}

.company-sidebar-subnav-toggle:hover, .dark .company-sidebar-subnav-toggle {
  color: #6b7280;
}

.dark .company-sidebar-subnav-toggle:hover {
  color: #d1d5db;
}

.company-sidebar-subnav-children {
  border-left: 1px solid #e5e7eb;
  flex-direction: column;
  gap: 1px;
  margin-left: .5rem;
  padding-left: .625rem;
  display: flex;
}

.dark .company-sidebar-subnav-children {
  border-left-color: #374151;
}

.company-drawer-subnav {
  flex-direction: column;
  gap: 1px;
  margin-bottom: 2px;
  padding-left: 2rem;
  display: flex;
}

.company-drawer-subnav .company-sidebar-subnav-item {
  color: #9ca3af;
  white-space: nowrap;
  border: 1px solid #0000;
  border-radius: 2px;
  align-items: center;
  gap: .375rem;
  padding: .375rem .625rem;
  font-size: .8125rem;
  font-weight: 400;
  text-decoration: none;
  transition: color .15s, background .15s;
  display: flex;
  overflow: hidden;
}

.company-drawer-subnav .company-sidebar-subnav-item:hover {
  color: #374151;
  background: #f3f4f6;
}

.company-drawer-subnav .company-sidebar-subnav-item[aria-current="page"] {
  color: var(--color-mancave-button-bg);
  background: #02426d0f;
  font-weight: 500;
}

.dark .company-drawer-subnav .company-sidebar-subnav-item {
  color: #6b7280;
}

.dark .company-drawer-subnav .company-sidebar-subnav-item:hover {
  color: #d1d5db;
  background: #1f2937;
}

.dark .company-drawer-subnav .company-sidebar-subnav-item[aria-current="page"] {
  color: #60a5fa;
  background: #60a5fa1a;
}

.company-drawer-nav .company-sidebar-item-group {
  align-items: center;
  display: flex;
}

.company-drawer-nav .company-sidebar-item-group .company-sidebar-item-link {
  color: #374151;
  border: 1px solid #0000;
  border-radius: 2px;
  flex: 1;
  align-items: center;
  gap: .625rem;
  min-width: 0;
  padding: .625rem .75rem;
  font-size: .875rem;
  font-weight: 500;
  text-decoration: none;
  transition: color .15s, background .15s;
  display: flex;
}

.company-drawer-nav .company-sidebar-item-group .company-sidebar-item-link:hover {
  background: #f3f4f6;
}

.company-drawer-nav .company-sidebar-item-group .company-sidebar-item-link[aria-current="page"] {
  color: var(--color-mancave-button-bg);
  background: #02426d0f;
  border-color: #02426d26;
  font-weight: 600;
}

.company-drawer-nav .company-sidebar-item-group .company-sidebar-item-link svg {
  flex-shrink: 0;
  width: 1.125rem;
  height: 1.125rem;
}

.dark .company-drawer-nav .company-sidebar-item-group .company-sidebar-item-link {
  color: #d1d5db;
}

.dark .company-drawer-nav .company-sidebar-item-group .company-sidebar-item-link:hover {
  background: #1f2937;
}

.dark .company-drawer-nav .company-sidebar-item-group .company-sidebar-item-link[aria-current="page"] {
  color: #60a5fa;
  background: #60a5fa1a;
  border-color: #60a5fa33;
}

.company-info-bar {
  background: #fff;
  border-bottom: 1px solid #e5e7eb;
  align-items: center;
  gap: .75rem;
  padding: .75rem 1rem;
  display: flex;
}

@media (min-width: 640px) {
  .company-info-bar {
    padding: .75rem 1.5rem;
  }
}

@media (min-width: 1024px) {
  .company-info-bar {
    padding: .75rem 2rem;
  }
}

.dark .company-info-bar {
  background: #111827;
  border-color: #374151;
}

.company-info-bar-logo {
  object-fit: cover;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
}

.company-info-bar-initial {
  width: 2rem;
  height: 2rem;
  color: var(--color-mancave-button-bg);
  background: #02426d0f;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  font-size: .875rem;
  font-weight: 700;
  display: flex;
}

.dark .company-info-bar-logo, .dark .company-info-bar-initial {
  border-color: #374151;
}

.settings-save-bar {
  z-index: 10;
  background: #fffbeb;
  border-top: 1px solid #fbbf24;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  padding: .75rem 1.5rem;
  animation: .2s settings-save-bar-in;
  display: flex;
  position: sticky;
  bottom: 0;
  left: 0;
  right: 0;
}

@keyframes settings-save-bar-in {
  from {
    opacity: 0;
    transform: translateY(.5rem);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.dark .settings-save-bar {
  background: #1c1917;
  border-color: #a16207;
}

.dirty-confirm-backdrop {
  z-index: 10000;
  background: #00000080;
  justify-content: center;
  align-items: center;
  padding: 1rem;
  display: flex;
  position: fixed;
  inset: 0;
}

.dirty-confirm-dialog {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  width: 100%;
  max-width: 28rem;
  padding: 1.5rem;
}

.dark .dirty-confirm-dialog {
  background: #1f2937;
  border-color: #374151;
}

.pm-subtab {
  color: #6b7280;
  cursor: pointer;
  white-space: nowrap;
  background: none;
  border: 1px solid #0000;
  border-bottom-width: 2px;
  border-radius: 0;
  align-items: center;
  gap: .375rem;
  padding: .375rem .75rem;
  font-size: .8125rem;
  font-weight: 500;
  transition: color .15s, border-color .15s;
  display: inline-flex;
}

.pm-subtab:hover {
  color: #374151;
}

.dark .pm-subtab {
  color: #9ca3af;
}

.dark .pm-subtab:hover {
  color: #d1d5db;
}

.pm-subtab-active {
  color: #1f2937;
  border-bottom-color: #4f46e5;
  font-weight: 600;
}

.dark .pm-subtab-active {
  color: #f3f4f6;
  border-bottom-color: #818cf8;
}

.pm-subtab-badge {
  color: #fff;
  background: #6366f1;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  min-width: 1.125rem;
  height: 1.125rem;
  padding: 0 .25rem;
  font-size: .625rem;
  font-weight: 700;
  line-height: 1;
  display: inline-flex;
}

.dark .pm-subtab-badge {
  color: #1e1b4b;
  background: #818cf8;
}

.pm-status-pill {
  letter-spacing: .025em;
  text-transform: uppercase;
  border: 1px solid;
  border-radius: 2px;
  align-items: center;
  padding: .125rem .5rem;
  font-size: .625rem;
  font-weight: 600;
  line-height: 1.5;
  display: inline-flex;
}

.pm-status-pill-suggested {
  color: #92400e;
  background: #fef3c7;
  border-color: #fcd34d;
}

.dark .pm-status-pill-suggested {
  color: #fcd34d;
  background: #fcd34d1f;
  border-color: #fcd34d4d;
}

.pm-status-pill-confirmed {
  color: #065f46;
  background: #d1fae5;
  border-color: #6ee7b7;
}

.dark .pm-status-pill-confirmed {
  color: #6ee7b7;
  background: #6ee7b71f;
  border-color: #6ee7b74d;
}

.pm-status-pill-ordered {
  color: #1e40af;
  background: #dbeafe;
  border-color: #93c5fd;
}

.dark .pm-status-pill-ordered {
  color: #93c5fd;
  background: #93c5fd1f;
  border-color: #93c5fd4d;
}

.pm-curated-badge {
  color: #4338ca;
  background: #e0e7ff;
  border: 1px solid #a5b4fc;
  border-radius: 2px;
  align-items: center;
  padding: .125rem .5rem;
  font-size: .625rem;
  font-weight: 600;
  display: inline-flex;
}

.dark .pm-curated-badge {
  color: #a5b4fc;
  background: #a5b4fc1f;
  border-color: #a5b4fc4d;
}

.pm-score-hint-badge {
  color: #92400e;
  background: #fef3c7;
  border: 1px solid #fcd34d;
  border-radius: 2px;
  align-items: center;
  gap: .375rem;
  padding: .25rem .5rem;
  font-size: .6875rem;
  font-weight: 600;
  display: flex;
}

.dark .pm-score-hint-badge {
  color: #fcd34d;
  background: #fcd34d1f;
  border-color: #fcd34d4d;
}

.pm-score-hint-detail {
  color: #92400e;
  background: #fffbeb;
  border: 1px solid #fcd34d;
  border-radius: 2px;
  align-items: flex-start;
  gap: .5rem;
  padding: .625rem;
  font-size: .75rem;
  display: flex;
}

.dark .pm-score-hint-detail {
  color: #fcd34d;
  background: #fcd34d14;
  border-color: #fcd34d40;
}

.pm-score-hint-detail button {
  color: #92400e;
  cursor: pointer;
  background: #fef3c7;
  border: 1px solid #fbbf24;
  border-radius: 2px;
  flex-shrink: 0;
  padding: .125rem .5rem;
  font-size: .6875rem;
  font-weight: 600;
  transition: background-color .15s;
}

.pm-score-hint-detail button:hover {
  background: #fde68a;
}

.dark .pm-score-hint-detail button {
  color: #fcd34d;
  background: #fcd34d26;
  border-color: #fbbf2466;
}

.dark .pm-score-hint-detail button:hover {
  background: #fcd34d40;
}

.pm-scope-label {
  color: #4b5563;
  white-space: nowrap;
  text-overflow: ellipsis;
  vertical-align: middle;
  background: #f3f4f6;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  max-width: 10rem;
  padding: .0625rem .375rem;
  font-size: .625rem;
  font-weight: 500;
  display: inline-block;
  overflow: hidden;
}

.dark .pm-scope-label {
  color: #9ca3af;
  background: #6b728026;
  border-color: #6b72804d;
}

.pm-origin-badge {
  color: #1e40af;
  background: #eff6ff;
  border: 1px solid #bfdbfe;
  border-radius: 2px;
  align-items: center;
  gap: .25rem;
  padding: .0625rem .375rem;
  font-size: .625rem;
  font-weight: 600;
  display: inline-flex;
}

.dark .pm-origin-badge {
  color: #93c5fd;
  background: #93c5fd1f;
  border-color: #93c5fd4d;
}

.rec-batch-assign-btn {
  color: #fff;
  background: var(--color-mancave-button-bg);
  border: 1px solid var(--color-mancave-button-bg);
  cursor: pointer;
  border-radius: 2px;
  align-items: center;
  gap: .375rem;
  padding: .375rem .75rem;
  font-size: .6875rem;
  font-weight: 600;
  transition: opacity .15s;
  display: inline-flex;
}

.rec-batch-assign-btn:hover {
  opacity: .85;
}

.rec-batch-assign-btn:disabled {
  opacity: .5;
  cursor: not-allowed;
}

.pm-catalog-card {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  transition: border-color .15s;
  position: relative;
  overflow: hidden;
}

.pm-catalog-card:hover {
  border-color: #d1d5db;
}

.dark .pm-catalog-card {
  background: #1f2937;
  border-color: #374151;
}

.dark .pm-catalog-card:hover {
  border-color: #4b5563;
}

.pm-catalog-filter {
  color: #111827;
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 2px;
  padding: .375rem .5rem;
  font-size: .75rem;
}

.pm-catalog-filter:focus {
  border-color: var(--color-mancave-button-bg);
  outline: none;
}

.dark .pm-catalog-filter {
  color: #f3f4f6;
  background: #1f2937;
  border-color: #4b5563;
}

.dark .pm-catalog-filter:focus {
  border-color: #60a5fa;
}

.pm-catalog-indicator {
  color: #6b7280;
  background: #ffffffd9;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 1.25rem;
  height: 1.25rem;
  display: flex;
}

.dark .pm-catalog-indicator {
  color: #9ca3af;
  background: #1f2937d9;
}

.pm-status-dropdown {
  z-index: 20;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  min-width: 10rem;
  margin-top: .25rem;
  position: absolute;
  top: 100%;
  left: 0;
}

.dark .pm-status-dropdown {
  background: #1f2937;
  border-color: #374151;
}

.pm-status-dropdown-item {
  color: #374151;
  text-align: left;
  cursor: pointer;
  background: none;
  border: none;
  width: 100%;
  padding: .5rem .75rem;
  font-size: .75rem;
  font-weight: 500;
  transition: background-color .1s;
  display: block;
}

.pm-status-dropdown-item:hover {
  background: #f3f4f6;
}

.dark .pm-status-dropdown-item {
  color: #d1d5db;
}

.dark .pm-status-dropdown-item:hover {
  background: #374151;
}

.pm-note-editor {
  align-items: center;
  gap: .25rem;
  display: flex;
}

.pm-note-editor-input {
  color: #1f2937;
  background: #fff;
  border: 1px solid #6366f1;
  border-radius: 2px;
  outline: none;
  flex: 1;
  min-width: 0;
  padding: .125rem .375rem;
  font-size: .6875rem;
}

.dark .pm-note-editor-input {
  color: #f3f4f6;
  background: #1f2937;
  border-color: #818cf8;
}

.pm-note-display {
  color: #6b7280;
  cursor: pointer;
  text-align: left;
  background: none;
  border: 1px solid #0000;
  border-radius: 2px;
  align-items: center;
  max-width: 100%;
  padding: 0 .25rem;
  font-size: .6875rem;
  transition: border-color .15s, color .15s;
  display: inline-flex;
}

.pm-note-display:hover {
  color: #374151;
  border-color: #d1d5db;
}

.dark .pm-note-display {
  color: #9ca3af;
}

.dark .pm-note-display:hover {
  color: #d1d5db;
  border-color: #4b5563;
}

.pm-status-filter {
  color: #6b7280;
  cursor: pointer;
  background: none;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  align-items: center;
  padding: .25rem .625rem;
  font-size: .75rem;
  font-weight: 500;
  transition: color .15s, border-color .15s, background-color .15s;
  display: inline-flex;
}

.pm-status-filter:hover {
  color: #374151;
  border-color: #d1d5db;
}

.dark .pm-status-filter {
  color: #9ca3af;
  border-color: #374151;
}

.dark .pm-status-filter:hover {
  color: #d1d5db;
  border-color: #4b5563;
}

.pm-status-filter-active {
  color: #4338ca;
  background: #eef2ff;
  border-color: #6366f1;
  font-weight: 600;
}

.dark .pm-status-filter-active {
  color: #a5b4fc;
  background: #818cf81f;
  border-color: #818cf8;
}

.pm-filter-bar {
  flex-direction: column;
  gap: .5rem;
  display: flex;
}

.pm-filter-row {
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem;
  display: flex;
}

.pm-filter-search {
  flex: 1;
  min-width: 160px;
  position: relative;
}

.pm-filter-search-icon {
  color: #9ca3af;
  pointer-events: none;
  width: .875rem;
  height: .875rem;
  position: absolute;
  top: 50%;
  left: .5rem;
  transform: translateY(-50%);
}

.pm-filter-search-input {
  color: #111827;
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 2px;
  outline: none;
  width: 100%;
  padding: .375rem 1.75rem;
  font-size: .8125rem;
  line-height: 1.5;
  transition: border-color .15s;
}

.pm-filter-search-input::placeholder {
  color: #9ca3af;
}

.pm-filter-search-input:focus {
  border-color: var(--color-mancave-button-bg);
}

.dark .pm-filter-search-input {
  color: #e5e7eb;
  background: #1f2937;
  border-color: #4b5563;
}

.dark .pm-filter-search-input:focus {
  border-color: #60a5fa;
}

.pm-filter-search-clear {
  cursor: pointer;
  color: #9ca3af;
  background: none;
  border: none;
  padding: .125rem;
  font-size: .875rem;
  line-height: 1;
  position: absolute;
  top: 50%;
  right: .375rem;
  transform: translateY(-50%);
}

.pm-filter-search-clear:hover {
  color: #4b5563;
}

.dark .pm-filter-search-clear:hover {
  color: #d1d5db;
}

.pm-filter-select {
  color: #111827;
  cursor: pointer;
  appearance: none;
  white-space: nowrap;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") right .375rem center no-repeat;
  border: 1px solid #d1d5db;
  border-radius: 2px;
  outline: none;
  padding: .375rem 1.5rem .375rem .5rem;
  font-size: .8125rem;
  line-height: 1.5;
  transition: border-color .15s;
}

.pm-filter-select:focus {
  border-color: var(--color-mancave-button-bg);
}

.dark .pm-filter-select {
  color: #e5e7eb;
  background-color: #1f2937;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
  border-color: #4b5563;
}

.dark .pm-filter-select:focus {
  border-color: #60a5fa;
}

.pm-filter-expand-btn {
  color: #6b7280;
  cursor: pointer;
  white-space: nowrap;
  background: none;
  border: none;
  align-items: center;
  gap: .25rem;
  padding: .25rem .5rem;
  font-size: .75rem;
  display: inline-flex;
}

.pm-filter-expand-btn:hover {
  color: #374151;
}

.dark .pm-filter-expand-btn {
  color: #9ca3af;
}

.dark .pm-filter-expand-btn:hover {
  color: #d1d5db;
}

.pm-filter-row-advanced {
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem;
  display: flex;
}

.pm-filter-price {
  color: #6b7280;
  align-items: center;
  gap: .25rem;
  font-size: .75rem;
  display: inline-flex;
}

.dark .pm-filter-price {
  color: #9ca3af;
}

.pm-filter-price-input {
  color: #111827;
  text-align: right;
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 2px;
  outline: none;
  width: 5rem;
  padding: .3125rem .375rem;
  font-size: .8125rem;
  line-height: 1.5;
}

.pm-filter-price-input:focus {
  border-color: var(--color-mancave-button-bg);
}

.dark .pm-filter-price-input {
  color: #e5e7eb;
  background: #1f2937;
  border-color: #4b5563;
}

.dark .pm-filter-price-input:focus {
  border-color: #60a5fa;
}

.pm-filter-toggle {
  color: #4b5563;
  cursor: pointer;
  white-space: nowrap;
  background-color: #0000;
  border: 1px solid #d1d5db;
  border-radius: 2px;
  align-items: center;
  gap: .25rem;
  padding: .25rem .625rem;
  font-size: .75rem;
  font-weight: 500;
  transition: background-color .15s, border-color .15s, color .15s;
  display: inline-flex;
}

.pm-filter-toggle:hover {
  background-color: #f9fafb;
  border-color: #9ca3af;
}

.pm-filter-toggle-active {
  border-color: var(--color-mancave-button-bg);
  background-color: var(--color-mancave-button-bg);
  color: #fff;
}

.pm-filter-toggle-active:hover {
  background-color: var(--color-mancave-button-hover-bg);
  border-color: var(--color-mancave-button-hover-border);
  color: var(--color-mancave-text-on-brown);
}

.dark .pm-filter-toggle {
  color: #9ca3af;
  border-color: #4b5563;
}

.dark .pm-filter-toggle:hover {
  background-color: #374151;
  border-color: #6b7280;
}

.dark .pm-filter-toggle-active {
  color: #93bbfd;
  background-color: #60a5fa33;
  border-color: #60a5fa;
}

.pm-filter-empty {
  text-align: center;
  color: #6b7280;
  padding: 2rem 1rem;
  font-size: .875rem;
}

.dark .pm-filter-empty {
  color: #9ca3af;
}

.pm-filter-reset-btn {
  color: var(--color-mancave-button-bg);
  border: 1px solid var(--color-mancave-button-bg);
  cursor: pointer;
  background: none;
  border-radius: 2px;
  margin-top: .5rem;
  padding: .25rem .75rem;
  font-size: .75rem;
  transition: background-color .15s, color .15s;
  display: inline-block;
}

.pm-filter-reset-btn:hover {
  background-color: var(--color-mancave-button-bg);
  color: #fff;
}

.dark .pm-filter-reset-btn {
  color: #93bbfd;
  border-color: #60a5fa;
}

.dark .pm-filter-reset-btn:hover {
  color: #bfdbfe;
  background-color: #60a5fa33;
}

.pm-color-viz {
  padding: .5rem 0;
}

.pm-color-dot {
  border: 1px solid #0000001a;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  display: flex;
}

.dark .pm-color-dot {
  border-color: #ffffff26;
}

.pm-color-avoid {
  border: 2px solid #dc2626;
  box-shadow: 0 0 0 1px #dc26264d;
}

.dark .pm-color-avoid {
  border-color: #f87171;
  box-shadow: 0 0 0 1px #f871714d;
}

.pm-similar-section {
  padding-top: .5rem;
}

.pm-similar-row {
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
  gap: .75rem;
  padding-bottom: .25rem;
  display: flex;
  overflow-x: auto;
}

.pm-similar-card {
  cursor: pointer;
  text-align: left;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  flex: none;
  width: 120px;
  transition: border-color .15s;
  overflow: hidden;
}

.pm-similar-card:hover {
  border-color: var(--color-mancave-button-bg);
}

.dark .pm-similar-card {
  background: #1f2937;
  border-color: #374151;
}

.dark .pm-similar-card:hover {
  border-color: #60a5fa;
}

.pm-similar-score {
  color: var(--color-mancave-button-bg);
  background: #02426d14;
  border-radius: 2px;
  padding: 0 4px;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.4;
  display: inline-block;
}

.dark .pm-similar-score {
  color: #93c5fd;
  background: #93c5fd1f;
}

.pm-modal-back {
  z-index: 10;
  color: #6b7280;
  cursor: pointer;
  background: #ffffffe6;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 2rem;
  height: 2rem;
  transition: color .15s, background-color .15s;
  display: flex;
  position: absolute;
  top: .75rem;
  left: .75rem;
}

.pm-modal-back:hover {
  color: #111827;
  background: #f3f4f6;
}

.dark .pm-modal-back {
  color: #9ca3af;
  background: #1f2937e6;
  border-color: #4b5563;
}

.dark .pm-modal-back:hover {
  color: #f3f4f6;
  background: #374151;
}

.pm-compare-bar {
  z-index: 50;
  background: #fff;
  border-top: 1px solid #e5e7eb;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  padding: .75rem 1.5rem;
  display: flex;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
}

.dark .pm-compare-bar {
  background: #1f2937;
  border-top-color: #374151;
}

@media (max-width: 767px) {
  .pm-compare-bar {
    display: none;
  }
}

.pm-compare-thumb {
  cursor: pointer;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  position: relative;
  overflow: hidden;
}

.dark .pm-compare-thumb {
  border-color: #374151;
}

.pm-compare-thumb-remove {
  color: #fff;
  opacity: 0;
  background: #00000080;
  justify-content: center;
  align-items: center;
  transition: opacity .15s;
  display: flex;
  position: absolute;
  inset: 0;
}

.pm-compare-thumb:hover .pm-compare-thumb-remove {
  opacity: 1;
}

.pm-compare-thumb-empty {
  border: 1px dashed #d1d5db;
  border-radius: 2px;
  flex-shrink: 0;
  width: 40px;
  height: 40px;
}

.dark .pm-compare-thumb-empty {
  border-color: #4b5563;
}

.pm-compare-bar-btn {
  color: #374151;
  cursor: pointer;
  white-space: nowrap;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  padding: .375rem .75rem;
  font-size: .75rem;
  font-weight: 500;
  transition: border-color .15s, background-color .15s;
}

.pm-compare-bar-btn:hover {
  background: #f9fafb;
  border-color: #d1d5db;
}

.dark .pm-compare-bar-btn {
  color: #e5e7eb;
  background: #374151;
  border-color: #4b5563;
}

.dark .pm-compare-bar-btn:hover {
  background: #4b5563;
}

.pm-compare-bar-btn-primary {
  background: var(--color-mancave-button-bg);
  border-color: var(--color-mancave-button-bg);
  color: #fff;
}

.pm-compare-bar-btn-primary:hover {
  background: #03537f;
}

.pm-compare-bar-btn-primary:disabled {
  opacity: .5;
  cursor: not-allowed;
}

.dark .pm-compare-bar-btn-primary {
  background: var(--color-mancave-button-bg);
  border-color: var(--color-mancave-button-bg);
  color: #fff;
}

.pm-compare-check {
  z-index: 5;
  cursor: pointer;
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 20px;
  height: 20px;
  transition: border-color .15s, background-color .15s;
  display: flex;
  position: absolute;
  top: .5rem;
  right: .5rem;
}

.pm-compare-check:hover {
  border-color: var(--color-mancave-button-bg);
}

.pm-compare-check-active {
  background: var(--color-mancave-button-bg);
  border-color: var(--color-mancave-button-bg);
  color: #fff;
}

.pm-compare-check:disabled {
  opacity: .4;
  cursor: not-allowed;
}

.dark .pm-compare-check {
  background: #374151;
  border-color: #4b5563;
}

.dark .pm-compare-check-active {
  background: var(--color-mancave-button-bg);
  border-color: var(--color-mancave-button-bg);
}

@media (max-width: 767px) {
  .pm-compare-check {
    display: none;
  }
}

.pm-compare-overlay {
  z-index: 60;
  background: #00000080;
  justify-content: center;
  align-items: center;
  padding: 1rem;
  display: flex;
  position: fixed;
  inset: 0;
}

.pm-compare-modal {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  flex-direction: column;
  width: 100%;
  max-width: 1200px;
  max-height: 90vh;
  display: flex;
  position: relative;
}

.dark .pm-compare-modal {
  background: #1f2937;
  border-color: #374151;
}

.pm-compare-body {
  flex: 1;
  padding: 1.25rem;
  overflow-y: auto;
}

.pm-compare-grid {
  gap: 1.25rem;
  display: grid;
}

.pm-compare-col {
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  min-width: 0;
  padding: 1rem;
}

.dark .pm-compare-col {
  border-color: #374151;
}

.pm-compare-col-empty {
  background: #f9fafb;
  justify-content: center;
  align-items: center;
  min-height: 200px;
  display: flex;
}

.dark .pm-compare-col-empty {
  background: #111827;
}

.pm-compare-img {
  aspect-ratio: 1;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  width: 100%;
  overflow: hidden;
}

.dark .pm-compare-img {
  border-color: #374151;
}

.pm-compare-score {
  width: 2.5rem;
  height: 2.5rem;
  color: var(--color-mancave-button-bg);
  border: 2px solid var(--color-mancave-button-bg);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  font-size: .875rem;
  font-weight: 700;
  display: inline-flex;
}

.dark .pm-compare-score {
  color: #93c5fd;
  border-color: #60a5fa;
}

.pm-compare-toggle {
  color: #374151;
  cursor: pointer;
  white-space: nowrap;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  align-items: center;
  gap: .375rem;
  padding: .375rem .625rem;
  font-size: .75rem;
  font-weight: 500;
  transition: border-color .15s, background-color .15s, color .15s;
  display: inline-flex;
}

.pm-compare-toggle:hover {
  border-color: var(--color-mancave-button-bg);
  color: var(--color-mancave-button-bg);
}

.pm-compare-toggle-active {
  background: var(--color-mancave-button-bg);
  border-color: var(--color-mancave-button-bg);
  color: #fff;
}

.pm-compare-toggle-active:hover {
  background: #03537f;
}

.dark .pm-compare-toggle {
  color: #e5e7eb;
  background: #374151;
  border-color: #4b5563;
}

.dark .pm-compare-toggle-active {
  background: var(--color-mancave-button-bg);
  border-color: var(--color-mancave-button-bg);
  color: #fff;
}

@media (max-width: 767px) {
  .pm-compare-toggle, .pm-compare-overlay {
    display: none;
  }
}

.pm-export-btn {
  color: #374151;
  cursor: pointer;
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 2px;
  align-items: center;
  gap: .375rem;
  padding: .375rem .75rem;
  font-size: .75rem;
  font-weight: 500;
  transition: background .15s, border-color .15s;
  display: inline-flex;
}

.pm-export-btn:hover:not(:disabled) {
  background: #f3f4f6;
  border-color: #9ca3af;
}

.pm-export-btn:disabled {
  opacity: .6;
  cursor: not-allowed;
}

.dark .pm-export-btn {
  color: #d1d5db;
  background: #374151;
  border-color: #4b5563;
}

.dark .pm-export-btn:hover:not(:disabled) {
  background: #4b5563;
  border-color: #6b7280;
}

.pm-wand-btn {
  color: #92400e;
  cursor: pointer;
  background: #fffbeb;
  border: 1px solid #fcd34d;
  border-radius: 2px;
  align-items: center;
  gap: .375rem;
  padding: .375rem .625rem;
  font-size: .6875rem;
  font-weight: 500;
  transition: background .15s, border-color .15s;
  display: inline-flex;
}

.pm-wand-btn:hover {
  background: #fef3c7;
  border-color: #f59e0b;
}

.dark .pm-wand-btn {
  color: #fbbf24;
  background: #451a03;
  border-color: #92400e;
}

.dark .pm-wand-btn:hover {
  background: #78350f;
  border-color: #b45309;
}

.pm-wand-overlay {
  z-index: 60;
  background: #00000080;
  justify-content: center;
  align-items: center;
  display: flex;
  position: fixed;
  inset: 0;
}

.pm-wand-modal {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  flex-direction: column;
  width: 90%;
  max-width: 560px;
  max-height: 85vh;
  display: flex;
  overflow: hidden;
}

.dark .pm-wand-modal {
  background: #1f2937;
  border-color: #374151;
}

.pm-wand-card {
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  gap: .75rem;
  padding: .75rem;
  transition: border-color .15s;
  display: flex;
}

.pm-wand-card:hover {
  border-color: #d1d5db;
}

.dark .pm-wand-card {
  border-color: #374151;
}

.dark .pm-wand-card:hover {
  border-color: #4b5563;
}

.pm-wand-card-img {
  cursor: pointer;
  border-radius: 2px;
  flex-shrink: 0;
  width: 5rem;
  height: 5rem;
  overflow: hidden;
}

.pm-wand-score {
  color: var(--color-mancave-button-bg);
  background: #e0ecf4;
  border-radius: 2px;
  padding: .125rem .375rem;
  font-size: .6875rem;
  font-weight: 600;
}

.dark .pm-wand-score {
  color: #93c5fd;
  background: #1e3a5f;
}

.pm-wand-reason {
  color: #6b7280;
  font-size: .6875rem;
  font-style: italic;
  line-height: 1.4;
}

.dark .pm-wand-reason {
  color: #9ca3af;
}

.pm-wand-scope-chip {
  color: #047857;
  background: #ecfdf5;
  border: 1px solid #a7f3d0;
  border-radius: 2px;
  padding: .0625rem .375rem;
  font-size: .625rem;
  font-weight: 500;
  display: inline-block;
}

.dark .pm-wand-scope-chip {
  color: #6ee7b7;
  background: #064e3b;
  border-color: #065f46;
}

.pm-wand-state-badge {
  color: #6b7280;
  background: #f3f4f6;
  border-radius: 2px;
  padding: .0625rem .25rem;
  font-size: .5625rem;
}

.dark .pm-wand-state-badge {
  color: #9ca3af;
  background: #374151;
}

@media (max-width: 767px) {
  .pm-wand-btn {
    display: none;
  }
}

.pmb-layout {
  flex-direction: column;
  height: calc(100vh - 220px);
  min-height: 500px;
  display: flex;
}

.pmb-layout-main {
  flex: 1;
  min-height: 0;
  display: flex;
  overflow: hidden;
}

.pmb-toolbar {
  background: #fff;
  border-bottom: 1px solid #e5e7eb;
  flex-shrink: 0;
  align-items: center;
  gap: .5rem;
  padding: .5rem .75rem;
  display: flex;
}

.dark .pmb-toolbar {
  background: #111827;
  border-bottom-color: #374151;
}

.pmb-toolbar-btn {
  color: #6b7280;
  cursor: pointer;
  background: none;
  border: 1px solid #0000;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 2rem;
  height: 2rem;
  padding: 0;
  transition: background-color .15s, color .15s, border-color .15s;
  display: inline-flex;
}

.pmb-toolbar-btn:hover {
  color: #111827;
  background-color: #f3f4f6;
  border-color: #d1d5db;
}

.dark .pmb-toolbar-btn {
  color: #9ca3af;
}

.dark .pmb-toolbar-btn:hover {
  color: #f3f4f6;
  background-color: #1f2937;
  border-color: #4b5563;
}

.pmb-toolbar-btn-active {
  color: var(--color-mancave-button-bg);
  border-color: var(--color-mancave-button-bg);
  background-color: #02426d14;
}

.dark .pmb-toolbar-btn-active {
  color: #60a5fa;
  background-color: #60a5fa26;
  border-color: #60a5fa;
}

.pmb-toolbar-zoom {
  color: #6b7280;
  -webkit-user-select: none;
  user-select: none;
  align-items: center;
  gap: .25rem;
  font-size: .75rem;
  display: flex;
}

.dark .pmb-toolbar-zoom {
  color: #9ca3af;
}

.pmb-toolbar-separator {
  background: #e5e7eb;
  width: 1px;
  height: 1.25rem;
  margin: 0 .25rem;
}

.dark .pmb-toolbar-separator {
  background: #374151;
}

.pmb-library {
  background: #fff;
  border-right: 1px solid #e5e7eb;
  flex-direction: column;
  width: 280px;
  min-width: 280px;
  transition: width .2s, min-width .2s;
  display: flex;
  overflow: hidden;
}

.dark .pmb-library {
  background: #111827;
  border-right-color: #374151;
}

.pmb-library-collapsed {
  border-right: none;
  width: 0;
  min-width: 0;
}

.pmb-library-toggle {
  z-index: 10;
  color: #6b7280;
  cursor: pointer;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 1.75rem;
  height: 1.75rem;
  transition: background-color .15s, color .15s;
  display: inline-flex;
  position: absolute;
  top: .5rem;
  left: .5rem;
}

.pmb-library-toggle:hover {
  color: #111827;
  background-color: #f3f4f6;
}

.dark .pmb-library-toggle {
  color: #9ca3af;
  background: #1f2937;
  border-color: #374151;
}

.dark .pmb-library-toggle:hover {
  color: #f3f4f6;
  background-color: #374151;
}

.pmb-library-tabs {
  border-bottom: 1px solid #e5e7eb;
  flex-shrink: 0;
  display: flex;
}

.dark .pmb-library-tabs {
  border-bottom-color: #374151;
}

.pmb-library-tab {
  text-align: center;
  color: #6b7280;
  cursor: pointer;
  white-space: nowrap;
  background: none;
  border: none;
  border-bottom: 2px solid #0000;
  flex: 1;
  padding: .5rem .25rem;
  font-size: .6875rem;
  transition: color .15s, border-color .15s;
}

.pmb-library-tab:hover {
  color: #374151;
}

.dark .pmb-library-tab {
  color: #9ca3af;
}

.dark .pmb-library-tab:hover {
  color: #d1d5db;
}

.pmb-library-tab-active {
  color: var(--color-mancave-button-bg);
  border-bottom-color: var(--color-mancave-button-bg);
}

.dark .pmb-library-tab-active {
  color: #60a5fa;
  border-bottom-color: #60a5fa;
}

.pmb-library-content {
  flex: 1;
  padding: .5rem;
  overflow-y: auto;
}

.pmb-library-item {
  cursor: pointer;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  align-items: center;
  gap: .5rem;
  margin-bottom: .375rem;
  padding: .375rem;
  transition: background-color .15s, border-color .15s;
  display: flex;
}

.pmb-library-item:hover {
  background-color: #f9fafb;
  border-color: #d1d5db;
}

.dark .pmb-library-item {
  border-color: #374151;
}

.dark .pmb-library-item:hover {
  background-color: #1f2937;
  border-color: #4b5563;
}

.pmb-library-item-on-board {
  opacity: .45;
  pointer-events: none;
}

.pmb-library-item-thumb {
  object-fit: cover;
  background: #f3f4f6;
  border-radius: 2px;
  flex-shrink: 0;
  width: 3rem;
  height: 3rem;
}

.dark .pmb-library-item-thumb {
  background: #1f2937;
}

.pmb-library-item-info {
  flex: 1;
  min-width: 0;
}

.pmb-library-item-name {
  color: #111827;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: .75rem;
  font-weight: 500;
  overflow: hidden;
}

.dark .pmb-library-item-name {
  color: #f3f4f6;
}

.pmb-library-item-price {
  color: #6b7280;
  font-size: .6875rem;
}

.dark .pmb-library-item-price {
  color: #9ca3af;
}

.pmb-library-item-add {
  color: #6b7280;
  cursor: pointer;
  background: none;
  border: 1px solid #d1d5db;
  border-radius: 2px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 1.5rem;
  height: 1.5rem;
  transition: background-color .15s, color .15s, border-color .15s;
  display: inline-flex;
}

.pmb-library-item-add:hover {
  color: #fff;
  background-color: var(--color-mancave-button-bg);
  border-color: var(--color-mancave-button-bg);
}

.dark .pmb-library-item-add {
  color: #9ca3af;
  border-color: #4b5563;
}

.dark .pmb-library-item-add:hover {
  color: #fff;
  background-color: #2563eb;
  border-color: #2563eb;
}

.pmb-library-upload-btn {
  width: 100%;
  color: var(--color-mancave-button-bg);
  border: 1px dashed var(--color-mancave-button-bg);
  cursor: pointer;
  background: none;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  gap: .375rem;
  margin-bottom: .5rem;
  padding: .5rem;
  font-size: .75rem;
  transition: background-color .15s;
  display: flex;
}

.pmb-library-upload-btn:hover {
  background-color: #02426d0f;
}

.dark .pmb-library-upload-btn {
  color: #60a5fa;
  border-color: #60a5fa;
}

.dark .pmb-library-upload-btn:hover {
  background-color: #60a5fa1a;
}

.pmb-library-import-input {
  color: #111827;
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 2px;
  width: 100%;
  margin-bottom: .5rem;
  padding: .375rem .5rem;
  font-size: .75rem;
}

.pmb-library-import-input::placeholder {
  color: #9ca3af;
}

.dark .pmb-library-import-input {
  color: #f3f4f6;
  background: #1f2937;
  border-color: #4b5563;
}

.dark .pmb-library-import-input::placeholder {
  color: #6b7280;
}

.pmb-canvas-container {
  cursor: grab;
  background: #fafafa;
  flex: 1;
  position: relative;
  overflow: hidden;
}

.pmb-canvas-container:active {
  cursor: grabbing;
}

.dark .pmb-canvas-container {
  background: #0a0f1a;
}

.pmb-canvas-container:before {
  content: "";
  pointer-events: none;
  opacity: .5;
  background-image: radial-gradient(circle, #d1d5db .75px, #0000 .75px);
  background-size: 24px 24px;
  position: absolute;
  inset: 0;
}

.dark .pmb-canvas-container:before {
  opacity: .4;
  background-image: radial-gradient(circle, #374151 .75px, #0000 .75px);
}

.pmb-viewport {
  transform-origin: 0 0;
  width: 0;
  height: 0;
  position: absolute;
  top: 0;
  left: 0;
}

.pmb-item {
  cursor: move;
  -webkit-user-select: none;
  user-select: none;
  touch-action: none;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  transition: border-color .1s;
  position: absolute;
}

.dark .pmb-item {
  background: #111827;
  border-color: #374151;
}

.pmb-item:hover {
  border-color: #93c5fd;
}

.dark .pmb-item:hover {
  border-color: #60a5fa;
}

.pmb-item-selected {
  border-color: var(--color-mancave-button-bg);
  z-index: 9999;
}

.dark .pmb-item-selected {
  border-color: #60a5fa;
}

.pmb-item-dragging {
  opacity: .85;
}

.pmb-item-image {
  object-fit: cover;
  pointer-events: none;
  border-radius: 1px;
  width: 100%;
  height: 100%;
}

.pmb-item-label {
  color: #fff;
  text-overflow: ellipsis;
  white-space: nowrap;
  pointer-events: none;
  background: linear-gradient(#0000, #000000b3);
  border-radius: 0 0 1px 1px;
  padding: .25rem .375rem;
  font-size: .625rem;
  line-height: 1.2;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  overflow: hidden;
}

.pmb-item-delete {
  color: #fff;
  cursor: pointer;
  z-index: 1;
  background: #ef4444;
  border: 1px solid #dc2626;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 1.25rem;
  height: 1.25rem;
  font-size: .75rem;
  display: none;
  position: absolute;
  top: -.5rem;
  right: -.5rem;
}

.pmb-item:hover .pmb-item-delete, .pmb-item-selected .pmb-item-delete {
  display: flex;
}

.pmb-item-resize {
  background: var(--color-mancave-button-bg);
  cursor: nwse-resize;
  z-index: 1;
  border: 1px solid #fff;
  border-radius: 2px;
  width: 10px;
  height: 10px;
  display: none;
  position: absolute;
  bottom: -3px;
  right: -3px;
}

.dark .pmb-item-resize {
  background: #60a5fa;
  border-color: #111827;
}

.pmb-item-selected .pmb-item-resize {
  display: block;
}

.pmb-sidebar {
  background: #fff;
  border-left: 1px solid #e5e7eb;
  flex-shrink: 0;
  width: 280px;
  min-width: 280px;
  padding: 1rem;
  overflow-y: auto;
}

.dark .pmb-sidebar {
  background: #111827;
  border-left-color: #374151;
}

.pmb-empty-state {
  text-align: center;
  color: #6b7280;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: .75rem;
  height: 100%;
  padding: 2rem;
  display: flex;
}

.dark .pmb-empty-state {
  color: #9ca3af;
}

.pmb-empty-state-icon {
  color: #d1d5db;
  width: 3rem;
  height: 3rem;
}

.dark .pmb-empty-state-icon {
  color: #4b5563;
}

.pmb-empty-state-title {
  color: #374151;
  font-size: 1rem;
  font-weight: 600;
}

.dark .pmb-empty-state-title {
  color: #d1d5db;
}

.pmb-empty-state-text {
  max-width: 320px;
  font-size: .8125rem;
}

.pmb-desktop-guard {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  min-height: 300px;
  padding: 3rem 1.5rem;
  display: flex;
}

.pmb-desktop-guard-icon {
  color: #9ca3af;
  width: 3.5rem;
  height: 3.5rem;
}

.dark .pmb-desktop-guard-icon {
  color: #6b7280;
}

.pmb-desktop-guard-title {
  color: #374151;
  font-size: 1.125rem;
  font-weight: 600;
}

.dark .pmb-desktop-guard-title {
  color: #d1d5db;
}

.pmb-desktop-guard-text {
  color: #6b7280;
  max-width: 380px;
  font-size: .875rem;
}

.scope-section {
  border-top: 1px solid #e2e8f0;
  margin-top: .75rem;
  padding-top: .75rem;
}

.dark .scope-section {
  border-color: #374151;
}

.scope-header {
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  justify-content: space-between;
  align-items: center;
  padding: .25rem 0;
  display: flex;
}

.scope-header:hover {
  opacity: .8;
}

.scope-progress-bar {
  background-color: #e2e8f0;
  border-radius: 1px;
  height: .375rem;
  margin-top: .375rem;
  margin-bottom: .5rem;
  position: relative;
  overflow: hidden;
}

.dark .scope-progress-bar {
  background-color: #374151;
}

.scope-progress-fill {
  background-color: var(--color-mancave-button-bg);
  z-index: 1;
  height: 100%;
  transition: width .3s;
  position: absolute;
  top: 0;
  left: 0;
}

.scope-progress-fill-active {
  background-color: var(--color-mancave-button-bg);
  opacity: .35;
  z-index: 0;
  height: 100%;
  transition: width .3s;
  position: absolute;
  top: 0;
  left: 0;
}

.scope-item {
  color: #475569;
  border-bottom: 1px solid #f1f5f9;
  align-items: flex-start;
  gap: .5rem;
  padding: .375rem .25rem;
  font-size: .8125rem;
  display: flex;
}

.dark .scope-item {
  color: #94a3b8;
  border-color: #1e293b;
}

.scope-item:last-child {
  border-bottom: none;
}

.scope-item-saving {
  opacity: .6;
}

.scope-item-excluded {
  opacity: .5;
  text-decoration: line-through;
}

.scope-item-active {
  background-color: #f59e0b0f;
  border-left: 2px solid #f59e0b;
  padding-left: calc(.25rem + 2px);
}

.dark .scope-item-active {
  background-color: #f59e0b14;
  border-left-color: #d97706;
}

.scope-item-highlight {
  animation: 2s ease-out scope-highlight;
}

@keyframes scope-highlight {
  0% {
    background-color: #02426d26;
  }

  100% {
    background-color: #0000;
  }
}

.scope-status-icon {
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
  margin-top: .125rem;
}

.scope-item-label {
  flex: 1;
  min-width: 0;
}

.scope-item-label > span {
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  overflow: hidden;
}

.scope-item-actions {
  opacity: 0;
  flex-shrink: 0;
  align-items: center;
  gap: .25rem;
  transition: opacity .15s;
  display: flex;
}

.scope-item:hover .scope-item-actions {
  opacity: 1;
}

.scope-action-btn {
  color: #64748b;
  cursor: pointer;
  background: none;
  border: 1px solid #0000;
  padding: .125rem .25rem;
  font-size: .6875rem;
  transition: color .15s, border-color .15s;
}

.scope-action-btn:hover {
  color: #334155;
  border-color: #cbd5e1;
}

.dark .scope-action-btn {
  color: #64748b;
}

.dark .scope-action-btn:hover {
  color: #cbd5e1;
  border-color: #475569;
}

.scope-add-instance-btn {
  color: #64748b;
  cursor: pointer;
  background: none;
  border: none;
  padding: .125rem;
  line-height: 1;
}

.scope-add-instance-btn:hover {
  color: var(--color-mancave-button-bg);
}

.scope-exclude-inline {
  background-color: #fef2f2;
  border: 1px solid #fecaca;
  margin-top: .25rem;
  margin-bottom: .25rem;
  padding: .5rem;
  font-size: .75rem;
}

.dark .scope-exclude-inline {
  background-color: #7f1d1d26;
  border-color: #991b1b;
}

.scope-exclude-reasons {
  flex-wrap: wrap;
  gap: .25rem;
  margin-top: .375rem;
  display: flex;
}

.scope-exclude-reason-btn {
  color: #64748b;
  cursor: pointer;
  background-color: #fff;
  border: 1px solid #e2e8f0;
  padding: .25rem .5rem;
  font-size: .6875rem;
  transition: all .15s;
}

.scope-exclude-reason-btn:hover {
  color: #334155;
  border-color: #94a3b8;
}

.scope-exclude-reason-btn.selected {
  border-color: var(--color-mancave-button-bg);
  color: var(--color-mancave-button-bg);
  background-color: #eff6ff;
}

.dark .scope-exclude-reason-btn {
  color: #94a3b8;
  background-color: #1e293b;
  border-color: #374151;
}

.dark .scope-exclude-reason-btn:hover {
  color: #e2e8f0;
  border-color: #64748b;
}

.dark .scope-exclude-reason-btn.selected {
  color: #93c5fd;
  background-color: #3b82f626;
  border-color: #3b82f6;
}

.scope-add-category-btn {
  color: #64748b;
  cursor: pointer;
  background: none;
  border: none;
  align-items: center;
  gap: .375rem;
  width: 100%;
  margin-top: .25rem;
  padding: .375rem .25rem;
  font-size: .75rem;
  transition: color .15s;
  display: flex;
}

.scope-add-category-btn:hover {
  color: var(--color-mancave-button-bg);
}

.scope-category-picker {
  background-color: #fff;
  border: 1px solid #e2e8f0;
  max-height: 12rem;
  margin-top: .25rem;
  padding: .5rem;
  overflow-y: auto;
}

.dark .scope-category-picker {
  background-color: #1e293b;
  border-color: #374151;
}

.scope-category-group-label {
  color: #94a3b8;
  text-transform: uppercase;
  letter-spacing: .025em;
  padding: .375rem .25rem .125rem;
  font-size: .6875rem;
  font-weight: 600;
}

.scope-category-option {
  color: #475569;
  text-align: left;
  cursor: pointer;
  background: none;
  border: none;
  width: 100%;
  padding: .25rem .5rem;
  font-size: .75rem;
  transition: background-color .15s;
  display: block;
}

.scope-category-option:hover {
  color: #1e293b;
  background-color: #f1f5f9;
}

.dark .scope-category-option {
  color: #94a3b8;
}

.dark .scope-category-option:hover {
  color: #e2e8f0;
  background-color: #334155;
}

.scope-copy-banner {
  color: #92400e;
  background-color: #fffbeb;
  border: 1px solid #fde68a;
  margin-bottom: .5rem;
  padding: .5rem;
  font-size: .75rem;
}

.dark .scope-copy-banner {
  color: #fcd34d;
  background-color: #92400e26;
  border-color: #92400e;
}

.scope-frozen-badge {
  color: #64748b;
  background-color: #f1f5f9;
  border: 1px solid #e2e8f0;
  align-items: center;
  gap: .25rem;
  padding: .125rem .375rem;
  font-size: .6875rem;
  display: inline-flex;
}

.dark .scope-frozen-badge {
  color: #94a3b8;
  background-color: #1e293b;
  border-color: #374151;
}

.scope-error-hint {
  color: #dc2626;
  cursor: pointer;
  align-items: center;
  gap: .25rem;
  padding: .125rem 0;
  font-size: .6875rem;
  display: flex;
}

.scope-error-hint:hover {
  text-decoration: underline;
}

.scope-quantity-badge {
  color: #94a3b8;
  margin-left: .125rem;
  font-size: .625rem;
}

.rec-view-selector {
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  gap: 0;
  display: flex;
  overflow: hidden;
}

.dark .rec-view-selector {
  border-color: #374151;
}

.rec-view-tab {
  color: #6b7280;
  cursor: pointer;
  background: none;
  border: none;
  border-right: 1px solid #e5e7eb;
  padding: .375rem .75rem;
  font-size: .75rem;
  font-weight: 500;
  transition: color .15s, background-color .15s;
}

.rec-view-tab:last-child {
  border-right: none;
}

.dark .rec-view-tab {
  color: #9ca3af;
  border-right-color: #374151;
}

.rec-view-tab:hover {
  color: #111827;
  background: #f9fafb;
}

.dark .rec-view-tab:hover {
  color: #e5e7eb;
  background: #1f2937;
}

.rec-view-tab-active {
  color: var(--color-mancave-button-bg);
  background: #eff6ff;
}

.dark .rec-view-tab-active {
  color: #60a5fa;
  background: #3b82f61a;
}

.rec-banner {
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  align-items: center;
  gap: .75rem;
  padding: .75rem 1rem;
  font-size: .8125rem;
  display: flex;
}

.dark .rec-banner {
  border-color: #374151;
}

.rec-banner-action {
  flex-shrink: 0;
  margin-left: auto;
}

.rec-banner-progress {
  color: #1e40af;
  background: #eff6ff;
  border-color: #bfdbfe;
}

.dark .rec-banner-progress {
  color: #93c5fd;
  background: #3b82f61a;
  border-color: #3b82f64d;
}

.rec-banner-warning {
  color: #92400e;
  background: #fffbeb;
  border-color: #fde68a;
}

.dark .rec-banner-warning {
  color: #fbbf24;
  background: #f59e0b1a;
  border-color: #f59e0b4d;
}

.rec-banner-error {
  color: #991b1b;
  background: #fef2f2;
  border-color: #fecaca;
}

.dark .rec-banner-error {
  color: #fca5a5;
  background: #ef44441a;
  border-color: #ef44444d;
}

.rec-group {
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  overflow: hidden;
}

.dark .rec-group {
  border-color: #374151;
}

.rec-group-header {
  color: #111827;
  cursor: pointer;
  text-align: left;
  background: #f9fafb;
  border: none;
  align-items: center;
  gap: .5rem;
  width: 100%;
  padding: .5rem .75rem;
  font-size: .8125rem;
  font-weight: 600;
  display: flex;
}

.dark .rec-group-header {
  color: #f3f4f6;
  background: #1f2937;
}

.rec-group-header:hover {
  background: #f3f4f6;
}

.dark .rec-group-header:hover {
  background: #374151;
}

.rec-group-count {
  color: #9ca3af;
  font-size: .6875rem;
  font-weight: 400;
}

.rec-item {
  border-top: 1px solid #f3f4f6;
  padding: .75rem;
}

.dark .rec-item {
  border-top-color: #1f2937;
}

.rec-item:first-child {
  border-top: none;
}

.rec-item-header {
  align-items: center;
  gap: .5rem;
  margin-bottom: .5rem;
  display: flex;
}

.rec-item-assigned {
  background: #f0fdf4;
}

.dark .rec-item-assigned {
  background: #22c55e0d;
}

.rec-card-top {
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  gap: .75rem;
  padding: .75rem;
  display: flex;
}

.dark .rec-card-top {
  border-color: #374151;
}

.rec-card-alt {
  border: 1px solid #f3f4f6;
  border-radius: 2px;
  gap: .5rem;
  padding: .5rem;
  font-size: .75rem;
  display: flex;
}

.dark .rec-card-alt {
  border-color: #1f2937;
}

.rec-card-gap {
  color: #92400e;
  background: #fffbeb;
  border: 1px solid #fde68a;
  border-radius: 2px;
  padding: .75rem;
  font-size: .8125rem;
}

.dark .rec-card-gap {
  color: #fbbf24;
  background: #f59e0b1a;
  border-color: #f59e0b4d;
}

.rec-assign-btn {
  color: var(--color-mancave-button-bg);
  border: 1px solid var(--color-mancave-button-bg);
  cursor: pointer;
  background: none;
  border-radius: 2px;
  padding: .25rem .625rem;
  font-size: .6875rem;
  font-weight: 500;
  transition: color .15s, background-color .15s;
}

.rec-assign-btn:hover {
  color: #fff;
  background: var(--color-mancave-button-bg);
}

.rec-assign-btn:disabled {
  opacity: .4;
  cursor: not-allowed;
}

.rec-assign-btn-done {
  color: #16a34a;
  cursor: default;
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
  border-radius: 2px;
  padding: .25rem .625rem;
  font-size: .6875rem;
  font-weight: 500;
}

.dark .rec-assign-btn-done {
  color: #4ade80;
  background: #22c55e1a;
  border-color: #22c55e4d;
}

.rec-progress {
  background: #e5e7eb;
  border-radius: 2px;
  height: .375rem;
  overflow: hidden;
}

.dark .rec-progress {
  background: #374151;
}

.rec-progress-fill {
  background: var(--color-mancave-button-bg);
  height: 100%;
  transition: width .3s;
}

.rec-score-badge {
  color: var(--color-mancave-button-bg);
  background: #eff6ff;
  border: 1px solid #bfdbfe;
  border-radius: 2px;
  align-items: center;
  padding: .125rem .375rem;
  font-size: .625rem;
  font-weight: 600;
  display: inline-flex;
}

.dark .rec-score-badge {
  color: #93c5fd;
  background: #3b82f61a;
  border-color: #3b82f64d;
}

.rec-reason-chip {
  color: #6b7280;
  background: #f3f4f6;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  padding: .0625rem .375rem;
  font-size: .625rem;
  display: inline-flex;
}

.dark .rec-reason-chip {
  color: #9ca3af;
  background: #1f2937;
  border-color: #374151;
}

.artifact-swatch-checker {
  background-color: #fff;
  background-image: linear-gradient(45deg, #ccc 25%, #0000 25%), linear-gradient(-45deg, #ccc 25%, #0000 25%), linear-gradient(45deg, #0000 75%, #ccc 75%), linear-gradient(-45deg, #0000 75%, #ccc 75%);
  background-position: 0 0, 0 4px, 4px -4px, -4px 0;
  background-size: 8px 8px;
}

.dark .artifact-swatch-checker {
  background-color: #1f2937;
  background-image: linear-gradient(45deg, #4b5563 25%, #0000 25%), linear-gradient(-45deg, #4b5563 25%, #0000 25%), linear-gradient(45deg, #0000 75%, #4b5563 75%), linear-gradient(-45deg, #0000 75%, #4b5563 75%);
}

.dc-media-modal-overlay {
  z-index: 50;
  background: #00000080;
  justify-content: center;
  align-items: center;
  padding: 1rem;
  display: flex;
  position: fixed;
  inset: 0;
}

@media (max-width: 639px) {
  .dc-media-modal-overlay {
    background: none;
    padding: 0;
  }
}

.dc-media-modal-content {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  flex-direction: column;
  width: 100%;
  max-width: 42rem;
  max-height: 85vh;
  display: flex;
  position: relative;
  overflow: hidden;
}

.dark .dc-media-modal-content {
  background: #1f2937;
  border-color: #374151;
}

@media (max-width: 639px) {
  .dc-media-modal-content {
    border: none;
    border-radius: 0;
    max-width: none;
    height: 100dvh;
    max-height: none;
  }
}

.dc-media-modal-header {
  border-bottom: 1px solid #e5e7eb;
  flex-shrink: 0;
  justify-content: space-between;
  align-items: center;
  padding: .75rem 1rem;
  display: flex;
}

.dark .dc-media-modal-header {
  border-color: #374151;
}

.dc-media-modal-title {
  color: #111827;
  font-size: 1rem;
  font-weight: 600;
}

.dark .dc-media-modal-title {
  color: #f3f4f6;
}

.dc-media-modal-close {
  color: #6b7280;
  cursor: pointer;
  background: none;
  border: none;
  justify-content: center;
  align-items: center;
  width: 2rem;
  height: 2rem;
  transition: color .15s;
  display: flex;
}

.dc-media-modal-close:hover {
  color: #111827;
}

.dark .dc-media-modal-close:hover {
  color: #f3f4f6;
}

.dc-media-modal-tabs {
  border-bottom: 1px solid #e5e7eb;
  flex-shrink: 0;
  display: flex;
}

.dark .dc-media-modal-tabs {
  border-color: #374151;
}

.dc-media-modal-tab {
  color: #6b7280;
  cursor: pointer;
  background: none;
  border: none;
  border-bottom: 2px solid #0000;
  flex: 1;
  justify-content: center;
  align-items: center;
  gap: .375rem;
  min-height: 2.75rem;
  padding: .625rem .75rem;
  font-size: .8125rem;
  font-weight: 500;
  transition: color .15s, border-color .15s;
  display: flex;
}

.dc-media-modal-tab:hover {
  color: #374151;
}

.dark .dc-media-modal-tab {
  color: #9ca3af;
}

.dark .dc-media-modal-tab:hover {
  color: #d1d5db;
}

.dc-media-modal-tab--active {
  color: var(--color-mancave-button-bg);
  border-bottom-color: var(--color-mancave-button-bg);
}

.dark .dc-media-modal-tab--active {
  color: #60a5fa;
  border-bottom-color: #60a5fa;
}

.dc-media-modal-filter {
  border-bottom: 1px solid #e5e7eb;
  flex-shrink: 0;
  gap: .375rem;
  padding: .5rem 1rem;
  display: flex;
}

.dark .dc-media-modal-filter {
  border-color: #374151;
}

.dc-media-modal-filter-btn {
  color: #6b7280;
  cursor: pointer;
  background: none;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  padding: .25rem .625rem;
  font-size: .75rem;
  font-weight: 500;
  transition: all .15s;
}

.dc-media-modal-filter-btn:hover {
  color: #374151;
  border-color: #d1d5db;
}

.dc-media-modal-filter-btn--active {
  color: #fff;
  background: var(--color-mancave-button-bg);
  border-color: var(--color-mancave-button-bg);
}

.dark .dc-media-modal-filter-btn {
  color: #9ca3af;
  border-color: #4b5563;
}

.dark .dc-media-modal-filter-btn:hover {
  color: #d1d5db;
  border-color: #6b7280;
}

.dark .dc-media-modal-filter-btn--active {
  color: #fff;
  background: #2563eb;
  border-color: #2563eb;
}

.dc-media-modal-body {
  flex: 1;
  padding: 1rem;
  overflow-y: auto;
}

.dc-media-modal-footer {
  border-top: 1px solid #e5e7eb;
  flex-shrink: 0;
  justify-content: space-between;
  align-items: center;
  padding: .625rem 1rem;
  display: flex;
}

.dark .dc-media-modal-footer {
  border-color: #374151;
}

@media (max-width: 639px) {
  .dc-media-modal-footer {
    padding-bottom: calc(.625rem + env(safe-area-inset-bottom, 0px));
  }
}

.dc-media-modal-grid {
  grid-template-columns: repeat(4, 1fr);
  gap: .5rem;
  display: grid;
}

@media (max-width: 639px) {
  .dc-media-modal-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.dc-media-modal-thumb {
  aspect-ratio: 1;
  cursor: pointer;
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  transition: border-color .15s;
  position: relative;
  overflow: hidden;
}

.dc-media-modal-thumb:hover {
  border-color: #9ca3af;
}

.dark .dc-media-modal-thumb {
  background: #374151;
  border-color: #4b5563;
}

.dark .dc-media-modal-thumb:hover {
  border-color: #6b7280;
}

.dc-media-modal-thumb--selected {
  border-color: var(--color-mancave-button-bg);
  border-width: 2px;
}

.dark .dc-media-modal-thumb--selected {
  border-color: #3b82f6;
}

.dc-media-modal-thumb--disabled {
  opacity: .45;
  pointer-events: none;
  cursor: default;
}

.dc-media-modal-thumb img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.dc-media-modal-thumb-check {
  background: var(--color-mancave-button-bg);
  color: #fff;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 1.25rem;
  height: 1.25rem;
  font-size: .625rem;
  display: flex;
  position: absolute;
  top: .25rem;
  right: .25rem;
}

.dark .dc-media-modal-thumb-check {
  background: #3b82f6;
}

.dc-media-modal-thumb-badge {
  color: #fff;
  background: #0000008c;
  border-radius: 2px;
  padding: .0625rem .25rem;
  font-size: .5625rem;
  line-height: 1.2;
  position: absolute;
  bottom: .25rem;
  left: .25rem;
}

.dc-media-modal-dropzone {
  cursor: pointer;
  border: 2px dashed #d1d5db;
  border-radius: 2px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: .75rem;
  min-height: 14rem;
  transition: border-color .15s, background-color .15s;
  display: flex;
}

.dc-media-modal-dropzone:hover {
  background: #f9fafb;
  border-color: #9ca3af;
}

.dark .dc-media-modal-dropzone {
  border-color: #4b5563;
}

.dark .dc-media-modal-dropzone:hover {
  background: #1f2937;
  border-color: #6b7280;
}

.dc-media-modal-dropzone--active {
  border-color: var(--color-mancave-button-bg);
  background: #eff6ff;
}

.dark .dc-media-modal-dropzone--active {
  background: #3b82f61a;
  border-color: #3b82f6;
}

.dc-media-modal-preview {
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  display: flex;
}

.dc-media-modal-preview-img {
  object-fit: contain;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  max-width: 100%;
  max-height: 50vh;
}

.dark .dc-media-modal-preview-img {
  border-color: #4b5563;
}

.dc-media-modal-pdf-strip {
  -webkit-overflow-scrolling: touch;
  gap: .5rem;
  padding: .5rem 0;
  display: flex;
  overflow-x: auto;
}

.dc-media-modal-pdf-page {
  cursor: pointer;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  flex-shrink: 0;
  width: 4.5rem;
  transition: border-color .15s;
  position: relative;
  overflow: hidden;
}

.dc-media-modal-pdf-page:hover {
  border-color: #9ca3af;
}

.dc-media-modal-pdf-page--selected {
  border-color: var(--color-mancave-button-bg);
  border-width: 2px;
}

.dark .dc-media-modal-pdf-page {
  border-color: #4b5563;
}

.dark .dc-media-modal-pdf-page--selected {
  border-color: #3b82f6;
}

.dc-media-modal-pdf-page img, .dc-media-modal-pdf-page canvas {
  width: 100%;
  display: block;
}

.dc-media-modal-pdf-page-num {
  text-align: center;
  color: #fff;
  background: #00000080;
  padding: .125rem;
  font-size: .625rem;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

.dc-media-modal-skeleton {
  aspect-ratio: 1;
  background: linear-gradient(90deg, #f3f4f6 25%, #e5e7eb 50%, #f3f4f6 75%) 0 0 / 200% 100%;
  border-radius: 2px;
  animation: 1.5s ease-in-out infinite dc-skeleton-pulse;
}

.dark .dc-media-modal-skeleton {
  background: linear-gradient(90deg, #374151 25%, #4b5563 50%, #374151 75%) 0 0 / 200% 100%;
}

@keyframes dc-skeleton-pulse {
  0% {
    background-position: 200% 0;
  }

  100% {
    background-position: -200% 0;
  }
}

.dc-media-modal-empty {
  text-align: center;
  color: #6b7280;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: .75rem;
  padding: 3rem 1rem;
  font-size: .875rem;
  display: flex;
}

.dark .dc-media-modal-empty {
  color: #9ca3af;
}

.dc-media-modal-error {
  color: #dc2626;
  background: #fef2f2;
  border: 1px solid #fecaca;
  border-radius: 2px;
  margin-bottom: .75rem;
  padding: .5rem .75rem;
  font-size: .75rem;
}

.dark .dc-media-modal-error {
  color: #f87171;
  background: #dc26261a;
  border-color: #dc26264d;
}

.dc-media-modal-info {
  color: #1d4ed8;
  background: #eff6ff;
  border: 1px solid #bfdbfe;
  border-radius: 2px;
  margin-bottom: .75rem;
  padding: .5rem .75rem;
  font-size: .75rem;
}

.dark .dc-media-modal-info {
  color: #93c5fd;
  background: #3b82f61a;
  border-color: #3b82f64d;
}

.dc-crop-modal-content {
  max-height: 90vh;
}

@media (max-width: 639px) {
  .dc-crop-modal-content {
    height: 100dvh;
    max-height: none;
  }
}

.dc-crop-area {
  background: #1a1a1a;
  flex: 1;
  justify-content: center;
  align-items: center;
  min-height: 300px;
  padding: 1rem;
  display: flex;
  overflow: auto;
}

@media (max-width: 639px) {
  .dc-crop-area {
    min-height: 0;
    padding: .5rem;
  }
}

.dc-crop-react-crop {
  max-height: 100%;
}

.dc-crop-image {
  object-fit: contain;
  max-width: 100%;
  max-height: 65vh;
}

@media (max-width: 639px) {
  .dc-crop-image {
    max-height: 55vh;
  }
}

.dc-media-thumb-wrapper {
  width: 100%;
  height: 100%;
  position: relative;
}

.dc-crop-overlay {
  pointer-events: none;
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.dc-crop-window {
  border: 1px solid #fff9;
  border-radius: 2px;
  position: absolute;
  box-shadow: 0 0 0 9999px #00000073;
}

.dc-crop-badge {
  pointer-events: none;
  background: #0009;
  border-radius: 2px;
  justify-content: center;
  align-items: center;
  width: 16px;
  height: 16px;
  display: flex;
  position: absolute;
  bottom: 2px;
  right: 2px;
}

.dc-crop-badge svg {
  color: #fff;
  width: 10px;
  height: 10px;
}

.dc-camera-preview {
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  padding: 1rem 0;
  display: flex;
}

.dc-camera-video {
  object-fit: cover;
  background: #000;
  border: 1px solid #e5e7eb;
  border-radius: 2px;
  width: 100%;
  max-height: 50vh;
}

.dark .dc-camera-video {
  border-color: #4b5563;
}

.dc-camera-controls {
  align-items: center;
  gap: .75rem;
  display: flex;
}

.dc-camera-status {
  color: #6b7280;
  flex-direction: column;
  align-items: center;
  gap: .75rem;
  padding: 3rem 1rem;
  display: flex;
}

.dark .dc-camera-status {
  color: #9ca3af;
}

.collab-token-A {
  --collab-color: #072238;
  --collab-bg: #e8eef3;
}

.collab-token-B {
  --collab-color: #6d4c41;
  --collab-bg: #efebe9;
}

.collab-token-C {
  --collab-color: #2e7d32;
  --collab-bg: #e8f5e9;
}

.collab-token-D {
  --collab-color: #7b1fa2;
  --collab-bg: #f3e5f5;
}

.collab-token-E {
  --collab-color: #e65100;
  --collab-bg: #fff3e0;
}

.collab-token-F {
  --collab-color: #0277bd;
  --collab-bg: #e1f5fe;
}

.dark .collab-token-A {
  --collab-color: #beccd9;
  --collab-bg: #beccd91f;
}

.dark .collab-token-B {
  --collab-color: #bcaaa4;
  --collab-bg: #bcaaa41f;
}

.dark .collab-token-C {
  --collab-color: #81c784;
  --collab-bg: #81c7841f;
}

.dark .collab-token-D {
  --collab-color: #ce93d8;
  --collab-bg: #ce93d81f;
}

.dark .collab-token-E {
  --collab-color: #ffb74d;
  --collab-bg: #ffb74d1f;
}

.dark .collab-token-F {
  --collab-color: #4fc3f7;
  --collab-bg: #4fc3f71f;
}

.collab-banner {
  border: 1px solid var(--color-mancave-button-bg);
  border-radius: 2px;
  align-items: center;
  gap: .75rem;
  padding: .75rem 1rem;
  display: flex;
}

.collab-banner-title {
  color: var(--color-ida-primary);
  font-size: .875rem;
  font-weight: 600;
}

.dark .collab-banner-title {
  color: #e2e8f0;
}

.collab-banner-description {
  color: #64748b;
  font-size: .8125rem;
}

.dark .collab-banner-description {
  color: #94a3b8;
}

.collab-avatar {
  color: #fff;
  background: var(--collab-color, #64748b);
  border-radius: 2px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 1.5rem;
  height: 1.5rem;
  font-size: .625rem;
  font-weight: 700;
  display: inline-flex;
}

.collab-sender-tag {
  color: var(--collab-color, #64748b);
  align-items: center;
  gap: .25rem;
  margin-bottom: .25rem;
  font-size: .75rem;
  font-weight: 500;
  display: inline-flex;
}

.chat-name-sticker {
  color: #64748b;
  align-items: center;
  gap: .25rem;
  margin-bottom: .125rem;
  padding: 0 .125rem;
  font-size: .6875rem;
  font-weight: 600;
  display: inline-flex;
}

.dark .chat-name-sticker {
  color: #94a3b8;
}

.collab-review-panel {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 2px;
  padding: 1rem;
}

.dark .collab-review-panel {
  background: #1e293b;
  border-color: #334155;
}

.collab-review-panel-title {
  color: var(--color-ida-primary);
  margin-bottom: .75rem;
  font-size: .875rem;
  font-weight: 600;
}

.dark .collab-review-panel-title {
  color: #e2e8f0;
}

.collab-approval-row {
  border-bottom: 1px solid #f1f5f9;
  align-items: center;
  gap: .5rem;
  padding: .375rem 0;
  display: flex;
}

.collab-approval-row:last-child {
  border-bottom: none;
}

.dark .collab-approval-row {
  border-color: #1e293b;
}

.collab-approval-status {
  border-radius: 2px;
  padding: .125rem .5rem;
  font-size: .75rem;
  font-weight: 500;
}

.collab-approval-status-pending {
  color: #64748b;
  background: #f1f5f9;
}

.collab-approval-status-approved {
  color: #166534;
  background: #dcfce7;
}

.collab-approval-status-changes-requested {
  color: #92400e;
  background: #fef3c7;
}

.collab-approval-status-revoked {
  color: #991b1b;
  background: #fef2f2;
}

.dark .collab-approval-status-pending {
  color: #94a3b8;
  background: #64748b33;
}

.dark .collab-approval-status-approved {
  color: #86efac;
  background: #16653433;
}

.dark .collab-approval-status-changes-requested {
  color: #fcd34d;
  background: #92400e33;
}

.dark .collab-approval-status-revoked {
  color: #fca5a5;
  background: #991b1b33;
}

.collab-all-approved {
  background: #f0fdf4;
  border: 1px solid #16a34a;
  border-radius: 2px;
  align-items: center;
  gap: .75rem;
  padding: .75rem 1rem;
  display: flex;
}

.dark .collab-all-approved {
  background: #16a34a1a;
  border-color: #22c55e;
}

.collab-conflict-card {
  border: 1px solid #e2e8f0;
  border-radius: 2px;
  margin-bottom: .5rem;
  padding: .75rem;
}

.dark .collab-conflict-card {
  border-color: #334155;
}

.collab-conflict-topic {
  margin-bottom: .375rem;
  font-size: .8125rem;
  font-weight: 600;
}

.collab-conflict-severity {
  border-radius: 2px;
  padding: .0625rem .375rem;
  font-size: .6875rem;
  font-weight: 500;
  display: inline-block;
}

.collab-conflict-severity-mild {
  color: #1e40af;
  background: #dbeafe;
}

.collab-conflict-severity-moderate {
  color: #92400e;
  background: #fef3c7;
}

.collab-conflict-severity-strong {
  color: #991b1b;
  background: #fecaca;
}

.dark .collab-conflict-severity-mild {
  color: #93c5fd;
  background: #1e40af33;
}

.dark .collab-conflict-severity-moderate {
  color: #fcd34d;
  background: #92400e33;
}

.dark .collab-conflict-severity-strong {
  color: #fca5a5;
  background: #991b1b33;
}

.collab-conflict-position {
  color: #475569;
  border-left: 2px solid var(--collab-color, #cbd5e1);
  margin-top: .375rem;
  padding-left: .75rem;
  font-size: .75rem;
}

.dark .collab-conflict-position {
  color: #94a3b8;
}

.collab-activity-event {
  text-align: center;
  color: #94a3b8;
  padding: .375rem 0;
  font-size: .75rem;
}

.dark .collab-activity-event {
  color: #64748b;
}

.collab-paused-overlay {
  background: #fffbeb;
  border: 1px solid #f59e0b;
  border-radius: 2px;
  align-items: center;
  gap: .75rem;
  padding: .75rem 1rem;
  display: flex;
}

.dark .collab-paused-overlay {
  background: #f59e0b1a;
  border-color: #d97706;
}

.live-audio-bar {
  border: 1px solid var(--color-mancave-button-bg);
  background: #f0f7ff;
  border-radius: 2px;
  align-items: center;
  gap: 1rem;
  padding: .75rem 1rem;
  display: flex;
}

.dark .live-audio-bar {
  background: #02426d26;
  border-color: #02426d80;
}

.live-audio-bar-state {
  flex: 1;
  align-items: center;
  gap: .5rem;
  min-width: 0;
  display: flex;
}

.live-audio-indicator {
  border-radius: 2px;
  flex-shrink: 0;
  width: 10px;
  height: 10px;
}

.live-audio-indicator-connecting {
  background: #d97706;
  animation: 1.5s ease-in-out infinite live-audio-pulse;
}

.live-audio-indicator-listening {
  background: #448843;
  animation: 2s ease-in-out infinite live-audio-pulse;
}

.live-audio-indicator-ai_speaking {
  background: var(--color-mancave-button-bg);
  animation: .8s ease-in-out infinite alternate live-audio-wave;
}

.live-audio-indicator-interrupted {
  background: #f59e0b;
}

.live-audio-indicator-processing {
  background: #d97706;
  animation: 1.5s ease-in-out infinite live-audio-processing;
}

@keyframes live-audio-processing {
  0%, 100% {
    opacity: .4;
  }

  50% {
    opacity: 1;
  }
}

.live-audio-indicator-error {
  background: #ef4444;
}

.live-audio-indicator-disconnected, .live-audio-indicator-idle {
  background: #94a3b8;
}

@keyframes live-audio-pulse {
  0%, 100% {
    opacity: 1;
  }

  50% {
    opacity: .4;
  }
}

@keyframes live-audio-wave {
  0% {
    transform: scaleY(.6);
  }

  100% {
    transform: scaleY(1.4);
  }
}

.live-audio-label {
  color: #334155;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: .875rem;
  overflow: hidden;
}

.dark .live-audio-label {
  color: #cbd5e1;
}

.live-audio-bar-info {
  flex-shrink: 0;
  align-items: center;
  gap: .5rem;
  display: flex;
}

.live-audio-timer {
  font-variant-numeric: tabular-nums;
  color: #475569;
  font-size: .875rem;
}

.dark .live-audio-timer {
  color: #94a3b8;
}

.live-audio-timer-warning {
  color: #d97706;
  font-weight: 600;
}

.live-audio-separator {
  color: #94a3b8;
  font-size: .75rem;
}

.live-audio-cost {
  font-variant-numeric: tabular-nums;
  color: #475569;
  font-size: .875rem;
}

.dark .live-audio-cost {
  color: #94a3b8;
}

.live-audio-end-btn {
  color: #ef4444;
  cursor: pointer;
  background: none;
  border: 1px solid #ef4444;
  border-radius: 2px;
  flex-shrink: 0;
  padding: .375rem .75rem;
  font-size: .8125rem;
  font-weight: 500;
  transition: background .15s, color .15s;
}

.live-audio-end-btn:hover:not(:disabled) {
  color: #fff;
  background: #ef4444;
}

.live-audio-end-btn:disabled {
  opacity: .5;
  cursor: not-allowed;
}

.live-audio-start-btn {
  color: var(--color-mancave-button-bg);
  border: 1px solid var(--color-mancave-button-bg);
  cursor: pointer;
  background: none;
  border-radius: 2px;
  align-items: center;
  gap: .375rem;
  padding: .375rem .75rem;
  font-size: .8125rem;
  font-weight: 500;
  transition: background .15s, color .15s;
  display: inline-flex;
}

.live-audio-start-btn:hover:not(:disabled) {
  background: var(--color-mancave-button-bg);
  color: #fff;
}

.live-audio-start-btn:disabled {
  opacity: .5;
  cursor: not-allowed;
}

.chat-mode-selector {
  flex-direction: column;
  gap: .5rem;
  display: flex;
}

.chat-mode-option {
  cursor: pointer;
  border: 1px solid #e2e8f0;
  border-radius: 2px;
  align-items: flex-start;
  gap: .5rem;
  padding: .5rem;
  transition: border-color .15s;
  display: flex;
}

.chat-mode-option:hover {
  border-color: var(--color-mancave-button-bg);
}

.chat-mode-option-active {
  border-color: var(--color-mancave-button-bg);
  background: #02426d0d;
}

.dark .chat-mode-option {
  border-color: #334155;
}

.dark .chat-mode-option:hover {
  border-color: #02426db3;
}

.dark .chat-mode-option-active {
  background: #02426d26;
  border-color: #02426db3;
}

.chat-mode-radio {
  width: 16px;
  height: 16px;
  accent-color: var(--color-mancave-button-bg);
  flex-shrink: 0;
  margin-top: 2px;
}

.chat-mode-label {
  color: #1e293b;
  font-size: .875rem;
  font-weight: 500;
}

.dark .chat-mode-label {
  color: #e2e8f0;
}

.chat-mode-description {
  color: #64748b;
  margin-top: .125rem;
  font-size: .75rem;
}

.dark .chat-mode-description {
  color: #94a3b8;
}

.realtime-voice-selector {
  grid-template-columns: repeat(3, 1fr);
  gap: .375rem;
  display: grid;
}

.realtime-voice-option {
  text-align: center;
  cursor: pointer;
  text-transform: capitalize;
  border: 1px solid #e2e8f0;
  border-radius: 2px;
  padding: .375rem .5rem;
  font-size: .75rem;
  transition: border-color .15s, background .15s;
}

.realtime-voice-option:hover {
  border-color: var(--color-mancave-button-bg);
}

.realtime-voice-option-active {
  border-color: var(--color-mancave-button-bg);
  background: #02426d1a;
  font-weight: 500;
}

.dark .realtime-voice-option {
  color: #cbd5e1;
  border-color: #334155;
}

.dark .realtime-voice-option:hover {
  border-color: #02426db3;
}

.dark .realtime-voice-option-active {
  background: #02426d33;
  border-color: #02426db3;
}

@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-rotate-x {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-y {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-z {
  syntax: "*";
  inherits: false
}

@property --tw-skew-x {
  syntax: "*";
  inherits: false
}

@property --tw-skew-y {
  syntax: "*";
  inherits: false
}

@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-space-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-divide-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}

@property --tw-divide-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-gradient-position {
  syntax: "*";
  inherits: false
}

@property --tw-gradient-from {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-gradient-via {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-gradient-to {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-gradient-stops {
  syntax: "*";
  inherits: false
}

@property --tw-gradient-via-stops {
  syntax: "*";
  inherits: false
}

@property --tw-gradient-from-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0%;
}

@property --tw-gradient-via-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 50%;
}

@property --tw-gradient-to-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-leading {
  syntax: "*";
  inherits: false
}

@property --tw-font-weight {
  syntax: "*";
  inherits: false
}

@property --tw-tracking {
  syntax: "*";
  inherits: false
}

@property --tw-ordinal {
  syntax: "*";
  inherits: false
}

@property --tw-slashed-zero {
  syntax: "*";
  inherits: false
}

@property --tw-numeric-figure {
  syntax: "*";
  inherits: false
}

@property --tw-numeric-spacing {
  syntax: "*";
  inherits: false
}

@property --tw-numeric-fraction {
  syntax: "*";
  inherits: false
}

@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-ring-color {
  syntax: "*";
  inherits: false
}

@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false
}

@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-ring-inset {
  syntax: "*";
  inherits: false
}

@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0;
}

@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}

@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}

@property --tw-blur {
  syntax: "*";
  inherits: false
}

@property --tw-brightness {
  syntax: "*";
  inherits: false
}

@property --tw-contrast {
  syntax: "*";
  inherits: false
}

@property --tw-grayscale {
  syntax: "*";
  inherits: false
}

@property --tw-hue-rotate {
  syntax: "*";
  inherits: false
}

@property --tw-invert {
  syntax: "*";
  inherits: false
}

@property --tw-opacity {
  syntax: "*";
  inherits: false
}

@property --tw-saturate {
  syntax: "*";
  inherits: false
}

@property --tw-sepia {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-blur {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false
}

@property --tw-duration {
  syntax: "*";
  inherits: false
}

@property --tw-ease {
  syntax: "*";
  inherits: false
}

@property --tw-scale-x {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@property --tw-scale-y {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@property --tw-scale-z {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

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

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

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

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

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

/*# sourceMappingURL=%5Broot-of-the-server%5D__e1020be0._.css.map*/