:root{
    --primary:#004660;
    --accent:#f7941d;

    --bg:#f6f8fa;
    --surface:#ffffff;
    --border:#e6eaee;

    --text:#0f172a;
    --muted:#475569;

    --radius:16px;
    --shadow: 0 10px 30px rgba(15, 23, 42, 0.08);
    --shadow2: 0 6px 16px rgba(15, 23, 42, 0.05);
}

.newcharte{

}

/* Header */
.newcharte .company-header{
    background: linear-gradient(135deg, var(--primary), #003649);
    color:#fff;
    border-radius:20px;
    padding:22px 22px;
    box-shadow: var(--shadow);
    position:relative;
    overflow:hidden;
}
.newcharte .company-header:after{
    content:"";
    position:absolute;
    right:-120px; top:-120px;
    width:280px; height:280px;
    background: radial-gradient(circle, rgba(247,148,29,.25), rgba(247,148,29,0));
    transform: rotate(10deg);
    pointer-events:none;
}

.newcharte .header-top{
    display:flex;
    justify-content:space-between;
    gap:16px;
    align-items:flex-start;
}

.newcharte .company-title{
    margin:0;
    font-size:28px;
    letter-spacing:-0.3px;
    line-height:1.1;
}
.newcharte .subline{
    margin:8px 0 0;
    opacity:.92;
    font-size:13.5px;
}
.newcharte .subline code{
    background: rgba(255,255,255,.14);
    border:1px solid rgba(255,255,255,.20);
    padding:2px 6px;
    border-radius:10px;
    color:#fff;
}

.newcharte .badges{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    justify-content:flex-end;
}
.newcharte .badge{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:6px 10px;
    border-radius:999px;
    font-size:12px;
    font-weight:700;
    background: rgba(255,255,255,.14);
    border:1px solid rgba(255,255,255,.22);
    white-space:nowrap;
}
.newcharte .dot{
    width:8px;height:8px;border-radius:999px;
    display:inline-block;
    background: rgba(0,70,96,.25);
}
.newcharte .dot.dot-orange{
    background: var(--accent);
    box-shadow:0 0 0 4px rgba(247,148,29,.18);
}
.newcharte .dot.dot-blue{
    background: var(--primary);
    box-shadow:0 0 0 4px rgba(247,148,29,.18);
}

.newcharte .kpis{
    display:grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap:12px;
    margin-top:16px;
    position:relative;
    z-index:1;
}
.newcharte .kpi{
    background: rgba(255,255,255,.10);
    border:1px solid rgba(255,255,255,.18);
    border-radius:14px;
    padding:12px;
    min-height:72px;
}
.newcharte .kpi .label{
    font-size:12px;
    opacity:.85;
}
.newcharte .kpi .value{
    margin-top:6px;
    font-size:18px;
    font-weight:900;
    letter-spacing:-0.2px;
}
.newcharte .kpi .trend{
    margin-top:4px;
    font-size:12px;
    color: var(--accent);
    font-weight:800;
}






/* Tabs */
.newcharte .tabs{
    margin-top:14px;
    background:var(--surface);
    border:1px solid var(--border);
    border-radius:18px;
    padding:8px;
    display:flex;
    gap:6px;
    flex-wrap:wrap;
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.05);
    position:sticky;
    top:12px;
    z-index:20;
    backdrop-filter:saturate(180%) blur(8px);
    font-size:14px;
}

.newcharte .tab-btn{
    background: #f7fafc;
    border: 1px solid transparent;
    padding: 10px 14px;
    border-radius: 14px;
    cursor: pointer;
    font-weight: 800;
    color: var(--muted);
    transition:
            background .15s ease,
            border-color .15s ease,
            color .15s ease,
            box-shadow .15s ease;
    display: inline-flex;
    gap: 8px;
    align-items: center;
    user-select: none;
}

.newcharte .tab-btn:hover{
    background: #edf3f6;
    border-color: #cfe0ea;
    color: var(--primary);
}

.newcharte .tab-btn.active{
    background: #e6f2f6;
    border-color: #bcd6e4;
    color: var(--primary);
    box-shadow:
            inset 0 -3px 0 var(--accent),
            0 2px 6px rgba(0,70,96,.08);
}

.newcharte .tab-btn.active:hover{
    background: #e6f2f6;
}




.newcharte .subtab{
    margin-top:12px;
    border-radius:18px;
    border:1px solid var(--border);
    background: #eef5fa; /* bleu ultra clair, différent du niveau 1 */
    padding:8px;
    box-shadow: 0 6px 16px rgba(15, 23, 42, 0.04);
}

/* Entête compact (optionnel) */
.newcharte .subtab-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin:0 4px 8px;
}
.newcharte .subtab-title{
    font-size:11px;
    font-weight:1000;
    color:var(--muted);
    letter-spacing:.2px;
    text-transform:uppercase;
}
.newcharte .subtab-hint{
    font-size:11px;
    color:var(--muted);
    opacity:.85;
}

/* Container segments */
.newcharte .subtab-segments{
    display:flex;
    gap:6px;
    flex-wrap:wrap;
    align-items:center;
}

/* Segment */
.newcharte .subtab-btn{
    border:1px solid rgba(0,70,96,.18);
    background: rgba(255,255,255,.30);
    padding:9px 12px;
    border-radius:14px;
    cursor:pointer;
    user-select:none;
    display:inline-flex;
    align-items:center;
    gap:8px;
    font-weight:900;
    font-size:12.5px;
    color:var(--primary);
    transition:.15s ease;
}

/* Hover = légère surbrillance */
.newcharte .subtab-btn:hover{
    background: rgba(255,255,255,.55);
    border-color: rgba(0,70,96,.26);
}

/* Active = “pill” blanc + ombre, sans accent underline */
.newcharte .subtab-btn.active{
    background:var(--primary);
    color:white;
    border-color: rgba(0,70,96,.20);
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.08);
}

.newcharte .subtab-content{
    display:none;
}
.newcharte .subtab-content.active{
    display:block;
}
/* Badge compteur */
.newcharte .subtab-count{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:20px;
    height:20px;
    padding:0 6px;
    border-radius:999px;
    font-size:11px;
    font-weight:1000;
    background: rgba(0,70,96,.10);
    color: var(--primary);
}
.newcharte .subtab-btn.active .subtab-count{
    background: rgba(247,148,29);
}

.newcharte .subtab-btn.active .dot{
    background: var(--accent);
    box-shadow: 0 0 0 4px rgba(247,148,29,.18);
}


/*SUB TAB V1
.newcharte .subtabs-wrap{
    margin-top:10px;
    padding:8px;
    border-radius:16px;
    border:1px solid var(--border);
    background: #f1f6fa;
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.04);
}
.newcharte .subtabs{
    list-style:none;
    margin:0;
    padding:0;
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    align-items:center;
}
.newcharte .subtab-btn{
    position:relative;
    border:1px solid rgba(0,70,96,.14);
    background: rgba(255,255,255,.70);
    padding:8px 10px 8px 12px;
    border-radius:14px;
    cursor:pointer;
    font-weight:800;
    color:var(--muted);
    transition:.15s ease;
    user-select:none;
    font-size:12px;
    display:inline-flex;
    align-items:center;
    gap:8px;
}
.newcharte .subtab-btn:before{
    content:"";
    width:4px;
    height:16px;
    border-radius:999px;
    background: rgba(0,70,96,.18);
    display:inline-block;
}
.newcharte .subtab-btn:hover{
    background:#fff;
    color:var(--primary);
    border-color: rgba(0,70,96,.22);
}
.newcharte .subtab-btn.active{
    color:var(--primary);
    background:#fff;
    border-color: rgba(247,148,29,.45);
    box-shadow: 0 6px 14px rgba(247,148,29,.10);
}
.newcharte .subtab-btn.active:before{
    background: var(--accent);
}
.newcharte .subtab-count{
    font-size:11px;
    font-weight:1000;
    padding:3px 7px;
    border-radius:999px;
    background: rgba(0,70,96,.08);
    color:var(--primary);
    border:1px solid rgba(0,70,96,.10);
}
.newcharte .subtab-btn.active .subtab-count{
    background: rgba(247,148,29,.12);
    border-color: rgba(247,148,29,.25);
}
*/



/*SUB TAB V2
.newcharte .subtabs-rail{
    margin-top:10px;
    padding:6px 8px;
    border-radius:16px;
    border:1px solid var(--border);
    background:#ffffff;
    box-shadow: 0 6px 16px rgba(15, 23, 42, 0.04);
}
.newcharte .subtabs-rail .subtabs-label{
    display:inline-flex;
    align-items:center;
    gap:8px;
    font-size:11px;
    font-weight:900;
    color:var(--muted);
    margin:0 8px 6px;
}
.newcharte .subtabs-rail .subtabs-label:before{
    content:"";
    width:8px;height:8px;border-radius:999px;
    background: rgba(0,70,96,.18);
}
.newcharte .subtabs2{
    list-style:none;
    margin:0;
    padding:0;
    display:flex;
    gap:6px;
    flex-wrap:wrap;
    align-items:center;
}
.newcharte .subtab2-btn{
    border:1px solid rgba(0,70,96,.12);
    background: #f1f6fa;
    color: var(--primary);
    padding:7px 10px;
    border-radius:999px;
    cursor:pointer;
    font-weight:900;
    font-size:12px;
    transition:.15s ease;
    user-select:none;
    display:inline-flex;
    align-items:center;
    gap:8px;
}
.newcharte .subtab2-btn:hover{
    background:#eaf2f8;
    border-color: rgba(0,70,96,.18);
}
.newcharte .subtab2-btn.active{
    background:#fff;
    border-color: rgba(0,70,96,.22);
    box-shadow: inset 0 -2px 0 rgba(0,70,96,.35);
}
.newcharte .subtab2-count{
    font-size:11px;
    font-weight:1000;
    padding:2px 7px;
    border-radius:999px;
    background: rgba(0,70,96,.10);
    color: var(--primary);
}
.newcharte .subtab2-btn.active .subtab2-count{
    background: rgba(247,148,29,.18);
}
*/




/*LOADER*/
.newcharte .card-loader{
    display:flex;
    align-items:center;
    gap:14px;
    padding:18px;
    border-radius:14px;
    background:#f9fbfc;
    border:1px dashed var(--border);
}

.newcharte .card-loader-gif{
    width:100px;
    height:auto;
    flex:0 0 auto;
}

.newcharte .card-loader-title{
    font-size:17px;
    font-weight:700;
    color:var(--primary);
    letter-spacing:-0.1px;
}

.newcharte .card-loader-sub{
    margin-top:4px;
    font-size:12.5px;
    color:var(--muted);
    font-weight:700;
}

/* état erreur */
.newcharte .card-loader-error{
    border-style:solid;
    background: rgba(239,68,68,.06);
    border-color: rgba(239,68,68,.22);
}
.newcharte .card-loader-error .card-loader-title{
    color:#b91c1c;
}



/* Content */
.newcharte .tab-content{
    display:none;
    margin-top:16px;
}
.newcharte .tab-content.active{
    display:block;
}

.newcharte .grid{
    display:grid;
    grid-template-columns: repeat(12, 1fr);
    gap:14px;
}
.newcharte .card{
    grid-column: span 6;
    background:var(--surface);
    border:1px solid var(--border);
    border-radius: var(--radius);
    padding:16px;
    box-shadow: var(--shadow2);
}
.newcharte .card h3{
    margin:0 0 10px;
    font-size:16px;
    color:var(--primary);
    letter-spacing:-0.1px;
}
.newcharte .muted{
    color:var(--muted);
}
.newcharte .pill{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:8px 10px;
    border-radius:999px;
    border:1px solid var(--border);
    background:#fbfdff;
    font-weight:800;
    font-size:12px;
    color:var(--primary);
}
.newcharte .pill strong{ color:var(--accent); }

.newcharte .row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:10px 0;
    border-top:1px dashed var(--border);
}
.newcharte .row:first-child{ border-top:0; padding-top:0; }
.newcharte .row .k{ font-size:13px; color:var(--muted); }
.newcharte .row .v{ font-size:13px; font-weight:800; color:var(--text); }

/* Table */
.newcharte .table-wrap{ overflow:auto; border-radius:14px; border:1px solid var(--border); }
.newcharte table{
    width:100%;
    border-collapse:separate;
    border-spacing:0;
    min-width: 720px;
    background:var(--surface);
}
.newcharte thead th{
    background:var(--primary);
    color:#fff;
    text-align:left;
    padding:10px 12px;
    font-size:13px;
    position:sticky;
    top:0;
    z-index:2;
}
.newcharte tbody td{
    padding:10px 12px;
    border-top:1px solid var(--border);
    font-size:13px;
    vertical-align:top;
}
.newcharte tbody tr:nth-child(even){
    background:#f9fbfc;
}





/*LISTABLE TYPE TABLE*/
.newcharte .listable{
    display:flex;
    flex-direction:column;
}

.newcharte .listable .row{
    display:grid;
    grid-template-columns: 220px 1.4fr 1fr;
    gap:14px;
    padding:12px 16px;
    border-top:1px solid var(--border);
    align-items:flex-start;
    background:#fff;
}
.newcharte .listable .value-wrap{
    display:flex;
    align-items:center;
    min-height:32px;
}
.newcharte .listable .row:first-child{ border-top:0; }

/* Alternance + hover */
.newcharte .listable .row:nth-child(even){
    background:#f9fbfc;
}
.newcharte .listable .row:hover{
    background:#eef6fa;
}

.newcharte .listable .row .k{
    color: var(--muted);
    font-size:12.5px;
    font-weight:900;
    text-transform:none;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    align-self:center;
}

.newcharte .listable .row .v{
    color: var(--text);
    font-size:13.5px;
    font-weight:1000;
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.newcharte .listable .row .d{
    color: var(--muted);
    font-size:12.5px;
    font-weight:700;
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

/* Séparateurs verticaux subtils */
.newcharte .listable .row .v{
    padding-left:14px;
    border-left:1px dashed rgba(0,70,96,.18);
}
.newcharte .listable .row .d{
    padding-left:14px;
    border-left:1px dashed rgba(0,70,96,.12);
}

/* IDs */
.newcharte .listable .row.is-id .v{
    background: rgba(247,148,29,.08);
    border-radius:10px;
    padding:8px 10px;
    border-left:0;
}
.newcharte .listable .row.is-id .k{
    color: var(--primary);
}
.newcharte .listable .row.is-id .d{
    border-left:0;
}

.newcharte .listable .row .mono{
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    letter-spacing:.2px;
}

/* Buttons */
.newcharte .btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:10px 12px;
    border-radius:14px;
    border:1px solid transparent;
    cursor:pointer;
    font-weight:900;
    transition:.15s ease;
    font-size:13px;
    white-space:nowrap;
    height:40px;
}
.newcharte .btn-primary{
    background:var(--accent);
    color:#1f2937;
}
.newcharte .btn-primary:hover{ filter:brightness(.96); }
.newcharte .btn-outline{
    background:transparent;
    border-color:rgba(247,148,29,.45);
    color:var(--primary);
}
.newcharte .btn-outline:hover{ background: rgba(247,148,29,.12); }

.newcharte .btn-ghost{
    background:#f2f6f8;
    border-color:#f2f6f8;
    color:var(--primary);
}
.newcharte .btn-ghost:hover{ filter:brightness(.98); }

.newcharte .actions{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    justify-content:flex-end;
}

/* People cards */
.newcharte .person{
    display:flex;
    gap:12px;
    align-items:flex-start;
    padding:12px;
    border:1px solid var(--border);
    border-radius:14px;
    background:#fff;
    margin-top:10px;
}
.newcharte .avatar{
    width:38px;height:38px;border-radius:12px;
    background:#e6f2f6;
    border:1px solid var(--border);
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:1000;
    color:var(--primary);
}
.newcharte .p-title{
    font-weight:1000;
    letter-spacing:-0.1px;
}
.newcharte .p-meta{
    margin-top:4px;
    font-size:12.5px;
    color:var(--muted);
}
.newcharte .p-tags{
    margin-top:8px;
    display:flex;
    gap:6px;
    flex-wrap:wrap;
}
.newcharte .tag{
    font-size:12px;
    font-weight:800;
    padding:6px 8px;
    border-radius:999px;
    background:#f2f6f8;
    color:var(--primary);
    border:1px solid var(--border);
}
.newcharte .tag.hot{
    background: rgba(247,148,29,.12);
    border-color: rgba(247,148,29,.35);
    color: var(--primary);
}

/* Timeline */
.newcharte .timeline{
    position:relative;
    margin-top:6px;
    padding-left:22px;
}
.newcharte .timeline:before{
    content:"";
    position:absolute;
    left:9px;
    top:0;
    bottom:0;
    width:2px;
    background: var(--border);
}
.newcharte .event{
    position:relative;
    padding:12px 12px 12px 14px;
    margin:20px 0;
    background:var(--surface);
    border:1px solid var(--border);
    border-radius:14px;
    box-shadow: var(--shadow2);
}
.newcharte .event:before{
    content:"";
    position:absolute;
    left:-20px;
    top:16px;
    width:12px;
    height:12px;
    border-radius:999px;
    background: var(--accent);
    box-shadow: 0 0 0 4px rgba(247,148,29,.18);
}
.newcharte .event.blue:before{
    background:#0b6a86;
    box-shadow:0 0 0 4px rgba(0,70,96,.16);
}
.newcharte .event .meta{
    font-size:12px;
    color:var(--muted);
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    align-items:center;
}
.newcharte .event .title{
    margin-top:15px;
    font-weight:1000;
    color:var(--primary);
}
.newcharte .event .desc{
    margin-top:15px;
    font-size:13px;
    color:var(--text);
    line-height:1.35;
}

/* Footer note */
.newcharte .note{
    margin-top:14px;
    padding:12px 14px;
    border-radius:14px;
    border:1px dashed rgba(0,70,96,.25);
    background: rgba(0,70,96,.06);
    color: var(--primary);
    font-size:13px;
    font-weight:700;
}


.newcharte .dir-table{
    --col-actions: 230px;
    --col-person: 2.2fr;
    --col-role: 3fr;
    --col-meta: 2fr;
}

/* Même grille pour header + lignes */
.newcharte .dir-row{
    display: grid;
    grid-template-columns:
        var(--col-person)
        var(--col-role)
        var(--col-meta)
        var(--col-actions);
    gap: 12px;
    align-items: center;
}

/* Header */
.newcharte .dir-row.dir-header{
    background: var(--primary);
    color: #fff;
    font-weight: 800;
}

/* Colonne actions verrouillée */
.newcharte .dir-col.col-actions{
    width: var(--col-actions);
    min-width: var(--col-actions);
    max-width: var(--col-actions);
    box-sizing: border-box;
}

/* Enrichissement : même largeur que la colonne */
.newcharte .enrich-wrap{
    width: var(--col-actions);
    min-width: var(--col-actions);
    max-width: var(--col-actions);
    display: flex;
    flex-direction: column;
    gap: 6px;
}

/* Sécurité anti débordement */
.newcharte .dir-col{
    min-width: 0;
}

/* Dirigeants table */
.newcharte .dir-table{
    width:100%;
    border:1px solid var(--border);
    border-radius:16px;
    overflow:hidden;
}

.newcharte #decideur .dir-table {
    border-radius:0 0 16px 16px;
}
.newcharte #decideur .subtab {
    border-radius:16px 16px 0 0;
}


.newcharte .dir-row{
    display:grid;
    grid-template-columns: 2.5fr 3fr 2fr 1.5fr;
    gap:12px;
    padding:12px 14px;
    align-items:center;
    background:#fff;
    border-top:1px solid var(--border);
}

.newcharte .dir-row:first-child{ border-top:0; }

.newcharte .dir-header{
    background:var(--primary);
    color:#fff;
    font-weight:800;
    font-size:13px;
}

.newcharte .dir-col{ font-size:13px; }

/* Person */
.newcharte .dir-person{
    display:flex;
    gap:10px;
    align-items:center;
}

.newcharte .dir-avatar{
    width:42px;
    height:42px;
    border-radius:14px;
    background:#e6f2f6;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:900;
    color:var(--primary);
    overflow:hidden;
}

.newcharte .dir-avatar img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.newcharte .dir-name{
    font-weight:900;
    color:var(--text);
}

.newcharte .dir-seniority{
    margin-top:2px;
    font-size:11px;
    font-weight:800;
    color:var(--primary);
    background:#e6f2f6;
    display:inline-block;
    padding:2px 6px;
    border-radius:999px;
}

/* Role */
.newcharte .dir-job{
    font-weight:700;
    color:var(--text);
}
.newcharte .dir-holding{
    margin-top:4px;
    font-size:12px;
    color:var(--muted);
}

/* Meta */
.newcharte .dir-meta-line{
    font-size:12px;
    color:var(--muted);
}

/* Actions */
.newcharte .dir-actions{
    display:flex;
    gap:6px;
    justify-content:flex-end;
}


.newcharte .btn-linkedin{
    background:#0e76a8;
    color:#fff;
    border-color:#0e76a8;
}

.newcharte .btn-linkedin:hover{
    filter:brightness(.95);
}

/* Hover */
.newcharte .dir-row:not(.dir-header):hover{
    background:#f9fbfc;
}

.newcharte .dir-row:not(.dir-header):nth-child(even){
    background: #f9fbfc;   /* très léger, cohérent avec le reste */
}

/* lignes impaires (optionnel – si tu veux forcer le blanc) */
.newcharte .dir-row:not(.dir-header):nth-child(odd){
    background: #ffffff;
}

/* hover garde la priorité */
.newcharte .dir-row:not(.dir-header):hover{
    background: #eef6fa;
}


/* Wrap sous-tabs (niveau 2)
.newcharte .dir-subtabs-wrap{
    margin-top:12px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 18px;
    padding: 8px;
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.05);
}

/* UL
.newcharte .decideur-tabs{
    list-style:none;
    margin:0;
    padding:0;
    display:flex;
    gap:6px;
    flex-wrap:wrap;
}

.newcharte .decideur-tabs .load_dir{
    border:0;
    padding:10px 12px;
    border-radius:14px;
    cursor:pointer;
    font-weight:700;
    color:var(--muted);
    transition:.15s ease;
    user-select:none;
    font-size:12px;
    border:1px solid transparent;
}

.newcharte .decideur-tabs .load_dir:hover{
    color:var(--primary);
    background:#f2f6f8;
}

.newcharte .decideur-tabs .load_dir.active{
    color:var(--primary);
    background:#e6f2f6;
    border-color: rgba(0,70,96,.10);
    box-shadow: inset 0 -3px 0 var(--accent);
}
*/

.newcharte .fin-table{
    width:100%;
    border-collapse:separate;
    border-spacing:0;
    background:var(--surface);
    min-width: 900px;
}
.newcharte .fin-table thead th{
    background:var(--primary);
    color:#fff;
    text-align:left;
    padding:10px 12px;
    font-size:13px;
    position:sticky;
    top:0;
}
.newcharte .fin-table tbody td{
    padding:10px 12px;
    border-top:1px solid var(--border);
    font-size:13px;
    vertical-align:top;
}
.newcharte .fin-table tbody tr:nth-child(even){
    background:#f9fbfc;
}

.newcharte #caChart{
    background:#fff;
    border:1px solid var(--border);
    border-radius:16px;
    box-shadow: 0 6px 16px rgba(15, 23, 42, 0.05);
}

.newcharte .dir-actions{
    display:flex;
    flex-direction:column;
    gap:10px;
    align-items:flex-end; /* garde ton align à droite */
}

/* Barre d'actions en haut */
.newcharte .dir-top-actions{
    display:flex;
    gap:8px;
    justify-content:flex-end;
    width:420px;              /* ✅ aligne avec enrich-wrap si fixe */
    min-width:420px;
}

/* Boutons pills */
.newcharte .action-pill{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:0px 5px;
    border-radius:14px;
    border:1px solid var(--border);
    background:#fff;
    font-weight:1000;
    color:var(--primary);
    cursor:pointer;
    transition:.15s ease;
    text-decoration:none;
    box-shadow: var(--shadow2);
    min-height:33px;
}

.newcharte .action-pill:hover{
    background:#f9fbfc;
    border-color: rgba(0,70,96,.14);
}

.newcharte .action-pill .ic{
    width:30px;
    height:30px;
    border-radius:12px;
    background:#f2f6f8;
    border:1px solid var(--border);
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--primary);
}

.newcharte .action-pill .txt{
    font-size:13px;
    white-space:nowrap;
}

/* Saved state */
.newcharte .action-pill.is-saved{
    background: rgba(34,197,94,.12);
    border-color: rgba(34,197,94,.25);
    color:#0f172a;
}
.newcharte .action-pill.is-saved .ic{
    background: rgba(34,197,94,.12);
    border-color: rgba(34,197,94,.12);
    color:#16a34a;
}

.newcharte .action-pill.is-save{
    background: #000;
    border-color: #000;
    color:white;
}
.newcharte .action-pill.is-save .ic{
    background: #000;
    border-color: #000;
    color:white;
}



/* LinkedIn style */
.newcharte .action-pill.is-linkedin{
    background:#0e76a8;
    border-color:#0e76a8;
    color:#fff;
}
.newcharte .action-pill.is-linkedin:hover{
    filter:brightness(.96);
}
.newcharte .action-pill.is-linkedin .ic{
    background: #0e76a8;
    border-color: #0e76a8;
    color:#fff;
}



.newcharte .enrich-right{
    flex: 0 0 170px;
    text-align:right;
    font-size:12px;
    font-weight:900;
    color:var(--primary);
    overflow:hidden;
}

/* 1 seule ligne + ellipsis */
.newcharte .one-line{
    display:block;
    max-width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.newcharte .enrich-wrap{
    width: 230px;
    min-width: 230px;
    max-width: 230px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.newcharte .enrich-action{
    width: 100%;
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 7px 9px;
    border-radius: 14px;
    border: 1px solid var(--border);
    background: #fff;
    box-sizing: border-box;
}

.newcharte .enrich-action:hover{
    background:#f9fbfc;
    border-color: rgba(0,70,96,.14);
}

.newcharte .enrich-ic{
    width:34px;
    height:34px;
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#f2f6f8;
    border:1px solid var(--border);
    color:var(--primary);
    font-size:14px;
    flex:0 0 auto;
}

.newcharte .enrich-txt{ flex:1; min-width:0; }
.newcharte .enrich-title{
    font-weight:1000;
    color:var(--text);
    font-size:13px;
    line-height:1.1;
}
.newcharte .enrich-sub{
    margin-top:4px;
    font-size:12px;
    color:var(--muted);
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.newcharte .enrich-right{
    text-align:right;
    font-size:12px;
    font-weight:900;
    color:var(--primary);
    max-width:220px;
}

.newcharte .enrich-cta{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:6px 10px;
    border-radius:999px;
    background: rgba(247,148,29,.12);
    border:1px solid rgba(247,148,29,.35);
    color:var(--primary);
    font-weight:1000;
    white-space:nowrap;
}

.newcharte .enrich-empty{
    color:var(--muted);
    font-weight:800;
}

.newcharte .enrich-link{
    color:var(--primary);
    text-decoration:none;
    font-weight:1000;
}
.newcharte .enrich-link:hover{ text-decoration:underline; }

.newcharte .enrich-phoneval{
    font-weight:1000;
    color:var(--text);
}

/* États (pilotés par PHP) */
.newcharte .enrich-action.is-loading{
    border-style:dashed;
}
.newcharte .enrich-action.is-success{
    border-color: rgba(34,197,94,.25);
    background: rgba(34,197,94,.06);
}
.newcharte .enrich-action.is-muted{
    opacity:.75;
}
.newcharte .enrich-action.is-ready .enrich-cta{
    background: rgba(247,148,29,.12);
}

.newcharte .enrich-action.is-empty{
    background:#f3f4f6;
    border-color:#e5e7eb;
    opacity:.92;
}
.newcharte .enrich-action.is-empty .enrich-ic{
    background:#e5e7eb;
    color:#6b7280;
}
.newcharte .enrich-action.is-empty .enrich-right{
    color:#6b7280;
}

/* optionnel : état loading un peu plus “tech” */
.newcharte .enrich-action.is-loading{
    border-style:dashed;
}

/* quand compact (pas de title/sub) => centre vertical OK */
.newcharte .enrich-action{
    min-height:50px;
}




/* =========================
   Enrich - Historique (popup / card)
   Réutilise .card / .muted / vars existants
========================= */

/* zone scroll (remplace ton "left width-100-p height-230 scroll") */
.newcharte .enrich-history-scroll{
    max-height:260px;
    overflow:auto;
}

/* header compact (optionnel si tu mets un mini header dans la card) */
.newcharte .enrich-history-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    margin-bottom:10px;
}
.newcharte .enrich-history-title{
    font-weight:1000;
    color:var(--primary);
    letter-spacing:-0.1px;
    font-size:14px;
    margin:0;
}
.newcharte .enrich-history-sub{
    margin-top:4px;
    font-size:12px;
    color:var(--muted);
}

/* KPIs (réutilise tes patterns, mais version compacte) */
.newcharte .enrich-history-kpis{
    display:grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap:10px;
    margin:10px 0 12px;
}
.newcharte .enrich-history-kpi{
    border:1px solid var(--border);
    border-radius:14px;
    padding:10px 10px;
    background:#fbfdff;
}
.newcharte .enrich-history-kpi .k{
    font-size:11px;
    font-weight:900;
    color:var(--muted);
}
.newcharte .enrich-history-kpi .v{
    margin-top:4px;
    font-size:16px;
    font-weight:1000;
    color:var(--text);
}
.newcharte .enrich-history-kpi .v strong{
    color:var(--primary);
}

/* Liste */
.newcharte .enrich-history-list{
    border:1px solid var(--border);
    border-radius:14px;
    overflow:hidden;
    background:#fff;
}

/* Ligne (équivalent de tes rows) */
.newcharte .enrich-history-item{
    display:flex;
    justify-content:space-between;
    gap:12px;
    padding:12px 12px;
    border-top:1px solid var(--border);
    background:#fff;
}
.newcharte .enrich-history-item:first-child{ border-top:0; }
.newcharte .enrich-history-item:nth-child(even){ background:#f9fbfc; }

.newcharte .enrich-history-left{
    min-width:0;
}
.newcharte .enrich-history-id{
    font-size:13px;
    font-weight:1000;
    color:var(--text);
    max-width:420px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

/* Meta ligne = chips + email/phone */
.newcharte .enrich-history-meta{
    margin-top:6px;
    display:flex;
    align-items:center;
    gap:6px;
    flex-wrap:wrap;
    font-size:12px;
    color:var(--muted);
    min-width:0;
}
.newcharte .enrich-history-meta .one-line{
    max-width:420px;
}

.newcharte .enrich-history-meta a.one-line{
    display: block;         /* ou inline-block */
    max-width: 220px;       /* ajuste si besoin */
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0;
}

.newcharte .email-wrap{
    max-width: 220px;
    min-width: 0;
    display: block;
}

.newcharte .email-wrap .one-line{
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Right */
.newcharte .enrich-history-right{
    text-align:right;
    white-space:nowrap;
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:6px;
    padding-left:8px;
}

/* Chips (type/statut) — cohérent avec tes pills */
.newcharte .chip{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:5px 8px;
    border-radius:999px;
    border:1px solid var(--border);
    font-size:11px;
    font-weight:1000;
    background:#f2f6f8;
    color:var(--primary);
}
.newcharte .chip.type{
    background: rgba(247,148,29,.12);
    border-color: rgba(247,148,29,.35);
    color: var(--primary);
}
.newcharte .chip.ok{
    background: rgba(34,197,94,.10);
    border-color: rgba(34,197,94,.25);
    color: var(--text);
}
.newcharte .chip.warn{
    background: rgba(245,158,11,.12);
    border-color: rgba(245,158,11,.28);
    color: var(--text);
}
.newcharte .chip.err{
    background: rgba(239,68,68,.10);
    border-color: rgba(239,68,68,.25);
    color: var(--text);
}
.newcharte .chip.muted{
    background:#f3f4f6;
    border-color:#e5e7eb;
    color:#6b7280;
}

/* Score pill rond */
.newcharte .score-pill{
    width:28px;
    height:28px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-weight:1000;
    font-size:12px;
    border:1px solid var(--border);
}
.newcharte .score-pill.zero{ background:#f3f4f6; color:#6b7280; }
.newcharte .score-pill.ok{
    background: rgba(0,70,96,.10);
    border-color: rgba(0,70,96,.18);
    color: var(--primary);
}
.newcharte .score-pill.hot{
    background: rgba(247,148,29,.16);
    border-color: rgba(247,148,29,.32);
    color: var(--primary);
}

/* liens */
.newcharte .enrich-history-meta a{
    color: var(--primary);
    font-weight:1000;
    text-decoration:none;
}
.newcharte .enrich-history-meta a:hover{
    text-decoration:underline;
}

/* footer note */
.newcharte .enrich-history-foot{
    margin-top:10px;
    font-size:12px;
    color:var(--muted);
}

/* empty state */
.newcharte .enrich-history-empty{
    border:1px solid var(--border);
    border-radius:16px;
    background:#fbfdff;
    padding:14px;
}
.newcharte .enrich-history-empty .t{
    font-weight:1000;
    color:var(--primary);
}
.newcharte .enrich-history-empty .s{
    margin-top:6px;
    font-size:12px;
    color:var(--muted);
}






/* Responsive */
@media(max-width: 900px){
    .newcharte .kpis{ grid-template-columns: repeat(2, 1fr); }
    .newcharte .card{ grid-column: span 12; }
    .newcharte .tabs{ top:8px; }
    .newcharte table{ min-width: 640px; }

    .newcharte .dir-row{
        grid-template-columns: 1fr;
    }
    .newcharte .dir-actions{
        justify-content:flex-start;
        margin-top:8px;
    }
    .newcharte .listable .row{
        grid-template-columns: 1fr;
        gap:6px;
    }
    .newcharte .listable .row .v,
    .newcharte .listable .row .d{
        padding-left:0;
        border-left:0;
    }
}

/* Responsive */
@media(max-width:520px){
    .newcharte .enrich-history-kpis{
        grid-template-columns:1fr;
    }
    .newcharte .enrich-history-id{ max-width:220px; }
    .newcharte .enrich-history-meta .one-line{ max-width:220px; }
}