/* VoxMagna Tailwind utilities — static build (replaces 124KB CDN script) */
/* Preflight reset (replaces Tailwind's base reset) */
*,::before,::after{box-sizing:border-box;border-width:0;border-style:solid;border-color:rgba(255,255,255,.1)}
button,input,select,textarea{font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}
button,[role="button"]{-webkit-appearance:none;appearance:none;background:none;border:none;cursor:pointer;color:inherit}
button,select{text-transform:none}
img,svg{display:block;vertical-align:middle}
img{max-width:100%;height:auto}
a{color:inherit;text-decoration:inherit}
/* Layout & Display */
.flex{display:flex}.inline-flex{display:inline-flex}.inline-block{display:inline-block}.block{display:block}.grid{display:grid}
.hidden{display:none!important}
.flex-1{flex:1 1 0%}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-shrink-0{flex-shrink:0}
.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}
.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}
.self-center{align-self:center}
.col-span-2{grid-column:span 2/span 2}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.relative{position:relative}.sticky{position:sticky}.top-0{top:0}
.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}
.min-h-screen{min-height:100vh}.min-w-0{min-width:0}
.h-screen{height:100vh}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}
.w-full{width:100%}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}
.max-h-40{max-height:10rem}.max-h-60{max-height:15rem}.max-w-xl{max-width:36rem}
/* Spacing — gaps */
.gap-0\.5{gap:.125rem}.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.25rem}
.space-y-1>:not([hidden])~:not([hidden]){margin-top:.25rem}
.space-y-1\.5>:not([hidden])~:not([hidden]){margin-top:.375rem}
.space-y-2>:not([hidden])~:not([hidden]){margin-top:.5rem}
.space-y-3>:not([hidden])~:not([hidden]){margin-top:.75rem}
/* Spacing — padding */
.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-7{padding:1.75rem}
.px-2{padding-left:.5rem;padding-right:.5rem}.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{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-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}
.py-8{padding-top:2rem;padding-bottom:2rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-20{padding-top:5rem;padding-bottom:5rem}
.pt-4{padding-top:1rem}
/* Spacing — margin */
.mx-1{margin-left:.25rem;margin-right:.25rem}.ml-auto{margin-left:auto}.mt-auto{margin-top:auto}
.mb-0{margin-bottom:0}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.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}.mb-8{margin-bottom:2rem}
.ml-0\.5{margin-left:.125rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}
.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}
.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-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}
/* Typography */
.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.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-xl{font-size:1.25rem;line-height:1.75rem}.text-2xl{font-size:1.5rem;line-height:2rem}
.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}
.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.font-black{font-weight:900}
.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Courier New',monospace}
.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}
.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.tracking-wide{letter-spacing:.025em}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* Text colors */
.text-white{color:#fff}
.text-slate-200{color:#e2e8f0}.text-slate-300{color:#cbd5e1}.text-slate-400{color:#94a3b8}.text-slate-500{color:#64748b}.text-slate-600{color:#475569}
.text-indigo-300{color:#a5b4fc}.text-indigo-400{color:#818cf8}.text-indigo-500{color:#6366f1}
.text-emerald-400{color:#34d399}.text-green-400{color:#4ade80}.text-red-400{color:#f87171}.text-rose-400{color:#fb7185}
.text-amber-400{color:#fbbf24}.text-blue-400{color:#60a5fa}.text-cyan-400{color:#22d3ee}.text-violet-400{color:#a78bfa}
/* Background colors */
.bg-white\/5{background:rgba(255,255,255,.05)}.bg-indigo-600\/30{background:rgba(79,70,229,.3)}.bg-indigo-600\/50{background:rgba(79,70,229,.5)}
.bg-indigo-700\/40{background:rgba(67,56,202,.4)}.bg-emerald-500\/10{background:rgba(16,185,129,.1)}.bg-red-500\/10{background:rgba(239,68,68,.1)}
/* Borders */
.border{border-width:1px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}
.border-transparent{border-color:transparent}.border-white\/5{border-color:rgba(255,255,255,.05)}.border-white\/10{border-color:rgba(255,255,255,.1)}
.border-emerald-500\/20{border-color:rgba(16,185,129,.2)}.border-red-500\/20{border-color:rgba(239,68,68,.2)}
/* Rounded */
.rounded{border-radius:.25rem}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}
/* Interactive */
.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;user-select:none}.resize-y{resize:vertical}
.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:150ms}
.transition-colors{transition-property:color,background-color,border-color;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:150ms}
/* Z-index */
.z-10{z-index:10}
/* Hover states */
.hover\:bg-white\/5:hover{background:rgba(255,255,255,.05)}
.hover\:bg-white\/10:hover{background:rgba(255,255,255,.1)}
.hover\:bg-white\/\[\.02\]:hover{background:rgba(255,255,255,.02)}
.hover\:text-white:hover{color:#fff}
.hover\:text-slate-300:hover{color:#cbd5e1}.hover\:text-slate-400:hover{color:#94a3b8}
.hover\:text-indigo-300:hover{color:#a5b4fc}.hover\:text-indigo-400:hover{color:#818cf8}
.hover\:text-red-300:hover{color:#fca5a5}.hover\:text-red-400:hover{color:#f87171}
.hover\:underline:hover{text-decoration:underline}
.hover\:border-indigo-500\/40:hover{border-color:rgba(99,102,241,.4)}
/* Focus states */
.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}
.focus\:border-indigo-500:focus{border-color:#6366f1}
/* Last child */
.last\:border-0:last-child{border-width:0}
/* Accent */
.accent-indigo-500{accent-color:#6366f1}
/* Custom: mt-.5 used in app */
.mt-\.5{margin-top:.125rem}
