/* Prefixed Tailwind subset for Kato Quiz only (no build needed)
   - All utilities are prefixed with `tw-` to avoid collisions
   - Minimal set to support quick layout tweaks on the quiz page
*/

/* Layout */
.tw-flex{display:flex}
.tw-inline-flex{display:inline-flex}
.tw-grid{display:grid}
.tw-hidden{display:none}

/* Flexbox alignment */
.tw-items-center{align-items:center}
.tw-items-start{align-items:flex-start}
.tw-items-end{align-items:flex-end}
.tw-justify-center{justify-content:center}
.tw-justify-between{justify-content:space-between}
.tw-justify-start{justify-content:flex-start}
.tw-justify-end{justify-content:flex-end}
.tw-flex-col{flex-direction:column}
.tw-flex-row{flex-direction:row}
.tw-flex-1{flex:1 1 0%}

/* Gap utilities (small subset) */
.tw-gap-1{gap:.25rem}
.tw-gap-2{gap:.5rem}
.tw-gap-3{gap:.75rem}
.tw-gap-4{gap:1rem}

/* Spacing (subset) */
.tw-px-2{padding-left:.5rem;padding-right:.5rem}
.tw-px-3{padding-left:.75rem;padding-right:.75rem}
.tw-px-4{padding-left:1rem;padding-right:1rem}
.tw-py-2{padding-top:.5rem;padding-bottom:.5rem}
.tw-py-3{padding-top:.75rem;padding-bottom:.75rem}
.tw-p-2{padding:.5rem}
.tw-p-3{padding:.75rem}
.tw-p-4{padding:1rem}
.tw-mt-2{margin-top:.5rem}
.tw-mt-3{margin-top:.75rem}
.tw-mt-4{margin-top:1rem}
.tw-mb-2{margin-bottom:.5rem}
.tw-mb-3{margin-bottom:.75rem}
.tw-mb-4{margin-bottom:1rem}

/* Sizing */
.tw-w-full{width:100%}
.tw-h-full{height:100%}
.tw-max-w-full{max-width:100%}

/* Typography */
.tw-text-sm{font-size:.875rem;line-height:1.25rem}
.tw-text-base{font-size:1rem;line-height:1.5rem}
.tw-font-bold{font-weight:700}
.tw-font-medium{font-weight:500}
.tw-text-center{text-align:center}

/* Colors (very small set) */
.tw-text-slate-900{color:#0f172a}
.tw-text-slate-700{color:#334155}
.tw-text-gray-500{color:#6b7280}
.tw-bg-white{background-color:#fff}
.tw-bg-slate-50{background-color:#f8fafc}

/* Border & radius */
.tw-rounded{border-radius:.25rem}
.tw-rounded-md{border-radius:.375rem}
.tw-rounded-lg{border-radius:.5rem}
.tw-border{border-width:1px;border-style:solid;border-color:#e5e7eb}

/* Shadows (tiny subset) */
.tw-shadow{box-shadow:0 1px 2px 0 rgba(0,0,0,.05)}
.tw-shadow-md{box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1)}

/* Utilities */
.tw-overflow-hidden{overflow:hidden}
.tw-overflow-x-auto{overflow-x:auto}
.tw-select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}

/* Responsive helpers (basic) */
@media (min-width: 640px){
  .sm\:tw-flex{display:flex}
  .sm\:tw-grid{display:grid}
}

/* --- Added utilities required by quiz.js --- */
/* Layout & positioning */
.tw-relative{position:relative}
.tw-absolute{position:absolute}
.tw-left-0{left:0}
.tw-right-0{right:0}
.tw-top-1\/2{top:50%}
.tw-z-20{z-index:20}
.tw-min-h-screen{min-height:100vh}
.tw-flex-shrink-0{flex-shrink:0}
.tw-w-9{width:2.25rem}
.tw-h-9{height:2.25rem}
.tw-max-w-2xl{max-width:42rem}
.tw-w-40{width:10rem}
.tw-h-36{height:9rem}
.tw-w-20{width:5rem}
.tw-h-20{height:5rem}

/* Spacing additions */
.tw-p-6{padding:1.5rem}
.tw-py-1{padding-top:.25rem;padding-bottom:.25rem}
.tw-p-3{padding:.75rem}
.tw-mb-6{margin-bottom:1.5rem}
.tw-px-1{padding-left:.25rem;padding-right:.25rem}

/* Transforms */
.-tw-translate-y-1\/2{transform:translateY(-50%)}
.tw-scale-105{transform:scale(1.05)}

/* Typography sizes & weights */
.tw-text-xs{font-size:.75rem;line-height:1rem}
.tw-text-lg{font-size:1.125rem;line-height:1.75rem}
.tw-text-3xl{font-size:1.875rem;line-height:2.25rem}
.tw-leading-tight{line-height:1.25}
.tw-font-semibold{font-weight:600}
.tw-text-white{color:#fff}
.tw-text-white\/70{color:rgba(255,255,255,.7)}
.tw-text-white\/80{color:rgba(255,255,255,.8)}
.tw-text-card-foreground{color:inherit}

/* Backgrounds & effects */
.tw-bg-white\/10{background-color:rgba(255,255,255,.1)}
.tw-bg-white\/20{background-color:rgba(255,255,255,.2)}
.tw-bg-white\/5{background-color:rgba(255,255,255,.05)}
.tw-bg-black\/30{background-color:rgba(0,0,0,.3)}
.tw-backdrop-blur-sm{backdrop-filter:blur(4px)}
.tw-backdrop-blur-xl{backdrop-filter:blur(24px)}

/* Borders & radius & colors */
.tw-border-2{border-width:2px;border-style:solid}
.tw-rounded-xl{border-radius:.75rem}
.tw-rounded-2xl{border-radius:1rem}
.tw-rounded-full{border-radius:9999px}
.tw-border-white\/20{border-color:rgba(255,255,255,.2)}
.tw-border-white\/80{border-color:rgba(255,255,255,.8)}
.tw-border-white\/10{border-color:rgba(255,255,255,.1)}

/* Shadows */
.tw-shadow-sm{box-shadow:0 1px 2px 0 rgba(0,0,0,.05)}
.tw-shadow-2xl{box-shadow:0 25px 50px -12px rgba(0,0,0,.25)}
.tw-shadow-\[0_0_15px_rgba\(255\,255\,255\,0\.2\)\]{box-shadow:0 0 15px rgba(255,255,255,.2)}

/* Opacity & transitions */
.tw-opacity-0{opacity:0}
.tw-transition-opacity{transition-property:opacity;transition-duration:150ms}
.tw-transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:150ms}
.tw-transition-all{transition-property:all;transition-duration:150ms}
.tw-duration-300{transition-duration:300ms}

/* Placeholder color */
.tw-placeholder\:tw-text-white\/50::placeholder{color:rgba(255,255,255,.5)}

/* Focus-visible helpers */
.tw-focus-visible\:tw-outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}
.tw-focus-visible\:tw-ring-1:focus-visible{box-shadow:0 0 0 1px rgba(255,255,255,.5)}

/* Group hover helpers */
.tw-group{position:relative}

/* Responsive typography & positions */
@media (min-width:640px){
  .sm\:tw-text-lg{font-size:1.125rem;line-height:1.75rem}
  .sm\:tw-text-4xl{font-size:2.25rem;line-height:2.5rem}
  .sm\:tw-w-28{width:7rem}
}
@media (min-width:768px){
  .md\:tw-left-4{left:1rem}
  .md\:tw-right-4{right:1rem}
  .md\:tw-text-lg{font-size:1.125rem;line-height:1.75rem}
}

/* Cursors */
.tw-cursor-pointer{cursor:pointer}
.tw-cursor-not-allowed{cursor:not-allowed}
