/* Local utility subset replacing CDN Tailwind */
.hidden{display:none!important}
.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.block{display:block}
.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}
.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}
.flex-wrap{flex-wrap:wrap}
.w-7{width:1.75rem}.h-7{height:1.75rem}.w-8{width:2rem}.h-8{height:2rem}.w-9{width:2.25rem}.h-9{height:2.25rem}.w-10{width:2.5rem}.h-10{height:2.5rem}
.min-h-screen{min-height:100vh}
.rounded{border-radius:.25rem}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-2xl{border-radius:1rem}
.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}
.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}
.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}
.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}
.ml-1{margin-left:.25rem}
.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}
.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.font-mono{font-family:ui-monospace,Menlo,monospace}
.text-white{color:#fff}.text-right{text-align:right}.text-center{text-align:center}
.sticky{position:sticky}.top-0{top:0}.z-50{z-index:50}
.overflow-x-auto{overflow-x:auto}
.transition-all{transition:all .2s}.transition-colors{transition:color .2s,background-color .2s}
.cursor-pointer{cursor:pointer}
.border{border-width:1px;border-style:solid}
.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-from,#6366f1),var(--tw-to,#8b5cf6))}
.from-indigo-500{--tw-from:#6366f1}.to-purple-600{--tw-to:#7c3aed}
.bg-indigo-600{background:#4f46e5}.hover\:bg-indigo-500:hover{background:#6366f1}.bg-slate-800{background:#1e293b}.hover\:bg-slate-700:hover{background:#334155}
.max-w-screen-xl{max-width:1280px;margin-left:auto;margin-right:auto}
.min-w-\[600px\]{min-width:600px}.min-w-\[640px\]{min-width:640px}
@media (min-width:768px){.md\:px-6{padding-left:1.5rem;padding-right:1.5rem}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (min-width:640px){.sm\:inline{display:inline}.sm\:flex{display:flex}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}
