/* Lightweight Tailwind-like utilities for static legal docs (CSP-safe: no runtime style injection) */
*{box-sizing:border-box}
.min-h-screen{min-height:100vh}
.w-full{width:100%}
.w-8{width:2rem}
.w-32{width:8rem}
.w-1\/3{width:33.333333%}
.h-8{height:2rem}
.h-16{height:4rem}
.h-px{height:1px}
.max-w-5xl{max-width:64rem}
.max-w-xs{max-width:20rem}
.mx-auto{margin-left:auto;margin-right:auto}
.mt-1{margin-top:.25rem}
.mt-2{margin-top:.5rem}
.mt-3{margin-top:.75rem}
.mt-4{margin-top:1rem}
.mt-8{margin-top:2rem}
.mt-auto{margin-top:auto}
.mb-1{margin-bottom:.25rem}
.mb-2{margin-bottom:.5rem}
.mb-3{margin-bottom:.75rem}
.mb-4{margin-bottom:1rem}
.mb-6{margin-bottom:1.5rem}
.mb-8{margin-bottom:2rem}
.mb-10{margin-bottom:2.5rem}
.my-6{margin-top:1.5rem;margin-bottom:1.5rem}
.p-3{padding:.75rem}
.p-4{padding:1rem}
.p-5{padding:1.25rem}
.p-8{padding:2rem}
.px-2{padding-left:.5rem;padding-right:.5rem}
.px-4{padding-left:1rem;padding-right:1rem}
.px-5{padding-left:1.25rem;padding-right:1.25rem}
.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}
.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}
.pl-0{padding-left:0}
.pl-4{padding-left:1rem}
.pl-5{padding-left:1.25rem}
.inline-block{display:inline-block}
.flex{display:flex}
.grid{display:grid}
.flex-col{flex-direction:column}
.flex-grow{flex-grow:1}
.flex-1{flex:1 1 0%}
.items-center{align-items:center}
.items-start{align-items:flex-start}
.justify-center{justify-content:center}
.gap-2{gap:.5rem}
.gap-3{gap:.75rem}
.gap-4{gap:1rem}
.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.space-y-1>:not([hidden])~:not([hidden]){margin-top:.25rem}
.space-y-2>:not([hidden])~:not([hidden]){margin-top:.5rem}
.list-disc{list-style-type:disc}
.list-none{list-style-type:none}
.rounded{border-radius:.25rem}
.rounded-md{border-radius:.375rem}
.rounded-lg{border-radius:.5rem}
.rounded-xl2{border-radius:1.25rem}
.rounded-full{border-radius:9999px}
.border{border:1px solid #e5e7eb}
.border-b{border-bottom:1px solid #e5e7eb}
.border-t{border-top:1px solid #e5e7eb}
.border-l-2{border-left:2px solid}
.border-ff-border{border-color:var(--ff-border)!important}
.border-blue-100{border-color:#dbeafe}
.border-blue-200{border-color:#bfdbfe}
.border-gray-100{border-color:#f3f4f6}
.border-yellow-200{border-color:#fde68a}
.bg-ff-bg{background-color:var(--ff-bg)!important}
.bg-ff-panel{background-color:var(--ff-panel)!important}
.bg-ff-border{background-color:var(--ff-border)!important}
.bg-blue-50{background-color:#eff6ff}
.bg-blue-100{background-color:#dbeafe}
.bg-gray-50{background-color:#f9fafb}
.bg-white{background-color:#fff}
.bg-yellow-50{background-color:#fffbeb}
.text-left{text-align:left}
.text-center{text-align:center}
.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-xs{font-size:.75rem;line-height:1rem}
.text-\[10px\]{font-size:10px;line-height:1.2}
.text-ff-text{color:var(--ff-text)!important}
.text-ff-sub{color:var(--ff-sub)!important}
.text-ff-accent{color:var(--ff-accent)!important}
.text-blue-600{color:#2563eb}
.text-blue-800{color:#1e40af}
.text-blue-900{color:#1e3a8a}
.text-gray-400{color:#94a3b8}
.text-yellow-800{color:#92400e}
.text-yellow-900{color:#78350f}
.font-sans{font-family:Inter,sans-serif}
.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}
.font-medium{font-weight:500}
.font-semibold{font-weight:600}
.font-bold{font-weight:700}
.uppercase{text-transform:uppercase}
.tracking-tight{letter-spacing:-.025em}
.tracking-wide{letter-spacing:.025em}
.leading-relaxed{line-height:1.625}
.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
.shadow-sm{box-shadow:0 1px 2px 0 rgba(0,0,0,.05)}
.shadow-soft{box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}
.transition-opacity{transition-property:opacity;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}
.underline{text-decoration-line:underline}
.hover\:underline:hover{text-decoration-line:underline}
.hover\:opacity-80:hover{opacity:.8}
.hover\:text-blue-600:hover{color:#2563eb}
@media (min-width:640px){
  .sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}
  .sm\:p-10{padding:2.5rem}
  .sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sm\:flex-row{flex-direction:row}
  .sm\:items-center{align-items:center}
  .sm\:text-right{text-align:right}
  .sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}
}
@media (min-width:768px){
  .md\:px-8{padding-left:2rem;padding-right:2rem}
  .md\:py-8{padding-top:2rem;padding-bottom:2rem}
  .md\:text-base{font-size:1rem;line-height:1.5rem}
  .md\:text-3xl{font-size:1.875rem;line-height:2.25rem}
  .md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:1024px){
  .lg\:px-8{padding-left:2rem;padding-right:2rem}
}
