/* ==========================================================================
   THÈME RÉVEIL LIBERTAIRE POUR BENTOPDF (ROUGE & NOIR ANARCHO-SYNDICALISTE)
   - Contraste optimal et haute lisibilité (WCAG AAA sur les textes principaux)
   - Découpe diagonale rouge (#ea1216) et noir (#09090b)
   - 100% autonome, zéro police ou ressource externe
   ========================================================================== */

:root,
:host {
  /* Substitution de la palette Indigo par le Rouge Réveil Libertaire */
  --color-indigo-50: #fef2f2 !important;
  --color-indigo-100: #fee2e2 !important;
  --color-indigo-200: #fecaca !important;
  --color-indigo-300: #fca5a5 !important;
  --color-indigo-400: #ff4d52 !important;
  --color-indigo-500: #ea1216 !important;
  --color-indigo-600: #dc1014 !important;
  --color-indigo-700: #b80b0f !important;
  --color-indigo-800: #7f090c !important;
  --color-indigo-900: #4c0507 !important;

  /* Nuances de noir carbone et ardoise sombre à fort contraste */
  --color-gray-900: #09090b !important;
  --color-gray-850: #0f0f13 !important;
  --color-gray-800: #141419 !important;
  --color-gray-700: #24242c !important;
  --color-gray-600: #383844 !important;
  --color-gray-500: #8e8e9e !important;
  --color-gray-400: #c4c4d0 !important;
  --color-gray-300: #e4e4ec !important;
  --color-gray-200: #f4f4f8 !important;
  --color-gray-100: #fafafa !important;

  /* Variables landing/tiles éventuelles */
  --lp-bg: #09090b !important;
  --lp-bg-2: #141419 !important;
  --lp-bg-3: #1c1c24 !important;
  --lp-line: #282832 !important;
  --lp-text: #ffffff !important;
  --lp-text-2: #d4d4dc !important;
  --lp-accent: #ea1216 !important;
  --lp-accent-2: #ff4d52 !important;
  --lp-accent-3: #ea1216 !important;
  --tile-fg: #ff3b40 !important;
}

/* Fond général noir profond avec lueur diagonale rouge-noir subtile */
html,
body {
  background-color: #09090b !important;
  background-image:
    radial-gradient(circle at 0% 0%, rgba(234, 18, 22, 0.14) 0%, transparent 42%),
    radial-gradient(circle at 100% 100%, rgba(234, 18, 22, 0.06) 0%, transparent 45%) !important;
  background-attachment: fixed !important;
  color: #f4f4f6 !important;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Ubuntu, sans-serif !important;
}

/* Barre supérieure : découpe diagonale franche Rouge & Noir Réveil Libertaire */
nav[data-simple-nav="true"],
header,
nav.bg-gray-800 {
  background: linear-gradient(
    135deg,
    #ea1216 0%,
    #cc0f13 24%,
    #7a070a 35%,
    #1c0203 43%,
    #09090b 50%,
    #09090b 100%
  ) !important;
  border-bottom: 2px solid #ea1216 !important;
  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.75) !important;
}

nav[data-simple-nav="true"] > .container > .flex {
  height: 4.5rem !important;
}

/* Logo Réveil Libertaire dans la barre de navigation : bien grand, net et détaché */
nav[data-simple-nav="true"] img,
#nav-logo,
footer[data-simple-footer="true"] img {
  width: 3rem !important;
  height: 3rem !important;
  border-radius: 0.55rem !important;
  border: 2px solid rgba(255, 255, 255, 0.92) !important;
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.65) !important;
  object-fit: cover !important;
  background-color: #09090b !important;
  flex-shrink: 0 !important;
}

/* Titre de marque dans la navbar : blanc pur avec contour sombre lisible sur le rouge comme sur le noir */
nav[data-simple-nav="true"] span.font-bold,
#nav-brand,
nav[data-simple-nav="true"] span.font-bold a,
#nav-brand a {
  color: #ffffff !important;
  font-size: 1.35rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.02em !important;
  text-shadow: 0 2px 6px rgba(0, 0, 0, 0.85), 0 0 2px rgba(0, 0, 0, 0.95) !important;
  text-decoration: none !important;
}

/* Badge sous-titre dans la navbar */
.rl-nav-badge {
  display: inline-flex;
  align-items: center;
  margin-left: 0.75rem;
  padding: 0.2rem 0.65rem;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #ffffff;
  background: rgba(9, 9, 11, 0.82);
  border: 1px solid rgba(234, 18, 22, 0.75);
  border-radius: 9999px;
}

/* En-tête central */
#tools-header h1 {
  color: #ffffff !important;
  font-weight: 800 !important;
  letter-spacing: -0.01em !important;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.6) !important;
}

#tools-header p {
  color: #d4d4dc !important;
  font-size: 1.05rem !important;
}

/* Barre de recherche : fond noir contrasté, bordure franche et anneau rouge au focus */
#search-bar {
  background-color: #121217 !important;
  color: #ffffff !important;
  border: 1.5px solid #32323e !important;
  font-size: 0.98rem !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.45) !important;
}

#search-bar::placeholder {
  color: #a0a0b0 !important;
}

#search-bar:focus {
  border-color: #ea1216 !important;
  box-shadow: 0 0 0 3px rgba(234, 18, 22, 0.32) !important;
  outline: none !important;
}

/* En-têtes de catégories : lisibilité maximale avec barre verticale rouge */
.category-header {
  color: #ffffff !important;
  font-size: 1.25rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.01em !important;
  padding: 0.65rem 0.9rem !important;
  background: linear-gradient(90deg, rgba(234, 18, 22, 0.16) 0%, rgba(20, 20, 25, 0.4) 60%, transparent 100%) !important;
  border-left: 4px solid #ea1216 !important;
  border-radius: 0 0.5rem 0.5rem 0 !important;
}

.category-header:hover,
.category-header:hover .category-chevron {
  color: #ff4d52 !important;
}

/* Cartes d'outils : noir profond, bordure nette, filet diagonal rouge-noir en haut */
.tool-card {
  background: linear-gradient(160deg, #16161d 0%, #0e0e13 100%) !important;
  border: 1px solid #2c2c38 !important;
  border-top: 3px solid #ea1216 !important;
  border-radius: 0.65rem !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.45) !important;
}

.tool-card:hover {
  background: linear-gradient(145deg, rgba(234, 18, 22, 0.16) 0%, #16161f 55%, #0f0f15 100%) !important;
  border-color: #ea1216 !important;
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 24px -4px rgba(234, 18, 22, 0.28), 0 4px 10px rgba(0, 0, 0, 0.6) !important;
}

/* Icônes des cartes d'outils en rouge vif bien lisible */
.tool-card i,
.tool-card svg,
.text-indigo-400,
.text-indigo-300,
.text-indigo-500 {
  color: #ff3b40 !important;
}

/* Titres et descriptions dans les cartes : contraste renforcé */
.tool-card h3,
.tool-card .font-semibold,
.tool-card .font-bold {
  color: #ffffff !important;
  font-weight: 700 !important;
  font-size: 1rem !important;
}

.tool-card p,
.tool-card .text-gray-400 {
  color: #cfcfd8 !important;
  font-size: 0.85rem !important;
  line-height: 1.45 !important;
}

/* Boutons principaux et actions */
.btn-gradient,
.bg-indigo-600,
button.bg-indigo-600,
a.bg-indigo-600 {
  background-color: #ea1216 !important;
  background-image: linear-gradient(135deg, #ea1216 0%, #b80b0f 100%) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255, 255, 255, 0.14) !important;
  font-weight: 700 !important;
}

.btn-gradient:hover,
.hover\:bg-indigo-700:hover,
button.bg-indigo-600:hover {
  background-color: #cc0f13 !important;
  background-image: linear-gradient(135deg, #ff2429 0%, #cc0f13 100%) !important;
  box-shadow: 0 8px 20px -3px rgba(234, 18, 22, 0.45) !important;
}

/* Spinner de traitement en rouge et noir */
.solid-spinner {
  background: conic-gradient(#ea121600 0deg, #ea121633 90deg, #ea1216cc 240deg, #ea1216 350deg) !important;
}

/* Interface d'un outil ouvert + zones de dépôt de fichiers */
#tool-interface {
  background-color: #131318 !important;
  border: 1px solid #2e2e3a !important;
  border-top: 3px solid #ea1216 !important;
}

/* Pied de page */
footer[data-simple-footer="true"] {
  background: linear-gradient(180deg, #09090b 0%, #120405 100%) !important;
  border-top: 2px solid #ea1216 !important;
}
