/* FinanceDirecte — Tailwind CSS compilé (classes utilisées uniquement) */

/* BASE */
*,::before,::after{box-sizing:border-box}
html{line-height:1.5;-webkit-text-size-adjust:100%}
body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,sans-serif}
a{color:inherit;text-decoration:inherit}
img{display:block;max-width:100%}
button,input,select,textarea{font-family:inherit;font-size:100%;margin:0}
button{cursor:pointer}

/* LAYOUT */
.block{display:block}
.flex{display:flex}
.grid{display:grid}
.hidden{display:none}
.inline-block{display:inline-block}
.flex-col{flex-direction:column}
.items-center{align-items:center}
.items-start{align-items:flex-start}
.justify-between{justify-content:space-between}
.justify-center{justify-content:center}
.sticky{position:sticky}
.top-0{top:0}
.z-50{z-index:50}
.mx-auto{margin-left:auto;margin-right:auto}
.mb-1{margin-bottom:0.25rem}
.mb-2{margin-bottom:0.5rem}
.mb-3{margin-bottom:0.75rem}
.mb-4{margin-bottom:1rem}
.mb-6{margin-bottom:1.5rem}
.mb-8{margin-bottom:2rem}
.mb-10{margin-bottom:2.5rem}
.mb-12{margin-bottom:3rem}
.mb-16{margin-bottom:4rem}
.mr-3{margin-right:0.75rem}
.mt-1{margin-top:0.25rem}
.mt-4{margin-top:1rem}
.mt-16{margin-top:4rem}
.my-4{margin-top:1rem;margin-bottom:1rem}
.p-4{padding:1rem}
.p-6{padding:1.5rem}
.p-8{padding:2rem}
.pb-2{padding-bottom:0.5rem}
.pt-4{padding-top:1rem}
.px-4{padding-left:1rem;padding-right:1rem}
.px-6{padding-left:1.5rem;padding-right:1.5rem}
.px-8{padding-left:2rem;padding-right:2rem}
.py-3{padding-top:0.75rem;padding-bottom:0.75rem}
.py-4{padding-top:1rem;padding-bottom:1rem}
.py-12{padding-top:3rem;padding-bottom:3rem}
.py-20{padding-top:5rem;padding-bottom:5rem}
.w-12{width:3rem}
.w-full{width:100%}
.h-12{height:3rem}
.max-w-2xl{max-width:42rem}
.max-w-4xl{max-width:56rem}
.max-w-5xl{max-width:64rem}
.max-w-7xl{max-width:80rem}

/* GAP */
.gap-2{gap:0.5rem}
.gap-4{gap:1rem}
.gap-6{gap:1.5rem}
.gap-8{gap:2rem}

/* GRID */
.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}

/* SPACE */
.space-y-2>*+*{margin-top:0.5rem}
.space-y-3>*+*{margin-top:0.75rem}
.space-y-4>*+*{margin-top:1rem}

/* TYPOGRAPHY */
.font-bold{font-weight:700}
.font-semibold{font-weight:600}
.text-xs{font-size:0.75rem;line-height:1rem}
.text-sm{font-size:0.875rem;line-height:1.25rem}
.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}
.text-6xl{font-size:3.75rem;line-height:1}
.text-center{text-align:center}
.text-left{text-align:left}
.underline{text-decoration-line:underline}

/* COLORS — TEXT */
.text-white{color:#fff}
.text-blue-300{color:#93c5fd}
.text-blue-600{color:#2563eb}
.text-blue-900{color:#1e3a8a}
.text-gray-300{color:#d1d5db}
.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-green-600{color:#16a34a}
.text-red-600{color:#dc2626}
.text-yellow-500{color:#eab308}

/* COLORS — BG */
.bg-none{background:none}
.bg-white{color:#fff}.bg-white{background-color:#fff;color:inherit}
.bg-white{background-color:#fff}
.bg-blue-50{background-color:#eff6ff}
.bg-blue-600{background-color:#2563eb}
.bg-blue-900{background-color:#1e3a8a}
.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}
.from-blue-900{--tw-gradient-from:#1e3a8a;--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to,rgb(30 58 138/0))}
.to-blue-950{--tw-gradient-to:#172554}
.bg-gray-50{background-color:#f9fafb}
.bg-gray-300{background-color:#d1d5db}
.bg-green-50{background-color:#f0fdf4}
.bg-yellow-400{background-color:#facc15}
.bg-yellow-500{background-color:#eab308}

/* BORDERS */
.border{border-width:1px;border-style:solid}
.border-2{border-width:2px;border-style:solid}
.border-b{border-bottom-width:1px;border-bottom-style:solid}
.border-l-4{border-left-width:4px;border-left-style:solid}
.border-none{border-style:none}
.border-t{border-top-width:1px;border-top-style:solid}
.border-blue-600{border-color:#2563eb}
.border-blue-700{border-color:#1d4ed8}
.border-gray-200{border-color:#e5e7eb}
.border-gray-300{border-color:#d1d5db}
.border-gray-700{border-color:#374151}
.border-yellow-500{border-color:#eab308}

/* ROUNDED */
.rounded{border-radius:0.25rem}
.rounded-full{border-radius:9999px}
.rounded-lg{border-radius:0.5rem}

/* SHADOW */
.shadow{box-shadow:0 1px 3px 0 rgb(0 0 0/.1),0 1px 2px -1px rgb(0 0 0/.1)}
.shadow-lg{box-shadow:0 10px 15px -3px rgb(0 0 0/.1),0 4px 6px -4px rgb(0 0 0/.1)}
.shadow-md{box-shadow:0 4px 6px -1px rgb(0 0 0/.1),0 2px 4px -2px rgb(0 0 0/.1)}

/* CURSOR */
.cursor-pointer{cursor:pointer}

/* TRANSITION */
.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:150ms}

/* HOVER */
.hover\:bg-blue-700:hover{background-color:#1d4ed8}
.hover\:bg-gray-400:hover{background-color:#9ca3af}
.hover\:bg-yellow-300:hover{background-color:#fde047}
.hover\:bg-yellow-600:hover{background-color:#ca8a04}
.hover\:shadow-lg:hover{box-shadow:0 10px 15px -3px rgb(0 0 0/.1),0 4px 6px -4px rgb(0 0 0/.1)}
.hover\:shadow-xl:hover{box-shadow:0 20px 25px -5px rgb(0 0 0/.1),0 8px 10px -6px rgb(0 0 0/.1)}
.hover\:text-white:hover{color:#fff}
.hover\:text-yellow-400:hover{color:#facc15}
.hover\:underline:hover{text-decoration-line:underline}

/* FOCUS */
.focus\:border-blue-600:focus{border-color:#2563eb}
.focus\:ring-2:focus{box-shadow:0 0 0 2px var(--tw-ring-color)}
.focus\:ring-blue-500:focus{--tw-ring-color:#3b82f6}

/* RESPONSIVE — sm (640px) */
@media(min-width:640px){
  .sm\:flex-row{flex-direction:row}
  .sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sm\:w-32{width:8rem}
}

/* RESPONSIVE — md (768px) */
@media(min-width:768px){
  .md\:flex{display:flex}
  .md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
}

/* RESPONSIVE — lg (1024px) */
@media(min-width:1024px){
  .lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
}
