/* Lean public utilities — replaces Tailwind CDN on the frontend */
*,*::before,*::after{box-sizing:border-box}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:none}
button,input,select,textarea{font:inherit}
img,svg,video{display:block;max-width:100%}
.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}
.hidden{display:none!important}
.block{display:block}.inline{display:inline}.inline-flex{display:inline-flex}.flex{display:flex}.grid{display:grid}
.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1 1 0%}.flex-grow{flex-grow:1}.flex-shrink-0,.shrink-0{flex-shrink:0}
.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-stretch{align-items:stretch}
.justify-center{justify-content:center}.justify-between{justify-content:space-between}.content-start{align-content:flex-start}
.self-start{align-self:flex-start}.self-auto{align-self:auto}
.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}
.inset-0{inset:0}.top-0{top:0}.top-3{top:.75rem}.left-3{left:.75rem}.z-50{z-index:50}.z-\[70\]{z-index:70}
.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.min-w-0{min-width:0}.min-h-0{min-height:0}.min-h-screen{min-height:100vh}
.w-full{width:100%}.h-full{height:100%}.h-auto{height:auto}
.w-1\.5{width:.375rem}.h-1\.5{height:.375rem}.w-2{width:.5rem}.h-2{height:.5rem}.w-2\.5{width:.625rem}.h-2\.5{height:.625rem}
.w-3\.5{width:.875rem}.h-3\.5{height:.875rem}.w-4{width:1rem}.h-4{height:1rem}.w-5{width:1.25rem}.h-5{height:1.25rem}
.w-6{width:1.5rem}.h-6{height:1.5rem}.w-7{width:1.75rem}.h-7{height:1.75rem}.w-8{width:2rem}.h-8{height:2rem}
.w-12{width:3rem}.h-12{height:3rem}.w-20{width:5rem}.w-28{width:7rem}.h-16{height:4rem}.h-20{height:5rem}.w-24{width:6rem}.h-\[68px\]{height:68px}.h-36{height:9rem}.h-44{height:11rem}
.max-w-lg{max-width:32rem}
.h-\[18px\]{height:18px}.w-\[18px\]{width:18px}
.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-7xl{max-width:80rem}.max-w-\[1180px\]{max-width:1180px}.max-w-full{max-width:100%}
.max-h-\[80vh\]{max-height:80vh}.max-h-\[420px\]{max-height:420px}.max-h-\[460px\]{max-height:460px}
.mx-auto{margin-left:auto;margin-right:auto}.mx-4{margin-left:1rem;margin-right:1rem}.ml-1{margin-left:.25rem}.ml-auto{margin-left:auto}.-mb-px{margin-bottom:-1px}.mt-auto{margin-top:auto}
.m-0{margin:0}
.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-2\.5{margin-top:.625rem}
.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-10{margin-top:2rem}.mt-12{margin-top:2.25rem}
.mb-0\.5{margin-bottom:.125rem}.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.1rem}.mb-6{margin-bottom:1.25rem}.mb-7{margin-bottom:1.5rem}.mb-8{margin-bottom:1.75rem}
.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-3{padding:.75rem}.p-3\.5{padding:.875rem}.p-4{padding:1rem}.p-5{padding:1.15rem}.p-6{padding:1.35rem}
.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}
.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}
.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}
.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}
.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-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.15rem;padding-bottom:1.15rem}
.p-8{padding:1.75rem}.py-8{padding-top:1.5rem;padding-bottom:1.5rem}.py-10{padding-top:1.75rem;padding-bottom:1.75rem}.py-20{padding-top:3rem;padding-bottom:3rem}
.pt-0{padding-top:0}.pt-4{padding-top:1rem}.pt-8{padding-top:1.75rem}
.pb-0{padding-bottom:0}.pb-0\.5{padding-bottom:.125rem}.pb-2{padding-bottom:.5rem}.pb-2\.5{padding-bottom:.625rem}
.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pl-5{padding-left:1.25rem}
.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.1rem}.gap-6{gap:1.25rem}.gap-8{gap:1.75rem}
.space-x-1\.5>:not([hidden])~:not([hidden]){margin-left:.375rem}.space-x-2>:not([hidden])~:not([hidden]){margin-left:.5rem}
.space-x-3>:not([hidden])~:not([hidden]){margin-left:.75rem}
.space-y-1>:not([hidden])~:not([hidden]){margin-top:.25rem}.space-y-2>:not([hidden])~:not([hidden]){margin-top:.5rem}
.space-y-3>:not([hidden])~:not([hidden]){margin-top:.75rem}.space-y-4>:not([hidden])~:not([hidden]){margin-top:1rem}
.space-y-6>:not([hidden])~:not([hidden]){margin-top:1.25rem}.space-y-10>:not([hidden])~:not([hidden]){margin-top:1.75rem}
.last\:border-0:last-child{border-width:0}.last\:pb-0:last-child{padding-bottom:0}
.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}
.grid-cols-\[1fr_96px\]{grid-template-columns:1fr 96px}
.aspect-\[16\/10\]{aspect-ratio:16/10}
.object-cover{object-fit:cover}.object-contain{object-fit:contain}
.rounded-sm{border-radius:.125rem}.rounded-md{border-radius:.375rem}.rounded-lg{border-radius:.5rem}
.rounded-xl{border-radius:.75rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.25rem}.rounded-full{border-radius:9999px}
.border{border-width:1px;border-style:solid}.border-0{border-width:0}.border-2{border-width:2px}
.border-t{border-top-width:1px;border-top-style:solid}.border-b{border-bottom-width:1px;border-bottom-style:solid}
.border-b-2{border-bottom-width:2px;border-bottom-style:solid}.border-l-2{border-left-width:2px;border-left-style:solid}
.border-transparent{border-color:transparent}
.border-gray-100{border-color:#f3f4f6}.border-gray-200{border-color:#e5e7eb}.border-neutral-100{border-color:#f5f5f5}
.border-neutral-200{border-color:#e5e5e5}.border-neutral-900{border-color:#171717}
.border-red-100{border-color:#fee2e2}.border-red-600{border-color:#dc2626}.border-sky-100{border-color:#e0f2fe}
.border-slate-200{border-color:#e2e8f0}.border-\[\#bfdbfe\]{border-color:#bfdbfe}.border-\[\#fecdd3\]{border-color:#fecdd3}
.bg-white{background:#fff}.bg-black{background:#000}.bg-black\/50{background:rgba(0,0,0,.5)}
.bg-gray-50{background:#f9fafb}.bg-gray-100{background:#f3f4f6}.bg-gray-200{background:#e5e7eb}
.bg-neutral-100{background:#f5f5f5}.bg-red-600{background:#dc2626}.bg-red-50\/70{background:rgba(254,242,242,.7)}
.bg-blue-50{background:#eff6ff}.bg-blue-600{background:#2563eb}.bg-orange-100{background:#ffedd5}
.bg-slate-50{background:#f8fafc}.bg-slate-100{background:#f1f5f9}.bg-slate-100\/80{background:rgba(241,245,249,.8)}
.bg-sky-50\/70{background:rgba(240,249,255,.7)}.bg-emerald-100{background:#d1fae5}
.bg-\[\#1877F2\]{background:#1877F2}
.text-white{color:#fff}.text-black{color:#000}
.text-gray-400{color:#9ca3af}.text-gray-500{color:#6b7280}.text-gray-600{color:#4b5563}.text-gray-700{color:#374151}
.text-gray-800{color:#1f2937}.text-gray-900{color:#111827}.text-gray-950{color:#030712}
.text-neutral-400{color:#a3a3a3}.text-neutral-500{color:#737373}.text-neutral-700{color:#404040}
.text-neutral-900{color:#171717}.text-neutral-950{color:#0a0a0a}
.text-red-500{color:#ef4444}.text-red-600{color:#dc2626}.text-red-600\/60{color:rgba(220,38,38,.6)}.text-red-700{color:#b91c1c}
.text-orange-700{color:#c2410c}.text-sky-700{color:#0369a1}.text-emerald-600{color:#059669}.text-emerald-700{color:#047857}
.text-slate-400{color:#94a3b8}.text-slate-500{color:#64748b}.text-slate-600{color:#475569}.text-slate-800{color:#1e293b}.text-slate-900{color:#0f172a}
.text-blue-600{color:#2563eb}.not-italic{font-style:normal}
.text-\[\#2563eb\]{color:#2563eb}.text-\[\#e11d48\]{color:#e11d48}
.text-xs{font-size:.75rem;line-height:1.2}.text-sm{font-size:.875rem;line-height:1.4}.text-lg{font-size:1.125rem;line-height:1.4}
.text-xl{font-size:1.25rem;line-height:1.35}.text-2xl{font-size:1.5rem;line-height:1.3}.text-3xl{font-size:1.875rem;line-height:1.25}
.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}
.text-\[13px\]{font-size:13px}.text-\[15px\]{font-size:15px}.text-\[18px\]{font-size:18px}
.text-\[20px\]{font-size:20px}.text-\[26px\]{font-size:26px}.text-\[1\.05rem\]{font-size:1.05rem}.text-\[1\.7rem\]{font-size:1.7rem}
.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-black{font-weight:900}
.uppercase{text-transform:uppercase}.text-center{text-align:center}.text-right{text-align:right}
.leading-none{line-height:1}.leading-snug{line-height:1.35}.leading-relaxed{line-height:1.625}
.leading-7{line-height:1.75rem}.leading-8{line-height:2rem}.leading-\[1\.3\]{line-height:1.3}
.tracking-tight{letter-spacing:-.015em}.tracking-wide{letter-spacing:.04em}.tracking-wider{letter-spacing:.06em}
.whitespace-nowrap{white-space:nowrap}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.line-clamp-2{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.line-clamp-3{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.shadow-sm{box-shadow:0 1px 2px rgba(0,0,0,.06)}.shadow-md{box-shadow:0 4px 10px rgba(0,0,0,.08)}
.shadow-2xl{box-shadow:0 20px 45px rgba(0,0,0,.18)}
.outline-none{outline:none}.cursor-pointer{cursor:pointer}.fill-current{fill:currentColor}
.accent-red-600{accent-color:#dc2626}
.opacity-75{opacity:.75}
.transition,.transition-colors,.transition-all,.transition-transform{transition:color .15s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease,transform .2s ease,opacity .15s ease}
.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.duration-700{transition-duration:.7s}
.group:hover .group-hover\:text-red-600,.group:hover .group-hover\:text-red-700{color:#b91c1c}
.group:hover .group-hover\:text-sky-700{color:#0369a1}
.group:hover .group-hover\:scale-105{transform:scale(1.05)}
.hover\:bg-gray-50:hover{background:#f9fafb}.hover\:bg-gray-100:hover{background:#f3f4f6}
.hover\:bg-red-700:hover{background:#b91c1c}.hover\:text-red-600:hover{color:#dc2626}
.hover\:border-red-200:hover{border-color:#fecaca}.hover\:border-red-300:hover{border-color:#fca5a5}
.hover\:border-sky-300:hover{border-color:#7dd3fc}
.hover\:shadow-sm:hover{box-shadow:0 1px 2px rgba(0,0,0,.06)}.hover\:shadow-md:hover{box-shadow:0 4px 10px rgba(0,0,0,.08)}
.hover\:shadow-lg:hover{box-shadow:0 10px 24px rgba(0,0,0,.1)}.hover\:shadow-xl:hover{box-shadow:0 16px 34px rgba(0,0,0,.12)}
.focus\:border-red-500:focus{border-color:#ef4444}
@keyframes util-ping{75%,100%{transform:scale(2);opacity:0}}
.animate-ping{animation:util-ping 1s cubic-bezier(0,0,.2,1) infinite}
@media (min-width:640px){
  .sm\:flex{display:flex}.sm\:inline{display:inline}.sm\:flex-row{flex-direction:row}
  .sm\:items-end{align-items:flex-end}.sm\:justify-between{justify-content:space-between}.sm\:self-auto{align-self:auto}
  .sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sm\:w-36{width:9rem}.sm\:h-24{height:6rem}
  .sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:p-4{padding:1rem}.sm\:p-6{padding:1.35rem}.sm\:p-8{padding:1.75rem}
  .sm\:py-8{padding-top:1.5rem;padding-bottom:1.5rem}.sm\:py-10{padding-top:2rem;padding-bottom:2rem}
  .sm\:mb-8{margin-bottom:1.75rem}
  .sm\:text-sm{font-size:.875rem}.sm\:text-lg{font-size:1.125rem}.sm\:text-2xl{font-size:1.5rem}.sm\:text-3xl{font-size:1.875rem}.sm\:text-4xl{font-size:2rem}
  .sm\:text-\[13px\]{font-size:13px}.sm\:text-\[22px\]{font-size:22px}.sm\:text-\[30px\]{font-size:30px}
  .sm\:text-\[2\.05rem\]{font-size:2.05rem}
}
.hover\:text-slate-800:hover{color:#1e293b}
@media (min-width:768px){
  .md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (min-width:1024px){
  .lg\:flex{display:flex}.lg\:flex-row{flex-direction:row}
  .lg\:items-end{align-items:flex-end}.lg\:justify-between{justify-content:space-between}
  .lg\:sticky{position:sticky}.lg\:top-24{top:6rem}.lg\:h-full{height:100%}
  .lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
  .lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}
  .lg\:col-span-4{grid-column:span 4/span 4}.lg\:col-span-5{grid-column:span 5/span 5}
  .lg\:col-span-7{grid-column:span 7/span 7}.lg\:col-span-8{grid-column:span 8/span 8}
  .lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:px-10{padding-left:2.5rem;padding-right:2.5rem}
  .lg\:gap-12{gap:2.25rem}.lg\:text-\[1\.75rem\]{font-size:1.75rem}.lg\:text-\[2\.35rem\]{font-size:2.35rem}
}
