/* Tailwind utilities used by the pages but stripped from the purged Metronic build (styles.css). Generated from a
   used-vs-defined diff (scripts/css-restore.py; rerun it after adding pages) with the theme's own variables; only classes nothing else defines. */
.-bottom-0\.5{bottom:calc(calc(var(--spacing) * 0.5) * -1)}
.-mt-1{margin-top:calc(calc(var(--spacing) * 1) * -1)}
.-mt-2{margin-top:calc(calc(var(--spacing) * 2) * -1)}
.bg-background\/90{background-color:color-mix(in srgb, var(--background) 90%, transparent)}
.bg-info\/10{background-color:color-mix(in srgb, var(--color-blue-600, #2563eb) 10%, transparent)}
.bg-muted\/20{background-color:color-mix(in srgb, var(--muted) 20%, transparent)}
.bg-muted\/30{background-color:color-mix(in srgb, var(--muted) 30%, transparent)}
.bg-muted\/60{background-color:color-mix(in srgb, var(--muted) 60%, transparent)}
.bg-primary\/5{background-color:color-mix(in srgb, var(--primary) 5%, transparent)}
.bg-warning\/10{background-color:color-mix(in srgb, var(--color-yellow-600, #ca8a04) 10%, transparent)}
.border-border\/20{border-color:color-mix(in srgb, var(--border) 20%, transparent)}
.border-border\/30{border-color:color-mix(in srgb, var(--border) 30%, transparent)}
.border-border\/40{border-color:color-mix(in srgb, var(--border) 40%, transparent)}
.border-border\/50{border-color:color-mix(in srgb, var(--border) 50%, transparent)}
.border-border\/60{border-color:color-mix(in srgb, var(--border) 60%, transparent)}
.border-gray-100{border-color:var(--color-gray-100)}
.border-info\/30{border-color:color-mix(in srgb, var(--color-blue-600, #2563eb) 30%, transparent)}
.border-primary\/30{border-color:color-mix(in srgb, var(--primary) 30%, transparent)}
.border-s-2{border-inline-start-width:2px;border-inline-start-style:solid}
.border-t-2{border-top-width:2px;border-top-style:solid}
.border-warning\/30{border-color:color-mix(in srgb, var(--color-yellow-600, #ca8a04) 30%, transparent)}
.border-warning\/40{border-color:color-mix(in srgb, var(--color-yellow-600, #ca8a04) 40%, transparent)}
.end-2{inset-inline-end:calc(var(--spacing) * 2)}
.focus\:opacity-100:focus{opacity:1.0}
.font-bold{font-weight:700}
.font-mono{font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, monospace)}
.gap-8{gap:calc(var(--spacing) * 8)}
.gap-\[16rem\]{gap:16rem}
.gap-x-10{column-gap:calc(var(--spacing) * 10)}
.gap-x-12{column-gap:calc(var(--spacing) * 12)}
.gap-x-3{column-gap:calc(var(--spacing) * 3)}
.gap-x-5{column-gap:calc(var(--spacing) * 5)}
.gap-x-8{column-gap:calc(var(--spacing) * 8)}
.gap-y-1{row-gap:calc(var(--spacing) * 1)}
.gap-y-1\.5{row-gap:calc(var(--spacing) * 1.5)}
.gap-y-2{row-gap:calc(var(--spacing) * 2)}
.gap-y-3{row-gap:calc(var(--spacing) * 3)}
.gap-y-4{row-gap:calc(var(--spacing) * 4)}
.gap-y-5{row-gap:calc(var(--spacing) * 5)}
.gap-y-6{row-gap:calc(var(--spacing) * 6)}
.group:hover .group-hover\:text-white{color:#fff}
.h-2{height:calc(var(--spacing) * 2)}
.hover\:-translate-y-0\.5:hover{translate:0 calc(var(--spacing) * -0.5)}
.hover\:bg-accent\/40:hover{background-color:color-mix(in srgb, var(--accent) 40%, transparent)}
.hover\:bg-accent\/50:hover{background-color:color-mix(in srgb, var(--accent) 50%, transparent)}
.hover\:bg-muted\/30:hover{background-color:color-mix(in srgb, var(--muted) 30%, transparent)}
.hover\:bg-muted\/40:hover{background-color:color-mix(in srgb, var(--muted) 40%, transparent)}
.hover\:bg-muted\/50:hover{background-color:color-mix(in srgb, var(--muted) 50%, transparent)}
.hover\:bg-muted\/60:hover{background-color:color-mix(in srgb, var(--muted) 60%, transparent)}
.hover\:border-primary\/40:hover{border-color:color-mix(in srgb, var(--primary) 40%, transparent)}
.hover\:shadow-md:hover{box-shadow:0 4px 6px -1px rgb(0 0 0 / .1),0 2px 4px -2px rgb(0 0 0 / .1)}
.hover\:shadow-sm:hover{box-shadow:0 1px 3px 0 rgb(0 0 0 / .1)}
.hover\:text-destructive:hover{color:var(--destructive)}
.hover\:underline:hover{text-decoration-line:underline}
.leading-tight{line-height:1.25}
.max-h-\[70vh\]{max-height:70vh}
.max-h-\[90vh\]{max-height:90vh}
.max-w-\[1240px\]{max-width:1240px}
.max-w-\[140px\]{max-width:140px}
.max-w-\[150px\]{max-width:150px}
.max-w-\[160px\]{max-width:160px}
.max-w-\[190px\]{max-width:190px}
.max-w-\[400px\]{max-width:400px}
.max-w-\[900px\]{max-width:900px}
.mb-6{margin-bottom:calc(var(--spacing) * 6)}
.min-h-\[2rem\]{min-height:2rem}
.min-w-\[380px\]{min-width:380px}
.min-w-\[520px\]{min-width:520px}
.min-w-\[600px\]{min-width:600px}
.min-w-\[620px\]{min-width:620px}
.ms-1\.5{margin-inline-start:calc(var(--spacing) * 1.5)}
.ms-3{margin-inline-start:calc(var(--spacing) * 3)}
.ms-4{margin-inline-start:calc(var(--spacing) * 4)}
.ms-8{margin-inline-start:calc(var(--spacing) * 8)}
.mt-0\.5{margin-top:calc(var(--spacing) * 0.5)}
.mt-1{margin-top:calc(var(--spacing) * 1)}
.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}
.mt-10{margin-top:calc(var(--spacing) * 10)}
.mt-6{margin-top:calc(var(--spacing) * 6)}
.mt-8{margin-top:calc(var(--spacing) * 8)}
.mt-auto{margin-top:auto}
.mx-2{margin-left:calc(var(--spacing) * 2);margin-right:calc(var(--spacing) * 2)}
.my-1{margin-top:calc(var(--spacing) * 1);margin-bottom:calc(var(--spacing) * 1)}
.my-2{margin-top:calc(var(--spacing) * 2);margin-bottom:calc(var(--spacing) * 2)}
.object-contain{object-fit:contain}
.object-cover{object-fit:cover}
.opacity-60{opacity:0.6}
.p-1{padding:calc(var(--spacing) * 1)}
.p-12{padding:calc(var(--spacing) * 12)}
.p-6{padding:calc(var(--spacing) * 6)}
.pb-1{padding-bottom:calc(var(--spacing) * 1)}
.pe-4{padding-inline-end:calc(var(--spacing) * 4)}
.pl-\[162px\]{padding-left:162px}
.ps-16{padding-inline-start:calc(var(--spacing) * 16)}
.ps-6{padding-inline-start:calc(var(--spacing) * 6)}
.ps-8{padding-inline-start:calc(var(--spacing) * 8)}
.ps-9{padding-inline-start:calc(var(--spacing) * 9)}
.pt-6{padding-top:calc(var(--spacing) * 6)}
.px-1{padding-left:calc(var(--spacing) * 1);padding-right:calc(var(--spacing) * 1)}
.px-6{padding-left:calc(var(--spacing) * 6);padding-right:calc(var(--spacing) * 6)}
.py-0{padding-top:calc(var(--spacing) * 0);padding-bottom:calc(var(--spacing) * 0)}
.py-0\.5{padding-top:calc(var(--spacing) * 0.5);padding-bottom:calc(var(--spacing) * 0.5)}
.py-12{padding-top:calc(var(--spacing) * 12);padding-bottom:calc(var(--spacing) * 12)}
.py-16{padding-top:calc(var(--spacing) * 16);padding-bottom:calc(var(--spacing) * 16)}
.py-6{padding-top:calc(var(--spacing) * 6);padding-bottom:calc(var(--spacing) * 6)}
.rounded{border-radius:.25rem}
.rounded-b-none{border-bottom-left-radius:0;border-bottom-right-radius:0}
.rounded-l-full{border-top-left-radius:9999px;border-bottom-left-radius:9999px}
.rounded-none{border-radius:0}
.rounded-r-full{border-top-right-radius:9999px;border-bottom-right-radius:9999px}
.size-24{width:calc(var(--spacing) * 24);height:calc(var(--spacing) * 24)}
.size-\[90px\]{width:90px;height:90px}
.size-full{width:100%;height:100%}
.space-y-3 > :not(:last-child){margin-bottom:calc(var(--spacing) * 3)}
.start-3{inset-inline-start:calc(var(--spacing) * 3)}
.tabular-nums{font-variant-numeric:tabular-nums}
.text-4xl{font-size:var(--text-4xl, 2.25rem)}
.text-5xl{font-size:var(--text-5xl, 3rem)}
.text-\[8px\]{font-size:8px}
.text-\[9px\]{font-size:9px}
.text-green-600{color:var(--color-green-600)}
.text-info{color:var(--color-blue-600, #2563eb)}
.text-left{text-align:left}
.text-primary\/70{color:color-mix(in srgb, var(--primary) 70%, transparent)}
.text-red-600{color:var(--color-red-600)}
.text-success{color:var(--color-green-600, #16a34a)}
.text-warning{color:var(--color-yellow-600, #ca8a04)}
.tracking-wide{letter-spacing:0.025em}
.underline{text-decoration-line:underline}
.w-1\/2{width:50.0000%}
.w-10{width:calc(var(--spacing) * 10)}
.w-12{width:calc(var(--spacing) * 12)}
.w-32{width:calc(var(--spacing) * 32)}
.w-\[160px\]{width:160px}
.w-\[190px\]{width:190px}
.w-\[200px\]{width:200px}
.w-\[210px\]{width:210px}
.w-\[260px\]{width:260px}
.w-\[330px\]{width:330px}
.w-\[400px\]{width:400px}
.w-\[420px\]{width:420px}
.w-\[64px\]{width:64px}
.w-\[92px\]{width:92px}
.w-fit{width:fit-content}
.z-30{z-index:30}
@media (min-width: 40rem) { .sm\:flex{display:flex} }
@media (min-width: 40rem) { .sm\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))} }
@media (min-width: 48rem) { .md\:col-span-2{grid-column:span 2 / span 2} }
@media (min-width: 48rem) { .md\:col-span-3{grid-column:span 3 / span 3} }
@media (min-width: 48rem) { .md\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))} }
@media (min-width: 48rem) { .md\:grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))} }
@media (min-width: 64rem) { .lg\:col-span-2{grid-column:span 2 / span 2} }
@media (min-width: 64rem) { .lg\:grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))} }
@media (min-width: 64rem) { .lg\:text-xl{font-size:var(--text-xl, 1.25rem)} }
@media (min-width: 80rem) { .xl\:col-span-2{grid-column:span 2 / span 2} }
@media (min-width: 80rem) { .xl\:grid-cols-4{grid-template-columns:repeat(4, minmax(0, 1fr))} }
@media (min-width: 80rem) { .xl\:grid-cols-6{grid-template-columns:repeat(6, minmax(0, 1fr))} }

/* Fixes for unlayered vendor CSS beating Tailwind's layered utilities: the icon font sets .ki-* { position: relative },
   so an icon placed inside an input (absolute start-3 top-1/2) stayed in the flow. */
[class*="ki-"].absolute{position:absolute;z-index:1}
