/* ═══════════════════════════════════════════════════════════════════════════
   ✨ THÈME 2026 — habillage « My Home IT » de l'appli de l'équipe (demande Alex 07/10)
   RÈGLE : APPARENCE SEULE (couleurs, police, arrondis, ombres, fond). Aucune taille de bloc,
   aucune marge, aucun élément, aucune fonction touchés.
   - NUIT  = thème sombre d'Alfred (body sans classe) : bleu nuit profond, halo bleu, fines vagues.
   - JOUR  = thème clair (body.theme-clair) : ciel bleuté, grand halo bleu, vagues, pilules bleu → cyan (bloc Q).
   - Le mode « Tactical » (body.tactical-mode) n'est PAS touché.
   - Les comptes propriétaire et prestataires (body.role-client) ne sont PAS touchés non plus.
   - L'espace propriétaire (#tab-espaceclient, theme-espace-client.css) garde son habillage : bloc Z.
   - Rapide : fond en dégradés CSS + une petite vague SVG fixe (aucune animation) ; AUCUN flou
     d'arrière-plan ajouté (le flou de la barre latérale est même retiré) ; transitions 150-200 ms.
   - Police : DM Sans (déjà dans core/fonts, aucun appel extérieur) sur les titres et les grands chiffres seulement.
   Chargé EN DERNIER par index.html. Pour revenir en arrière : retirer la ligne <link …theme-2026.css>.
   ═══════════════════════════════════════════════════════════════════════════ */

@font-face{ font-family:'Alfred DM Sans'; src:url('fonts/dm-sans-latin.woff2') format('woff2'); font-weight:100 1000; font-display:swap; }

/* ═══ A. COULEURS (variables lues par tout Alfred, y compris les styles écrits par le JS) ═══ */

/* NUIT */
body:not(.theme-clair):not(.tactical-mode):not(.role-client){
  --bg:#05081a;
  --bg2:#0a1030;
  --bg3:#101941;
  --bg4:#18235a;
  --border:#1b2654;
  --border2:#2a3872;
  --text:#eef3ff;
  --text2:#b0bbdf;
  --text3:#8592bf;
  --accent:#5b8dff;
  --accent2:#4a74f0;
  --accent-bg:rgba(79,160,255,.13);
  --accent-text:#7fd0ff;
  --blue-bg:rgba(79,150,255,.14);
  --blue-text:#8ec9ff;
  --purple-bg:rgba(160,130,255,.15);
  --purple-text:#c9b6ff;
  --radius:12px; --radius-lg:16px; --radius-xl:20px;
  --shadow:0 1px 2px rgba(0,0,0,.35), 0 6px 18px rgba(2,6,24,.35);
  --shadow-lg:0 10px 30px rgba(2,6,24,.55), 0 0 0 1px rgba(110,150,255,.08);
  --shadow-glow:0 0 0 1px rgba(79,195,255,.22), 0 6px 22px rgba(79,140,255,.18);
  --transition:background-color .16s ease, border-color .16s ease, color .16s ease, box-shadow .16s ease, transform .16s ease, opacity .16s ease;
  --t26-ligne:rgba(130,160,255,.12);
  --t26-cyan:#4fc3ff;
  background:#05081a;
}

/* JOUR */
body.theme-clair:not(.role-client){
  --bg:#f3f6fd;
  --bg2:#ffffff;
  --bg3:#ebf0fa;
  --bg4:#dde5f6;
  --border:#d8e0f0;
  --border2:#bac8e6;
  --text:#0b1240;
  --text2:#36416b;
  --text3:#5a6690;
  --accent:#2856e0;
  --accent2:#1c45c4;
  --green-text:#03684c;
  --accent-bg:rgba(47,98,240,.10);
  --accent-text:#1d4ad0;
  --blue-bg:rgba(47,98,240,.10);
  --blue-text:#1d4ad0;
  --radius:12px; --radius-lg:16px; --radius-xl:20px;
  --shadow:0 1px 2px rgba(11,18,64,.05), 0 4px 14px rgba(11,18,64,.06);
  --shadow-lg:0 8px 26px rgba(11,18,64,.10), 0 0 0 1px rgba(47,98,240,.06);
  --shadow-glow:0 0 0 1px rgba(47,98,240,.25), 0 6px 20px rgba(47,98,240,.14);
  --transition:background-color .16s ease, border-color .16s ease, color .16s ease, box-shadow .16s ease, transform .16s ease, opacity .16s ease;
  --t26-ligne:rgba(11,18,64,.08);
  --t26-cyan:#0a9be0;
  background:#f3f6fd;
}

/* ═══ B. POLICE + FOND (halo + vague, fixes, sans animation) ═══ */
/* Police DM Sans (celle du site) SEULEMENT sur les titres, les grands chiffres et la barre du haut :
   mesurée sur tout le texte, elle ralentissait de 10 à 12 % l'ouverture des onglets lourds (mise en page du texte).
   Le texte courant garde la police du système (aucun ralentissement). */
body:not(.tactical-mode):not(.role-client) .page-title,
body:not(.tactical-mode):not(.role-client) .stat-val,
body:not(.tactical-mode):not(.role-client) .modal-title-txt,
body:not(.tactical-mode):not(.role-client) #mbarre-titre{
  font-family:'Alfred DM Sans','DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
body:not(.theme-clair):not(.tactical-mode):not(.role-client)::before{
  background:
    radial-gradient(circle at 84% 16%, rgba(190,215,255,.30) 0, rgba(90,140,255,.22) 3%, rgba(50,90,255,.10) 14%, transparent 34%),
    radial-gradient(ellipse 70% 55% at 85% 10%, rgba(40,70,220,.16), transparent 70%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 900' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' x2='1'%3E%3Cstop offset='0' stop-color='%234f7bff' stop-opacity='0'/%3E%3Cstop offset='.35' stop-color='%234f7bff'/%3E%3Cstop offset='1' stop-color='%239b7bff'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg fill='none' stroke='url(%23g)' stroke-width='1' opacity='0.3'%3E%3Cpath d='M-40 560 C 320 420 640 680 980 520 S 1420 300 1660 390'/%3E%3Cpath d='M-40 569 C 320 423 640 685 980 529 S 1420 314 1660 402'/%3E%3Cpath d='M-40 578 C 320 426 640 690 980 538 S 1420 328 1660 414'/%3E%3Cpath d='M-40 587 C 320 429 640 695 980 547 S 1420 342 1660 426'/%3E%3Cpath d='M-40 596 C 320 432 640 700 980 556 S 1420 356 1660 438'/%3E%3Cpath d='M-40 605 C 320 435 640 705 980 565 S 1420 370 1660 450'/%3E%3Cpath d='M-40 614 C 320 438 640 710 980 574 S 1420 384 1660 462'/%3E%3Cpath d='M-40 623 C 320 441 640 715 980 583 S 1420 398 1660 474'/%3E%3Cpath d='M-40 632 C 320 444 640 720 980 592 S 1420 412 1660 486'/%3E%3Cpath d='M-40 641 C 320 447 640 725 980 601 S 1420 426 1660 498'/%3E%3Cpath d='M-40 650 C 320 450 640 730 980 610 S 1420 440 1660 510'/%3E%3Cpath d='M-40 659 C 320 453 640 735 980 619 S 1420 454 1660 522'/%3E%3Cpath d='M-40 668 C 320 456 640 740 980 628 S 1420 468 1660 534'/%3E%3Cpath d='M-40 677 C 320 459 640 745 980 637 S 1420 482 1660 546'/%3E%3Cpath d='M-40 686 C 320 462 640 750 980 646 S 1420 496 1660 558'/%3E%3Cpath d='M-40 695 C 320 465 640 755 980 655 S 1420 510 1660 570'/%3E%3Cpath d='M-40 704 C 320 468 640 760 980 664 S 1420 524 1660 582'/%3E%3Cpath d='M-40 713 C 320 471 640 765 980 673 S 1420 538 1660 594'/%3E%3C/g%3E%3C/svg%3E") center bottom / 100% 60% no-repeat,
    linear-gradient(180deg, #05081a 0%, #070c26 45%, #0b1240 100%);
}
body.theme-clair:not(.role-client)::before{
  background:
    radial-gradient(circle at 84% 14%, rgba(79,195,255,.22) 0, rgba(79,160,255,.12) 10%, transparent 36%),
    radial-gradient(ellipse 60% 50% at 10% 100%, rgba(120,110,255,.07), transparent 70%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 900' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' x2='1'%3E%3Cstop offset='0' stop-color='%232f6bff' stop-opacity='0'/%3E%3Cstop offset='.35' stop-color='%232f6bff'/%3E%3Cstop offset='1' stop-color='%237c6bff'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg fill='none' stroke='url(%23g)' stroke-width='1' opacity='0.15'%3E%3Cpath d='M-40 560 C 320 420 640 680 980 520 S 1420 300 1660 390'/%3E%3Cpath d='M-40 569 C 320 423 640 685 980 529 S 1420 314 1660 402'/%3E%3Cpath d='M-40 578 C 320 426 640 690 980 538 S 1420 328 1660 414'/%3E%3Cpath d='M-40 587 C 320 429 640 695 980 547 S 1420 342 1660 426'/%3E%3Cpath d='M-40 596 C 320 432 640 700 980 556 S 1420 356 1660 438'/%3E%3Cpath d='M-40 605 C 320 435 640 705 980 565 S 1420 370 1660 450'/%3E%3Cpath d='M-40 614 C 320 438 640 710 980 574 S 1420 384 1660 462'/%3E%3Cpath d='M-40 623 C 320 441 640 715 980 583 S 1420 398 1660 474'/%3E%3Cpath d='M-40 632 C 320 444 640 720 980 592 S 1420 412 1660 486'/%3E%3Cpath d='M-40 641 C 320 447 640 725 980 601 S 1420 426 1660 498'/%3E%3Cpath d='M-40 650 C 320 450 640 730 980 610 S 1420 440 1660 510'/%3E%3Cpath d='M-40 659 C 320 453 640 735 980 619 S 1420 454 1660 522'/%3E%3C/g%3E%3C/svg%3E") center bottom / 100% 60% no-repeat,
    linear-gradient(180deg, #f7f9ff 0%, #f1f5fd 55%, #e8eefb 100%);
}

/* ═══ C. BARRE LATÉRALE ═══ */
/* le flou d'arrière-plan (lent sur les vieux PC) est retiré : fond presque opaque à la place */
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .sidebar{
  background:linear-gradient(180deg, rgba(8,12,36,.97) 0%, rgba(5,8,26,.97) 100%);
  border-right:1px solid var(--t26-ligne);
  -webkit-backdrop-filter:none; backdrop-filter:none;
}
body.theme-clair:not(.role-client) .sidebar{
  background:linear-gradient(180deg, #ffffff 0%, #f5f8ff 100%);
  border-right:1px solid var(--border);
  -webkit-backdrop-filter:none; backdrop-filter:none;
}
body:not(.tactical-mode):not(.role-client) .nav-item{
  border-radius:12px;
  transition:background-color .16s ease, color .16s ease, border-color .16s ease;
}
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .nav-item:hover{ background:rgba(130,160,255,.07); color:var(--text); }
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .nav-item.active{
  background:linear-gradient(90deg, rgba(79,195,255,.16) 0%, rgba(77,124,255,.06) 100%);
  color:#ffffff;
  border-color:rgba(79,195,255,.22);
  box-shadow:0 0 18px rgba(79,140,255,.10) inset;
}
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .nav-item.active svg{ color:var(--t26-cyan); }
body.theme-clair:not(.role-client) .nav-item:hover{ background:rgba(47,98,240,.07); color:var(--text); }
body.theme-clair:not(.role-client) .nav-item.active{
  background:#0b1240;
  color:#ffffff;
  border-color:transparent;
  box-shadow:0 4px 14px rgba(11,18,64,.18);
}
body.theme-clair:not(.role-client) .nav-item.active svg{ color:#7fd0ff; }

/* titres des blocs du menu : fins, très espacés, sans aplat de couleur (la couleur reste dans le texte) */
body:not(.tactical-mode):not(.role-client) .sidebar .nav-section-label{
  background:none !important;
  font-size:9.5px;
  font-weight:600;
  letter-spacing:.2em;
  border-radius:0 !important;
  border-top:1px solid var(--t26-ligne);
}
body:not(.tactical-mode):not(.role-client) #nav-block-conciergerie-label{ border-top-color:transparent; }
body:not(.theme-clair):not(.tactical-mode):not(.role-client) #nav-block-conciergerie-label,
body:not(.theme-clair):not(.tactical-mode):not(.role-client) #nav-block-channel-label{ color:#7fb6ff; }
body:not(.theme-clair):not(.tactical-mode):not(.role-client) #nav-block-assistance-label{ color:#ff9db0; }
body:not(.theme-clair):not(.tactical-mode):not(.role-client) #nav-block-marketing-label{ color:#5fe0c6; }
body:not(.theme-clair):not(.tactical-mode):not(.role-client) #nav-block-informatique-label{ color:#a9c4ff; }
body:not(.theme-clair):not(.tactical-mode):not(.role-client) #nav-block-rh-label{ color:#ffbe7a; }
body:not(.theme-clair):not(.tactical-mode):not(.role-client) #nav-block-alex-label{ color:#cdb2ff; }
body.theme-clair:not(.role-client) #nav-block-conciergerie-label,
body.theme-clair:not(.role-client) #nav-block-channel-label{ color:#1d4ad0 !important; background:none !important; }
body.theme-clair:not(.role-client) #nav-block-assistance-label{ color:#b4234a !important; background:none !important; }
body.theme-clair:not(.role-client) #nav-block-marketing-label{ color:#047a63 !important; background:none !important; }
body.theme-clair:not(.role-client) #nav-block-informatique-label{ color:#3150b8 !important; background:none !important; }
body.theme-clair:not(.role-client) #nav-block-rh-label{ color:#a2470b !important; background:none !important; }
body.theme-clair:not(.role-client) #nav-block-alex-label{ color:#6d28d9 !important; background:none !important; }

/* recherche, carte de l'utilisateur, cloche, thème, déconnexion : arrondis doux */
body:not(.tactical-mode):not(.role-client) .sidebar-logo > button{ border-radius:999px !important; }
body:not(.tactical-mode):not(.role-client) #sidebar-user-info{ border-radius:16px !important; border:1px solid var(--t26-ligne); }
body:not(.tactical-mode):not(.role-client) #notifs-bell,
body:not(.tactical-mode):not(.role-client) #theme-toggle-btn{ border-radius:999px !important; }
body:not(.tactical-mode):not(.role-client) .sidebar button[onclick="changeAgent()"]{ border-radius:999px !important; }
body:not(.tactical-mode):not(.role-client) .nav-badge{ border-radius:999px; }

/* ═══ D. TITRES DE PAGE : fins, espacés, dégradé blanc → cyan (nuit) / bleu nuit → bleu (jour) ═══ */
body:not(.tactical-mode):not(.role-client) .page-title{
  font-weight:300;
  letter-spacing:.035em;
}
/* Dégradé posé PAR-DESSUS le texte (fusion « darken » la nuit, « lighten » le jour : le fond derrière ne change pas) et non dans le texte :
   les émojis des titres (📊, 📅…) gardent leurs couleurs (un texte « découpé » en dégradé les changeait en carrés). */
body:not(.tactical-mode):not(.role-client) .page-title{ position:relative; }
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .page-title{ color:#ffffff; }
body.theme-clair:not(.role-client) .page-title{
  background:none; -webkit-background-clip:border-box; background-clip:border-box;
  -webkit-text-fill-color:currentColor; color:#0b1240;
}
body:not(.tactical-mode):not(.role-client) .page-title::after{
  content:''; position:absolute; inset:0; pointer-events:none;
}
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .page-title::after{
  background:linear-gradient(90deg, #ffffff 0, #ffffff 30px, #d6e8ff 90px, #4fc3ff 240px, #4fc3ff 100%);
  mix-blend-mode:darken;
}
body.theme-clair:not(.role-client) .page-title::after{
  background:linear-gradient(90deg, #000000 0, #000000 30px, #0b1a5a 90px, #2f62f0 240px, #2f62f0 100%);
  mix-blend-mode:lighten;
}
body:not(.tactical-mode):not(.role-client) .page-sub{ letter-spacing:.01em; }

/* ═══ E. BOUTONS EN PILULE : principal plein (blanc la nuit, bleu nuit le jour), autres bordés ═══ */
body:not(.tactical-mode):not(.role-client) .btn{
  border-radius:999px;
  font-weight:500;
  transition:background-color .16s ease, border-color .16s ease, color .16s ease, box-shadow .16s ease, transform .16s ease;
}
body:not(.tactical-mode):not(.role-client) .btn-sm{ border-radius:999px; }
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .btn{
  background:rgba(16,25,65,.85);
  border-color:rgba(120,150,255,.28);
  color:#dfe7ff;
}
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .btn:hover{
  background:#18235a;
  border-color:rgba(79,195,255,.45);
  color:#ffffff;
  box-shadow:0 0 0 3px rgba(79,195,255,.08);
}
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .btn-accent{
  background:#ffffff;
  color:#0b1240;
  border-color:#ffffff;
  font-weight:600;
  box-shadow:0 4px 18px rgba(120,170,255,.22);
}
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .btn-accent:hover{
  background:#e9f3ff;
  color:#0b1240;
  border-color:#e9f3ff;
  box-shadow:0 6px 22px rgba(79,195,255,.32);
}
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .btn-danger{
  background:rgba(255,92,92,.06);
  color:var(--red-text);
  border-color:rgba(255,110,110,.38);
}
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .btn-danger:hover{
  background:var(--red-bg);
  color:#ffb0b0;
  border-color:rgba(255,110,110,.6);
}
body.theme-clair:not(.role-client) .btn{
  background:#ffffff;
  border:1px solid #c9d5ee;
  color:#1a2456;
}
body.theme-clair:not(.role-client) .btn:hover{
  background:#f2f6ff;
  border-color:#2f62f0;
  color:#1d4ad0;
  box-shadow:0 2px 10px rgba(47,98,240,.12);
}
body.theme-clair:not(.role-client) .btn-accent{
  background:#0b1240;
  color:#ffffff;
  border:1px solid #0b1240;
  font-weight:600;
  box-shadow:0 4px 14px rgba(11,18,64,.20);
}
body.theme-clair:not(.role-client) .btn-accent:hover{
  background:#18237a;
  border-color:#18237a;
  color:#ffffff;
  box-shadow:0 6px 18px rgba(24,35,122,.28);
}
body.theme-clair:not(.role-client) .btn-danger{
  background:#ffffff;
  color:#b91c1c;
  border:1px solid rgba(220,38,38,.45);
}
body.theme-clair:not(.role-client) .btn-danger:hover{
  background:#fef2f2;
  color:#991b1b;
  border-color:#dc2626;
}

/* ═══ F. CARTES CHIFFRES : surfaces nuit, chiffres fins et grands ═══ */
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .stat{
  background:linear-gradient(160deg, #0f1842 0%, #0a1030 100%);
  border-color:var(--t26-ligne);
}
body.theme-clair:not(.role-client) .stat{
  background:linear-gradient(160deg, #ffffff 0%, #f6f9ff 100%);
  border-color:var(--border);
}
body:not(.tactical-mode):not(.role-client) .stat::before{
  background:linear-gradient(90deg, transparent, rgba(79,195,255,.35), transparent);
}
body:not(.tactical-mode):not(.role-client) .stat-label{ letter-spacing:.14em; font-weight:500; }
body:not(.tactical-mode):not(.role-client) .stat-val{ font-weight:300; letter-spacing:-.01em; }

/* ═══ G. CARTES, GRAPHIQUES ═══ */
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .chart-card{ border-color:var(--t26-ligne); }
body:not(.tactical-mode):not(.role-client) .chart-title{ letter-spacing:.14em; font-weight:600; }

body:not(.theme-clair):not(.tactical-mode):not(.role-client) .empty-state{ background:rgba(16,25,65,.45); border-color:#24306a; }
body.theme-clair:not(.role-client) .empty-state{ background:#f6f8fe; border-color:#c9d5ee; }

/* ═══ H. CHAMPS ═══ */
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .field input,
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .field select,
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .field textarea,
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .ts-select,
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .filters input,
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .filters select,
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .r-filter{
  background:#0b1235;
  border-color:#24306a;
  border-radius:10px;
}
body:not(.tactical-mode):not(.role-client) .field input:focus,
body:not(.tactical-mode):not(.role-client) .field select:focus,
body:not(.tactical-mode):not(.role-client) .field textarea:focus,
body:not(.tactical-mode):not(.role-client) .ts-select:focus,
body:not(.tactical-mode):not(.role-client) .filters input:focus,
body:not(.tactical-mode):not(.role-client) .filters select:focus,
body:not(.tactical-mode):not(.role-client) .r-filter:focus{
  border-color:var(--t26-cyan);
  box-shadow:0 0 0 3px rgba(79,195,255,.16);
}
body.theme-clair:not(.role-client) .field input,
body.theme-clair:not(.role-client) .field select,
body.theme-clair:not(.role-client) .field textarea,
body.theme-clair:not(.role-client) .filters input,
body.theme-clair:not(.role-client) .filters select,
body.theme-clair:not(.role-client) .r-filter{ border-radius:10px; }
body:not(.tactical-mode):not(.role-client) .field label{ letter-spacing:.12em; font-weight:600; }
body:not(.theme-clair):not(.tactical-mode):not(.role-client) input:focus-visible,
body:not(.theme-clair):not(.tactical-mode):not(.role-client) select:focus-visible,
body:not(.theme-clair):not(.tactical-mode):not(.role-client) textarea:focus-visible{ outline-color:var(--t26-cyan); }

/* ═══ I. TABLEAUX : en-têtes discrets, séparateurs fins ═══ */
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .tbl-wrap{
  border-color:var(--t26-ligne);
  box-shadow:0 8px 28px rgba(2,6,24,.35);
}
body:not(.theme-clair):not(.tactical-mode):not(.role-client) th{
  background:#0d1539;
  color:#8f9cc8;
  border-bottom-color:var(--t26-ligne);
}
body:not(.theme-clair):not(.tactical-mode):not(.role-client) td{ border-bottom-color:rgba(130,160,255,.08); }
body:not(.theme-clair):not(.tactical-mode):not(.role-client) tr:hover td{ background:rgba(79,140,255,.06); }
body.theme-clair:not(.role-client) .tbl-wrap{ box-shadow:var(--shadow); }
body.theme-clair:not(.role-client) th{
  background:#f3f6fd;
  color:#4a5683;
  border-bottom-color:var(--border);
}
body.theme-clair:not(.role-client) tr:hover td{ background:rgba(47,98,240,.045); }
body:not(.tactical-mode):not(.role-client) th{ letter-spacing:.12em; font-weight:600; }

/* ═══ J. PASTILLES (badges) : arrondies ═══ */
body:not(.tactical-mode):not(.role-client) .badge{ border-radius:999px; font-weight:600; }

/* ═══ K. FENÊTRES (modales) ═══ */
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .overlay{ background:rgba(3,6,20,.72); }
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .modal{
  background:linear-gradient(170deg, #0f1842 0%, #0a1030 60%);
  border-color:rgba(120,150,255,.20);
  border-radius:22px;
  box-shadow:0 30px 80px rgba(0,0,0,.6), 0 0 0 1px rgba(79,195,255,.05) inset, 0 1px 0 rgba(255,255,255,.05) inset;
}
body.theme-clair:not(.role-client) .overlay{ background:rgba(11,18,64,.32); }
body.theme-clair:not(.role-client) .modal{
  background:#ffffff;
  border-color:var(--border);
  border-radius:22px;
  box-shadow:0 30px 70px rgba(11,18,64,.20);
}
body:not(.tactical-mode):not(.role-client) .modal-title-txt{ font-weight:500; letter-spacing:.01em; }
body:not(.tactical-mode):not(.role-client) .modal-header,
body:not(.tactical-mode):not(.role-client) .modal-actions{ border-color:var(--t26-ligne); }
body:not(.tactical-mode):not(.role-client) .modal-close{ border-radius:999px; }

/* ═══ L. ONGLETS INTERNES (Paramètres, sous-onglets) ═══ */
body:not(.tactical-mode):not(.role-client) .param-tab{ border-radius:999px; }
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .active-tab{
  background:rgba(79,195,255,.12) !important;
  color:#ffffff !important;
  box-shadow:0 0 0 1px rgba(79,195,255,.28) inset;
}
body.theme-clair:not(.role-client) .active-tab,
body.theme-clair:not(.role-client) .param-tab.active-tab{
  background:#0b1240 !important;
  color:#ffffff !important;
  border-color:transparent !important;
  box-shadow:0 3px 10px rgba(11,18,64,.16);
}

/* ═══ M. CLOCHE (fenêtre des notifications), TOASTS, RECHERCHE ═══ */
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .notifs-popup{
  background:#0a1030;
  border-color:rgba(120,150,255,.22);
  border-radius:18px;
  box-shadow:0 24px 60px rgba(0,0,0,.55);
}
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .notifs-popup-header{ background:#0f1842; border-bottom-color:var(--t26-ligne); }
body.theme-clair:not(.role-client) .notifs-popup{ border-radius:18px; box-shadow:0 24px 60px rgba(11,18,64,.18); }
body:not(.tactical-mode):not(.role-client) .notifs-item{ border-radius:12px; }
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .toast{
  background:linear-gradient(160deg, #121c4a 0%, #0b1238 100%);
  border-color:rgba(120,150,255,.25);
  border-radius:16px;
  box-shadow:0 14px 34px rgba(0,0,0,.5);
}
body.theme-clair:not(.role-client) .toast{ border-radius:16px; }
body.theme-clair:not(.role-client) .toast-info{ background:linear-gradient(135deg, #0b1240 0%, #1d3a9e 100%); color:#ffffff; }

/* recherche rapide (Ctrl+K) : la boîte était gris foncé dans les deux thèmes (texte illisible le jour) */
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .cmdk-box{
  background:linear-gradient(170deg, #0f1842 0%, #0a1030 70%);
  border-color:rgba(120,150,255,.22); border-radius:20px;
}
body.theme-clair:not(.role-client) .cmdk-overlay{ background:rgba(11,18,64,.30); }
body.theme-clair:not(.role-client) .cmdk-box{
  background:#ffffff; border-color:var(--border); border-radius:20px;
  box-shadow:0 30px 70px rgba(11,18,64,.22);
}
body.theme-clair:not(.role-client) .cmdk-input{ background:transparent !important; }
body:not(.tactical-mode):not(.role-client) .cmdk-item{ border-radius:12px; }
body:not(.tactical-mode):not(.role-client) .cmdk-item-icon{ border-radius:10px; }

/* ═══ N. TÉLÉPHONE : ☰ et barre du haut (mobile.css / mobile-barre.js) ═══ */
body:not(.tactical-mode):not(.role-client) .mobile-menu-btn{ border-radius:999px; }
@media (max-width:900px){
  body:not(.theme-clair):not(.tactical-mode):not(.role-client) .sidebar{ background:#070b22; }
  body:not(.theme-clair):not(.tactical-mode):not(.role-client) #mbarre{
    background:linear-gradient(180deg, #070b22 0%, #05081a 100%);
    border-bottom-color:var(--t26-ligne);
    box-shadow:0 6px 18px rgba(0,0,0,.35);
  }
  body.theme-clair:not(.role-client) #mbarre{ background:#ffffff; box-shadow:0 4px 14px rgba(11,18,64,.06); }
  body:not(.tactical-mode):not(.role-client) #mbarre-cloche{ border-radius:999px; }
  body:not(.tactical-mode):not(.role-client) #mbarre-titre{ font-weight:500; letter-spacing:.02em; }
}

/* ═══ O. DÉFILEMENT ═══ */
body:not(.theme-clair):not(.tactical-mode):not(.role-client) ::-webkit-scrollbar-thumb{ background:#26326a; }
body:not(.theme-clair):not(.tactical-mode):not(.role-client) ::-webkit-scrollbar-thumb:hover{ background:#3a4a90; }

/* ═══ P. TRELLO (nuit) : colonnes et cartes bleu nuit au lieu du gris (couleurs des sociétés inchangées) ═══ */
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .trello-col:not(.trello-col-tinted){ background:#0a1030; border-color:#1f2a5c; }
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .trello-col:not(.trello-col-tinted):hover{ border-color:#34448a; }
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .trello-card{ background:#131c4a; border-radius:12px; }
body:not(.theme-clair):not(.tactical-mode):not(.role-client) .trello-card:hover{ background:#1a2560; }

/* ═══ Q. JOUR 2026 — même personnalité que la nuit, en lumineux (retour Alex 07/10) ═══
   Ce bloc passe APRÈS les règles du jour ci-dessus et les remplace. */
body.theme-clair:not(.role-client){
  --bg:#f4f8ff;
  --bg3:#edf3ff;
  --bg4:#dfe8fb;
  --border:#dbe5fb;
  --border2:#bccbf0;
  --accent-bg:#e3ecff;
  --blue-bg:#e3ecff;
  --green-bg:#dcf5ea;
  --red-bg:#fde8ea;
  --amber-bg:#fff1d6;
  --purple-bg:#ede6ff;
  --shadow:0 8px 24px rgba(40,80,200,.08), 0 1px 2px rgba(40,80,200,.05);
  --shadow-lg:0 14px 32px rgba(40,90,220,.16), 0 2px 4px rgba(40,80,200,.06);
  --t26-ligne:rgba(59,91,219,.14);
  --t26-grad:linear-gradient(90deg, #3b5bdb 0%, #22b8ff 100%);
  background:#f4f8ff;
}
/* 1. Fond : ciel bleuté, grand halo bleu lumineux en haut à droite, fines vagues bleu/violet visibles (22 %) */
body.theme-clair:not(.role-client)::before{
  background:
    radial-gradient(circle at 84% 12%, rgba(255,255,255,.95) 0, rgba(150,200,255,.70) 5%, rgba(90,150,255,.38) 16%, rgba(80,140,255,.14) 30%, transparent 48%),
    radial-gradient(ellipse 70% 55% at 88% 6%, rgba(60,120,255,.16), transparent 70%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 900' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' x2='1'%3E%3Cstop offset='0' stop-color='%233b5bdb' stop-opacity='0'/%3E%3Cstop offset='.35' stop-color='%233b6bff'/%3E%3Cstop offset='1' stop-color='%238a6bff'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg fill='none' stroke='url(%23g)' stroke-width='1' opacity='0.22'%3E%3Cpath d='M-40 560 C 320 420 640 680 980 520 S 1420 300 1660 390'/%3E%3Cpath d='M-40 569 C 320 423 640 685 980 529 S 1420 314 1660 402'/%3E%3Cpath d='M-40 578 C 320 426 640 690 980 538 S 1420 328 1660 414'/%3E%3Cpath d='M-40 587 C 320 429 640 695 980 547 S 1420 342 1660 426'/%3E%3Cpath d='M-40 596 C 320 432 640 700 980 556 S 1420 356 1660 438'/%3E%3Cpath d='M-40 605 C 320 435 640 705 980 565 S 1420 370 1660 450'/%3E%3Cpath d='M-40 614 C 320 438 640 710 980 574 S 1420 384 1660 462'/%3E%3Cpath d='M-40 623 C 320 441 640 715 980 583 S 1420 398 1660 474'/%3E%3Cpath d='M-40 632 C 320 444 640 720 980 592 S 1420 412 1660 486'/%3E%3Cpath d='M-40 641 C 320 447 640 725 980 601 S 1420 426 1660 498'/%3E%3Cpath d='M-40 650 C 320 450 640 730 980 610 S 1420 440 1660 510'/%3E%3Cpath d='M-40 659 C 320 453 640 735 980 619 S 1420 454 1660 522'/%3E%3Cpath d='M-40 668 C 320 456 640 740 980 628 S 1420 468 1660 534'/%3E%3Cpath d='M-40 677 C 320 459 640 745 980 637 S 1420 482 1660 546'/%3E%3Cpath d='M-40 686 C 320 462 640 750 980 646 S 1420 496 1660 558'/%3E%3Cpath d='M-40 695 C 320 465 640 755 980 655 S 1420 510 1660 570'/%3E%3C/g%3E%3C/svg%3E") center bottom / 100% 60% no-repeat,
    linear-gradient(180deg, #f4f8ff 0%, #eef4ff 50%, #e6efff 100%);
}
/* 2. Barre latérale : verre bleuté clair, fine bordure bleue ; onglet actif en pilule bleu → cyan */
body.theme-clair:not(.role-client) .sidebar{
  background:linear-gradient(180deg, rgba(255,255,255,.96) 0%, rgba(234,241,255,.96) 100%);
  border-right:1px solid rgba(59,91,219,.18);
}
body.theme-clair:not(.role-client) .nav-item{ border-radius:999px; }
body.theme-clair:not(.role-client) .nav-item:hover{ background:rgba(59,91,219,.08); color:#1d3fae; }
body.theme-clair:not(.role-client) .nav-item.active{
  background:var(--t26-grad);
  color:#ffffff;
  border-color:transparent;
  box-shadow:0 6px 18px rgba(34,120,230,.28);
}
body.theme-clair:not(.role-client) .nav-item.active svg{ color:#ffffff; }
body.theme-clair:not(.role-client) #sidebar-user-info{ background:rgba(255,255,255,.75) !important; border-color:rgba(59,91,219,.16); }
/* 3. Titres : fins, espacés, dégradé bleu nuit → cyan (posé par-dessus : les émojis gardent leurs couleurs) */
body.theme-clair:not(.role-client) .page-title::after{
  background:linear-gradient(90deg, #000000 0, #000000 30px, #0b1a5a 90px, #1690dc 240px, #1690dc 100%);
  mix-blend-mode:lighten;
}
/* 4. Cartes : blanc pur, arrondis, ombre bleutée douce, bordure bleu très clair ; au survol, montée + ombre plus bleue */
body.theme-clair:not(.role-client) .stat,
body.theme-clair:not(.role-client) .chart-card,
body.theme-clair:not(.role-client) .tbl-wrap{
  background:#ffffff;
  border-color:#dbe5fb;
  box-shadow:var(--shadow);
}
body.theme-clair:not(.role-client) .stat:hover,
body.theme-clair:not(.role-client) .chart-card:hover{
  transform:translateY(-2px);
  border-color:#b9cdf7;
  box-shadow:var(--shadow-lg);
}
body.theme-clair:not(.role-client) .chart-card{ transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease; }
body.theme-clair:not(.role-client) .stat::before{ background:linear-gradient(90deg, transparent, rgba(34,184,255,.45), transparent); }
/* cartes écrites par le JS (bloc div à fond blanc + arrondi dans la balise ; PAS les champs : 725 cases de prix) : même ombre bleutée, sauf espace propriétaire */
body.theme-clair:not(.role-client) .content > [id^="tab-"]:not(#tab-espaceclient) div[style*="background:var(--bg2)"][style*="border-radius"]{
  box-shadow:var(--shadow);
}
/* 6. Boutons en pilule : principal bleu → cyan texte blanc ; secondaire blanc bordé de bleu */
body.theme-clair:not(.role-client) .btn{
  background:#ffffff;
  border:1px solid rgba(59,91,219,.35);
  color:#1d3fae;
}
body.theme-clair:not(.role-client) .btn:hover{
  background:#f2f7ff;
  border-color:#3b5bdb;
  color:#1a35a0;
  box-shadow:0 4px 14px rgba(59,91,219,.16);
}
body.theme-clair:not(.role-client) .btn-accent{
  background:var(--t26-grad);
  color:#ffffff;
  border:1px solid transparent;
  box-shadow:0 6px 18px rgba(34,120,230,.28);
}
body.theme-clair:not(.role-client) .btn-accent:hover{
  background:linear-gradient(90deg, #3451c9 0%, #12a6ef 100%);
  color:#ffffff;
  border-color:transparent;
  box-shadow:0 8px 22px rgba(34,120,230,.38);
}
body.theme-clair:not(.role-client) .active-tab,
body.theme-clair:not(.role-client) .param-tab.active-tab{
  background:var(--t26-grad) !important;
  box-shadow:0 4px 14px rgba(34,120,230,.24);
}
/* 7. Pastilles : fonds pastel nets + fin contour de leur couleur */
body.theme-clair:not(.role-client) .badge{ box-shadow:inset 0 0 0 1px color-mix(in srgb, currentColor 24%, transparent); }
/* barre du haut (téléphone), tiroir, toasts d'info : même famille */
@media (max-width:900px){
  body.theme-clair:not(.role-client) #mbarre{ background:linear-gradient(180deg, #ffffff 0%, #f2f7ff 100%); border-bottom-color:rgba(59,91,219,.16); box-shadow:0 6px 18px rgba(40,80,200,.08); }
  body.theme-clair:not(.role-client) .sidebar{ background:linear-gradient(180deg, #ffffff 0%, #eaf1ff 100%); }
}
body.theme-clair:not(.role-client) .toast-info{ background:linear-gradient(135deg, #3b5bdb 0%, #1a8fe0 100%); }

/* ═══ R. JOUR — VAGUES COLORÉES (retour Alex 07/10 : « le bleu des petites vagues de couleurs ») ═══
   Deux bandes de fines lignes bleu → cyan → indigo → violet (SVG statique en ligne, ~3 Ko, sans animation),
   un halo coloré doux autour (dégradés radiaux, pas de flou) ; les cartes restent blanches et lisibles. */
body.theme-clair:not(.role-client){
  --t26-grad:linear-gradient(90deg, #3b5bdb 0%, #5b4bff 55%, #9b5cff 100%);
}
body.theme-clair:not(.role-client)::before{
  background:
    radial-gradient(circle at 84% 11%, rgba(255,255,255,.95) 0, rgba(150,170,255,.75) 5%, rgba(110,110,255,.40) 15%, rgba(155,92,255,.18) 28%, transparent 46%),
    radial-gradient(ellipse 55% 22% at 45% 50%, rgba(79,195,255,.10), transparent 75%),
    radial-gradient(ellipse 60% 26% at 65% 62%, rgba(91,75,255,.10), transparent 75%),
    radial-gradient(ellipse 55% 22% at 70% 85%, rgba(155,92,255,.09), transparent 75%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 900' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='a' x1='0' x2='1'%3E%3Cstop offset='0' stop-color='%233b5bdb' stop-opacity='.15'/%3E%3Cstop offset='.3' stop-color='%233b5bdb'/%3E%3Cstop offset='.5' stop-color='%234fc3ff'/%3E%3Cstop offset='.68' stop-color='%235b4bff'/%3E%3Cstop offset='1' stop-color='%239b5cff'/%3E%3C/linearGradient%3E%3ClinearGradient id='b' x1='0' x2='1'%3E%3Cstop offset='0' stop-color='%234fc3ff' stop-opacity='.2'/%3E%3Cstop offset='.35' stop-color='%233b5bdb'/%3E%3Cstop offset='.7' stop-color='%235b4bff'/%3E%3Cstop offset='1' stop-color='%239b5cff'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg fill='none' stroke='url(%23a)' stroke-width='1.3' opacity='0.72'%3E%3Cpath d='M-60 380 C 300 270 620 468 960 435 S 1400 484 1680 510'/%3E%3Cpath d='M-60 387 C 300 272 620 472 960 442 S 1400 488 1680 519'/%3E%3Cpath d='M-60 394 C 300 274 620 476 960 449 S 1400 492 1680 528'/%3E%3Cpath d='M-60 401 C 300 276 620 480 960 456 S 1400 496 1680 537'/%3E%3Cpath d='M-60 408 C 300 278 620 484 960 463 S 1400 500 1680 546'/%3E%3Cpath d='M-60 415 C 300 280 620 488 960 470 S 1400 504 1680 555'/%3E%3Cpath d='M-60 422 C 300 282 620 492 960 477 S 1400 508 1680 564'/%3E%3Cpath d='M-60 429 C 300 284 620 496 960 484 S 1400 512 1680 573'/%3E%3Cpath d='M-60 436 C 300 286 620 500 960 491 S 1400 516 1680 582'/%3E%3Cpath d='M-60 443 C 300 288 620 504 960 498 S 1400 520 1680 591'/%3E%3Cpath d='M-60 450 C 300 290 620 508 960 505 S 1400 524 1680 600'/%3E%3Cpath d='M-60 457 C 300 292 620 512 960 512 S 1400 528 1680 609'/%3E%3Cpath d='M-60 464 C 300 294 620 516 960 519 S 1400 532 1680 618'/%3E%3Cpath d='M-60 471 C 300 296 620 520 960 526 S 1400 536 1680 627'/%3E%3Cpath d='M-60 478 C 300 298 620 524 960 533 S 1400 540 1680 636'/%3E%3Cpath d='M-60 485 C 300 300 620 528 960 540 S 1400 544 1680 645'/%3E%3Cpath d='M-60 492 C 300 302 620 532 960 547 S 1400 548 1680 654'/%3E%3Cpath d='M-60 499 C 300 304 620 536 960 554 S 1400 552 1680 663'/%3E%3Cpath d='M-60 506 C 300 306 620 540 960 561 S 1400 556 1680 672'/%3E%3Cpath d='M-60 513 C 300 308 620 544 960 568 S 1400 560 1680 681'/%3E%3C/g%3E%3Cg fill='none' stroke='url(%23b)' stroke-width='1.3' opacity='0.6'%3E%3Cpath d='M-60 650 C 300 560 620 722 960 680 S 1400 716 1680 730'/%3E%3Cpath d='M-60 657 C 300 562 620 726 960 687 S 1400 720 1680 739'/%3E%3Cpath d='M-60 664 C 300 564 620 730 960 694 S 1400 724 1680 748'/%3E%3Cpath d='M-60 671 C 300 566 620 734 960 701 S 1400 728 1680 757'/%3E%3Cpath d='M-60 678 C 300 568 620 738 960 708 S 1400 732 1680 766'/%3E%3Cpath d='M-60 685 C 300 570 620 742 960 715 S 1400 736 1680 775'/%3E%3Cpath d='M-60 692 C 300 572 620 746 960 722 S 1400 740 1680 784'/%3E%3Cpath d='M-60 699 C 300 574 620 750 960 729 S 1400 744 1680 793'/%3E%3Cpath d='M-60 706 C 300 576 620 754 960 736 S 1400 748 1680 802'/%3E%3Cpath d='M-60 713 C 300 578 620 758 960 743 S 1400 752 1680 811'/%3E%3Cpath d='M-60 720 C 300 580 620 762 960 750 S 1400 756 1680 820'/%3E%3Cpath d='M-60 727 C 300 582 620 766 960 757 S 1400 760 1680 829'/%3E%3Cpath d='M-60 734 C 300 584 620 770 960 764 S 1400 764 1680 838'/%3E%3Cpath d='M-60 741 C 300 586 620 774 960 771 S 1400 768 1680 847'/%3E%3Cpath d='M-60 748 C 300 588 620 778 960 778 S 1400 772 1680 856'/%3E%3Cpath d='M-60 755 C 300 590 620 782 960 785 S 1400 776 1680 865'/%3E%3C/g%3E%3C/svg%3E") center / 100% 100% no-repeat,
    linear-gradient(180deg, #f4f8ff 0%, #eef3ff 50%, #e8eeff 100%);
}
/* onglet actif, boutons principaux, onglets internes : bleu → indigo → violet (texte blanc lisible partout) */
body.theme-clair:not(.role-client) .nav-item.active{ box-shadow:0 6px 18px rgba(91,75,255,.28); }
body.theme-clair:not(.role-client) .btn-accent{ box-shadow:0 6px 18px rgba(91,75,255,.28); }
body.theme-clair:not(.role-client) .btn-accent:hover{
  background:linear-gradient(90deg, #3350c8 0%, #4f3ff0 55%, #8a4cf0 100%);
  box-shadow:0 8px 22px rgba(91,75,255,.36);
}
body.theme-clair:not(.role-client) .active-tab,
body.theme-clair:not(.role-client) .param-tab.active-tab{ box-shadow:0 4px 14px rgba(91,75,255,.24); }
body.theme-clair:not(.role-client) .toast-info{ background:linear-gradient(90deg, #3b5bdb 0%, #5b4bff 55%, #9b5cff 100%); }
/* liseré bleu → violet en haut des cartes principales (dessiné dans le fond : aucune taille ne change) */
body.theme-clair:not(.role-client) .stat::before{ height:2px; background:linear-gradient(90deg, #3b5bdb 0%, #5b4bff 55%, #9b5cff 100%); opacity:.85; }
body.theme-clair:not(.role-client) .chart-card,
body.theme-clair:not(.role-client) .tbl-wrap{
  background:linear-gradient(90deg, #3b5bdb 0%, #5b4bff 55%, #9b5cff 100%) top / 100% 2px no-repeat, #ffffff;
}
@media (max-width:900px){
  body.theme-clair:not(.role-client) #mbarre{ background:linear-gradient(90deg, #3b5bdb 0%, #5b4bff 55%, #9b5cff 100%) bottom / 100% 2px no-repeat, linear-gradient(180deg, #ffffff 0%, #f2f6ff 100%); }
}

/* ═══ S. CALQUE DES VAGUES : halo + vagues sur un calque fixe à part (body::after), composé par la carte graphique ═══
   body::before ne garde que le fond uni dégradé. Le calque déborde un peu (inset:-4%) pour pouvoir bouger sans montrer de bord. */
body:not(.theme-clair):not(.tactical-mode):not(.role-client)::before{ background:linear-gradient(180deg, #05081a 0%, #070c26 45%, #0b1240 100%); }
body.theme-clair:not(.role-client)::before{ background:linear-gradient(180deg, #f4f8ff 0%, #eef3ff 50%, #e8eeff 100%); }
body:not(.tactical-mode):not(.role-client)::after{
  content:''; position:fixed; inset:-4%; z-index:-1; pointer-events:none;
  will-change:transform;
}
body:not(.theme-clair):not(.tactical-mode):not(.role-client)::after{
  background:
    radial-gradient(circle at 84% 16%, rgba(190,215,255,.30) 0, rgba(90,140,255,.22) 3%, rgba(50,90,255,.10) 14%, transparent 34%),
    radial-gradient(ellipse 70% 55% at 85% 10%, rgba(40,70,220,.16), transparent 70%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 900' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' x2='1'%3E%3Cstop offset='0' stop-color='%234f7bff' stop-opacity='0'/%3E%3Cstop offset='.35' stop-color='%234f7bff'/%3E%3Cstop offset='1' stop-color='%239b7bff'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg fill='none' stroke='url(%23g)' stroke-width='1' opacity='0.3'%3E%3Cpath d='M-40 560 C 320 420 640 680 980 520 S 1420 300 1660 390'/%3E%3Cpath d='M-40 569 C 320 423 640 685 980 529 S 1420 314 1660 402'/%3E%3Cpath d='M-40 578 C 320 426 640 690 980 538 S 1420 328 1660 414'/%3E%3Cpath d='M-40 587 C 320 429 640 695 980 547 S 1420 342 1660 426'/%3E%3Cpath d='M-40 596 C 320 432 640 700 980 556 S 1420 356 1660 438'/%3E%3Cpath d='M-40 605 C 320 435 640 705 980 565 S 1420 370 1660 450'/%3E%3Cpath d='M-40 614 C 320 438 640 710 980 574 S 1420 384 1660 462'/%3E%3Cpath d='M-40 623 C 320 441 640 715 980 583 S 1420 398 1660 474'/%3E%3Cpath d='M-40 632 C 320 444 640 720 980 592 S 1420 412 1660 486'/%3E%3Cpath d='M-40 641 C 320 447 640 725 980 601 S 1420 426 1660 498'/%3E%3Cpath d='M-40 650 C 320 450 640 730 980 610 S 1420 440 1660 510'/%3E%3Cpath d='M-40 659 C 320 453 640 735 980 619 S 1420 454 1660 522'/%3E%3Cpath d='M-40 668 C 320 456 640 740 980 628 S 1420 468 1660 534'/%3E%3Cpath d='M-40 677 C 320 459 640 745 980 637 S 1420 482 1660 546'/%3E%3Cpath d='M-40 686 C 320 462 640 750 980 646 S 1420 496 1660 558'/%3E%3Cpath d='M-40 695 C 320 465 640 755 980 655 S 1420 510 1660 570'/%3E%3Cpath d='M-40 704 C 320 468 640 760 980 664 S 1420 524 1660 582'/%3E%3Cpath d='M-40 713 C 320 471 640 765 980 673 S 1420 538 1660 594'/%3E%3C/g%3E%3C/svg%3E") center bottom / 100% 60% no-repeat;
}
body.theme-clair:not(.role-client)::after{
  background:
    radial-gradient(circle at 84% 11%, rgba(255,255,255,.95) 0, rgba(150,170,255,.75) 5%, rgba(110,110,255,.40) 15%, rgba(155,92,255,.18) 28%, transparent 46%),
    radial-gradient(ellipse 55% 22% at 45% 50%, rgba(79,195,255,.10), transparent 75%),
    radial-gradient(ellipse 60% 26% at 65% 62%, rgba(91,75,255,.10), transparent 75%),
    radial-gradient(ellipse 55% 22% at 70% 85%, rgba(155,92,255,.09), transparent 75%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 900' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='a' x1='0' x2='1'%3E%3Cstop offset='0' stop-color='%233b5bdb' stop-opacity='.15'/%3E%3Cstop offset='.3' stop-color='%233b5bdb'/%3E%3Cstop offset='.5' stop-color='%234fc3ff'/%3E%3Cstop offset='.68' stop-color='%235b4bff'/%3E%3Cstop offset='1' stop-color='%239b5cff'/%3E%3C/linearGradient%3E%3ClinearGradient id='b' x1='0' x2='1'%3E%3Cstop offset='0' stop-color='%234fc3ff' stop-opacity='.2'/%3E%3Cstop offset='.35' stop-color='%233b5bdb'/%3E%3Cstop offset='.7' stop-color='%235b4bff'/%3E%3Cstop offset='1' stop-color='%239b5cff'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg fill='none' stroke='url(%23a)' stroke-width='1.3' opacity='0.72'%3E%3Cpath d='M-60 380 C 300 270 620 468 960 435 S 1400 484 1680 510'/%3E%3Cpath d='M-60 387 C 300 272 620 472 960 442 S 1400 488 1680 519'/%3E%3Cpath d='M-60 394 C 300 274 620 476 960 449 S 1400 492 1680 528'/%3E%3Cpath d='M-60 401 C 300 276 620 480 960 456 S 1400 496 1680 537'/%3E%3Cpath d='M-60 408 C 300 278 620 484 960 463 S 1400 500 1680 546'/%3E%3Cpath d='M-60 415 C 300 280 620 488 960 470 S 1400 504 1680 555'/%3E%3Cpath d='M-60 422 C 300 282 620 492 960 477 S 1400 508 1680 564'/%3E%3Cpath d='M-60 429 C 300 284 620 496 960 484 S 1400 512 1680 573'/%3E%3Cpath d='M-60 436 C 300 286 620 500 960 491 S 1400 516 1680 582'/%3E%3Cpath d='M-60 443 C 300 288 620 504 960 498 S 1400 520 1680 591'/%3E%3Cpath d='M-60 450 C 300 290 620 508 960 505 S 1400 524 1680 600'/%3E%3Cpath d='M-60 457 C 300 292 620 512 960 512 S 1400 528 1680 609'/%3E%3Cpath d='M-60 464 C 300 294 620 516 960 519 S 1400 532 1680 618'/%3E%3Cpath d='M-60 471 C 300 296 620 520 960 526 S 1400 536 1680 627'/%3E%3Cpath d='M-60 478 C 300 298 620 524 960 533 S 1400 540 1680 636'/%3E%3Cpath d='M-60 485 C 300 300 620 528 960 540 S 1400 544 1680 645'/%3E%3Cpath d='M-60 492 C 300 302 620 532 960 547 S 1400 548 1680 654'/%3E%3Cpath d='M-60 499 C 300 304 620 536 960 554 S 1400 552 1680 663'/%3E%3Cpath d='M-60 506 C 300 306 620 540 960 561 S 1400 556 1680 672'/%3E%3Cpath d='M-60 513 C 300 308 620 544 960 568 S 1400 560 1680 681'/%3E%3C/g%3E%3Cg fill='none' stroke='url(%23b)' stroke-width='1.3' opacity='0.6'%3E%3Cpath d='M-60 650 C 300 560 620 722 960 680 S 1400 716 1680 730'/%3E%3Cpath d='M-60 657 C 300 562 620 726 960 687 S 1400 720 1680 739'/%3E%3Cpath d='M-60 664 C 300 564 620 730 960 694 S 1400 724 1680 748'/%3E%3Cpath d='M-60 671 C 300 566 620 734 960 701 S 1400 728 1680 757'/%3E%3Cpath d='M-60 678 C 300 568 620 738 960 708 S 1400 732 1680 766'/%3E%3Cpath d='M-60 685 C 300 570 620 742 960 715 S 1400 736 1680 775'/%3E%3Cpath d='M-60 692 C 300 572 620 746 960 722 S 1400 740 1680 784'/%3E%3Cpath d='M-60 699 C 300 574 620 750 960 729 S 1400 744 1680 793'/%3E%3Cpath d='M-60 706 C 300 576 620 754 960 736 S 1400 748 1680 802'/%3E%3Cpath d='M-60 713 C 300 578 620 758 960 743 S 1400 752 1680 811'/%3E%3Cpath d='M-60 720 C 300 580 620 762 960 750 S 1400 756 1680 820'/%3E%3Cpath d='M-60 727 C 300 582 620 766 960 757 S 1400 760 1680 829'/%3E%3Cpath d='M-60 734 C 300 584 620 770 960 764 S 1400 764 1680 838'/%3E%3Cpath d='M-60 741 C 300 586 620 774 960 771 S 1400 768 1680 847'/%3E%3Cpath d='M-60 748 C 300 588 620 778 960 778 S 1400 772 1680 856'/%3E%3Cpath d='M-60 755 C 300 590 620 782 960 785 S 1400 776 1680 865'/%3E%3C/g%3E%3C/svg%3E") center / 100% 100% no-repeat;
}

/* ═══ Z. ESPACE PROPRIÉTAIRE : garde EXACTEMENT son habillage (theme-espace-client.css) ═══
   Ses propres variables s'appliquent déjà ; on rend seulement ce que ce fichier a changé en plus. */
body:not(.tactical-mode):not(.role-client) #tab-espaceclient .page-title{
  background:none; -webkit-background-clip:border-box; background-clip:border-box;
  -webkit-text-fill-color:currentColor;
}
body:not(.tactical-mode):not(.role-client) #tab-espaceclient .page-title::after{ content:none; }
body:not(.tactical-mode):not(.role-client) #tab-espaceclient .page-title{ position:static; }
body:not(.tactical-mode):not(.role-client) #tab-espaceclient .page-sub{ letter-spacing:inherit; }
body:not(.tactical-mode):not(.role-client) #tab-espaceclient .stat-label{ letter-spacing:.02em; font-weight:600; }
body:not(.tactical-mode):not(.role-client) #tab-espaceclient .stat-val{ font-weight:700; }
body:not(.tactical-mode):not(.role-client) #tab-espaceclient .stat{ border-color:rgba(170,190,255,.14); }
body:not(.tactical-mode):not(.role-client) #tab-espaceclient .stat::before{ background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent); }
body:not(.tactical-mode):not(.role-client) #tab-espaceclient .btn:not(.btn-accent){ background:var(--bg3); color:var(--text2); border-color:var(--border2); box-shadow:none; }
body:not(.tactical-mode):not(.role-client) #tab-espaceclient .btn:not(.btn-accent):hover{ background:var(--bg4); color:var(--text); }
body:not(.tactical-mode):not(.role-client) #tab-espaceclient th{ background:linear-gradient(180deg, var(--bg3) 0%, rgba(26,32,40,.8) 100%); color:var(--text3); border-bottom-color:var(--border); letter-spacing:.08em; font-weight:700; }
body:not(.tactical-mode):not(.role-client) #tab-espaceclient td{ border-bottom-color:var(--border); }
body:not(.tactical-mode):not(.role-client) #tab-espaceclient .chart-title{ letter-spacing:.07em; font-weight:700; }
body:not(.tactical-mode):not(.role-client) #tab-espaceclient .chart-card{ border-color:var(--border); }
body:not(.tactical-mode):not(.role-client) #tab-espaceclient .badge{ border-radius:6px; font-weight:700; }
body:not(.tactical-mode):not(.role-client) #tab-espaceclient .field input,
body:not(.tactical-mode):not(.role-client) #tab-espaceclient .field select,
body:not(.tactical-mode):not(.role-client) #tab-espaceclient .field textarea{ background:var(--bg3); border-color:var(--border); border-radius:8px; }
/* jour : les boutons secondaires de l'espace propriétaire gardent le style clair d'avant (styles.css) */
body.theme-clair:not(.role-client) #tab-espaceclient .btn:not(.btn-accent){ background:var(--bg2); color:var(--text); border:1px solid var(--border); }
body.theme-clair:not(.role-client) #tab-espaceclient .btn:not(.btn-accent):hover{ background:#eff6ff; border-color:#3b82f6; color:#1d4ed8; box-shadow:0 2px 6px rgba(59,130,246,.15); }
body.theme-clair:not(.role-client) #tab-espaceclient th{ background:linear-gradient(180deg, var(--bg3) 0%, rgba(26,32,40,.8) 100%); }
body.theme-clair:not(.role-client) #tab-espaceclient .btn-accent{ border:none; }
body.theme-clair:not(.role-client) #tab-espaceclient .badge:not(.b-urgent){ box-shadow:none; }
body.theme-clair:not(.role-client) #tab-espaceclient .b-urgent{ box-shadow:0 0 0 1px rgba(255,92,92,.2) inset; }
body:not(.tactical-mode):not(.role-client) #tab-espaceclient .stat::before{ height:1px; opacity:1; }
body.theme-clair:not(.role-client) #tab-espaceclient .chart-card{ background:var(--bg2); }
body.theme-clair:not(.role-client) #tab-espaceclient .chart-card{ border-color:var(--border); box-shadow:var(--shadow); transition:none; }
body.theme-clair:not(.role-client) #tab-espaceclient .chart-card:hover{ transform:none; border-color:#3b82f6; box-shadow:var(--shadow-lg); }
body.theme-clair:not(.role-client) #tab-espaceclient .tbl-wrap{ background:var(--bg2); border-color:var(--border); box-shadow:0 2px 12px rgba(0,0,0,.2); }
