/* CSS Optimisé pour Encyclopédie Semois - Remplace Tailwind CDN */
/* Reset & Base */
*,::before,::after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}
::before,::after{--tw-content:''}
html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif;font-feature-settings:normal;font-variation-settings:normal}
body{margin:0;line-height:inherit}
h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}
a{color:inherit;text-decoration:inherit}
button,input,select,textarea{font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}
button,select{text-transform:none}
button,[type='button'],[type='submit']{-webkit-appearance:button;background-color:transparent;background-image:none}
img,svg,video,canvas{display:block;vertical-align:middle;max-width:100%;height:auto}
img,video{max-width:100%;height:auto}
[hidden]{display:none}

/* Container */
.container{width:100%;margin-right:auto;margin-left:auto;padding-right:1rem;padding-left:1rem}
@media (min-width:640px){.container{max-width:640px;padding-right:1.5rem;padding-left:1.5rem}}
@media (min-width:768px){.container{max-width:768px}}
@media (min-width:1024px){.container{max-width:1024px;padding-right:2rem;padding-left:2rem}}
@media (min-width:1280px){.container{max-width:1280px}}

/* Layout */
.fixed{position:fixed}
.sticky{position:sticky}
.top-0{top:0}
.inset-0{inset:0}
.z-50{z-index:50}
.flex{display:flex}
.grid{display:grid}
.hidden{display:none}
.items-center{align-items:center}
.justify-center{justify-content:center}
.justify-between{justify-content:space-between}
.gap-2{gap:0.5rem}
.gap-8{gap:2rem}
.flex-col{flex-direction:column}
.flex-row{flex-direction:row}
.flex-wrap{flex-wrap:wrap}
.flex-grow{flex-grow:1}

/* Grid */
.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}
@media (min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:1280px){.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* Spacing */
.p-4{padding:1rem}
.p-6{padding:1.5rem}
.px-3{padding-left:0.75rem;padding-right:0.75rem}
.px-4{padding-left:1rem;padding-right:1rem}
.py-2{padding-top:0.5rem;padding-bottom:0.5rem}
.py-8{padding-top:2rem;padding-bottom:2rem}
.py-20{padding-top:5rem;padding-bottom:5rem}
.pt-24{padding-top:6rem}
.pb-16{padding-bottom:4rem}
.mb-2{margin-bottom:0.5rem}
.mb-3{margin-bottom:0.75rem}
.mb-4{margin-bottom:1rem}
.mb-8{margin-bottom:2rem}
.mb-12{margin-bottom:3rem}
.mt-4{margin-top:1rem}
.mt-6{margin-top:1.5rem}
.mx-auto{margin-left:auto;margin-right:auto}

/* Width */
.w-3{width:0.75rem}
.w-full{width:100%}
.max-w-2xl{max-width:42rem}
.max-w-3xl{max-width:48rem}

/* Height */
.h-3{height:0.75rem}
.h-16{height:4rem}
.max-h-\[60vh\]{max-height:60vh}

/* Text */
.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}
@media (min-width:768px){
  .md\:text-5xl{font-size:3rem;line-height:1}
  .md\:w-1\/2{width:50%}
  .md\:flex-row{flex-direction:row}
}
.font-medium{font-weight:500}
.font-semibold{font-weight:600}
.font-bold{font-weight:700}
.text-center{text-align:center}
.tracking-tight{letter-spacing:-0.025em}

/* Colors */
.text-white{color:#fff}
.text-gray-500{color:#6b7280}
.text-gray-600{color:#4b5563}
.text-gray-700{color:#374151}
.text-gray-800{color:#1f2937}
.text-green-700{color:#15803d}
.text-green-900{color:#14532d}
.bg-white{background-color:#fff}
.bg-gray-50{background-color:#f9fafb}
.bg-gray-200{background-color:#e5e7eb}
.bg-gray-800{background-color:#1f2937}
.bg-white\/80{background-color:rgba(255,255,255,0.8)}

/* Border */
.border{border-width:1px}
.border-t{border-top-width:1px}
.border-gray-300{border-color:#d1d5db}
.rounded-md{border-radius:0.375rem}
.rounded-lg{border-radius:0.5rem}
.rounded-full{border-radius:9999px}

/* Shadow */
.shadow{box-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1),0 1px 2px -1px rgb(0 0 0 / 0.1)}
.shadow-sm{box-shadow:0 1px 2px 0 rgb(0 0 0 / 0.05)}
.shadow-xl{box-shadow:0 20px 25px -5px rgb(0 0 0 / 0.1),0 8px 10px -6px rgb(0 0 0 / 0.1)}

/* Overflow */
.overflow-hidden{overflow:hidden}
.overflow-y-auto{overflow-y:auto}

/* Transform */
.scale-95{transform:scale(.95)}
.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}

/* Backdrop */
.backdrop-blur-md{backdrop-filter:blur(12px)}

/* Transitions */
.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(0.4,0,0.2,1);transition-duration:150ms}

/* Hover */
.hover\:text-gray-800:hover{color:#1f2937}
.hover\:text-green-900:hover{color:#14532d}

/* Utilities */
.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
.space-y-2>:not([hidden])~:not([hidden]){margin-top:0.5rem}
.inline-block{display:inline-block}
.mr-2{margin-right:0.5rem}
.list-none{list-style-type:none}
.space-x-4>:not([hidden])~:not([hidden]){margin-left:1rem}

/* Responsive utilities */
@media (min-width:768px){.md\:block{display:block}.md\:hidden{display:none}}
