/* Static replacement for the Tailwind Play CDN (cdn.tailwindcss.com).
   Hand-built to cover only the utility classes actually used in index.html —
   avoids shipping the runtime JIT compiler in production. */

/* The CDN build also shipped Tailwind's Preflight reset, which neutralizes
   browser/OS default <button> chrome (font, line-height, box-sizing). Without
   it, buttons fall back to the OS's native control metrics, which can make
   them taller than their flex container expects and overflow past it. */
button {
  font-family: inherit;
  font-size: 100%;
  line-height: normal;
  margin: 0;
  box-sizing: border-box;
  -webkit-appearance: none;
  appearance: none;
  background: none;
  border: none;
  padding: 0;
}

.flex { display: flex; }
.hidden { display: none; }
.sticky { position: sticky; }
.top-0 { top: 0; }
.cursor-pointer { cursor: pointer; }

.items-center { align-items: center; }
.gap-1 { gap: 0.25rem; }
.gap-4 { gap: 1rem; }

.w-2 { width: 0.5rem; }
.h-2 { height: 0.5rem; }

.mr-4 { margin-right: 1rem; }
.mr-6 { margin-right: 1.5rem; }
.ml-1 { margin-left: 0.25rem; }
.mt-2 { margin-top: 0.5rem; }

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

.font-bold { font-weight: 700; }
.text-center { text-align: center; }
.leading-snug { line-height: 1.375; }
.text-sm { font-size: 0.875rem; line-height: 1.25rem; }
.text-base { font-size: 1rem; line-height: 1.5rem; }
.text-lg { font-size: 1.125rem; line-height: 1.75rem; }
.text-2xl { font-size: 1.5rem; line-height: 2rem; }
.text-gray-700 { color: #374151; }

/* Arbitrary-value utilities */
.z-\[9999\] { z-index: 9999; }

/* Responsive variants (Tailwind default breakpoints: md = 768px, xl = 1280px) */
@media (min-width: 768px) {
  .md\:flex { display: flex; }
  .md\:text-lg { font-size: 1.125rem; line-height: 1.75rem; }
  .md\:text-4xl { font-size: 2.25rem; line-height: 2.5rem; }
}

@media (min-width: 1280px) {
  .xl\:flex { display: flex; }
}
