/* util_compat.css
   Utility classes still referenced by templates and JS, extracted from
   the frozen Tailwind build output on 2026-07-04. Plain project CSS,
   no build step. Shrink this file as pages migrate to component CSS
   (sh-/au-/tp-/pp-/al-/lv- namespaces); see docs/TAILWIND_EXIT_PLAN.md.
   sm: prefix = min-width 640px. */
.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border-width:0;white-space:nowrap}
.pointer-events-none{pointer-events:none}
.relative{position:relative}
.m-0{margin:0}
.my-4{margin-bottom:1rem;margin-top:1rem}
.mb-0\.5{margin-bottom:.125rem}
.mb-1{margin-bottom:.25rem}
.mb-2{margin-bottom:.5rem}
.mb-4{margin-bottom:1rem}
.mt-0\.5{margin-top:.125rem}
.mt-4{margin-top:1rem}
.block{display:block}
.inline-block{display:inline-block}
.flex{display:flex}
.inline-flex{display:inline-flex}
.hidden{display:none}
.h-11{height:2.75rem}
.h-4{height:1rem}
.h-5{height:1.25rem}
.h-\[190px\]{height:190px}
.w-11{width:2.75rem}
.w-4{width:1rem}
.w-5{width:1.25rem}
.w-full{width:100%}
.min-w-0{min-width:0}
.flex-1{flex:1 1 0%}
.flex-shrink-0{flex-shrink:0}
.shrink-0{flex-shrink:0}
.border-collapse{border-collapse:collapse}
.cursor-default{cursor:default}
.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}
.flex-wrap{flex-wrap:wrap}
.items-center{align-items:center}
.items-baseline{align-items:baseline}
.justify-end{justify-content:flex-end}
.justify-center{justify-content:center}
.justify-between{justify-content:space-between}
.gap-1{gap:.25rem}
.gap-1\.5{gap:.375rem}
.gap-2{gap:.5rem}
.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.125rem*var(--tw-space-y-reverse));margin-top:calc(.125rem*(1 - var(--tw-space-y-reverse)))}
.self-center{align-self:center}
.overflow-hidden{overflow:hidden}
.overflow-x-auto{overflow-x:auto}
.truncate{overflow:hidden;text-overflow:ellipsis}
.truncate,.whitespace-nowrap{white-space:nowrap}
.rounded{border-radius:.25rem}
.rounded-2xl{border-radius:1rem}
.rounded-full{border-radius:9999px}
.rounded-lg{border-radius:.5rem}
.border{border-width:1px}
.border-b{border-bottom-width:1px}
.border-r{border-right-width:1px}
.border-t{border-top-width:1px}
.border-\[\#23283a\]{border-color:var(--ap-navy-800)}
.border-gray-200{border-color:var(--ap-gray-200)}
.border-gray-600{border-color:var(--ap-gray-600)}
.border-gray-700{border-color:var(--ap-gray-700)}
.border-gray-700\/40{border-color:rgba(var(--ap-gray-700-rgb),.4)}
.border-gray-800{border-color:var(--ap-gray-800)}
.border-gray-800\/40{border-color:rgba(var(--ap-gray-800-rgb),.4)}
.border-gray-800\/60{border-color:rgba(var(--ap-gray-800-rgb),.6)}
.border-yellow-300\/60{border-color:rgba(253,224,71,.6)}
.border-yellow-700\/50{border-color:rgba(161,98,7,.5)}
.bg-\[rgba\(21\2c 25\2c 38\2c 0\.45\)\]{background-color:rgba(var(--ap-navy-900-rgb),.45)}
.bg-gray-800{background-color:var(--ap-gray-800)}
.bg-gray-900{background-color:var(--ap-gray-900)}
.bg-gray-950{background-color:var(--ap-gray-950)}
.bg-radio-50{--tw-bg-opacity:1;background-color:rgb(244 233 0/var(--tw-bg-opacity,1))}
.bg-white\/70{background-color:rgba(var(--ap-white-rgb),.7)}
.bg-white\/\[0\.04\],.bg-white\/\[\.04\]{background-color:rgba(var(--ap-white-rgb),.04)}
.p-1{padding:.25rem}
.p-4{padding:1rem}
.px-1\.5{padding-left:.375rem;padding-right:.375rem}
.px-2{padding-left:.5rem;padding-right:.5rem}
.px-3{padding-left:.75rem;padding-right:.75rem}
.px-4{padding-left:1rem;padding-right:1rem}
.py-0\.5{padding-bottom:.125rem;padding-top:.125rem}
.py-1{padding-bottom:.25rem;padding-top:.25rem}
.py-1\.5{padding-bottom:.375rem;padding-top:.375rem}
.py-2{padding-bottom:.5rem;padding-top:.5rem}
.py-4{padding-bottom:1rem;padding-top:1rem}
.pr-2{padding-right:.5rem}
.pr-3{padding-right:.75rem}
.pr-4{padding-right:1rem}
.pt-3{padding-top:.75rem}
.text-left{text-align:left}
.text-right{text-align:right}
.align-bottom{vertical-align:bottom}
.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}
.font-sans{font-family:Inter,system-ui,sans-serif}
.text-2xl{font-size:1.5rem;line-height:2rem}
.text-\[10px\]{font-size:10px}
.text-\[11px\]{font-size:11px}
.text-\[12px\]{font-size:12px}
.text-\[9px\]{font-size:9px}
.text-lg{font-size:1.125rem;line-height:1.75rem}
.text-sm{font-size:.875rem;line-height:1.25rem}
.text-xs{font-size:.75rem;line-height:1rem}
.font-bold{font-weight:700}
.font-extrabold{font-weight:800}
.font-medium{font-weight:500}
.font-normal{font-weight:400}
.font-semibold{font-weight:600}
.uppercase{text-transform:uppercase}
.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}
.leading-none{line-height:1}
.leading-tight{line-height:1.25}
.tracking-wide{letter-spacing:.025em}
.tracking-wider{letter-spacing:.05em}
.tracking-widest{letter-spacing:.1em}
.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}
.text-emerald-400{--tw-text-opacity:1;color:rgb(52 211 153/var(--tw-text-opacity,1))}
.text-gray-200{color:var(--ap-gray-200)}
.text-gray-300{color:var(--ap-gray-300)}
.text-gray-400{color:var(--ap-gray-400)}
.text-gray-500{color:var(--ap-gray-500)}
.text-gray-600{color:var(--ap-gray-600)}
.text-gray-800{color:var(--ap-gray-800)}
.text-green-400{--tw-text-opacity:1;color:rgb(74 222 128/var(--tw-text-opacity,1))}
.text-red-400{--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity,1))}
.text-yellow-300{--tw-text-opacity:1;color:rgb(253 224 71/var(--tw-text-opacity,1))}
.text-yellow-400{--tw-text-opacity:1;color:rgb(250 204 21/var(--tw-text-opacity,1))}
.text-yellow-500{--tw-text-opacity:1;color:rgb(234 179 8/var(--tw-text-opacity,1))}
.opacity-50{opacity:.5}
.opacity-70{opacity:.7}
.opacity-90{opacity:.9}
.shadow-2xl,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}
.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}
.transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}
.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}
.transition-opacity{transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}
.duration-150,.transition-transform{transition-duration:.15s}
.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}
.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}
.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}
.last\:border-0:last-child{border-width:0}
.hover\:border-gray-500:hover{border-color:var(--ap-gray-500)}
.hover\:border-gray-600\/60:hover{border-color:rgba(var(--ap-gray-600-rgb),.6)}
.hover\:bg-\[rgba\(20\2c 26\2c 42\2c 0\.65\)\]:hover{background-color:rgba(var(--ap-navy-900-rgb),.65)}
.hover\:bg-gray-700:hover{background-color:var(--ap-gray-700)}
.hover\:bg-gray-800:hover{background-color:var(--ap-gray-800)}
.hover\:bg-gray-800\/30:hover{background-color:rgba(var(--ap-gray-800-rgb),.3)}
.hover\:bg-white\/5:hover{background-color:rgba(var(--ap-white-rgb),.05)}
.hover\:bg-white\/80:hover{background-color:rgba(var(--ap-white-rgb),.8)}
.hover\:text-gray-300:hover{color:var(--ap-gray-300)}
.hover\:text-gray-400:hover{color:var(--ap-gray-400)}
.hover\:text-white:hover{color:var(--ap-white)}
.hover\:opacity-75:hover{opacity:.75}
.dark\:border-gray-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(31 41 55/var(--tw-border-opacity,1))}
.dark\:bg-gray-950\/40:is(.dark *){background-color:rgba(3,7,18,.4)}
.dark\:text-gray-200:is(.dark *){--tw-text-opacity:1;color:rgb(229 231 235/var(--tw-text-opacity,1))}
.dark\:hover\:bg-gray-900\/40:hover:is(.dark *){background-color:rgba(17,24,39,.4)}
@media (min-width:640px){
.sm\:inline-flex{display:inline-flex}
.sm\:hidden{display:none}
.sm\:h-\[360px\]{height:360px}
.sm\:gap-6{gap:1.5rem}
.sm\:p-6{padding:1.5rem}
}
