/* === Tailwind CSS v3.x – Precompiled (Essential Utilities) === */
*,::before,::after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}
html{line-height:1.5;-webkit-text-size-adjust:100%}
body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto}
h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}
a{color:inherit;text-decoration:inherit}
button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;margin:0;padding:0}
button{text-transform:none}
img,svg,video,canvas{display:block;vertical-align:middle}
.hidden{display:none}
.flex{display:flex}
.grid{display:grid}
.items-center{align-items:center}
.justify-center{justify-content:center}
.justify-between{justify-content:space-between}
.h-screen{height:100vh}
.w-full{width:100%}
.w-96{width:24rem}
.p-2{padding:.5rem}
.p-4{padding:1rem}
.p-6{padding:1.5rem}
.mt-20{margin-top:5rem}
.mb-3{margin-bottom:.75rem}
.mb-4{margin-bottom:1rem}
.rounded{border-radius:.25rem}
.shadow{box-shadow:0 1px 3px rgba(0,0,0,.1)}
.bg-white{background-color:#fff}
.bg-gray-100{background-color:#f3f4f6}
.bg-blue-600{background-color:#2563eb}
.bg-green-600{background-color:#16a34a}
.text-white{color:#fff}
.text-center{text-align:center}
.text-xl{font-size:1.25rem}
.text-lg{font-size:1.125rem}
.font-semibold{font-weight:600}
.font-bold{font-weight:700}
.border{border-width:1px}
.border-gray-300{border-color:#d1d5db}
input:focus{outline:none;border-color:#2563eb}
button:hover{opacity:.9}
.transition{transition:all .3s ease}
.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.gap-4{gap:1rem}

/* Animation */
@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.animate-fade{animation:fadeIn .4s ease-out}
