/* Extrait tel quel du monocode V1 — parité totale. */
      .phrtype-btn {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        padding: 8px 14px;
        margin: 6px 0 8px;
        background: #fed7aa;
        color: #7c2d12;
        border: 2px solid #ea580c;
        border-left: 5px solid #c2410c;
        border-radius: 8px;
        font-size: 12.5px;
        font-weight: 800;
        cursor: pointer;
        transition: all 0.18s;
        font-family: inherit;
        box-shadow: 0 2px 6px rgba(234, 88, 12, 0.3);
        letter-spacing: 0.02em;
        text-shadow: 0 1px 0 rgba(255, 255, 255, 0.4);
      }
      .phrtype-btn:hover {
        background: #fdba74;
        color: #7c2d12;
        transform: translateY(-1px);
        box-shadow: 0 4px 12px rgba(234, 88, 12, 0.45);
        border-color: #9a3412;
      }
      .phrtype-btn:active {
        transform: translateY(0);
        box-shadow: 0 1px 3px rgba(234, 88, 12, 0.3);
      }
      .phrtype-btn svg {
        width: 13px;
        height: 13px;
      }
      /* Modale Phrases-types */
      .phrtype-list {
        display: flex;
        flex-direction: column;
        gap: 6px;
        max-height: 60vh;
        overflow-y: auto;
        padding-right: 4px;
      }
      /* Sous-titre de groupe (▸ Les plus fréquents / ◆ Cas spécifiques / etc.) */
      .phrtype-group-title {
        font-size: 11.5px;
        font-weight: 800;
        color: #9a3412;
        margin: 14px 0 6px;
        text-transform: uppercase;
        letter-spacing: 0.06em;
        padding: 6px 10px;
        background: linear-gradient(90deg, #ffedd5, transparent);
        border-left: 4px solid #ea580c;
        border-radius: 4px;
        display: flex;
        align-items: center;
        gap: 8px;
      }
      .phrtype-group-title:first-child {
        margin-top: 0;
      }
      .phrtype-group-count {
        background: #fed7aa;
        color: #9a3412;
        padding: 1px 7px;
        border-radius: 10px;
        font-size: 10px;
        font-weight: 700;
      }
      .phrtype-card {
        padding: 11px 14px;
        background: var(--white);
        border: 1px solid var(--gray-200);
        border-left: 3px solid #ea580c;
        border-radius: 8px;
        cursor: pointer;
        transition: 0.15s;
      }
      .phrtype-card:hover {
        background: #fffbeb;
        border-color: #ea580c;
        transform: translateX(3px);
        box-shadow: 0 2px 8px rgba(234, 88, 12, 0.1);
      }
      .phrtype-card-title {
        font-size: 12px;
        font-weight: 700;
        color: #9a3412;
        margin-bottom: 5px;
        text-transform: uppercase;
        letter-spacing: 0.03em;
        display: flex;
        align-items: center;
        gap: 8px;
      }
      .phrtype-card-num {
        background: #fed7aa;
        color: #9a3412;
        padding: 1px 7px;
        border-radius: 10px;
        font-size: 10px;
        font-weight: 800;
        min-width: 22px;
        text-align: center;
      }
      .phrtype-card-text {
        font-size: 12.5px;
        color: var(--gray-800);
        line-height: 1.55;
      }
      /* Colorations différenciées par groupe */
      .phrtype-card-simple {
        border-left-color: #16a34a;
      }
      .phrtype-card-simple:hover {
        background: #f0fdf4;
      }
      .phrtype-card-special {
        border-left-color: #0284c7;
      }
      .phrtype-card-special:hover {
        background: #f0f9ff;
      }
      .phrtype-card-sub {
        border-left-color: #7c3aed;
      }
      .phrtype-card-sub:hover {
        background: #faf5ff;
      }
      .phrtype-card-extra {
        border-left-color: #a1a1aa;
      }
      .phrtype-card-extra:hover {
        background: #fafafa;
      }
      .phrtype-card-detailed {
        border-left-color: #ea580c;
      }
      .phrtype-cat-tab {
        display: flex;
        gap: 6px;
        margin-bottom: 14px;
        flex-wrap: wrap;
        border-bottom: 1px solid var(--gray-200);
        padding-bottom: 8px;
      }
      .phrtype-cat-tab button {
        padding: 6px 12px;
        background: var(--gray-50);
        border: 1px solid var(--gray-200);
        border-radius: 6px;
        font-size: 11.5px;
        font-weight: 600;
        color: var(--gray-700);
        cursor: pointer;
      }
      .phrtype-cat-tab button.active {
        background: #ea580c;
        color: #fff;
        border-color: #ea580c;
      }
      /* Bandeau unique (1 seule catégorie) — remplace les onglets multi-catégorie */
      .phrtype-cat-banner {
        display: flex;
        align-items: center;
        gap: 10px;
        margin-bottom: 14px;
        padding: 10px 14px;
        background: linear-gradient(90deg, #fed7aa, #ffedd5);
        border: 2px solid #ea580c;
        border-left: 5px solid #c2410c;
        border-radius: 8px;
        box-shadow: 0 2px 6px rgba(234, 88, 12, 0.2);
      }
      .phrtype-cat-banner-label {
        font-size: 10.5px;
        font-weight: 700;
        color: #9a3412;
        text-transform: uppercase;
        letter-spacing: 0.06em;
        padding: 3px 8px;
        background: rgba(255, 255, 255, 0.5);
        border-radius: 4px;
      }
      .phrtype-cat-banner-name {
        font-size: 15px;
        font-weight: 800;
        color: #7c2d12;
        flex: 1;
      }
      .phrtype-cat-banner-count {
        font-size: 11.5px;
        font-weight: 700;
        color: #9a3412;
        padding: 4px 10px;
        background: rgba(255, 255, 255, 0.7);
        border-radius: 12px;
      }
      /* Modale Convocation expertise contradictoire */
      .conv-exp-list {
        display: flex;
        flex-direction: column;
        gap: 10px;
      }
      .conv-exp-tier {
        padding: 12px 14px;
        border: 1.5px solid var(--gray-200);
        border-radius: 9px;
        background: var(--white);
        transition: 0.12s;
      }
      .conv-exp-tier.checked {
        border-color: #0f766e;
        background: rgba(15, 118, 110, 0.05);
      }
      .conv-exp-tier-head {
        display: flex;
        align-items: center;
        gap: 10px;
        cursor: pointer;
      }
      .conv-exp-tier-head input[type="checkbox"] {
        width: 17px;
        height: 17px;
        accent-color: #0f766e;
      }
      .conv-exp-tier-title {
        font-size: 13px;
        font-weight: 700;
        color: var(--gray-900);
        flex: 1;
      }
      .conv-exp-tier-body {
        display: none;
        margin-top: 10px;
        padding-top: 10px;
        border-top: 1px dashed var(--gray-200);
      }
      .conv-exp-tier.checked .conv-exp-tier-body {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 8px;
      }
      .conv-exp-tier-body label {
        font-size: 10.5px;
        font-weight: 600;
        color: var(--gray-600);
        text-transform: uppercase;
        letter-spacing: 0.04em;
        display: block;
        margin-bottom: 2px;
      }
      .conv-exp-tier-body input {
        width: 100%;
        padding: 6px 8px;
        border: 1px solid var(--gray-200);
        border-radius: 5px;
        font-size: 12px;
      }
