/* ═══════════════════════════════════════════════════════════════════════════
   Airlod Cards — thème sombre (identité des visuels 2026)
   Feuille statique (pas de build Vite) chargée par les layouts app / dashboard / admin.
   Modes : sombre (défaut) / clair via html[data-mode] (script partials/mode-script). 1. Tokens   2. Remap des utilitaires Tailwind déjà présents dans les vues
   3. Composants de marque (.al-*)   4. Typographie
   Exclure un bloc du remap : ajouter l'attribut data-theme-keep (ex. aperçu de carte, pickers).
   ═══════════════════════════════════════════════════════════════════════════ */

:root{
  --al-bg:#06090F;          /* fond de page, quasi noir bleuté */
  --al-bg-2:#0A1018;        /* zones élevées (barres) */
  --al-surface:#0F151E;     /* cartes, panneaux */
  --al-surface-2:#151D28;   /* cartes imbriquées, en-têtes de tableau */
  --al-surface-3:#1B2533;   /* survol, champs */
  --al-line:rgba(67,157,255,.12);
  --al-line-2:rgba(67,157,255,.22);
  --al-ink:#F2F6FC;
  --al-ink-2:#C9D4E6;
  --al-mute:#8A9AB4;
  --al-mute-2:#5F6F88;
  --al-placeholder:#6F7F98;
  --al-blue:#017AFE;        /* bleu électrique (charte) */
  --al-blue-2:#0A5FD6;
  --al-blue-deep:#0F3155;   /* bleu nuit (charte) */
  --al-sky:#439DFF;         /* bleu clair (charte) */
  --al-sky-2:#CFE5FF;
  --al-tint:rgba(1,122,254,.14);
  --al-tint-2:rgba(1,122,254,.28);
  --al-hi:rgba(255,255,255,.06);
  --al-glass-bg:rgba(10,16,24,.88);
  --al-glass-2:rgba(15,21,30,.75);
  --al-ok:#34D399; --al-warn:#FBBF24; --al-danger:#F87171;
  --al-shadow:0 20px 60px rgba(0,0,0,.45),0 1px 0 rgba(67,157,255,.06) inset;
  --al-glow:0 8px 30px rgba(1,122,254,.35);
  --al-grad-text:linear-gradient(92deg,#FFFFFF 0%,#439DFF 100%);
  --al-grad-blue:linear-gradient(135deg,#439DFF 0%,#017AFE 100%);
  --al-grad-glass:linear-gradient(180deg,rgba(15,49,85,.78),rgba(9,30,55,.80));
  --al-card-glass:linear-gradient(180deg,rgba(21,30,44,.92),rgba(13,19,28,.92));
  --al-page-bg:radial-gradient(900px 520px at 18% -10%,rgba(15,49,85,.34),transparent 60%),radial-gradient(700px 480px at 100% 110%,rgba(1,122,254,.30),transparent 60%),var(--al-bg);
  --al-circuit:url("data:image/svg+xml;utf8,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='220'%20height='220'%20viewBox='0%200%20220%20220'%20fill='none'%20stroke='rgba(190,215,255,0.16)'%20stroke-width='1.2'%3E%3Cpath%20d='M20%200v60l30%2030v70l-20%2020v40M70%200v40l40%2040v60l30%2030v50M120%200v30l-30%2030M160%200v80l40%2040v100M200%200v20l-40%2040v40'/%3E%3Cg%20fill='rgba(190,215,255,0.28)'%20stroke='none'%3E%3Ccircle%20cx='50'%20cy='90'%20r='2.5'/%3E%3Ccircle%20cx='110'%20cy='80'%20r='2.5'/%3E%3Ccircle%20cx='140'%20cy='170'%20r='2.5'/%3E%3Ccircle%20cx='200'%20cy='120'%20r='2.5'/%3E%3Ccircle%20cx='30'%20cy='180'%20r='2.5'/%3E%3Ccircle%20cx='160'%20cy='80'%20r='2.5'/%3E%3C/g%3E%3C/svg%3E");
  --al-side-bg:linear-gradient(180deg,#0B1220 0%,#06090F 100%);
  --al-bar-bg:rgba(10,16,24,.94);
  --al-hero-bg:linear-gradient(135deg,rgba(21,30,44,.96),rgba(11,18,28,.96));
  --al-popup-bg:linear-gradient(180deg,#06090F 0%,#0F3155 50%,#06090F 100%);
  --al-cardx-face:radial-gradient(120% 120% at 100% 0%,rgba(1,122,254,.20),transparent 55%),linear-gradient(180deg,#0B0F16,#0B0F16);
  --al-cardx-veil:linear-gradient(180deg,rgba(6,9,15,0) 30%,rgba(6,9,15,.78) 100%);
  --al-cardx-ink:#FFFFFF;
  --al-cardx-sub:#B8C6DD;
  --al-cardx-menu:rgba(6,9,15,.55);
  --al-cardx-circuit:url("data:image/svg+xml;utf8,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='220'%20height='220'%20viewBox='0%200%20220%20220'%20fill='none'%20stroke='rgba(190,215,255,0.22)'%20stroke-width='1.2'%3E%3Cpath%20d='M20%200v60l30%2030v70l-20%2020v40M70%200v40l40%2040v60l30%2030v50M120%200v30l-30%2030M160%200v80l40%2040v100M200%200v20l-40%2040v40'/%3E%3Cg%20fill='rgba(190,215,255,0.4)'%20stroke='none'%3E%3Ccircle%20cx='50'%20cy='90'%20r='2.5'/%3E%3Ccircle%20cx='110'%20cy='80'%20r='2.5'/%3E%3Ccircle%20cx='140'%20cy='170'%20r='2.5'/%3E%3Ccircle%20cx='200'%20cy='120'%20r='2.5'/%3E%3Ccircle%20cx='30'%20cy='180'%20r='2.5'/%3E%3Ccircle%20cx='160'%20cy='80'%20r='2.5'/%3E%3C/g%3E%3C/svg%3E");
  color-scheme:dark;
  --al-r-card:16px; --al-r-input:12px; --al-r-pill:999px;
  --al-font:'SF Pro Display',-apple-system,BlinkMacSystemFont,'Geist',system-ui,sans-serif;
}
/* Mode clair : même marque, canevas blanc bleuté, aucune zone sombre ; seules les pilules « verre » (CTA) restent bleu nuit, comme sur les visuels. */
html[data-mode="light"]{
  --al-bg:#F3F7FC;          /* blanc bleuté froid, jamais du blanc pur en fond */
  --al-bg-2:#FFFFFF;
  --al-surface:#FFFFFF;
  --al-surface-2:#F3F7FC;
  --al-surface-3:#E8EFF9;
  --al-line:rgba(15,49,85,.12);
  --al-line-2:rgba(15,49,85,.22);
  --al-ink:#0F1B2D;
  --al-ink-2:#2B3A52;
  --al-mute:#5B6B84;
  --al-mute-2:#7C8BA3;
  --al-placeholder:#93A1B8;
  --al-sky:#0B6FE8;         /* bleu charte lisible sur blanc (texte, liens) */
  --al-sky-2:#0F3155;
  --al-tint:rgba(1,122,254,.10);
  --al-tint-2:rgba(1,122,254,.20);
  --al-hi:rgba(255,255,255,.75);
  --al-glass-bg:rgba(255,255,255,.82);
  --al-glass-2:rgba(255,255,255,.7);
  --al-ok:#0F9F6E; --al-warn:#B7791F; --al-danger:#DC2626;
  --al-shadow:0 20px 60px rgba(15,49,85,.14),0 1px 0 rgba(255,255,255,.9) inset;
  --al-glow:0 10px 30px rgba(1,122,254,.22);
  --al-grad-text:linear-gradient(92deg,#0F3155 0%,#017AFE 100%);
  --al-card-glass:linear-gradient(180deg,rgba(255,255,255,.9),rgba(243,247,252,.92));
  --al-page-bg:radial-gradient(900px 520px at 18% -10%,rgba(67,157,255,.22),transparent 60%),radial-gradient(700px 480px at 100% 110%,rgba(1,122,254,.14),transparent 60%),linear-gradient(180deg,#F7FAFE,#EEF4FB);
  --al-circuit:url("data:image/svg+xml;utf8,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='220'%20height='220'%20viewBox='0%200%20220%20220'%20fill='none'%20stroke='rgba(15,49,85,0.12)'%20stroke-width='1.2'%3E%3Cpath%20d='M20%200v60l30%2030v70l-20%2020v40M70%200v40l40%2040v60l30%2030v50M120%200v30l-30%2030M160%200v80l40%2040v100M200%200v20l-40%2040v40'/%3E%3Cg%20fill='rgba(1,122,254,0.28)'%20stroke='none'%3E%3Ccircle%20cx='50'%20cy='90'%20r='2.5'/%3E%3Ccircle%20cx='110'%20cy='80'%20r='2.5'/%3E%3Ccircle%20cx='140'%20cy='170'%20r='2.5'/%3E%3Ccircle%20cx='200'%20cy='120'%20r='2.5'/%3E%3Ccircle%20cx='30'%20cy='180'%20r='2.5'/%3E%3Ccircle%20cx='160'%20cy='80'%20r='2.5'/%3E%3C/g%3E%3C/svg%3E");
  --al-side-bg:linear-gradient(180deg,#FFFFFF 0%,#F3F7FC 100%);
  --al-bar-bg:rgba(255,255,255,.92);
  --al-hero-bg:radial-gradient(120% 140% at 100% 0%,rgba(67,157,255,.30),transparent 55%),radial-gradient(80% 80% at 0% 100%,rgba(15,49,85,.10),transparent 60%),linear-gradient(135deg,#FFFFFF,#EEF4FD);
  --al-popup-bg:radial-gradient(120% 90% at 50% 0%,rgba(67,157,255,.28),transparent 60%),linear-gradient(180deg,#FFFFFF,#E9F1FC);
  --al-cardx-face:radial-gradient(110% 120% at 100% 0%,rgba(67,157,255,.32),transparent 55%),linear-gradient(135deg,#FFFFFF 0%,#EAF1FB 100%);
  --al-cardx-veil:linear-gradient(180deg,rgba(255,255,255,0) 35%,rgba(255,255,255,.82) 100%);
  --al-cardx-ink:#0F1B2D;
  --al-cardx-sub:#5B6B84;
  --al-cardx-menu:rgba(255,255,255,.75);
  --al-cardx-circuit:url("data:image/svg+xml;utf8,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='220'%20height='220'%20viewBox='0%200%20220%20220'%20fill='none'%20stroke='rgba(15,49,85,0.16)'%20stroke-width='1.2'%3E%3Cpath%20d='M20%200v60l30%2030v70l-20%2020v40M70%200v40l40%2040v60l30%2030v50M120%200v30l-30%2030M160%200v80l40%2040v100M200%200v20l-40%2040v40'/%3E%3Cg%20fill='rgba(1,122,254,0.45)'%20stroke='none'%3E%3Ccircle%20cx='50'%20cy='90'%20r='2.5'/%3E%3Ccircle%20cx='110'%20cy='80'%20r='2.5'/%3E%3Ccircle%20cx='140'%20cy='170'%20r='2.5'/%3E%3Ccircle%20cx='200'%20cy='120'%20r='2.5'/%3E%3Ccircle%20cx='30'%20cy='180'%20r='2.5'/%3E%3Ccircle%20cx='160'%20cy='80'%20r='2.5'/%3E%3C/g%3E%3C/svg%3E");
  color-scheme:light;
}

/* ── 4. Typographie ─────────────────────────────────────────────────────── */
[data-theme="airlod"], [data-theme="airlod"] body{font-family:var(--al-font);background:var(--al-bg);color:var(--al-ink)}
[data-theme="airlod"] h1,[data-theme="airlod"] h2,[data-theme="airlod"] h3{letter-spacing:-.015em;text-wrap:balance}
[data-theme="airlod"] .tabular, [data-theme="airlod"] td, [data-theme="airlod"] .text-2xl, [data-theme="airlod"] .text-3xl{font-variant-numeric:tabular-nums}
[data-theme="airlod"] ::selection{background:rgba(1,122,254,.35)}
[data-theme="airlod"] *{scrollbar-color:rgba(67,157,255,.25) transparent}
[data-theme="airlod"] :focus-visible{outline:2px solid var(--al-blue);outline-offset:2px}

/* ── 2. Remap sombre des utilitaires Tailwind (spécificité 0,2,0 > 0,1,0) ─── */
[data-theme="airlod"] .bg-white,[data-theme="airlod"] .bg-\[\#f7f7f7\],[data-theme="airlod"] .bg-\[\#f7f7fb\]{background-color:var(--al-surface)}
[data-theme="airlod"] .bg-gray-50,[data-theme="airlod"] .bg-gray-100,[data-theme="airlod"] .bg-slate-50,[data-theme="airlod"] .bg-\[\#f7f7f7\]\/60{background-color:var(--al-surface-2)}
[data-theme="airlod"] .bg-gray-200{background-color:var(--al-surface-3)}
[data-theme="airlod"] .bg-black{background-color:var(--al-bg-2)}
[data-theme="airlod"] .bg-gray-900,[data-theme="airlod"] .bg-\[\#0f0f0f\]{background-color:var(--al-surface-3)}
[data-theme="airlod"] .bg-indigo-50,[data-theme="airlod"] .bg-purple-50,[data-theme="airlod"] .bg-blue-50,[data-theme="airlod"] .bg-violet-50{background-color:var(--al-tint)}
[data-theme="airlod"] .bg-green-50,[data-theme="airlod"] .bg-emerald-50{background-color:rgba(52,211,153,.12)}
[data-theme="airlod"] .bg-red-50,[data-theme="airlod"] .bg-rose-50{background-color:rgba(248,113,113,.12)}
[data-theme="airlod"] .bg-orange-50,[data-theme="airlod"] .bg-amber-50,[data-theme="airlod"] .bg-yellow-50{background-color:rgba(251,191,36,.12)}
[data-theme="airlod"] .bg-indigo-600,[data-theme="airlod"] .bg-indigo-500,[data-theme="airlod"] .hover\:bg-indigo-700:hover{background:var(--al-grad-blue);border-color:transparent}
[data-theme="airlod"] .bg-gradient-to-r.from-\[\#7549F2\],[data-theme="airlod"] .bg-gradient-to-br.from-\[\#7549F2\]{background-image:var(--al-grad-blue)}

[data-theme="airlod"] .text-gray-900,[data-theme="airlod"] .text-gray-800,[data-theme="airlod"] .text-black,[data-theme="airlod"] .text-\[\#111\],[data-theme="airlod"] .text-\[\#0f0f0f\]{color:var(--al-ink)}
[data-theme="airlod"] .text-gray-700,[data-theme="airlod"] .text-gray-600{color:var(--al-ink-2)}
[data-theme="airlod"] .text-gray-500,[data-theme="airlod"] .text-gray-400,[data-theme="airlod"] .text-\[\#6b7280\],[data-theme="airlod"] .text-\[\#a0a0a0\]{color:var(--al-mute)}
[data-theme="airlod"] .text-gray-300{color:var(--al-mute-2)}
[data-theme="airlod"] .text-indigo-600,[data-theme="airlod"] .text-indigo-500,[data-theme="airlod"] .text-purple-600,[data-theme="airlod"] .text-purple-400,[data-theme="airlod"] .text-blue-600,[data-theme="airlod"] .text-\[\#7549F2\]{color:var(--al-sky)}
[data-theme="airlod"] .text-green-600,[data-theme="airlod"] .text-green-700,[data-theme="airlod"] .text-emerald-600{color:var(--al-ok)}
[data-theme="airlod"] .text-red-600,[data-theme="airlod"] .text-red-700{color:var(--al-danger)}
[data-theme="airlod"] .text-orange-600,[data-theme="airlod"] .text-amber-600,[data-theme="airlod"] .text-yellow-600{color:var(--al-warn)}
[data-theme="airlod"] .hover\:text-gray-900:hover,[data-theme="airlod"] .hover\:text-gray-700:hover{color:var(--al-ink)}

[data-theme="airlod"] .border-gray-100,[data-theme="airlod"] .border-gray-200,[data-theme="airlod"] .border-gray-300,[data-theme="airlod"] .border,[data-theme="airlod"] .border-t,[data-theme="airlod"] .border-b,[data-theme="airlod"] .divide-gray-100>:not([hidden])~:not([hidden]),[data-theme="airlod"] .divide-gray-200>:not([hidden])~:not([hidden]){border-color:var(--al-line)}
[data-theme="airlod"] .border-green-200{border-color:rgba(52,211,153,.35)}
[data-theme="airlod"] .border-red-200{border-color:rgba(248,113,113,.35)}
[data-theme="airlod"] .border-indigo-200,[data-theme="airlod"] .border-purple-200,[data-theme="airlod"] .border-\[\#e3dcfb\]{border-color:rgba(1,122,254,.35)}
[data-theme="airlod"] .border-dashed{border-color:var(--al-line-2)}
[data-theme="airlod"] .shadow-sm,[data-theme="airlod"] .shadow,[data-theme="airlod"] .shadow-md,[data-theme="airlod"] .shadow-lg{box-shadow:var(--al-shadow)}
[data-theme="airlod"] .rounded-xl.bg-white,[data-theme="airlod"] .rounded-2xl.bg-white,[data-theme="airlod"] .bg-white.rounded-xl,[data-theme="airlod"] .bg-white.rounded-2xl{border:1px solid var(--al-line)}

/* Tableaux */
[data-theme="airlod"] thead,[data-theme="airlod"] thead.bg-gray-50{background-color:var(--al-surface-2)}
[data-theme="airlod"] th{color:var(--al-mute)}
[data-theme="airlod"] tbody tr:hover,[data-theme="airlod"] .hover\:bg-gray-50:hover{background-color:rgba(1,122,254,.06)}

/* Champs */
[data-theme="airlod"] input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]),[data-theme="airlod"] select,[data-theme="airlod"] textarea{background-color:var(--al-surface-3);color:var(--al-ink);border-color:var(--al-line-2);border-radius:var(--al-r-input)}
[data-theme="airlod"] input::placeholder,[data-theme="airlod"] textarea::placeholder{color:var(--al-placeholder)}
[data-theme="airlod"] input:focus,[data-theme="airlod"] select:focus,[data-theme="airlod"] textarea:focus{border-color:var(--al-blue);box-shadow:0 0 0 3px rgba(1,122,254,.25);outline:none}
[data-theme="airlod"] select option{background:var(--al-surface-2)}
[data-theme="airlod"] input[type=checkbox],[data-theme="airlod"] input[type=radio]{accent-color:var(--al-blue)}

/* Boutons fréquents des vues */
[data-theme="airlod"] .bg-white.border.text-gray-700,[data-theme="airlod"] .border.bg-white,[data-theme="airlod"] a.border.bg-white,[data-theme="airlod"] button.border.bg-white{background-color:var(--al-surface-2);color:var(--al-ink-2);border-color:var(--al-line-2)}
[data-theme="airlod"] .hover\:bg-gray-100:hover,[data-theme="airlod"] .hover\:bg-gray-50:hover{background-color:var(--al-surface-3)}
[data-theme="airlod"] .bg-black.text-white,[data-theme="airlod"] .bg-gray-900.text-white{background:var(--al-grad-blue)}
[data-theme="airlod"] .rounded-lg.bg-indigo-600,[data-theme="airlod"] .rounded-xl.bg-indigo-600,[data-theme="airlod"] .rounded-full.bg-indigo-600{border-radius:var(--al-r-pill)}

/* Éléments à laisser intacts (aperçus de carte, pickers de couleur, images) */
[data-theme="airlod"] [data-theme-keep],[data-theme="airlod"] [data-theme-keep] *{color:initial}
[data-theme="airlod"] [data-theme-keep] .bg-white{background-color:#fff}

/* ── 3. Composants de marque ─────────────────────────────────────────────── */
.al-page-glow{position:fixed;inset:0;z-index:0;pointer-events:none;background:var(--al-page-bg)}
.al-beams{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.al-beams::before,.al-beams::after{content:"";position:absolute;width:140vmax;height:34px;left:-20vmax;background:linear-gradient(90deg,transparent,rgba(1,122,254,.85),rgba(140,200,255,.9),rgba(1,122,254,.85),transparent);filter:blur(1px);opacity:.55;transform:rotate(-24deg)}
.al-beams::before{top:64%}
.al-beams::after{top:78%;height:18px;opacity:.35;transform:rotate(-24deg) translateX(10vmax)}
.al-grad-text{background:var(--al-grad-text);-webkit-background-clip:text;background-clip:text;color:transparent}
.al-glass{background:var(--al-grad-glass);border:1px solid rgba(67,157,255,.55);box-shadow:0 0 0 1px rgba(255,255,255,.06) inset,var(--al-glow);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%)}
.al-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 22px;border-radius:var(--al-r-pill);font-weight:700;font-size:15px;color:#fff;text-decoration:none;cursor:pointer;border:0;transition:transform .15s cubic-bezier(.16,1,.3,1),box-shadow .2s;font-family:inherit;white-space:nowrap}
.al-btn:active{transform:scale(.98)}
.al-btn.primary{background:var(--al-grad-glass);border:1px solid rgba(67,157,255,.55);box-shadow:var(--al-glow)}
.al-btn.primary:hover{box-shadow:0 10px 36px rgba(1,122,254,.5)}
.al-btn.solid{background:var(--al-grad-blue);box-shadow:0 8px 24px rgba(27,95,224,.35)}
.al-btn.ghost{background:transparent;border:1px solid var(--al-line-2);color:var(--al-ink-2)}
.al-btn.ghost:hover{background:var(--al-tint);color:var(--al-ink)}
.al-btn.sm{height:38px;padding:0 16px;font-size:13.5px}
.al-card{background:var(--al-surface);border:1px solid var(--al-line);border-radius:var(--al-r-card);box-shadow:var(--al-shadow)}
.al-card.glass{background:var(--al-card-glass);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.al-input{width:100%;height:48px;padding:0 16px;border-radius:var(--al-r-input);background:var(--al-surface-3);border:1px solid var(--al-line-2);color:var(--al-ink);font-size:15px;font-family:inherit}
.al-input:focus{border-color:var(--al-blue);box-shadow:0 0 0 3px rgba(1,122,254,.25);outline:none}
.al-label{display:block;font-size:13px;font-weight:600;color:var(--al-ink-2);margin-bottom:8px}
.al-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--al-r-pill);font-size:11.5px;font-weight:600;background:var(--al-tint);color:var(--al-sky);border:1px solid rgba(1,122,254,.3)}
.al-badge.ok{background:rgba(52,211,153,.14);color:var(--al-ok);border-color:rgba(52,211,153,.3)}
.al-badge.warn{background:rgba(251,191,36,.14);color:var(--al-warn);border-color:rgba(251,191,36,.3)}
.al-badge.danger{background:rgba(248,113,113,.14);color:var(--al-danger);border-color:rgba(248,113,113,.3)}
.al-check{width:22px;height:22px;border-radius:999px;background:var(--al-grad-blue);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 14px rgba(1,122,254,.4)}
.al-circuit{background-image:var(--al-circuit)}
.al-stat{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:var(--al-r-card);background:var(--al-surface);border:1px solid var(--al-line)}
.al-stat i{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:var(--al-tint);color:var(--al-sky);flex-shrink:0}
.al-stat b{display:block;font-size:24px;font-weight:700;letter-spacing:-.02em;color:var(--al-ink);font-variant-numeric:tabular-nums;line-height:1.1}
.al-stat span{font-size:12.5px;color:var(--al-mute)}
.al-nav a,.al-nav button{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;color:var(--al-mute);font-size:14px;font-weight:500;text-decoration:none;transition:background .15s,color .15s;width:100%;text-align:left;font-family:inherit;border:0;background:transparent;cursor:pointer}
.al-nav a:hover,.al-nav button:hover{color:var(--al-ink);background:rgba(67,157,255,.06)}
.al-nav a.active{color:var(--al-ink);background:linear-gradient(90deg,var(--al-tint-2),transparent);box-shadow:inset 3px 0 0 var(--al-blue)}
.al-nav svg{width:20px;height:20px;flex-shrink:0}
.al-nav a.active svg{color:var(--al-sky)}
.al-section-title{font-size:20px;font-weight:700;letter-spacing:-.02em;color:var(--al-ink)}
.al-kicker{font-size:12px;font-weight:600;color:var(--al-sky);letter-spacing:.04em}
@media (prefers-reduced-motion:reduce){.al-btn{transition:none}}

/* ── 5. Plus aucun violet : remap des utilitaires purple / violet / fuchsia / indigo / pink vers le bleu charte ── */
[data-theme="airlod"] [class*="bg-purple-"],[data-theme="airlod"] [class*="bg-violet-"],[data-theme="airlod"] [class*="bg-fuchsia-"],[data-theme="airlod"] [class*="bg-indigo-"],[data-theme="airlod"] [class*="bg-pink-"]{background-color:var(--al-tint);background-image:none}
[data-theme="airlod"] .bg-purple-500,[data-theme="airlod"] .bg-purple-600,[data-theme="airlod"] .bg-purple-700,[data-theme="airlod"] .bg-violet-600,[data-theme="airlod"] .bg-fuchsia-600,[data-theme="airlod"] .bg-pink-600,[data-theme="airlod"] .bg-pink-500,[data-theme="airlod"] .bg-indigo-500,[data-theme="airlod"] .bg-indigo-600,[data-theme="airlod"] .bg-indigo-700,[data-theme="airlod"] .bg-blue-600,[data-theme="airlod"] .bg-blue-500{background:var(--al-grad-blue);color:#fff}
[data-theme="airlod"] [class*="text-purple-"],[data-theme="airlod"] [class*="text-violet-"],[data-theme="airlod"] [class*="text-fuchsia-"],[data-theme="airlod"] [class*="text-indigo-"],[data-theme="airlod"] [class*="text-pink-"]{color:var(--al-sky)}
[data-theme="airlod"] [class*="border-purple-"],[data-theme="airlod"] [class*="border-violet-"],[data-theme="airlod"] [class*="border-indigo-"],[data-theme="airlod"] [class*="border-pink-"]{border-color:rgba(1,122,254,.4)}
[data-theme="airlod"] [class*="ring-purple-"],[data-theme="airlod"] [class*="ring-indigo-"],[data-theme="airlod"] [class*="focus:ring-purple-"]{--tw-ring-color:rgba(1,122,254,.45)}
[data-theme="airlod"] [class*="from-purple-"],[data-theme="airlod"] [class*="from-violet-"],[data-theme="airlod"] [class*="from-indigo-"],[data-theme="airlod"] [class*="from-fuchsia-"],[data-theme="airlod"] [class*="from-pink-"],[data-theme="airlod"] [class*="via-purple-"],[data-theme="airlod"] [class*="via-pink-"],[data-theme="airlod"] [class*="to-purple-"],[data-theme="airlod"] [class*="to-pink-"],[data-theme="airlod"] [class*="to-fuchsia-"],[data-theme="airlod"] [class*="to-indigo-"]{background-image:var(--al-grad-blue) !important}
[data-theme="airlod"] [class*="hover:bg-purple-"]:hover,[data-theme="airlod"] [class*="hover:bg-indigo-"]:hover{background-color:var(--al-tint-2)}
[data-theme="airlod"] [class*="hover:text-purple-"]:hover,[data-theme="airlod"] [class*="hover:border-purple-"]:hover{color:var(--al-sky);border-color:rgba(1,122,254,.6)}
[data-theme="airlod"] .peer:checked ~ .peer-checked\:bg-purple-600,[data-theme="airlod"] .peer:checked ~ [class*="peer-checked:bg-purple"],[data-theme="airlod"] .peer:checked ~ [class*="peer-checked:bg-indigo"]{background:var(--al-grad-blue)}
[data-theme="airlod"] img[src*="ai-robot"]{filter:hue-rotate(-62deg) saturate(1.05)}

/* ── 6. Surfaces translucides claires (barres sticky, panneaux) ── */
[data-theme="airlod"] .bg-white\/90,[data-theme="airlod"] .bg-white\/95,[data-theme="airlod"] .bg-white\/80,[data-theme="airlod"] .bg-gray-50\/80,[data-theme="airlod"] .bg-gray-50\/90{background-color:var(--al-glass-bg)}
[data-theme="airlod"] .bg-white\/50,[data-theme="airlod"] .bg-gray-50\/50,[data-theme="airlod"] .bg-white\/60,[data-theme="airlod"] .bg-white\/70{background-color:var(--al-glass-2)}
[data-theme="airlod"] .bg-gray-200,[data-theme="airlod"] .bg-gray-300{background-color:var(--al-surface-3)}
[data-theme="airlod"] .bg-\[\#f3f4f6\],[data-theme="airlod"] .bg-\[\#f9fafb\],[data-theme="airlod"] .bg-\[\#f5f5f5\],[data-theme="airlod"] .bg-\[\#eeeeee\],[data-theme="airlod"] .bg-\[\#ecebf3\]{background-color:var(--al-surface-2)}
[data-theme="airlod"] .text-\[\#000\],[data-theme="airlod"] .text-\[\#000000\],[data-theme="airlod"] .text-\[\#111827\],[data-theme="airlod"] .text-\[\#1f2937\]{color:var(--al-ink)}

/* ── 7. Dégradés gris clairs (placeholders) → surfaces sombres ── */
[data-theme="airlod"] [class*="from-gray-"],[data-theme="airlod"] [class*="from-slate-"],[data-theme="airlod"] [class*="from-white"],[data-theme="airlod"] [class*="to-gray-"],[data-theme="airlod"] [class*="to-white"]{background-image:linear-gradient(135deg,var(--al-surface-2),var(--al-surface-3)) !important}
[data-theme="airlod"] .border-white{border-color:var(--al-surface)}
[data-theme="airlod"] .border-4.border-white,[data-theme="airlod"] .border-2.border-white{border-color:var(--al-surface)}

/* 8. Survols Tailwind non remappés (variantes /50 etc.) et police : SF Pro partout, y compris .font-sans (Inter dans le build) et styles inline hérités */
[data-theme="airlod"] [class*="hover:bg-gray-"]:hover,[data-theme="airlod"] [class*="hover:bg-white"]:hover{background-color:rgba(1,122,254,.07) !important}
[data-theme="airlod"] .font-sans,[data-theme="airlod"] [style*="Inter"],[data-theme="airlod"] .font-\[Inter\]{font-family:var(--al-font) !important}
/* Tailwind 4 : divide-* pose border-bottom sur chaque enfant sauf le dernier (v3 : border-top sur les suivants) */
[data-theme="airlod"] [class*="divide-"]>*,[data-theme="airlod"] .border-gray-50,[data-theme="airlod"] [class*="border-gray-50"]{border-color:var(--al-line)}

/* 9. Mobile : FAB Scan rond, sous le lanceur de l'assistant (même colonne, même diamètre) */
.al-scan-fab{position:fixed;right:16px;bottom:calc(64px + env(safe-area-inset-bottom,0px) + 16px);z-index:44;display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:999px;color:var(--al-ink);background:var(--al-glass-bg);border:1px solid rgba(67,157,255,.55);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:var(--al-shadow),inset 0 1px 0 var(--al-hi);transition:transform .2s cubic-bezier(.32,.72,0,1),background .2s}
.al-scan-fab:active{transform:scale(.94)}.al-scan-fab:hover{background:rgba(1,122,254,.25)}
@media (min-width:1024px){.al-scan-fab{display:none}}

/* 10. Sélecteur de mode (Système / Clair / Sombre) — x-mode-switch */
.al-mode{display:inline-flex;gap:2px;padding:3px;border-radius:999px;background:var(--al-surface-2);border:1px solid var(--al-line)}
.al-mode button{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:32px;padding:0 12px;border:0;border-radius:999px;background:transparent;color:var(--al-mute);font:inherit;font-size:12.5px;font-weight:600;cursor:pointer;transition:background .3s cubic-bezier(.32,.72,0,1),color .2s}
.al-mode button svg{width:15px;height:15px}
.al-mode button:hover{color:var(--al-ink)}
.al-mode button.on{background:var(--al-grad-blue);color:#fff;box-shadow:0 6px 16px rgba(1,122,254,.3)}
.al-mode.compact button{padding:0 10px}.al-mode.compact button span{display:none}
.al-mode.block{display:flex;width:100%}.al-mode.block button{flex:1}

/* 11. Variantes d'actifs par mode (logos) et remaps clairs des shells écrits en text-white/… */
.only-light{display:none !important}
html[data-mode="light"] .only-light{display:inline-block !important}
html[data-mode="light"] .only-dark{display:none !important}
html[data-mode="light"] aside [class*="text-white"]:not(.al-btn):not([style*="grad"]),html[data-mode="light"] .al-popup [class*="text-white"]:not([style*="grad"]),html[data-mode="light"] nav.fixed [class*="hover:text-white"]:hover{color:var(--al-ink)}
html[data-mode="light"] aside .al-btn [class*="text-white"],html[data-mode="light"] aside .al-btn{color:#fff}
html[data-mode="light"] aside [class*="hover:bg-white"]:hover{background-color:var(--al-tint)}
html[data-mode="light"] aside [class*="border-white"]{border-color:var(--al-line)}
html[data-mode="light"] aside .al-circuit{background-size:220px}
html[data-mode="light"] aside a[style*="gradient"]:not(.al-btn),html[data-mode="light"] aside a[style*="gradient"]:not(.al-btn) svg{color:var(--al-ink)}
html[data-mode="light"] aside a[style*="gradient"]:not(.al-btn){background:linear-gradient(90deg,var(--al-tint-2),transparent) !important;box-shadow:inset 3px 0 0 var(--al-blue)}
/* Clair : icônes blanches posées sur d'anciens fonds noirs/gris foncé (remappés en surfaces claires) */
html[data-mode="light"] .bg-gray-900 .text-white,html[data-mode="light"] .bg-gray-800 .text-white,html[data-mode="light"] .bg-black:not(.text-white) .text-white,html[data-mode="light"] .bg-gray-900.text-white,html[data-mode="light"] .bg-gray-800.text-white{color:var(--al-ink)}
