    :root {
      --kaki:  #3B4900;
      --lichen:#D9FF50;
      --creme: #FCFFE9;
      --cacao: #1F1A03;
      --sidebar-w: 210px;

      /* Bootstrap success → kaki/lichen */
      --bs-success: #3b4900;
      --bs-success-rgb: 59, 73, 0;
      --bs-success-text-emphasis: #2b3600;
      --bs-success-bg-subtle: #eef3cf;
      --bs-success-border-subtle: #cfe08f;
    }

    .btn-success {
      --bs-btn-bg: #3b4900;
      --bs-btn-border-color: #3b4900;
      --bs-btn-hover-bg: #2e3900;
      --bs-btn-hover-border-color: #2e3900;
      --bs-btn-active-bg: #2e3900;
      --bs-btn-active-border-color: #2e3900;
      --bs-btn-disabled-bg: #3b4900;
      --bs-btn-disabled-border-color: #3b4900;
      --bs-btn-color: #FCFFE9;
      --bs-btn-hover-color: #FCFFE9;
      --bs-btn-active-color: #FCFFE9;
    }

    /* ── Layout ─────────────────────────────────────────── */
    html, body { height: 100%; overflow: hidden; }
    body {
      background: var(--creme);
      font-family: 'Urbanist', system-ui, sans-serif;
      display: flex;
      flex-direction: column;
    }

    /* ── Header ─────────────────────────────────────────── */
    .admin-header {
      background: var(--cacao);
      color: #f5f5e8;
      padding: .75rem 1.25rem;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 1rem;
      flex-shrink: 0;
      z-index: 10;
    }
    .admin-header h1 {
      font-size: 1rem;
      font-weight: 500;
      color: var(--lichen);
      margin: 0;
    }
    .admin-header .back-link {
      color: #888;
      font-size: .8rem;
      text-decoration: none;
      white-space: nowrap;
    }
    .admin-header .back-link:hover { color: var(--lichen); }

    /* ── Corps principal ────────────────────────────────── */
    #admin-layout {
      flex: 1;
      display: flex;
      overflow: hidden;
    }

    /* ── Sidebar ────────────────────────────────────────── */
    #admin-sidebar {
      width: var(--sidebar-w);
      min-width: var(--sidebar-w);
      background: var(--creme);
      border-right: 1px solid #dde0c8;
      overflow-y: auto;
      padding: 1rem .6rem;
      display: flex;
      flex-direction: column;
      gap: .1rem;
      flex-shrink: 0;
    }

    .sidebar-label {
      font-size: .62rem;
      font-weight: 500;
      letter-spacing: .08em;
      text-transform: uppercase;
      color: #a8a880;
      padding: .6rem .65rem .25rem;
      margin: 0;
    }

    .admin-pill-link {
      display: flex;
      align-items: center;
      gap: .5rem;
      padding: .5rem .7rem;
      border-radius: .45rem;
      color: #55553a;
      font-size: .82rem;
      font-weight: 500;
      cursor: pointer;
      transition: background .12s, color .12s;
      border: none;
      background: transparent;
      width: 100%;
      text-align: left;
    }
    .admin-pill-link:hover { background: rgba(59,73,0,.08); color: var(--kaki); }
    .admin-pill-link.active {
      background: var(--kaki);
      color: var(--lichen);
      font-weight: 600;
    }
    .admin-pill-link i { font-size: .9rem; width: 17px; text-align: center; flex-shrink: 0; }
    .admin-pill-badge {
      margin-left: auto;
      background: #e8a800;
      color: #1F1A03;
      font-size: .62rem;
      font-weight: 500;
      padding: .12rem .4rem;
      border-radius: 8px;
      line-height: 1.2;
    }
    .admin-pill-link.active .admin-pill-badge {
      background: var(--lichen);
      color: var(--kaki);
    }
    .sidebar-divider {
      height: 1px;
      background: #dde0c8;
      margin: .4rem .65rem;
    }

    /* ── Contenu principal ──────────────────────────────── */
    #admin-main {
      flex: 1;
      overflow-y: auto;
      display: flex;
      flex-direction: column;
    }

    #admin-global-msg { flex-shrink: 0; }
    #admin-global-msg .alert { margin: .75rem .75rem 0; border-radius: .5rem; }

    #admin-content { flex: 1; padding: 1rem; }

    /* ── Chips de sous-navigation ───────────────────────── */
    .admin-chips-nav {
      display: flex;
      flex-wrap: wrap;
      gap: .35rem;
      padding: .75rem 0 .75rem;
      border-bottom: 1px solid #dde0c8;
      margin-bottom: 1rem;
    }

    .admin-chip {
      display: inline-flex;
      align-items: center;
      gap: .35rem;
      padding: .3rem .8rem;
      border-radius: 2rem;
      border: 1.5px solid #ccd0b0;
      background: #FCFFE9;
      color: #666650;
      font-size: .78rem;
      font-weight: 600;
      cursor: pointer;
      transition: all .12s;
      line-height: 1.3;
    }
    .admin-chip:hover:not(.active) { border-color: var(--kaki); color: var(--kaki); background: #FCFFE9; }
    .admin-chip.active {
      background: var(--kaki);
      border-color: var(--kaki);
      color: var(--lichen);
    }
    .admin-chip .chip-badge {
      background: #e8a800;
      color: #1F1A03;
      font-size: .6rem;
      font-weight: 500;
      padding: .08rem .32rem;
      border-radius: 6px;
      line-height: 1.2;
    }
    .admin-chip.active .chip-badge {
      background: var(--lichen);
      color: var(--kaki);
    }

    /* ── Panel body ─────────────────────────────────────── */
    .admin-panel-body { min-height: 4rem; }

    /* ── Divers hérités ─────────────────────────────────── */
    .admin-contact-box {
      background: #fff8e1;
      border: 1px solid #ffc10740;
    }

    .admin-notif-bar {
      background: rgba(204, 255, 51, 0.12);
      border: 1px solid rgba(204, 255, 51, 0.35);
      border-radius: .5rem;
      padding: .65rem 1rem;
      margin-top: .75rem;
      width: 100%;
    }
    .admin-notif-bar .form-check-label {
      color: #444430;
      font-size: .9rem;
      font-weight: 500;
      cursor: pointer;
    }
    .admin-notif-bar .form-check-input { cursor: pointer; }
    .admin-notif-bar .form-check-input:checked {
      background-color: var(--lichen);
      border-color: var(--lichen);
    }

    /* ── Filtres admin guide ──────────────────────────── */
    .guide-filter-bar {
      background: #f8f9f0;
      border: 1px solid #dde0c8;
      border-radius: .5rem;
      padding: .75rem;
      margin-bottom: 1rem;
    }
    .guide-f-row1 {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: .45rem;
      margin-bottom: .5rem;
    }
    .guide-f-search-wrap {
      position: relative;
      flex: 1;
      min-width: 160px;
      max-width: 260px;
    }
    .guide-f-search-icon {
      position: absolute;
      left: .52rem; top: 50%;
      transform: translateY(-50%);
      color: #999;
      font-size: .82rem;
      pointer-events: none;
    }
    .guide-f-search {
      width: 100%;
      padding: .3rem .55rem .3rem 1.85rem;
      border: 1.5px solid #ccd0b0;
      border-radius: .4rem;
      font-size: .82rem;
      background: #FCFFE9;
      color: #333;
      outline: none;
    }
    .guide-f-search:focus { border-color: var(--kaki); }
    .guide-f-type {
      min-width: 145px;
      max-width: 195px;
      font-size: .8rem;
      padding: .3rem .55rem;
      border: 1.5px solid #ccd0b0;
      border-radius: .4rem;
      background: #FCFFE9;
    }
    .guide-f-type:focus { outline: none; border-color: var(--kaki); }
    .guide-f-count {
      font-size: .75rem;
      color: #999;
      white-space: nowrap;
      margin-left: auto;
    }
    .guide-f-statut-row { display: flex; flex-wrap: wrap; gap: .3rem; }
    .guide-f-statut { font-size: .72rem !important; padding: .18rem .6rem !important; }

    /* Bordure de carte par section (cohérente avec les chips statut) */
    .card.guide-card-attente   { border-left-color: #f0ad00 !important; }
    .card.guide-card-approuvee { border-left-color: #4a8a2e !important; }
    .card.guide-card-retiree   { border-left-color: #c0392b !important; }

    /* Cartes compactes dépliables (style Guide public) */
    .guide-ac { transition: box-shadow .15s ease; }
    .guide-ac:hover { box-shadow: 0 .25rem .6rem rgba(0,0,0,.08); }
    .guide-ac-head {
      display: flex; gap: .75rem; align-items: center;
      padding: .6rem .75rem; cursor: pointer; user-select: none;
    }
    .guide-ac-head:hover { background: #fafdf0; }
    .guide-ac-thumb {
      width: 56px; height: 56px; object-fit: cover; border-radius: 8px;
      flex-shrink: 0; border: 1px solid #e4e8d2;
    }
    .guide-ac-thumb-ph {
      width: 56px; height: 56px; border-radius: 8px; flex-shrink: 0;
      display: flex; align-items: center; justify-content: center;
      background: #eef2dd; color: #9aa77a; font-size: 1.4rem;
    }
    .guide-ac-main { flex: 1 1 auto; min-width: 0; }
    .guide-ac-title {
      font-weight: 600; font-size: .98rem; line-height: 1.2;
      color: #1f1a03; margin-bottom: .15rem;
    }
    .guide-ac-meta { font-size: .8rem; color: #6c757d; }
    .guide-ac-badges { display: flex; flex-wrap: wrap; gap: .25rem; margin: .15rem 0; }
    .guide-ac-mots { display: flex; flex-wrap: wrap; gap: .25rem; margin-top: .25rem; }
    .guide-ac-mot {
      font-size: .68rem; padding: .08rem .45rem; border-radius: 999px;
      background: #eef2dd; color: #4a5520; white-space: nowrap;
    }
    .guide-ac-chevron {
      flex-shrink: 0; color: #9aa77a; font-size: 1.1rem;
      transition: transform .2s ease;
    }
    .guide-ac-head[aria-expanded="true"] .guide-ac-chevron { transform: rotate(180deg); }
    .guide-ac-details { padding: .25rem .9rem .9rem; }
    .guide-ac-details .ac-field { margin-bottom: .4rem; font-size: .86rem; }
    .guide-ac-details .ac-field strong { color: #3B4900; }
    .guide-ac-details .ac-field.ac-field-changed {
      background: #fffbe6; border-left: 3px solid #f0ad00;
      padding-left: .5rem; border-radius: 0 4px 4px 0;
    }
    .guide-badge-modifie { font-size: .58rem !important; vertical-align: middle; }
    .guide-voir-tout-btn {
      display: block; width: 100%; margin-top: .75rem;
      font-size: .82rem; padding: .4rem .75rem;
    }

    /* Chips statut colorés par état */
    .guide-f-statut[data-val="en_attente"] { border-color: #e0a800; color: #946200; }
    .guide-f-statut[data-val="en_attente"]:hover:not(.active) { border-color: #c69500; color: #7a5200; background: #fff8e6; }
    .guide-f-statut[data-val="en_attente"].active { background: #f0ad00; border-color: #f0ad00; color: #3d2900; }

    .guide-f-statut[data-val="approuvees"] { border-color: #4a8a2e; color: #2f6a18; }
    .guide-f-statut[data-val="approuvees"]:hover:not(.active) { border-color: #3c7a22; color: #265812; background: #eef7e6; }
    .guide-f-statut[data-val="approuvees"].active { background: #4a8a2e; border-color: #4a8a2e; color: #FCFFE9; }

    .guide-f-statut[data-val="retirees"] { border-color: #c0392b; color: #a02517; }
    .guide-f-statut[data-val="retirees"]:hover:not(.active) { border-color: #a82a1d; color: #871d12; background: #fbeae8; }
    .guide-f-statut[data-val="retirees"].active { background: #c0392b; border-color: #c0392b; color: #FCFFE9; }

    .guide-f-secteurs-panel {
      margin-top: .5rem;
      padding: .7rem;
      background: #FCFFE9;
      border: 1.5px solid #dde0c8;
      border-radius: .4rem;
      max-height: 260px;
      overflow-y: auto;
    }
    .guide-secteur-group { margin-bottom: .6rem; }
    .guide-secteur-group:last-child { margin-bottom: 0; }
    .guide-secteur-group-title {
      font-size: .64rem;
      font-weight: 500;
      letter-spacing: .06em;
      text-transform: uppercase;
      color: #aaa880;
      margin-bottom: .3rem;
    }
    .guide-secteur-group-items { display: flex; flex-wrap: wrap; gap: .2rem; }
    .guide-secteur-pill {
      display: inline-flex;
      align-items: center;
      padding: .18rem .52rem;
      border-radius: 2rem;
      border: 1.5px solid #ccd0b0;
      background: #FCFFE9;
      color: #666650;
      font-size: .7rem;
      font-weight: 600;
      cursor: pointer;
      transition: all .1s;
      user-select: none;
    }
    .guide-secteur-pill:hover { border-color: var(--kaki); color: var(--kaki); }
    .guide-secteur-pill.checked { background: var(--kaki); border-color: var(--kaki); color: var(--lichen); }

    /* ── Bouton réduction sidebar (tablette) ────────────── */
    #sidebar-collapse-btn {
      display: none;
      align-items: center;
      justify-content: center;
      width: 26px; height: 26px;
      background: rgba(59,73,0,.07);
      border: none;
      border-radius: .35rem;
      color: #88886a;
      cursor: pointer;
      align-self: flex-end;
      flex-shrink: 0;
      margin-bottom: .3rem;
      transition: background .12s, color .12s;
    }
    #sidebar-collapse-btn:hover { background: rgba(59,73,0,.16); color: var(--kaki); }
    #sidebar-collapse-btn i { font-size: .82rem; pointer-events: none; }

    /* ── Tablette : sidebar collapsible (641px–1024px) ──── */
    @media (max-width: 1024px) and (min-width: 641px) {
      #sidebar-collapse-btn { display: flex; }
      #admin-sidebar { transition: width .2s ease, min-width .2s ease; overflow: hidden; }

      #admin-sidebar.sidebar-collapsed {
        width: 58px;
        min-width: 58px;
        padding: .75rem .35rem;
        gap: .15rem;
      }
      #admin-sidebar.sidebar-collapsed .sidebar-label,
      #admin-sidebar.sidebar-collapsed .sidebar-divider { display: none; }
      #admin-sidebar.sidebar-collapsed .admin-pill-link {
        justify-content: center;
        padding: .6rem;
        position: relative;
        overflow: visible;
      }
      #admin-sidebar.sidebar-collapsed .admin-pill-link > *:not(i):not(.admin-pill-badge) { display: none; }
      #admin-sidebar.sidebar-collapsed .admin-pill-link i { font-size: 1.1rem; width: auto; }
      #admin-sidebar.sidebar-collapsed .admin-pill-badge {
        position: absolute;
        top: 3px; right: 3px;
        width: 8px; height: 8px;
        border-radius: 50%;
        padding: 0;
        font-size: 0;
        background: #e8a800;
      }
      #admin-sidebar.sidebar-collapsed #sidebar-collapse-btn { align-self: center; }
      #admin-sidebar.sidebar-collapsed .admin-pill-link::after {
        content: attr(data-label);
        position: absolute;
        left: calc(100% + 8px);
        top: 50%; transform: translateY(-50%);
        background: var(--cacao);
        color: #e8e8d0;
        font-size: .75rem;
        font-weight: 600;
        white-space: nowrap;
        padding: .3rem .65rem;
        border-radius: .35rem;
        pointer-events: none;
        opacity: 0;
        transition: opacity .12s;
        z-index: 200;
      }
      #admin-sidebar.sidebar-collapsed .admin-pill-link:hover::after { opacity: 1; }
      #admin-content { padding: .75rem; }
    }

    /* ── Téléphone : menu plein écran (≤640px) ──────────── */
    #sidebar-toggle {
      display: none;
      background: none;
      border: none;
      color: #aaa;
      font-size: 1.25rem;
      padding: .2rem .4rem;
      cursor: pointer;
      line-height: 1;
    }
    #sidebar-toggle:hover { color: var(--lichen); }

    #phone-menu-overlay {
      display: none;
      position: fixed;
      inset: 0;
      background: var(--creme);
      z-index: 200;
      flex-direction: column;
    }
    #phone-menu-overlay.open { display: flex; }

    #phone-menu-header {
      display: flex;
      align-items: center;
      gap: .5rem;
      background: var(--cacao);
      color: #f5f5e8;
      padding: .75rem 1rem;
      flex-shrink: 0;
    }
    #phone-menu-title {
      flex: 1;
      font-size: 1rem;
      font-weight: 500;
      color: var(--lichen);
    }
    #phone-menu-back,
    #phone-menu-close {
      background: none;
      border: none;
      color: #aaa;
      font-size: 1.15rem;
      padding: .2rem .4rem;
      cursor: pointer;
      line-height: 1;
    }
    #phone-menu-back:hover, #phone-menu-close:hover { color: var(--lichen); }

    #phone-menu-body {
      flex: 1;
      overflow-y: auto;
      padding: 1rem .75rem;
      display: flex;
      flex-direction: column;
      gap: .35rem;
    }

    .phone-menu-section-btn {
      display: flex;
      align-items: center;
      gap: .75rem;
      padding: .9rem 1rem;
      border-radius: .5rem;
      background: #FCFFE9;
      border: 1.5px solid #dde0c8;
      color: #55553a;
      font-size: .95rem;
      font-weight: 500;
      cursor: pointer;
      width: 100%;
      text-align: left;
      transition: background .12s, border-color .12s, color .12s;
    }
    .phone-menu-section-btn:hover { border-color: var(--kaki); color: var(--kaki); }
    .phone-menu-section-btn.active {
      background: var(--kaki);
      border-color: var(--kaki);
      color: var(--lichen);
    }
    .phone-menu-section-btn i { font-size: 1.1rem; width: 22px; text-align: center; flex-shrink: 0; }
    .phone-menu-section-chevron { margin-left: auto; font-size: .85rem; opacity: .4; }
    .phone-menu-section-badge {
      margin-left: auto;
      background: #e8a800;
      color: #1F1A03;
      font-size: .62rem;
      font-weight: 500;
      padding: .1rem .38rem;
      border-radius: 8px;
      line-height: 1.2;
    }
    .phone-menu-section-btn.active .phone-menu-section-badge {
      background: var(--lichen);
      color: var(--kaki);
    }

    .phone-menu-chip-btn {
      display: flex;
      align-items: center;
      gap: .65rem;
      padding: .8rem 1rem;
      border-radius: .5rem;
      background: #FCFFE9;
      border: 1.5px solid #dde0c8;
      color: #55553a;
      font-size: .9rem;
      font-weight: 500;
      cursor: pointer;
      width: 100%;
      text-align: left;
      transition: background .12s, border-color .12s, color .12s;
    }
    .phone-menu-chip-btn:hover { border-color: var(--kaki); color: var(--kaki); }
    .phone-menu-chip-btn.active {
      background: var(--kaki);
      border-color: var(--kaki);
      color: var(--lichen);
    }
    .phone-menu-chip-btn i { font-size: 1rem; width: 20px; text-align: center; flex-shrink: 0; }
    .phone-menu-chip-count {
      margin-left: auto;
      background: #e8a800;
      color: #1F1A03;
      font-size: .6rem;
      font-weight: 500;
      padding: .08rem .32rem;
      border-radius: 6px;
      line-height: 1.2;
    }
    .phone-menu-chip-btn.active .phone-menu-chip-count {
      background: var(--lichen);
      color: var(--kaki);
    }

    @media (max-width: 640px) {
      #sidebar-toggle { display: block; }
      #admin-sidebar { display: none; }
      #admin-content { padding: .75rem; }
      .admin-chips-nav { flex-wrap: nowrap; overflow-x: auto; padding-bottom: .5rem; }
      .admin-chip { flex-shrink: 0; }
    }

    /* ── Thème admin magazine (kaki / lichen) — voir territoires-theme.css?v=ba4e211f76 ── */
    .mag-admin-header {
      background: var(--kaki) !important;
      color: var(--lichen) !important;
      border-bottom: 2px solid var(--lichen) !important;
      display: flex;
      align-items: center;
      gap: .5rem;
    }
    .mag-admin-header i { color: var(--lichen); }
    .mag-admin-btn {
      background: var(--kaki) !important;
      border-color: var(--kaki) !important;
      color: var(--lichen) !important;
      font-weight: 600;
    }
    .mag-admin-btn:hover, .mag-admin-btn:focus {
      background: #4e6200 !important;
      border-color: #4e6200 !important;
      color: #FCFFE9 !important;
    }
    .mag-admin-btn-outline {
      border: 1.5px solid var(--kaki) !important;
      color: var(--kaki) !important;
      background: transparent !important;
      font-weight: 500;
    }
    .mag-admin-btn-outline:hover, .mag-admin-btn-outline:focus {
      background: var(--kaki) !important;
      color: var(--lichen) !important;
    }
    .mag-admin-card {
      border-left: 3px solid var(--lichen) !important;
      border-radius: 8px !important;
      background: #FCFFE9;
      transition: box-shadow .15s;
    }
    .mag-admin-body .form-control:focus,
    .mag-admin-body .form-select:focus {
      border-color: var(--kaki) !important;
      box-shadow: 0 0 0 .2rem rgba(59, 73, 0, .18) !important;
    }
    .mag-admin-info {
      background: #f5ffe6 !important;
      border: 1px solid rgba(184, 219, 42, .55) !important;
      color: var(--kaki) !important;
      font-size: .85rem;
    }
    .mag-admin-info i { color: var(--kaki) !important; }
    .mag-badge-kaki {
      background: var(--kaki) !important;
      color: var(--lichen) !important;
      font-size: .7rem;
    }

    /* ── Conseil IA (aligné territoires-theme + admin) ─────── */
    .conseil-ia-surface {
      --cia-title: 'Averia Serif Libre', Georgia, serif;
      --cia-ui: 'Urbanist', system-ui, sans-serif;
      --cia-body: 'Lora', Georgia, serif;
      --cia-border: rgba(59, 73, 0, .16);
      --cia-surface: #FCFFE9;
      --cia-surface-alt: #f5ffe6;
    }
    .conseil-ia-hero {
      padding: 1rem 1.15rem;
      border-radius: 12px;
      background: var(--kaki);
      color: var(--lichen);
      border: 2px solid var(--lichen);
      box-shadow: 0 2px 10px rgba(31, 26, 3, .08);
    }
    .conseil-ia-hero-title {
      font-family: var(--cia-title);
      font-style: italic;
      font-weight: 700;
      color: var(--lichen);
      letter-spacing: -.01em;
    }
    .conseil-ia-hero-text p {
      font-family: var(--cia-ui);
      color: rgba(217, 255, 80, .92);
      font-size: .92rem;
    }
    .conseil-ia-hero-text strong { color: #FCFFE9; }
    .conseil-ia-persona-chips {
      display: flex;
      flex-direction: column;
      gap: .65rem;
    }
    .conseil-ia-persona-chip-group,
    .conseil-ia-persona-pick-group {
      display: flex;
      flex-direction: column;
      gap: .35rem;
    }
    .conseil-ia-persona-group-label {
      font-family: var(--cia-ui);
      font-size: .72rem;
      font-weight: 700;
      letter-spacing: .04em;
      text-transform: uppercase;
      color: rgba(59, 73, 0, .62);
    }
    .conseil-ia-persona-chip-row {
      display: flex;
      flex-wrap: wrap;
      gap: .45rem;
      font-family: var(--cia-ui);
      overflow: visible;
      padding-top: .15rem;
    }
    .conseil-ia-persona-chip {
      position: relative;
      display: inline-flex;
      align-items: center;
      gap: .35rem;
      border: 1px solid var(--cia-border);
      border-radius: 999px;
      background: var(--cia-surface);
      color: var(--kaki);
      font-size: .82rem;
      font-weight: 600;
      padding: .35rem .7rem;
      cursor: help;
      line-height: 1.2;
    }
    .conseil-ia-persona-chip:hover,
    .conseil-ia-persona-chip:focus-visible,
    .conseil-ia-persona-chip.is-tip-open {
      background: var(--cia-surface-alt);
      border-color: var(--kaki);
      outline: none;
    }
    .conseil-ia-persona-chip i { font-size: .9rem; }
    .conseil-ia-persona-chip--territoire {
      border-color: rgba(90, 122, 70, .45);
      background: #f4faf0;
    }
    .conseil-ia-persona-presets {
      display: flex;
      flex-wrap: wrap;
      gap: .4rem;
    }
    .conseil-ia-has-tip {
      position: relative;
    }
    .conseil-ia-has-tip[data-tip]::after {
      content: attr(data-tip);
      position: absolute;
      left: 50%;
      bottom: calc(100% + 8px);
      transform: translateX(-50%) translateY(4px);
      z-index: 40;
      width: max-content;
      max-width: min(280px, 70vw);
      padding: .45rem .65rem;
      border-radius: 8px;
      background: var(--kaki);
      color: var(--lichen);
      font-family: var(--cia-ui);
      font-size: .78rem;
      font-weight: 500;
      line-height: 1.35;
      text-align: left;
      box-shadow: 0 4px 14px rgba(31, 26, 3, .18);
      opacity: 0;
      pointer-events: none;
      visibility: hidden;
      transition: opacity .15s ease, transform .15s ease, visibility .15s;
      white-space: normal;
    }
    /* Pastilles personas : ancrer à gauche (évite coupure sur la 1re puce) */
    .conseil-ia-persona-chip.conseil-ia-has-tip[data-tip]::after {
      left: 0;
      right: auto;
      max-width: min(320px, calc(100vw - 2.5rem));
      transform: translateY(4px);
    }
    .conseil-ia-persona-chip.conseil-ia-has-tip[data-tip]:hover::after,
    .conseil-ia-persona-chip.conseil-ia-has-tip[data-tip]:focus-visible::after,
    .conseil-ia-persona-chip.conseil-ia-has-tip[data-tip].is-tip-open::after {
      transform: translateY(0);
    }
    /* Dernières puces de la ligne : ancrer à droite si proche du bord */
    .conseil-ia-persona-chip-row .conseil-ia-persona-chip:nth-last-child(-n+2).conseil-ia-has-tip[data-tip]::after {
      left: auto;
      right: 0;
    }
    .conseil-ia-has-tip[data-tip]:hover::after,
    .conseil-ia-has-tip[data-tip]:focus-visible::after,
    .conseil-ia-has-tip[data-tip].is-tip-open::after {
      opacity: 1;
      visibility: visible;
      transform: translateX(-50%) translateY(0);
    }
    .conseil-ia-panel-toggle.conseil-ia-has-tip[data-tip]::after {
      left: .85rem;
      transform: translateX(0) translateY(4px);
    }
    .conseil-ia-panel-toggle.conseil-ia-has-tip[data-tip]:hover::after,
    .conseil-ia-panel-toggle.conseil-ia-has-tip[data-tip]:focus-visible::after,
    .conseil-ia-panel-toggle.conseil-ia-has-tip[data-tip].is-tip-open::after {
      transform: translateX(0) translateY(0);
    }
    .conseil-ia-hist-item.conseil-ia-has-tip[data-tip]::after {
      left: 0;
      right: auto;
      max-width: min(320px, calc(100vw - 2.5rem));
      transform: translateX(0) translateY(4px);
    }
    .conseil-ia-hist-item.conseil-ia-has-tip[data-tip]:hover::after,
    .conseil-ia-hist-item.conseil-ia-has-tip[data-tip]:focus-visible::after,
    .conseil-ia-hist-item.conseil-ia-has-tip[data-tip].is-tip-open::after {
      transform: translateX(0) translateY(0);
    }
    .conseil-ia-feedback-btn {
      transition: background .12s ease, color .12s ease, border-color .12s ease, transform .08s ease, opacity .12s ease;
    }
    .conseil-ia-feedback-btn:active:not(:disabled) {
      transform: scale(0.92);
    }
    .conseil-ia-feedback-btn.is-voting {
      opacity: .6;
      pointer-events: none;
    }
    .conseil-ia-feedback-btn.active,
    .conseil-ia-feedback-btn.active:hover,
    .conseil-ia-feedback-btn.active:focus {
      background: var(--kaki) !important;
      color: var(--lichen) !important;
      border-color: var(--kaki) !important;
    }
    .conseil-ia-feedback-btn[data-conseil-vote="down"].active,
    .conseil-ia-feedback-btn[data-conseil-vote="down"].active:hover,
    .conseil-ia-feedback-btn[data-conseil-vote="down"].active:focus {
      background: #9a1c1c !important;
      border-color: #9a1c1c !important;
      color: #FCFFE9 !important;
    }
    .conseil-ia-feedback-thanks {
      font-family: var(--cia-ui);
      font-weight: 600;
    }
    .conseil-ia-tip-float {
      position: fixed;
      z-index: 10050;
      max-width: min(320px, calc(100vw - 1rem));
      padding: .45rem .65rem;
      border-radius: 8px;
      background: var(--kaki);
      color: var(--lichen);
      font-family: var(--cia-ui);
      font-size: .78rem;
      font-weight: 500;
      line-height: 1.35;
      text-align: left;
      box-shadow: 0 4px 14px rgba(31, 26, 3, .18);
      pointer-events: none;
    }
    .conseil-ia-tip-float[hidden] {
      display: none !important;
    }
    .conseil-ia-tips-js .conseil-ia-has-tip[data-tip]::after {
      display: none !important;
    }
    .conseil-ia-feedback-row {
      font-family: var(--cia-ui);
    }
    .conseil-ia-kbd {
      display: inline-block;
      font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
      font-size: .78em;
      font-weight: 600;
      padding: .12em .4em;
      border-radius: .3rem;
      border: 1px solid rgba(59, 73, 0, .28);
      background: #FCFFE9;
      color: var(--kaki);
      box-shadow: 0 1px 0 rgba(59, 73, 0, .12);
      white-space: nowrap;
    }
    .conseil-ia-btn-kbd {
      margin-left: .45rem;
      font-size: .75em;
      font-weight: 600;
      opacity: .85;
      letter-spacing: .02em;
    }
    .conseil-ia-shortcut-inline {
      display: inline-block;
      margin-left: .35rem;
      color: #6b6b48;
    }
    .conseil-ia-shortcuts {
      border: 1px solid var(--cia-border);
      border-radius: 10px;
      padding: .55rem .85rem;
      background: var(--cia-surface-alt);
      font-family: var(--cia-ui);
    }
    .conseil-ia-shortcuts summary {
      cursor: pointer;
      font-weight: 600;
      font-size: .9rem;
      color: var(--kaki);
    }
    .conseil-ia-shortcuts-table {
      width: 100%;
      border-collapse: collapse;
    }
    .conseil-ia-shortcuts-table td {
      padding: .28rem .2rem;
      vertical-align: top;
      border-top: 1px solid rgba(59, 73, 0, .1);
    }
    .conseil-ia-shortcuts-table td:first-child {
      width: 9.5rem;
      white-space: nowrap;
    }
    .conseil-ia-explain {
      border: 1px solid var(--cia-border);
      border-radius: 10px;
      padding: .65rem .9rem;
      background: var(--creme);
      font-family: var(--cia-ui);
    }
    .conseil-ia-explain summary {
      cursor: pointer;
      font-weight: 600;
      font-size: .9rem;
      color: var(--kaki);
    }
    .conseil-ia-blurb-list {
      list-style: none;
      padding: 0;
      margin: 0;
      display: flex;
      flex-direction: column;
      gap: .65rem;
    }
    .conseil-ia-blurb-item {
      display: flex;
      gap: .65rem;
      align-items: flex-start;
      font-family: var(--cia-ui);
    }
    .conseil-ia-blurb-icon {
      width: 2rem;
      height: 2rem;
      border-radius: .45rem;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
      color: var(--kaki);
      background: var(--lichen);
      border: 1px solid rgba(59, 73, 0, .15);
      font-size: .95rem;
    }
    .conseil-ia-form-card {
      border: 1px solid var(--cia-border);
      border-left: 3px solid var(--lichen);
      border-radius: 10px;
      padding: 1rem 1.1rem;
      background: var(--cia-surface);
      box-shadow: 0 1px 3px rgba(59, 73, 0, .06);
    }
    .conseil-ia-form-card .form-label {
      font-family: var(--cia-ui);
      color: var(--kaki);
    }
    .conseil-ia-refs-fieldset {
      border: 1px dashed rgba(59, 73, 0, .22);
      border-radius: 10px;
      padding: .75rem .85rem;
      background: var(--cia-surface-alt);
      margin-bottom: 0;
    }
    .conseil-ia-refs-details {
      margin-top: 1rem;
      padding-top: 1rem;
      border-top: 1px dashed rgba(59, 73, 0, .18);
      font-family: var(--cia-ui);
    }
    .conseil-ia-refs-summary {
      cursor: pointer;
      font-weight: 600;
      color: var(--kaki);
      list-style: none;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: .35rem;
    }
    .conseil-ia-refs-summary::-webkit-details-marker { display: none; }
    .conseil-ia-refs-summary::before {
      content: "▸";
      display: inline-block;
      margin-right: .15rem;
      transition: transform .15s ease;
    }
    .conseil-ia-refs-details[open] > .conseil-ia-refs-summary::before {
      transform: rotate(90deg);
    }
    .conseil-ia-refs-badge {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-width: 1.25rem;
      height: 1.25rem;
      padding: 0 .35rem;
      border-radius: 999px;
      background: var(--kaki);
      color: var(--lichen);
      font-size: .72rem;
      font-weight: 700;
      line-height: 1;
    }
    .conseil-ia-refs-fieldset legend {
      float: none;
      width: auto;
      padding: 0;
      font-family: var(--cia-ui);
      color: var(--kaki);
    }
    .conseil-ia-refs-list {
      display: flex;
      flex-direction: column;
      gap: .4rem;
      max-height: 12rem;
      overflow-y: auto;
    }
    .conseil-ia-ref-item {
      display: flex;
      align-items: flex-start;
      gap: .55rem;
      padding: .45rem .55rem;
      border: 1px solid var(--cia-border);
      border-radius: 8px;
      background: var(--cia-surface);
      cursor: pointer;
      font-family: var(--cia-ui);
      margin: 0;
    }
    .conseil-ia-ref-item:hover,
    .conseil-ia-ref-item:has(.conseil-ia-ref-cb:checked) {
      border-color: var(--kaki);
      background: #f8fff0;
    }
    .conseil-ia-ref-item--up {
      border-color: rgba(60, 122, 34, .35);
    }
    .conseil-ia-ref-item--up:has(.conseil-ia-ref-cb:checked) {
      background: #f0fff4;
    }
    .conseil-ia-ref-item--down {
      opacity: .82;
      border-style: dashed;
    }
    .conseil-ia-refs-toolbar {
      font-family: var(--cia-ui);
    }
    .conseil-ia-refs-filter {
      border: 1.5px solid #ccd0b0;
      border-radius: 999px;
      background: #FCFFE9;
      color: #666650;
      font-family: var(--cia-ui);
      font-size: .78rem;
      font-weight: 600;
      padding: .28rem .75rem;
      cursor: pointer;
      transition: all .12s;
    }
    .conseil-ia-refs-filter:hover:not(.active),
    .conseil-ia-refs-filter:focus-visible:not(.active) {
      border-color: var(--kaki);
      color: var(--kaki);
    }
    .conseil-ia-refs-filter.active {
      background: var(--kaki);
      border-color: var(--kaki);
      color: var(--lichen);
    }
    .conseil-ia-ref-item .form-check-input {
      margin-top: .2rem;
      flex-shrink: 0;
    }
    .conseil-ia-ref-item .form-check-input:disabled {
      opacity: .45;
    }
    .conseil-ia-ref-label {
      display: flex;
      flex-direction: column;
      gap: .1rem;
      min-width: 0;
    }
    .conseil-ia-ref-title {
      font-weight: 600;
      font-size: .88rem;
      color: var(--kaki);
      line-height: 1.25;
    }
    .conseil-ia-ref-meta { font-size: .78rem; }
    .conseil-ia-ref-search,
    .conseil-ia-hist-search {
      font-family: var(--cia-ui);
      border-color: var(--cia-border);
    }
    .conseil-ia-persona-fieldset {
      border: 1px dashed rgba(59, 73, 0, .22);
      border-radius: 10px;
      padding: .75rem .85rem;
      background: var(--cia-surface);
      margin-bottom: 1rem;
    }
    .conseil-ia-persona-fieldset legend {
      float: none;
      width: auto;
      padding: 0;
      font-family: var(--cia-ui);
      color: var(--kaki);
    }
    .conseil-ia-persona-picks {
      display: flex;
      flex-wrap: wrap;
      gap: .45rem;
    }
    .conseil-ia-persona-pick {
      display: inline-flex;
      align-items: center;
      gap: .4rem;
      border: 1px solid var(--cia-border);
      border-radius: 999px;
      padding: .35rem .65rem;
      background: var(--cia-surface-alt);
      font-family: var(--cia-ui);
      font-size: .84rem;
      font-weight: 600;
      color: var(--kaki);
      cursor: pointer;
      margin: 0;
    }
    .conseil-ia-persona-pick:has(.conseil-ia-persona-cb:checked) {
      border-color: var(--kaki);
      background: #f8fff0;
    }
    .conseil-ia-persona-pick--territoire {
      border-color: rgba(90, 122, 70, .4);
      background: #f4faf0;
    }
    .conseil-ia-persona-pick--territoire:has(.conseil-ia-persona-cb:checked) {
      border-color: #4a6b38;
      background: #eef7e6;
    }
    .conseil-ia-persona-pick .form-check-input { margin: 0; flex-shrink: 0; }
    .conseil-ia-persona-avance { margin-top: .25rem; }
    .conseil-ia-avance-toggle {
      font-family: var(--cia-ui);
      color: var(--kaki);
      text-decoration: none;
    }
    .conseil-ia-avance-toggle:hover { color: #4a6b38; text-decoration: underline; }
    .conseil-ia-persona-avance-panel {
      margin-top: .35rem;
      padding: .65rem .75rem;
      border: 1px dashed rgba(90, 122, 70, .35);
      border-radius: 8px;
      background: #fafcf7;
    }
    .conseil-ia-refs-used {
      border-left: 3px solid var(--lichen);
      padding-left: .65rem;
      font-family: var(--cia-ui);
    }
    .conseil-ia-hist-actions .btn-outline-danger {
      border-color: rgba(185, 28, 28, .35);
      color: #9a1c1c;
    }
    .conseil-ia-hist-actions .btn-outline-danger:hover {
      background: rgba(185, 28, 28, .08);
      color: #7f1d1d;
    }
    .conseil-ia-textarea {
      min-height: 9rem;
      line-height: 1.55;
      font-family: var(--cia-body);
      color: var(--cacao);
      border-color: rgba(59, 73, 0, .22);
      border-radius: 10px;
    }
    .conseil-ia-textarea:focus {
      border-color: var(--kaki);
      box-shadow: 0 0 0 .2rem rgba(59, 73, 0, .18);
    }
    .conseil-ia-loading {
      display: flex;
      align-items: flex-start;
      gap: .75rem;
      padding: 1.25rem;
      border-radius: 10px;
      border: 1.5px dashed rgba(59, 73, 0, .28);
      background: var(--cia-surface-alt);
      font-family: var(--cia-ui);
      color: var(--kaki);
    }
    .conseil-ia-stream-progress {
      padding: 1rem 1.1rem;
      border-radius: 10px;
      border: 1.5px dashed rgba(59, 73, 0, .28);
      background: var(--cia-surface-alt);
      font-family: var(--cia-ui);
      color: var(--kaki);
    }
    .conseil-ia-stream-progress--done {
      opacity: .72;
      border-style: solid;
    }
    .conseil-ia-stream-status {
      font-weight: 600;
      margin: 0;
    }
    .conseil-ia-persona-status-list {
      list-style: none;
      margin: 0;
      padding: 0;
      display: flex;
      flex-direction: column;
      gap: .35rem;
    }
    .conseil-ia-persona-status {
      display: flex;
      align-items: center;
      gap: .5rem;
      font-size: .9rem;
    }
    .conseil-ia-persona-status-icon {
      width: 1.1rem;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
    }
    .conseil-ia-persona-status--running .conseil-ia-persona-status-label {
      font-weight: 600;
    }
    .conseil-ia-persona-status--error .conseil-ia-persona-status-label {
      color: #842029;
    }
    .conseil-ia-persona-status--synthese {
      margin-top: .25rem;
      padding-top: .5rem;
      border-top: 1px solid rgba(59, 73, 0, .12);
    }
    @media print {
      .conseil-ia-stream-progress { display: none !important; }
    }
    .conseil-ia-toolbar {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between;
      gap: .65rem;
      margin-bottom: .85rem;
      padding: .55rem .65rem;
      border-radius: 10px;
      background: var(--cia-surface-alt);
      border: 1px solid var(--cia-border);
      position: sticky;
      top: 0;
      z-index: 2;
    }
    .conseil-ia-toolbar h5 {
      font-family: var(--cia-ui);
      color: var(--kaki);
      font-weight: 600;
    }
    .conseil-ia-toolbar-left,
    .conseil-ia-toolbar-right {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: .4rem .5rem;
    }
    .conseil-ia-toolbar .mag-admin-btn-outline.active {
      background: var(--kaki) !important;
      color: var(--lichen) !important;
    }
    .conseil-ia-results[data-font="sm"] { --cia-fs: .88rem; --cia-lh: 1.55; }
    .conseil-ia-results[data-font="md"] { --cia-fs: .98rem; --cia-lh: 1.65; }
    .conseil-ia-results[data-font="lg"] { --cia-fs: 1.12rem; --cia-lh: 1.7; }
    .conseil-ia-stack {
      display: flex;
      flex-direction: column;
      gap: .65rem;
    }
    .conseil-ia-panel {
      border: 1px solid var(--cia-border);
      border-radius: 10px;
      background: var(--cia-surface);
      overflow: hidden;
      border-left: 3px solid var(--lichen);
      box-shadow: 0 1px 3px rgba(59, 73, 0, .05);
    }
    .conseil-ia-panel--synthese {
      background: var(--cia-surface-alt);
      border-color: rgba(59, 73, 0, .22);
      border-left-color: var(--kaki);
    }
    .conseil-ia-panel--synthese .conseil-ia-panel-head {
      background: var(--kaki);
      color: var(--lichen);
    }
    .conseil-ia-panel--synthese .conseil-ia-panel-toggle { color: var(--lichen); }
    .conseil-ia-panel--synthese .conseil-ia-panel-chevron,
    .conseil-ia-panel--synthese .conseil-ia-panel-icon {
      color: var(--lichen);
      background: rgba(217, 255, 80, .15);
      border: 1px solid rgba(217, 255, 80, .35);
    }
    .conseil-ia-panel--synthese .conseil-ia-copy-one {
      color: var(--lichen) !important;
      border-left-color: rgba(217, 255, 80, .35) !important;
    }
    .conseil-ia-panel-head {
      display: flex;
      align-items: stretch;
      gap: 0;
      background: rgba(59, 73, 0, .04);
    }
    .conseil-ia-panel-toggle {
      flex: 1;
      display: flex;
      align-items: center;
      gap: .55rem;
      text-align: left;
      border: 0;
      background: transparent;
      padding: .7rem .85rem;
      font-weight: 600;
      font-size: .95rem;
      font-family: var(--cia-ui);
      color: var(--kaki);
      cursor: pointer;
      min-height: 2.75rem;
    }
    .conseil-ia-panel-toggle:hover { background: rgba(217, 255, 80, .22); }
    .conseil-ia-panel-toggle:focus-visible {
      outline: 2px solid var(--kaki);
      outline-offset: -2px;
    }
    .conseil-ia-panel-chevron {
      display: inline-flex;
      transition: transform .18s ease;
      color: var(--kaki);
    }
    .conseil-ia-panel.is-open .conseil-ia-panel-chevron { transform: rotate(90deg); }
    .conseil-ia-panel-icon {
      width: 1.7rem;
      height: 1.7rem;
      border-radius: .4rem;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      color: var(--kaki);
      background: var(--lichen);
      font-size: .85rem;
      flex-shrink: 0;
    }
    .conseil-ia-panel-title { line-height: 1.25; }
    .conseil-ia-copy-one {
      border: 0 !important;
      border-left: 1px solid var(--cia-border) !important;
      border-radius: 0 !important;
      padding: 0 .85rem;
      background: transparent;
      color: var(--kaki) !important;
    }
    .conseil-ia-copy-one:hover { background: rgba(217, 255, 80, .25) !important; }
    .conseil-ia-panel-body {
      display: none;
      padding: 1rem 1.1rem 1.2rem;
      border-top: 1px solid var(--cia-border);
    }
    .conseil-ia-panel.is-open .conseil-ia-panel-body { display: block; }
    .conseil-ia-prose {
      font-family: var(--cia-body);
      font-size: var(--cia-fs, .98rem);
      line-height: var(--cia-lh, 1.65);
      color: var(--cacao);
      max-width: 68ch;
    }
    .conseil-ia-prose p { margin: 0 0 .75em; }
    .conseil-ia-prose p:last-child { margin-bottom: 0; }
    .conseil-ia-prose .conseil-ia-h {
      font-family: var(--cia-ui);
      font-size: calc(var(--cia-fs, .98rem) * 1.08);
      font-weight: 700;
      color: var(--kaki);
      margin: 1em 0 .4em;
      line-height: 1.35;
    }
    .conseil-ia-prose .conseil-ia-h:first-child { margin-top: 0; }
    .conseil-ia-prose .conseil-ia-list {
      margin: 0 0 .85em;
      padding-left: 1.25rem;
    }
    .conseil-ia-prose .conseil-ia-list li { margin-bottom: .4em; }
    .conseil-ia-prose .conseil-ia-list li::marker { color: var(--kaki); }
    .conseil-ia-prose strong { font-weight: 650; color: var(--cacao); }
    .conseil-ia-prose code {
      font-size: .88em;
      padding: .1em .35em;
      border-radius: .25rem;
      background: rgba(217, 255, 80, .25);
      color: var(--kaki);
    }
    .conseil-ia-hint {
      opacity: .85;
      font-family: var(--cia-ui);
      color: #6b6b48 !important;
    }
    .conseil-ia-hist-layout {
      display: grid;
      grid-template-columns: minmax(220px, 320px) 1fr;
      gap: 1rem;
      align-items: start;
    }
    @media (max-width: 900px) {
      .conseil-ia-hist-layout { grid-template-columns: 1fr; }
    }
    .conseil-ia-hist-list {
      display: flex;
      flex-direction: column;
      gap: .4rem;
      max-height: 70vh;
      overflow-y: auto;
    }
    .conseil-ia-hist-item {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      gap: .15rem;
      text-align: left;
      width: 100%;
      border: 1px solid var(--cia-border);
      border-radius: 10px;
      background: var(--cia-surface);
      padding: .65rem .8rem;
      cursor: pointer;
      font-family: var(--cia-ui);
    }
    .conseil-ia-hist-item:hover,
    .conseil-ia-hist-item.active {
      border-color: var(--kaki);
      background: var(--cia-surface-alt);
      box-shadow: 0 1px 4px rgba(59, 73, 0, .08);
    }
    .conseil-ia-hist-title { font-weight: 600; font-size: .92rem; color: var(--kaki); }
    .conseil-ia-hist-stats {
      display: flex;
      flex-wrap: wrap;
      gap: .65rem 1rem;
      font-family: var(--cia-ui);
      font-size: .84rem;
      margin-bottom: .65rem;
    }
    .conseil-ia-hist-stat {
      display: inline-flex;
      align-items: center;
      gap: .35rem;
      color: #5a5a40;
    }
    .conseil-ia-hist-stat strong { color: var(--kaki); }
    .conseil-ia-hist-stat--up i { color: #3c7a22; }
    .conseil-ia-hist-stat--down i { color: #9a1c1c; }
    .conseil-ia-hist-vote--up { color: #3c7a22; }
    .conseil-ia-hist-vote--down { color: #9a1c1c; }
    .conseil-ia-hist-filters {
      display: flex;
      flex-wrap: wrap;
      gap: .35rem;
      margin-bottom: .5rem;
    }
    .conseil-ia-hist-filter {
      border: 1.5px solid #ccd0b0;
      border-radius: 999px;
      background: #FCFFE9;
      color: #666650;
      font-family: var(--cia-ui);
      font-size: .78rem;
      font-weight: 600;
      padding: .28rem .75rem;
      cursor: pointer;
      transition: all .12s;
    }
    .conseil-ia-hist-filter:hover:not(.active) {
      border-color: var(--kaki);
      color: var(--kaki);
    }
    .conseil-ia-hist-filter.active {
      background: var(--kaki);
      border-color: var(--kaki);
      color: var(--lichen);
    }
    .conseil-ia-hist-stats-hint {
      font-family: var(--cia-ui);
      line-height: 1.45;
    }
    .conseil-ia-hist-detail {
      border: 1px solid var(--cia-border);
      border-left: 3px solid var(--lichen);
      border-radius: 10px;
      background: var(--cia-surface);
      padding: .85rem;
      min-height: 8rem;
    }
    .conseil-ia-prompt-replay {
      border-left: 3px solid var(--lichen);
      padding-left: .75rem;
      font-size: .9rem;
      line-height: 1.55;
    }
    @media print {
      #admin-sidebar, .admin-chips-nav, .conseil-ia-toolbar,
      .conseil-ia-form, .conseil-ia-explain, .conseil-ia-hero,
      .conseil-ia-copy-one, .conseil-ia-hint,
      .conseil-ia-persona-chips, .conseil-ia-shortcuts,
      .conseil-ia-persona-fieldset, .conseil-ia-refs-fieldset,
      .conseil-ia-hist-actions, .conseil-ia-refs-used,
      .conseil-ia-has-tip[data-tip]::after,
      .conseil-ia-tip-float { display: none !important; }
      .conseil-ia-panel-body { display: block !important; }
      .conseil-ia-panel { break-inside: avoid; box-shadow: none; }
    }
  