/* LeSuperviseur.ai - Styles CSS v1.1.1 */
/* === BASE === */ 
.lesuperviseur-container { font-family: -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif; line-height:1.6; } .lesuperviseur-button, .lesuperviseur-chat-button { background:linear-gradient(135deg,#667eea 0%,#764ba2 100%); color:#fff; border:none; padding:12px 24px; border-radius:8px; cursor:pointer; font-weight:600; transition:.3s; box-shadow:0 4px 15px rgba(102,126,234,.3); } .lesuperviseur-button:hover, .lesuperviseur-chat-button:hover { transform:translateY(-2px); box-shadow:0 6px 20px rgba(102,126,234,.4); } .lesuperviseur-button:disabled { opacity:.6; cursor:not-allowed; transform:none; }
/* === CHATBOT === */ 
.lesuperviseur-chatbot-container { margin:20px 0; text-align:center; } .lesuperviseur-chat-button { padding:15px 30px; border-radius:25px; font-size:16px; } 
/* === MODAL === */ 
.lesuperviseur-modal { position:fixed; inset:0; background:rgba(0,0,0,.7); z-index:999999; display:flex; align-items:center; justify-content:center; } .lesuperviseur-modal-content { background:#fff; border-radius:12px; width:90%; max-width:650px; max-height:80vh; display:flex; flex-direction:column; box-shadow:0 20px 60px rgba(0,0,0,.3); } .lesuperviseur-modal-header { padding:20px; border-bottom:1px solid #eee; display:flex; justify-content:space-between; align-items:center; background:linear-gradient(135deg,#667eea 0%,#764ba2 100%); color:#fff; border-radius:12px 12px 0 0; } .lesuperviseur-modal-header h3 { margin:0; font-size:18px; font-weight:600; } .lesuperviseur-modal-close { background:none; border:none; color:#fff; font-size:24px; cursor:pointer; padding:0; width:30px; height:30px; display:flex; align-items:center; justify-content:center; border-radius:50%; transition:background .2s; } .lesuperviseur-modal-close:hover { background:rgba(255,255,255,.2); }
/* === CHAT === */ 
.lesuperviseur-chat-messages { flex:1; padding:20px; overflow-y:auto; max-height:400px; min-height:300px; } .lesuperviseur-message { margin-bottom:15px; padding:12px 16px; border-radius:12px; max-width:80%; word-wrap:break-word; animation:fadeIn .3s ease; } .lesuperviseur-message.user { background:#f0f0f0; margin-left:auto; text-align:right; } .lesuperviseur-message.assistant { background:linear-gradient(135deg,#667eea 0%,#764ba2 100%); color:#fff; margin-right:auto; } 
/* ========= BLINDAGE AUTO-SUFFISANT (plugin only) ========= */ 
/* 1) Bouton — forcer le dégradé dès le 1er paint, même en état loading */ 
.lesuperviseur-chatbot-container .lesuperviseur-chat-button:not(#x):not(#y), html.is-loading .lesuperviseur-chatbot-container .lesuperviseur-chat-button:not(#x):not(#y), body.is-loading .lesuperviseur-chatbot-container .lesuperviseur-chat-button:not(#x):not(#y), html.loading .lesuperviseur-chatbot-container .lesuperviseur-chat-button:not(#x):not(#y), body.loading .lesuperviseur-chatbot-container .lesuperviseur-chat-button:not(#x):not(#y), body.preload .lesuperviseur-chatbot-container .lesuperviseur-chat-button:not(#x):not(#y) { 
	/* fond: gradient + fallback uni */
background: linear-gradient(135deg,#667eea 0%,#764ba2 100%) !important; background-image: linear-gradient(135deg,#667eea 0%,#764ba2 100%) !important; background-color: #6a63e5 !important; 
	/* neutralise les effets globaux */ 
	filter: none !important; mix-blend-mode: normal !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important; 
	/* texte lisible, même si le thème le rend “transparent” au chargement */ 
	color: #fff !important; -webkit-text-fill-color: #fff !important; opacity: 1 !important; visibility: visible !important; } 
/* 2) Modale — fond d’overlay et carte internes toujours visibles */ 
#lesuperviseur-chat-modal:not(#x), html.is-loading #lesuperviseur-chat-modal:not(#x), body.is-loading #lesuperviseur-chat-modal:not(#x), html.loading #lesuperviseur-chat-modal:not(#x), body.loading #lesuperviseur-chat-modal:not(#x), body.preload #lesuperviseur-chat-modal:not(#x) { background: rgba(0,0,0,.7) !important; opacity: 1 !important; visibility: visible !important; filter: none !important; mix-blend-mode: normal !important; } #lesuperviseur-chat-modal .lesuperviseur-modal-content:not(#x) { background: #fff !important; isolation: isolate; 
	/* évite les blends hérités */ } /* 3) Bulle IA — texte toujours blanc (titres, listes, liens…) */ #lesuperviseur-chat-modal .lesuperviseur-message.assistant:not(#x), #lesuperviseur-chat-modal .lesuperviseur-message.assistant :is(p,li,ul,ol,h1,h2,h3,h4,h5,h6,blockquote,strong,em,a):not(#x) { color: #fff !important; -webkit-text-fill-color: #fff !important; } #lesuperviseur-chat-modal .lesuperviseur-message.assistant a:not(#x) { color: rgba(255,255,255,.96) !important; text-decoration: underline !important; } 
/* 4) Empêche tout “masquage global” du thème sur ta zone */ 
.lesuperviseur-chatbot-container:not(#x), #lesuperviseur-chat-modal:not(#x) { opacity: 1 !important; visibility: visible !important; } 
/* 5) Conserve le style au survol sans casser le dégradé */ .lesuperviseur-chatbot-container .lesuperviseur-chat-button:hover:not(#x) { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(102,126,234,.4); } 
/* ========= BLINDAGE MODALE CHAT (overlay + contenu + messages) ========= */ /* Overlay : fond sombre garanti dès l’ouverture */ 
#lesuperviseur-chat-modal:not(#x), html.is-loading #lesuperviseur-chat-modal:not(#x), body.is-loading #lesuperviseur-chat-modal:not(#x), html.loading #lesuperviseur-chat-modal:not(#x), body.loading #lesuperviseur-chat-modal:not(#x), body.preload #lesuperviseur-chat-modal:not(#x) { background: rgba(0,0,0,.72) !important; opacity: 1 !important; visibility: visible !important; filter: none !important; mix-blend-mode: normal !important; z-index: 999999 !important; contain: paint; 
	/* évite les pollutions visuelles */
} 
/* Carte modale : fond blanc + typo foncée au 1er paint */ 
#lesuperviseur-chat-modal .lesuperviseur-modal-content:not(#x) { background: #ffffff !important; color: #111827 !important; -webkit-text-fill-color: #111827 !important; 
		/* Safari qui rend “transparent” au chargement */ 
		isolation: isolate; 
		/* bloque les blend hérités du thème */ 
		box-shadow: 0 20px 60px rgba(0,0,0,.30) !important; } 
/* En-tête : dégradé + texte blanc immédiat */ 
#lesuperviseur-chat-modal .lesuperviseur-modal-header:not(#x) { background: linear-gradient(135deg,#667eea 0%,#764ba2 100%) !important; color: #ffffff !important; -webkit-text-fill-color: #ffffff !important; border-bottom: 1px solid rgba(255,255,255,.15) !important; } 
/* Zone messages : pas d’effets grisants au 1er render */ 
#lesuperviseur-chat-modal .lesuperviseur-chat-messages:not(#x) { background: transparent !important; filter: none !important; mix-blend-mode: normal !important; } 
/* Bulle UTILISATEUR : fond gris clair + texte foncé garanti */ 
#lesuperviseur-chat-modal .lesuperviseur-message.user:not(#x), #lesuperviseur-chat-modal .lesuperviseur-message.user :is(p,li,ul,ol,strong,em,a):not(#x) { background: #f0f0f0 !important; color: #111827 !important; -webkit-text-fill-color: #111827 !important; } 
/* Bulle ASSISTANT : dégradé + texte blanc garanti (titres, listes, liens…) */ 
#lesuperviseur-chat-modal .lesuperviseur-message.assistant:not(#x) { background: linear-gradient(135deg,#667eea 0%,#764ba2 100%) !important; } #lesuperviseur-chat-modal .lesuperviseur-message.assistant :is(p,li,ul,ol,h1,h2,h3,h4,h5,h6,blockquote,strong,em,a):not(#x) { color: #ffffff !important; -webkit-text-fill-color: #ffffff !important; } #lesuperviseur-chat-modal .lesuperviseur-message.assistant a:not(#x) { color: rgba(255,255,255,.96) !important; text-decoration: underline !important; } 
/* Bloc “Sources” dans la bulle assistant */ 
#lesuperviseur-chat-modal .lesuperviseur-message.assistant .lesuperviseur-sources:not(#x) { background: rgba(255,255,255,.12) !important; border-left-color: rgba(255,255,255,.35) !important; } 
/* Barre d’entrée + champ + bouton envoyer : couleurs stables */ 
#lesuperviseur-chat-modal .lesuperviseur-chat-input:not(#x) { background: #ffffff !important; border-top: 1px solid #eee !important; } #lesuperviseur-chat-modal #chat-input:not(#x) { background: #ffffff !important; color: #111827 !important; -webkit-text-fill-color: #111827 !important; border: 1px solid #ddd !important; } #lesuperviseur-chat-modal #chat-input::placeholder { color: #6b7280 !important; -webkit-text-fill-color: #6b7280 !important; } 
/* Bouton “Envoyer” : style cohérent et visible dès l’apparition */ 
#lesuperviseur-chat-modal #chat-send:not(#x) { background: linear-gradient(135deg,#667eea 0%,#764ba2 100%) !important; color: #ffffff !important; -webkit-text-fill-color: #ffffff !important; border: none !important; } #lesuperviseur-chat-modal #chat-send:hover:not(#x) { box-shadow: 0 6px 20px rgba(102,126,234,.4) !important; } 
/* Anti-masquage global du thème ciblé sur la zone chat */ 
#lesuperviseur-chat-modal:not(#x), #lesuperviseur-chat-modal *:not(#x) { opacity: 1 !important; visibility: visible !important; filter: none !important; mix-blend-mode: normal !important; } 
/* liens lisibles */ 
#lesuperviseur-chat-modal .lesuperviseur-chat-messages .lesuperviseur-message.assistant a { text-decoration: underline; } .lesuperviseur-message.assistant a { color: rgba(255,255,255,.95); text-decoration: underline; } .lesuperviseur-sources { margin-top:15px; padding:12px; background:rgba(255,255,255,.1); border-radius:8px; border-left:4px solid rgba(255,255,255,.3); } .lesuperviseur-sources h4 { margin:0 0 8px; font-size:14px; font-weight:600; opacity:.9; } .lesuperviseur-sources ul { margin:0; padding-left:20px; list-style:disc; } .lesuperviseur-sources a { color:rgba(255,255,255,.95); text-decoration:underline; } .lesuperviseur-chat-input { padding:20px; border-top:1px solid #eee; display:flex; gap:10px; } .lesuperviseur-chat-input input { flex:1; padding:12px 16px; border:1px solid #ddd; border-radius:25px; outline:none; font-size:14px; } .lesuperviseur-chat-input input:focus { border-color:#667eea; box-shadow:0 0 0 3px rgba(102,126,234,.1); } .lesuperviseur-chat-input button { border-radius:25px; }
/* === ADMIN FLOW === */ 
.lesuperviseur-steps { display:flex; flex-direction:column; gap:15px; margin:20px 0; } .step { display:flex; align-items:center; padding:15px; background:#f9f9f9; border-radius:8px; border-left:4px solid #ddd; transition:.3s; } .step.active { border-left-color:#667eea; background:#f0f4ff; } .step.completed { border-left-color:#10b981; background:#f0fdf4; } .step.error { border-left-color:#ef4444; background:#fef2f2; } .step-number { display:flex; align-items:center; justify-content:center; width:30px; height:30px; background:#ddd; color:#fff; border-radius:50%; font-weight:600; margin-right:15px; transition:.3s; } .step.active .step-number { background:#667eea; } .step.completed .step-number { background:#10b981; } .step.error .step-number { background:#ef4444; } .step-title { flex:1; font-weight:600; color:#374151; } .step-status { font-size:12px; color:#6b7280; font-style:italic; } .step.completed .step-status::before { content:"✓ "; color:#10b981; } .step.error .step-status::before { content:"✗ "; color:#ef4444; }
/* === PROGRESS === */ 
.lesuperviseur-progress-bar { width:100%; height:8px; background:#e5e7eb; border-radius:4px; overflow:hidden; margin:10px 0; } .lesuperviseur-progress-fill { height:100%; background:linear-gradient(90deg,#667eea 0%,#764ba2 100%); transition:width .3s; border-radius:4px; } .lesuperviseur-chunk-progress { background:#f8f9fa; padding:15px; border-radius:8px; margin:15px 0; } .lesuperviseur-chunk-counter { font-size:14px; color:#6b7280; margin-bottom:10px; } 
/* === LOGS === */ 
#analysis-logs { margin-top:30px; background:#f8f9fa; border-radius:8px; padding:20px; } #logs-content { background:#1a1a1a; color:#00ff00; padding:15px; border-radius:6px; font-family:'Courier New',monospace; font-size:12px; max-height:300px; overflow-y:auto; white-space:pre-wrap; }
/* === REPORT === */ 
#final-report { background:#fff; padding:30px; border-radius:8px; box-shadow:0 2px 10px rgba(0,0,0,.1); margin-top:20px; } #final-report h1, #final-report h2 { color:#1f2937; } #final-report h1 { border-bottom:3px solid #667eea; padding-bottom:10px; } #final-report h2 { border-left:4px solid #667eea; padding-left:15px; margin-top:25px; } #final-report ul, #final-report ol { padding-left:25px; } #final-report a { color:#667eea; text-decoration:none; } #final-report a:hover { text-decoration:underline; } .lesuperviseur-actions { display:flex; gap:8px; }
/* === UTIL === */ 
.lesuperviseur-text-center { text-align:center; } .lesuperviseur-mb-10 { margin-bottom:10px; } 
/* === SPINNER === */ 
.lesuperviseur-spinner { display:inline-block; width:20px; height:20px; border:3px solid rgba(255,255,255,.3); border-radius:50%; border-top-color:#fff; animation:spin 1s linear infinite; } @keyframes spin { to { transform:rotate(360deg); } } @keyframes fadeIn { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:translateY(0); } }

/* === RESPONSIVE === */ 
@media (max-width: 768px) { .lesuperviseur-modal-content { width:95%; margin:20px; } .lesuperviseur-chat-messages { max-height:300px; } .lesuperviseur-message { max-width:90%; } } .lesuperviseur-alert { padding:12px; border-radius:8px; background:#f3f4f6; } .lesuperviseur-alert.success { background:#ecfdf5; border-left:4px solid #10b981; } .lesuperviseur-alert.error { background:#fef2f2; border-left:4px solid #ef4444; } 
/* Chatbot — forcer la typo en blanc dans la bulle IA, même si le thème surclasse p/h1… */ #lesuperviseur-chat-modal .lesuperviseur-message.assistant, #lesuperviseur-chat-modal .lesuperviseur-message.assistant :is(p, li, ul, ol, h1, h2, h3, h4, h5, h6, blockquote, strong, em) { color: #ffffff !important; -webkit-text-fill-color: #ffffff !important;
	/* Safari */
} 

#lesuperviseur-chat-modal .lesuperviseur-message.assistant a { color: rgba(255,255,255,.96) !important; text-decoration: underline !important; } #lesuperviseur-chat-modal .lesuperviseur-message.assistant .lesuperviseur-sources { background: rgba(255,255,255,.12); border-left-color: rgba(255,255,255,.35); } 
/* Neutraliser les preloaders du thème qui masquent la page */ 
.ls-chat-open #lesuperviseur-chat-modal { opacity:1 !important; visibility:visible !important; }

/*html, body { opacity: 1 !important; visibility: visible !important; }
/* Si le thème utilise des classes de chargement, on force aussi */ 
body.is-loading, body.loading, body.preload, html.wf-loading body { opacity: 1 !important; visibility: visible !important; } 
/* (Optionnel) Isoler la modale du chatbot pour éviter des effets de blend globaux */ 
#lesuperviseur-chat-modal { contain: paint; } #lesuperviseur-chat-modal .lesuperviseur-modal-content { isolation: isolate; } 
/* Si le thème rend le texte "transparent" pendant le chargement */ 
html.is-loading *, html.loading *, body.is-loading *, body.loading *, body.preload * { color: inherit !important; -webkit-text-fill-color: inherit !important; filter: none !important; } 
/* Couleurs sûres au 1er rendu (tu peux adapter au thème) */
body { background:#fff !important; color:#111827 !important; } 
/* Bulle IA : texte toujours lisible (tu l’avais déjà presque) */ 
#lesuperviseur-chat-modal .lesuperviseur-message.assistant, #lesuperviseur-chat-modal .lesuperviseur-message.assistant :is(p, li, ul, ol, h1, h2, h3, h4, h5, h6, blockquote, strong, em) { color:#fff !important; -webkit-text-fill-color:#fff !important; } #lesuperviseur-chat-modal .lesuperviseur-message.assistant a { color:rgba(255,255,255,.96) !important; text-decoration:underline !important; }




/* =========================================================
   LeSuperviseur.ai — UI System (admin + front) — v1
   Ajouté au-dessus de tes styles existants
   ========================================================= */

/* ---------- Tokens ---------- */
:root {
  --ls-primary: #667eea;
  --ls-primary-2: #764ba2;
  --ls-bg: #ffffff;
  --ls-surface: #ffffff;
  --ls-text: #111827;
  --ls-muted: #6b7280;
  --ls-border: #e5e7eb;
  --ls-success: #10b981;
  --ls-danger: #ef4444;
  --ls-warning: #f59e0b;
  --ls-info: #3b82f6;
  --ls-radius: 12px;
  --ls-shadow: 0 10px 30px rgba(0,0,0,.06);
}

/* ---------- Admin wrapper ---------- */
.lesuperviseur-admin .ls-admin-header {
  display:flex; align-items:center; justify-content:space-between;
  margin:8px 0 16px 0;
}
.lesuperviseur-admin .ls-admin-header .ls-badge {
  margin-left:8px;
}

/* ---------- Cards ---------- */
.ls-card {
  background: var(--ls-surface);
  border: 1px solid var(--ls-border);
  border-radius: var(--ls-radius);
  box-shadow: var(--ls-shadow);
  padding: 18px 18px 14px;
  margin: 16px 0;
}
.ls-card h2, .ls-card h3 {
  margin-top: 0;
  border-left: 4px solid var(--ls-primary);
  padding-left: 12px;
}

/* ---------- Buttons (harmonisés avec WP + ton gradient) ---------- */
.lesuperviseur-admin .button-primary,
.lesuperviseur-admin .button.button-primary {
  background: linear-gradient(135deg,var(--ls-primary) 0%,var(--ls-primary-2) 100%);
  border: none;
  color: #fff;
  box-shadow: 0 4px 14px rgba(102,126,234,.35);
}
.lesuperviseur-admin .button-primary:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 18px rgba(102,126,234,.45);
}
.lesuperviseur-admin .button,
.lesuperviseur-admin .button-secondary {
  border-radius: 10px;
}

/* ---------- Form tables (réglages) ---------- */
.lesuperviseur-admin .form-table th {
  width: 260px;
  font-weight: 600;
  color: var(--ls-text);
}
.lesuperviseur-admin .form-table td .regular-text,
.lesuperviseur-admin input[type="text"],
.lesuperviseur-admin input[type="password"],
.lesuperviseur-admin input[type="number"],
.lesuperviseur-admin select {
  width: 420px;
  max-width: 100%;
  padding: 10px 12px;
  border: 1px solid var(--ls-border);
  border-radius: 10px;
  outline: 0;
}
.lesuperviseur-admin input:focus, 
.lesuperviseur-admin select:focus, 
.lesuperviseur-admin textarea:focus {
  border-color: var(--ls-primary);
  box-shadow: 0 0 0 3px rgba(102,126,234,.12);
}

/* ---------- Field help ---------- */
.lesuperviseur-admin .description {
  color: var(--ls-muted);
}

/* ---------- Badges ---------- */
.ls-badge {
  display:inline-block;
  padding: 4px 8px;
  border-radius: 999px;
  font-size: 12px;
  line-height: 1;
  font-weight: 600;
  background:#f3f4f6;
  border:1px solid var(--ls-border);
  color:#374151;
  vertical-align: middle;
}
.ls-badge-success { background:#ecfdf5; border-color:#a7f3d0; color:#065f46; }
.ls-badge-danger  { background:#fef2f2; border-color:#fecaca; color:#7f1d1d; }
.ls-badge-warning { background:#fff7ed; border-color:#fed7aa; color:#7c2d12; }
.ls-badge-info    { background:#eff6ff; border-color:#bfdbfe; color:#1e3a8a; }

/* Badges de gravité */
.ls-badge.sev { padding:4px 10px; }
.sev--elevee  { background:#fef2f2; border-color:#fecaca; color:#991b1b; }
.sev--moderee { background:#fff7ed; border-color:#fed7aa; color:#7c2d12; }
.sev--faible  { background:#ecfdf5; border-color:#a7f3d0; color:#065f46; }

/* ---------- Switch (si tu veux styliser des checkbox à l’avenir) ---------- */
.ls-switch { position:relative; width:44px; height:24px; display:inline-block; }
.ls-switch input { display:none; }
.ls-switch .track {
  position:absolute; inset:0; border-radius:999px; background:#e5e7eb; transition:.2s;
}
.ls-switch .thumb {
  position:absolute; top:3px; left:3px; width:18px; height:18px; border-radius:50%;
  background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.2); transition:.2s;
}
.ls-switch input:checked + .track { background:linear-gradient(135deg,var(--ls-primary),var(--ls-primary-2)); }
.ls-switch input:checked + .track .thumb { transform: translateX(20px); }

/* ---------- “Pills” type de règlement (utile si tu les affiches quelque part) ---------- */
.ls-pill {
  display:inline-flex; align-items:center; gap:6px;
  padding:6px 10px; border-radius:999px; font-weight:600; font-size:12px;
  border:1px solid var(--ls-border); background:#f9fafb; color:#374151;
}
.ls-pill .dot { width:8px; height:8px; border-radius:50%; background:var(--ls-primary); }
.ls-pill.emf .dot { background:#8b5cf6; }

/* ---------- Analyse : jolies tables/résumés si besoin ---------- */
.ls-table {
  width:100%; border-collapse:separate; border-spacing:0; overflow:hidden;
  border:1px solid var(--ls-border); border-radius: 10px;
}
.ls-table th, .ls-table td { padding:10px 12px; }
.ls-table thead th { background:#f9fafb; text-align:left; font-weight:600; }
.ls-table tbody tr + tr td { border-top:1px solid var(--ls-border); }

/* ---------- Progress (déjà présent, on renforce) ---------- */
.lesuperviseur-progress-bar { height:10px; border-radius:999px; }
.lesuperviseur-progress-fill { border-radius:999px; }

/* ---------- Logs ---------- */
#analysis-logs { border:1px solid var(--ls-border); }
#logs-content { font-size:12px; border-radius:6px; }

/* ---------- Résultat / Rapport ---------- */
#final-report { border:1px solid var(--ls-border); }
#final-report h1 { border-bottom:3px solid var(--ls-primary); }
#final-report h2 { border-left:4px solid var(--ls-primary); }

/* Lien dans le rapport */
#final-report a { color: var(--ls-primary); text-decoration: underline; }

/* ---------- Print styles (rapport) ---------- */
@media print {
  body * { visibility: hidden; }
  #final-report, #final-report * { visibility: visible; }
  #final-report { position: absolute; left: 0; top: 0; width: 100%; box-shadow:none; border:none; }
  #final-report a[href]:after { content: ""; } /* pas d’URL après les liens */
}


/* ===== Segmented primary buttons (type de règlement) ===== */
.lesuperviseur-admin .ls-seg-buttons {
  display: inline-flex;
  gap: 8px;
}
.lesuperviseur-admin .ls-seg-buttons input[type="radio"] {
  position: absolute;
  left: -9999px;
}
.lesuperviseur-admin .ls-seg-buttons label.button {
  margin: 0;
  cursor: pointer;
  transition: transform .02s ease-in-out;
}
.lesuperviseur-admin .ls-seg-buttons label.button:hover {
  transform: translateY(-1px);
}
/* Lorsqu’un radio est coché, on “promeut” le label en .button-primary */
.lesuperviseur-admin .ls-seg-buttons input[type="radio"]:checked + label.button {
  /* WP a déjà le style .button-primary, on l’ajoute via JS en classe */
}
.lesuperviseur-admin .ls-seg-buttons label.button.button-primary {
  /* rien ici : on s’appuie sur le style WP natif de .button-primary */
}

/* ===== Upload box brandée ===== */
.lesuperviseur-admin .ls-upload {
  position: relative;
  border: 2px dashed #2271b1;
  background: #f0f6fc;
  border-radius: 10px;
  padding: 22px 16px;
  max-width: 560px;
  transition: background .15s ease, border-color .15s ease;
}
.lesuperviseur-admin .ls-upload.is-dragover {
  background: #e9f3ff;
  border-color: #135e96;
}
.lesuperviseur-admin .ls-upload.has-file {
  background: #f7fbff;
  border-color: #72aee6;
}

.lesuperviseur-admin .ls-upload input[type="file"] {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}

.lesuperviseur-admin .ls-upload .ls-upload-inner {
  display: flex;
  align-items: center;
  gap: 12px;
}
.lesuperviseur-admin .ls-upload .dashicons {
  font-size: 28px;
  width: 28px;
  height: 28px;
  line-height: 28px;
  color: #2271b1;
}
.lesuperviseur-admin .ls-upload .ls-upload-text {
  font-size: 13px;
}
.lesuperviseur-admin .ls-upload .ls-upload-text strong {
  margin-right: 4px;
}
.lesuperviseur-admin .ls-upload .ls-upload-help {
  opacity: .7;
  font-size: 12px;
  margin-top: 2px;
}
.lesuperviseur-admin .ls-upload .ls-upload-filename {
  margin-left: auto;
  font-size: 12px;
  background: #fff;
  border: 1px solid #d0d7de;
  padding: 6px 8px;
  border-radius: 6px;
  max-width: 45%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}


/* Met en évidence le bouton sélectionné pour le type de règlement */
.lesuperviseur-admin .ls-seg-buttons input[type="radio"]:checked + label.button {
  background: #2271b1;   /* même bleu que .button-primary WP */
  border-color: #2271b1;
  color: #fff;
  box-shadow: 0 1px 0 #0c4a7a;
}

/* Focus clavier visible */
.lesuperviseur-admin .ls-seg-buttons input[type="radio"]:focus + label.button {
  outline: none;
  box-shadow: 0 0 0 1px #2271b1, 0 0 0 3px rgba(34,113,177,.2);
}

/* Hover léger quand c’est sélectionné */
.lesuperviseur-admin .ls-seg-buttons input[type="radio"]:checked + label.button:hover {
  filter: brightness(1.05);
}


/* ========== KILL DARK MODE (LeSuperviseur.ai) ========== */
/* Indique aux navigateurs qu'on ne veut que le thème clair (inputs natifs inclus) */
:root { color-scheme: only light; }

/* Si l'OS est en sombre, on force quand même les couleurs claires */
@media (prefers-color-scheme: dark) {
  :root {
    --ls-bg:#ffffff;
    --ls-surface:#ffffff;
    --ls-text:#111827;
    --ls-border:#e5e7eb;
    --ls-shadow: 0 10px 30px rgba(0,0,0,.06);
  }

  /* Modale / chat (mêmes couleurs que le thème clair) */
  .lesuperviseur-modal-content { background:#fff !important; color:#111827 !important; -webkit-text-fill-color:#111827 !important; }
  .lesuperviseur-chat-input { background:#fff !important; border-top:1px solid #eee !important; }
  .lesuperviseur-chat-input input { background:#fff !important; border-color:#ddd !important; color:#111827 !important; -webkit-text-fill-color:#111827 !important; }
  .lesuperviseur-message.user { background:#f0f0f0 !important; color:#111827 !important; }

  /* Admin cards / rapport (garde la palette claire) */
  .ls-card { background:#fff !important; border-color:#e5e7eb !important; }
  #final-report { background:#fff !important; color:#111827 !important; }

  /* Logs : conserve ton “console vert sur fond sombre clair” si tu veux */
  #logs-content { background:#1a1a1a !important; color:#00ff00 !important; }
}
/* ========== /KILL DARK MODE ========== */
