/* Local utility layer to avoid the Tailwind CDN in production. */

[class~="antialiased"] {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

[class~="hidden"] { display: none !important; }
[class~="block"] { display: block; }
[class~="inline-block"] { display: inline-block; }
[class~="inline-flex"] { display: inline-flex; }
[class~="flex"] { display: flex; }
[class~="grid"] { display: grid; }

[class~="flex-col"] { flex-direction: column; }
[class~="flex-wrap"] { flex-wrap: wrap; }
[class~="flex-1"] { flex: 1 1 0%; }
[class~="grid-cols-1"] { grid-template-columns: repeat(1, minmax(0, 1fr)); }

[class~="items-center"] { align-items: center; }
[class~="items-start"] { align-items: flex-start; }
[class~="justify-center"] { justify-content: center; }
[class~="justify-between"] { justify-content: space-between; }
[class~="justify-start"] { justify-content: flex-start; }

[class~="absolute"] { position: absolute; }
[class~="relative"] { position: relative; }
[class~="fixed"] { position: fixed; }

[class~="inset-0"] { inset: 0; }
[class~="inset-y-0"] {
  top: 0;
  bottom: 0;
}
[class~="top-0"] { top: 0; }
[class~="left-0"] { left: 0; }
[class~="right-0"] { right: 0; }
[class~="right-6"] { right: 1.5rem; }
[class~="bottom-6"] { bottom: 1.5rem; }

[class~="z-10"] { z-index: 10; }
[class~="z-50"] { z-index: 50; }

[class~="w-full"] { width: 100%; }
[class~="w-fit"] { width: fit-content; }
[class~="w-4"] { width: 1rem; }
[class~="w-24"] { width: 6rem; }
[class~="w-44"] { width: 11rem; }
[class~="w-96"] { width: 24rem; }
[class~="w-[55%]"] { width: 55%; }
[class~="w-[65%]"] { width: 65%; }

[class~="h-4"] { height: 1rem; }
[class~="h-12"] { height: 3rem; }
[class~="h-36"] { height: 9rem; }
[class~="h-96"] { height: 24rem; }
[class~="h-auto"] { height: auto; }
[class~="h-full"] { height: 100%; }
[class~="h-[280px]"] { height: 280px; }

[class~="max-w-full"] { max-width: 100%; }
[class~="max-w-sm"] { max-width: 24rem; }
[class~="max-w-xl"] { max-width: 36rem; }
[class~="max-w-2xl"] { max-width: 42rem; }
[class~="max-w-3xl"] { max-width: 48rem; }
[class~="max-w-4xl"] { max-width: 56rem; }
[class~="max-w-5xl"] { max-width: 64rem; }
[class~="max-w-6xl"] { max-width: 72rem; }
[class~="max-w-7xl"] { max-width: 80rem; }
[class~="max-w-[80%]"] { max-width: 80%; }
[class~="max-h-full"] { max-height: 100%; }

[class~="mx-auto"] {
  margin-left: auto;
  margin-right: auto;
}

[class~="-mr-20"] { margin-right: -5rem; }
[class~="-mt-20"] { margin-top: -5rem; }
[class~="mr-2"] { margin-right: 0.5rem; }
[class~="mr-3"] { margin-right: 0.75rem; }
[class~="mr-4"] { margin-right: 1rem; }
[class~="mt-1"] { margin-top: 0.25rem; }
[class~="mt-2"] { margin-top: 0.5rem; }
[class~="mt-3"] { margin-top: 0.75rem; }
[class~="mt-4"] { margin-top: 1rem; }
[class~="mt-6"] { margin-top: 1.5rem; }
[class~="mt-8"] { margin-top: 2rem; }
[class~="mt-10"] { margin-top: 2.5rem; }
[class~="mt-16"] { margin-top: 4rem; }
[class~="mb-2"] { margin-bottom: 0.5rem; }
[class~="mb-3"] { margin-bottom: 0.75rem; }
[class~="mb-4"] { margin-bottom: 1rem; }
[class~="mb-6"] { margin-bottom: 1.5rem; }
[class~="mb-8"] { margin-bottom: 2rem; }
[class~="mb-10"] { margin-bottom: 2.5rem; }
[class~="mb-12"] { margin-bottom: 3rem; }
[class~="mb-16"] { margin-bottom: 4rem; }

[class~="p-1"] { padding: 0.25rem; }
[class~="p-4"] { padding: 1rem; }
[class~="p-5"] { padding: 1.25rem; }
[class~="p-6"] { padding: 1.5rem; }
[class~="p-8"] { padding: 2rem; }
[class~="px-3"] {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}
[class~="px-4"] {
  padding-left: 1rem;
  padding-right: 1rem;
}
[class~="px-5"] {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}
[class~="px-6"] {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
[class~="px-7"] {
  padding-left: 1.75rem;
  padding-right: 1.75rem;
}
[class~="px-8"] {
  padding-left: 2rem;
  padding-right: 2rem;
}
[class~="py-1"] {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}
[class~="py-2"] {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
[class~="py-3"] {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}
[class~="py-4"] {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
[class~="py-12"] {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
[class~="py-14"] {
  padding-top: 3.5rem;
  padding-bottom: 3.5rem;
}
[class~="py-16"] {
  padding-top: 4rem;
  padding-bottom: 4rem;
}
[class~="pt-2"] { padding-top: 0.5rem; }
[class~="pt-6"] { padding-top: 1.5rem; }
[class~="pl-2"] { padding-left: 0.5rem; }
[class~="pl-4"] { padding-left: 1rem; }

[class~="gap-2"] { gap: 0.5rem; }
[class~="gap-3"] { gap: 0.75rem; }
[class~="gap-4"] { gap: 1rem; }
[class~="gap-6"] { gap: 1.5rem; }
[class~="gap-8"] { gap: 2rem; }
[class~="gap-10"] { gap: 2.5rem; }

[class~="space-y-1"] > * + * { margin-top: 0.25rem; }
[class~="space-y-2"] > * + * { margin-top: 0.5rem; }
[class~="space-y-3"] > * + * { margin-top: 0.75rem; }
[class~="space-y-4"] > * + * { margin-top: 1rem; }
[class~="space-y-6"] > * + * { margin-top: 1.5rem; }

[class~="overflow-hidden"] { overflow: hidden; }
[class~="object-cover"] { object-fit: cover; }
[class~="object-contain"] { object-fit: contain; }
[class~="pointer-events-none"] { pointer-events: none; }
[class~="cursor-pointer"] { cursor: pointer; }
[class~="cursor-not-allowed"] { cursor: not-allowed; }
[class~="whitespace-nowrap"] { white-space: nowrap; }
[class~="sr-only"] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

[class~="rounded"] { border-radius: 0.25rem; }
[class~="rounded-lg"] { border-radius: 0.5rem; }
[class~="rounded-xl"] { border-radius: 0.75rem; }
[class~="rounded-2xl"] { border-radius: 1rem; }
[class~="rounded-3xl"] { border-radius: 1.5rem; }
[class~="rounded-full"] { border-radius: 9999px; }
[class~="rounded-r-xl"] {
  border-top-right-radius: 0.75rem;
  border-bottom-right-radius: 0.75rem;
}

[class~="border"] {
  border-width: 1px;
  border-style: solid;
  border-color: #e2e8f0;
}
[class~="border-t"] {
  border-top-width: 1px;
  border-top-style: solid;
}
[class~="border-t-4"] {
  border-top-width: 4px;
  border-top-style: solid;
}
[class~="border-l-2"] {
  border-left-width: 2px;
  border-left-style: solid;
}
[class~="border-l-4"] {
  border-left-width: 4px;
  border-left-style: solid;
}

[class~="shadow"] { box-shadow: 0 1px 3px rgba(15, 23, 42, 0.14); }
[class~="shadow-sm"] { box-shadow: 0 1px 2px rgba(15, 23, 42, 0.12); }
[class~="shadow-md"] { box-shadow: 0 8px 18px rgba(15, 23, 42, 0.12); }
[class~="shadow-lg"] { box-shadow: 0 14px 28px rgba(15, 23, 42, 0.14); }
[class~="shadow-xl"] { box-shadow: 0 20px 38px rgba(15, 23, 42, 0.16); }
[class~="shadow-2xl"] { box-shadow: 0 24px 54px rgba(15, 23, 42, 0.18); }
[class~="drop-shadow-lg"] { filter: drop-shadow(0 10px 18px rgba(15, 23, 42, 0.18)); }
[class~="blur-3xl"] { filter: blur(64px); }
[class~="opacity-20"] { opacity: 0.2; }
[class~="opacity-60"] { opacity: 0.6; }
[class~="opacity-90"] { opacity: 0.9; }
[class~="opacity-95"] { opacity: 0.95; }
[class~="brightness-0"] { filter: brightness(0); }
[class~="invert"] { filter: invert(1); }
[class~="brightness-0"][class~="invert"] { filter: brightness(0) invert(1); }

[class~="bg-white"] { background-color: #ffffff; }
[class~="bg-white/80"] { background-color: rgba(255, 255, 255, 0.8); }
[class~="bg-slate-50"] { background-color: #f8fafc; }
[class~="bg-slate-900"] { background-color: #0f172a; }
[class~="bg-gray-50"] { background-color: #f9fafb; }
[class~="bg-gray-100"] { background-color: #f3f4f6; }
[class~="bg-green-100"] { background-color: #dcfce7; }
[class~="bg-green-500"] { background-color: #22c55e; }
[class~="bg-cyan-100"] { background-color: #cffafe; }
[class~="bg-emerald-600"] { background-color: #059669; }
[class~="bg-blue-600"] { background-color: #2563eb; }
[class~="bg-purple-900"] { background-color: #581c87; }
[class~="bg-purple-900/50"] { background-color: rgba(88, 28, 135, 0.5); }
[class~="bg-gray-900/50"] { background-color: rgba(17, 24, 39, 0.5); }
[class~="bg-[#e4eeee]"] { background-color: #e4eeee; }
[class~="bg-[var(--brand-blue-700)]"] { background-color: var(--brand-blue-700); }
[class~="bg-gradient-to-b"] {
  background-image: linear-gradient(to bottom, rgba(241, 245, 249, 0.6), rgba(226, 232, 240, 0.4));
}

[class~="border-gray-100"] { border-color: #f3f4f6; }
[class~="border-gray-700"] { border-color: #374151; }
[class~="border-slate-100"] { border-color: #f1f5f9; }
[class~="border-slate-200"] { border-color: #e2e8f0; }
[class~="border-slate-300"] { border-color: #cbd5e1; }
[class~="border-cyan-500"] { border-color: #06b6d4; }
[class~="border-emerald-500"] { border-color: #10b981; }
[class~="border-purple-500"] { border-color: #a855f7; }
[class~="border-[var(--brand-blue-700)]"] { border-color: var(--brand-blue-700); }

[class~="text-white"] { color: #ffffff; }
[class~="text-left"] { text-align: left; }
[class~="text-center"] { text-align: center; }
[class~="text-base"] { font-size: 1rem; }
[class~="text-xs"] { font-size: 0.75rem; }
[class~="text-sm"] { font-size: 0.875rem; }
[class~="text-lg"] { font-size: 1.125rem; }
[class~="text-xl"] { font-size: 1.25rem; }
[class~="text-2xl"] { font-size: 1.5rem; }
[class~="text-3xl"] { font-size: 1.875rem; }
[class~="text-4xl"] { font-size: 2.25rem; }

[class~="font-medium"] { font-weight: 500; }
[class~="font-semibold"] { font-weight: 600; }
[class~="font-bold"] { font-weight: 700; }
[class~="font-extrabold"] { font-weight: 800; }

[class~="leading-relaxed"] { line-height: 1.625; }
[class~="leading-snug"] { line-height: 1.375; }
[class~="leading-tight"] { line-height: 1.25; }
[class~="tracking-wide"] { letter-spacing: 0.025em; }
[class~="tracking-wider"] { letter-spacing: 0.05em; }
[class~="tracking-widest"] { letter-spacing: 0.1em; }
[class~="uppercase"] { text-transform: uppercase; }

[class~="text-gray-300"] { color: #d1d5db; }
[class~="text-gray-400"] { color: #9ca3af; }
[class~="text-gray-500"] { color: #6b7280; }
[class~="text-gray-600"] { color: #4b5563; }
[class~="text-gray-700"] { color: #374151; }
[class~="text-gray-800"] { color: #1f2937; }
[class~="text-slate-300"] { color: #cbd5e1; }
[class~="text-slate-400"] { color: #94a3b8; }
[class~="text-slate-500"] { color: #64748b; }
[class~="text-slate-600"] { color: #475569; }
[class~="text-slate-700"] { color: #334155; }
[class~="text-slate-800"] { color: #1e293b; }
[class~="text-slate-900"] { color: #0f172a; }
[class~="text-green-400"] { color: #4ade80; }
[class~="text-green-600"] { color: #16a34a; }
[class~="text-blue-400"] { color: #60a5fa; }
[class~="text-blue-500"] { color: #3b82f6; }
[class~="text-blue-600"] { color: #2563eb; }
[class~="text-cyan-400"] { color: #22d3ee; }
[class~="text-cyan-800"] { color: #155e75; }
[class~="text-emerald-400"] { color: #34d399; }
[class~="text-emerald-700"] { color: #047857; }
[class~="text-orange-500"] { color: #f97316; }
[class~="text-purple-300"] { color: #d8b4fe; }
[class~="text-purple-400"] { color: #c084fc; }
[class~="text-[var(--brand-blue-500)]"] { color: var(--brand-blue-500); }
[class~="text-[var(--brand-blue-700)]"] { color: var(--brand-blue-700); }

[class~="list-disc"] { list-style-type: disc; }
[class~="list-inside"] { list-style-position: inside; }

[class~="transition"] { transition-property: all; transition-duration: 150ms; }
[class~="transition-all"] { transition-property: all; }
[class~="transition-colors"] { transition-property: color, background-color, border-color, text-decoration-color, fill, stroke; }
[class~="transition-shadow"] { transition-property: box-shadow; }
[class~="duration-300"] { transition-duration: 300ms; }
[class~="duration-500"] { transition-duration: 500ms; }
[class~="duration-700"] { transition-duration: 700ms; }
[class~="ease-in-out"] { transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); }
[class~="transform"] { transform: translateZ(0); }

[class~="hover:bg-[var(--brand-blue-900)]"]:hover { background-color: var(--brand-blue-900); }
[class~="hover:bg-blue-700"]:hover { background-color: #1d4ed8; }
[class~="hover:bg-emerald-700"]:hover { background-color: #047857; }
[class~="hover:bg-green-600"]:hover { background-color: #16a34a; }
[class~="hover:bg-slate-50"]:hover { background-color: #f8fafc; }
[class~="hover:border-purple-500"]:hover { border-color: #a855f7; }
[class~="hover:text-blue-300"]:hover { color: #93c5fd; }
[class~="hover:text-gray-200"]:hover { color: #e5e7eb; }
[class~="hover:text-green-300"]:hover { color: #86efac; }
[class~="hover:underline"]:hover { text-decoration: underline; }
[class~="hover:opacity-90"]:hover { opacity: 0.9; }
[class~="hover:shadow-md"]:hover { box-shadow: 0 8px 18px rgba(15, 23, 42, 0.12); }
[class~="hover:shadow-lg"]:hover { box-shadow: 0 14px 28px rgba(15, 23, 42, 0.14); }
[class~="hover:scale-105"]:hover { transform: scale(1.05); }
[class~="hover:-translate-y-1"]:hover { transform: translateY(-0.25rem); }

[class~="focus:outline-none"]:focus { outline: none; }
[class~="focus:ring"]:focus,
[class~="focus:ring-2"]:focus,
[class~="focus:ring-[var(--brand-blue-500)]"]:focus {
  box-shadow: 0 0 0 3px rgba(43, 119, 229, 0.22);
}

@media (min-width: 640px) {
  [class~="sm:grid-cols-2"] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [class~="sm:w-auto"] { width: auto; }
}

@media (min-width: 768px) {
  [class~="md:flex-row"] { flex-direction: row; }
  [class~="md:grid-cols-2"] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [class~="md:grid-cols-3"] { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  [class~="md:items-center"] { align-items: center; }
  [class~="md:justify-between"] { justify-content: space-between; }
  [class~="md:p-6"] { padding: 1.5rem; }
  [class~="md:p-8"] { padding: 2rem; }
  [class~="md:p-10"] { padding: 2.5rem; }
  [class~="md:p-12"] { padding: 3rem; }
  [class~="md:py-16"] {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
  [class~="md:py-24"] {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
  [class~="md:text-lg"] { font-size: 1.125rem; }
  [class~="md:text-2xl"] { font-size: 1.5rem; }
  [class~="md:text-3xl"] { font-size: 1.875rem; }
  [class~="md:text-4xl"] { font-size: 2.25rem; }
  [class~="md:text-5xl"] { font-size: 3rem; }
  [class~="md:text-6xl"] { font-size: 3.75rem; }
  [class~="md:w-1/3"] { width: 33.333333%; }
  [class~="md:w-2/3"] { width: 66.666667%; }
  [class~="md:w-56"] { width: 14rem; }
}

@media (min-width: 1024px) {
  [class~="lg:flex-row"] { flex-direction: row; }
  [class~="lg:grid-cols-2"] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [class~="lg:grid-cols-3"] { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  [class~="lg:grid-cols-12"] { grid-template-columns: repeat(12, minmax(0, 1fr)); }
  [class~="lg:items-center"] { align-items: center; }
  [class~="lg:items-start"] { align-items: flex-start; }
  [class~="lg:text-left"] { text-align: left; }
  [class~="lg:w-72"] { width: 18rem; }
  [class~="lg:w-auto"] { width: auto; }
  [class~="lg:col-span-5"] { grid-column: span 5 / span 5; }
  [class~="lg:col-span-7"] { grid-column: span 7 / span 7; }
}
