:root{
    --primary:#004660;/*BLEU*/
    --primary_head:#0a6c91;
    --primary_soft:#cbe2f2;
    --primary_light:#e0ebf3;
    --primary_ultra_light:#ebf5fd;
    --primary_dark:#023347;

    --secondary:#f7941d;/*ORANGE*/
    --secondary_head:#f69e35;
    --secondary_soft:#fcddb7;
    --secondary_light:#ffeedb;
    --secondary_ultra_light:#fff5eb;
    --secondary_dark:#E87E04;

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

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

    --grey: #d1d5db;
    --grey_light: #eef2f6;
    --grey_ultra_light: #fbfcff;
    --grey_dark: #4b5a68;

    --black: #0f172a;
    --black_light: #334155;
    --black_ultra_light: #64748b;
    --black_dark: #020617;

    --alert: #e25555;
    --alert_light: #ffcccc;
    --alert_ultra_light: #fff5f5;
    --alert_dark: #8b1e1e;

    --green: #2fb67c;
    --green_light: #e7f6ef;
    --green_ultra_light: #f3fbf7;
    --green_dark: #145a3a;

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


    --shadow-focus-primary:
            0 18px 46px rgba(15,23,42,.12),
            0 0 0 6px rgba(0,70,96,.14);

    --shadow-focus-secondary:
            0 18px 46px rgba(15,23,42,.10),
            0 0 0 6px rgba(247,148,29,.10);

    --shadow-focus-alert:
            0 18px 46px rgba(15,23,42,.12),
            0 0 0 6px rgba(220,38,38,.18);

}

.newcharte{

}


.newcharte input[type="text"], .newcharte input[type="email"], .newcharte input[type="password"] {
    border:none;
}





/* =========================
HEADER
========================= */
/* --- Topbar container --- */
.newcharte.db-topbar{
    position: fixed;
    top: 0; left: 0; right: 0;
    height: 56px;
    z-index: 999;
    background: var(--primary);
    border-bottom: 1px solid rgba(255,255,255,.10);
}

/* Inner layout */
.newcharte .db-topbar__inner{
    height: 56px;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 0 14px;
}

/* --- Logo --- */
.newcharte .db-topbar__left{
    display: flex;
    align-items: center;
    flex: 0 0 auto;
}

.newcharte .db-topbar__logo{
    display: flex;
    align-items: center;
    height: 56px;
}

.newcharte .db-topbar__logo img{
    height: 24px;
    width: auto;
    display: block;
}

/* --- Right zone --- */
.newcharte .db-topbar__right{
    display: flex;
    align-items: center;
    gap: 10px;
    margin-left: auto;
    flex: 0 0 auto;
}

/* --- Search --- */
.newcharte .db-topbar__search{
    display: flex;
    align-items: center;
    gap: 10px;
    height: 38px;
    padding: 0 12px;
    border-radius: var(--radius);
    background: rgba(2, 51, 71, 0.35); /* from --primary_dark */
    border: 1px solid rgba(255,255,255,.16);
}


.newcharte .db-topbar__searchInput{
    width: 100%;
    border: 0;
    outline: none;
    background: transparent;
    color: var(--surface);
    font-weight: 800;
    font-size: 13px;
}
.newcharte .db-topbar__searchInput::placeholder{
    color: rgba(255,255,255,.70);
    font-weight: 700;
}
.newcharte .db-topbar__searchInput:focus,
.newcharte .db-topbar__searchInput:focus-visible{
    outline: none;
    box-shadow: none;
    background: transparent;
}

/* Chrome autofill (évite jaune/bleu) */
.newcharte .db-topbar__searchInput:-webkit-autofill,
.newcharte .db-topbar__searchInput:-webkit-autofill:hover,
.newcharte .db-topbar__searchInput:-webkit-autofill:focus{
    -webkit-box-shadow: 0 0 0px 1000px transparent inset;
    -webkit-text-fill-color: var(--surface);
    transition: background-color 9999s ease-in-out 0s;
}

.newcharte .db-searchEmpty{
    display: flex;
    gap: 10px;

    padding: 14px 12px;
    font-size: 14px;
    font-weight: 600;
    color: var(--muted, #8a8f98);

    text-align: center;
    user-select: none;
}

/* Spinner */
.newcharte .db-searchEmpty i{
    font-size: 16px;
    color: var(--primary, #2f6bff);
}

/* Optionnel : état loading un peu plus visible */
.newcharte .db-searchEmpty.is-loading{
    color: var(--primary, #2f6bff);
}

.newcharte #search_company_content{
    min-height: 48px;
}



/* --- Base link style (IA + Aide trigger) --- */
.newcharte .db-topbar__link{
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 40px;
    padding: 0 10px;
    border-radius: 12px;
    text-decoration: none;
    font-weight: 900;
    font-size: 13px;
    color: rgba(255,255,255,.92);
    transition: .15s ease;
}
.newcharte .db-topbar__link:hover{
    background: rgba(255,255,255,.08);
    color: var(--surface);
}

/* --- Apps (highlight) --- */
.newcharte .db-topbar__apps{
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 40px;
    padding: 0 12px;
    border-radius: 14px;
    background: var(--secondary);
    border: 1px solid var(--secondary_dark);
    color: #fff;
    font-weight: 700;
    font-size: 15px;
    transition: .15s ease;
}

.newcharte .db-apps-icon{
    width: 18px;
    height: 18px;
    fill: currentColor;   /* clé */
    display: block;
}


.newcharte .db-topbar__apps span{
    position: relative;
    top: -1px;
}
.newcharte .db-topbar__apps:hover{ filter: brightness(.97); }

/* --- Cluster (Credits + User slightly detached) --- */
.newcharte .db-topbar__cluster{
    display: flex;
    align-items: center;
    gap: 8px;
    padding-left: 10px;
    margin-left: 2px;
    border-left: 1px solid rgba(255,255,255,.12);
}

/* Credits */
.newcharte .db-credit{
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 40px;
    padding: 0 10px;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,.14);
    background: rgba(2, 51, 71, 0.35);
    color: var(--surface);
    font-weight: 1000;
    font-size: 13px;
    transition: .15s ease;
}
.newcharte .db-credit:hover{ background: rgba(2, 51, 71, 0.46); }

.newcharte .db-credit__count{
    padding: 2px 8px;
    border-radius: 999px;
    background: var(--surface);
    color: var(--text);
    font-weight: 1000;
}

/* User */
.newcharte .db-user{
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 40px;
    padding: 0 10px;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,.14);
    background: rgba(2, 51, 71, 0.35);
    color: var(--surface);
    font-weight: 900;
    transition: .15s ease;
}
.newcharte .db-user:hover{ background: rgba(2, 51, 71, 0.46); }

.newcharte .db-user__avatar{
    color: var(--surface);
    text-decoration: none;
    font-size: 18px;
}
.newcharte .db-user__name{
    font-weight: 1000;
    font-size: 13px;
    color: var(--surface);
}

/* Help wrapper */
.newcharte .db-topbar__help{ position: relative; }

/* =========================
   Popovers
   ========================= */

/* Base popover: centered under trigger */
.newcharte .db-popover{
    position: absolute;
    top: calc(100% + 10px);
    left: 50%;
    right: auto;
    width: 360px;
    max-width: min(360px, 92vw);

    background: var(--surface);
    color: var(--text);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    padding: 10px;

    z-index: 9999;

    display: none;
    opacity: 0;
    pointer-events: none;

    transform: translateX(-50%) translateY(-4px);
    transition: opacity .15s ease, transform .15s ease;
}

/* Width overrides */
.newcharte .db-topbar__apps > .db-popover{
    width: 520px;
    max-width: min(520px, 94vw);
}
.newcharte .db-credit > .db-popover{
    width: 520px;
    max-width: min(520px, 94vw);
}

/* Help popover aligned to the right edge */
.newcharte .db-topbar__help > .db-popover{
    left: auto;
    right: 0;
    transform: translateY(-4px);
}

/* Show popovers (IMPORTANT: keep translateX for centered ones) */
.newcharte .db-topbar__apps:hover > .db-popover,
.newcharte .db-credit:hover > .db-popover,
.newcharte .db-user:hover > .db-popover{
    display: block;
    opacity: 1;
    pointer-events: auto;
    transform: translateX(-50%) translateY(0);
}

.newcharte .db-topbar__help:hover > .db-popover{
    display: block;
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}

/* Anti-flicker bridge */
.newcharte .db-topbar__apps::after,
.newcharte .db-credit::after,
.newcharte .db-user::after,
.newcharte .db-topbar__help::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:100%;
    height:10px;
}

/* =========================
   Popover contents
   ========================= */

/* Apps grid */
.newcharte .db-apps__grid{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    padding: 8px;
}
.newcharte .db-apps__grid li a{
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px;
    border-radius: 14px;
    border: 1px solid var(--border);
    background: var(--primary_light);
    text-decoration: none;
    color: var(--primary);
    font-weight: 1000;
    font-size: 13px;
    transition: .15s ease;
}
.newcharte .db-apps__grid li a:hover{
    background: var(--secondary_light);
    border-color: rgba(230,234,238,.9);
    color: var(--primary_dark);
}
.newcharte .db-apps__grid img{
    height: 26px;
    width: 26px;
    object-fit: contain;
}


/* =========================
POPOVERS — STYLE MENU
========================= */


/* La liste devient un vrai menu */
.newcharte .db-menu{
    margin: 0;
    padding: 4px;
}

/* Items */
.newcharte .db-menu li{
    list-style: none;
    margin: 0;
    padding: 0;
}

/* Liens style "menu item" */
.newcharte .db-menu li a{
    display: flex;
    align-items: center;
    gap: 10px;

    padding: 9px 10px;
    border-radius: 10px;

    text-decoration: none;
    color: var(--text);
    font-weight: 600;
    font-size: 13px;

    transition: background .12s ease, color .12s ease;
}

.newcharte .db-menu li a:hover{
    background: rgba(224,235,243,.75);
    color: var(--primary);
}

.newcharte .db-menu li a i{
    opacity: .70;
    font-size: 14px;
}

/* =========================
   SÉPARATEURS
   ========================= */

.newcharte .db-menu li + li{
    border-top: 1px solid rgba(230,234,238,.85);
    margin-top: 4px;
    padding-top: 4px;
}


.newcharte .db-popover .db-sep{
    height: 14px;
    margin: 6px 0;
    list-style: none;
    pointer-events: none;

    display: flex;
    align-items: center;
    justify-content: center;
}

.newcharte .db-popover .db-sep::after{
    content: "•••";
    font-size: 12px;
    letter-spacing: 6px;
    color: var(--muted);
    opacity: .55;
}

/* =========================
   ALIGNEMENT / LARGEURS
   ========================= */

.newcharte .db-topbar__help > .db-popover,
.newcharte .db-user > .db-popover{
    width: 280px;
    max-width: min(280px, 92vw);
    padding: 6px;
}

.newcharte .db-credit > .db-popover{
    /* width: 520px; max-width: min(520px, 94vw); */ /* tu as déjà ça */
}

/* Apps: garde large (tu as déjà) */
.newcharte .db-topbar__apps > .db-popover{
    /* width: 520px; max-width: min(520px, 94vw); */ /* tu as déjà ça */
}

.newcharte .db-menu i.fa-solid,
.newcharte .db-menu i.fa-regular,
.newcharte .db-menu i.fa-brands{
    width: 22px;
    min-width: 20px;
    text-align: center;

    font-size: 14px;
    line-height: 1;

    flex: 0 0 20px;
}

/* =========================
APPS POPOVER — AIR + DOT GLOW
========================= */

.newcharte .db-popover--apps{
    width: 600px;
    max-width: min(600px, 94vw);
    padding: 14px;
}

/* grille 2 colonnes, plus d'air */
.newcharte .db-popover--apps .db-apps__grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px 14px;          /* espace vertical/horizontal */
    padding: 0;
    margin: 0;
}

.newcharte .db-popover--apps .db-apps__grid li{
    list-style: none;
}

/* item = “tuile soft”, sans contour visible */
.newcharte .db-popover--apps .db-apps__grid li a{
    position: relative;
    display: flex;
    align-items: center;
    gap: 14px;

    padding: 14px 44px 14px 14px; /* place à droite pour le dot */
    border-radius: 14px;

    background: rgba(224,235,243,.35); /* très léger, pas de contour */
    text-decoration: none;

    color: var(--primary_dark);
    font-weight: 700;          /* moins pâteux */
    font-size: 14px;
    letter-spacing: .15px;

    border: 1px solid transparent;

    transition: background .15s ease, box-shadow .15s ease, transform .15s ease;
}

/* logos + visibles */
.newcharte .db-popover--apps .db-apps__grid li a img{
    width: 40px;
    height: 40px;
    object-fit: contain;
    flex: 0 0 auto;
    filter: drop-shadow(0 2px 6px rgba(15,23,42,.12));
}

/* texte encore plus clean sur écrans denses */
.newcharte .db-popover--apps .db-apps__grid li a{
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* le DOT "allumé" à droite (utilise ta charte) */
.newcharte .db-popover--apps .db-apps__grid li a::after{
    content: "";
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%) scale(.7);

    width: 10px;
    height: 10px;
    border-radius: 999px;

    background: var(--secondary);              /* orange */
    box-shadow: 0 0 0 0 rgba(247,148,29,.0);   /* glow off */
    opacity: 0;

    transition: opacity .15s ease, transform .15s ease, box-shadow .15s ease;
}

/* hover : plus clair + léger lift + dot qui s’allume */
.newcharte .db-popover--apps .db-apps__grid li a:hover{
    background: var(--secondary_light);
    box-shadow: 0 4px 10px rgba(15,23,42,.08);
    transform: translateY(-1px);
    border-color: var(--secondary);
}

.newcharte .db-popover--apps .db-apps__grid li a:hover::after{
    opacity: 1;
    transform: translateY(-50%) scale(1);
    box-shadow: 0 0 0 6px rgba(247,148,29,.18);
}

/* focus clavier (pro) */
.newcharte .db-popover--apps .db-apps__grid li a:focus-visible{
    outline: none;
    background: rgba(224,235,243,.85);
    border-color: var(--secondary);
    box-shadow: 0 0 0 2px rgba(247,148,29,.25), 0 4px 10px rgba(15,23,42,.08);
}

.newcharte .db-popover--apps .db-apps__grid li a{
    align-items: center !important;
}

.newcharte .db-popover--apps .db-apps__grid li a span,
.newcharte .db-popover--apps .db-apps__grid li a{
    line-height: 1.35;
}

.newcharte .db-popover--apps .db-apps__grid li a span{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;

    line-height: 1.25;
    margin: 0;
}

.newcharte .db-popover--apps .db-apps__grid li a img{
    margin-top: 0!important;
}

.newcharte .db-popover--apps .db-apps__grid li a::after{
    top: 50%;
    transform: translateY(-50%);
}

.newcharte #search_company_content{
    width: 520px;
    max-width: min(520px, 92vw);
    margin-top: -9px;
    padding: 10px;
}

/* état ouvert */
.newcharte #search_company_content.is-open{
    display: block;
    opacity: 1;
    pointer-events: auto;
    transform: translateX(-50%) translateY(0);
}

/* liste résultats */
.newcharte .db-searchList{
    margin: 0;
    list-style: none;
    display: grid;
    gap: 6px;
}

.newcharte .db-searchItem{
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 12px;
    text-decoration: none;
    color: var(--text);
    background: rgba(224,235,243,.35);
    border: 1px solid transparent;
    transition: .15s ease;
}

.newcharte .db-searchItem:hover,
.newcharte .db-searchItem.is-active{
    background: rgba(224,235,243,.70);
    border-color: var(--secondary);
    box-shadow: 0 4px 10px rgba(15,23,42,.08);
}

.newcharte .db-searchMeta{
    font-size: 12px;
    color: var(--muted);
    font-weight: 700;
    margin-top: 2px;
}

/*.newcharte .db-searchTitle{
    font-size: 13px;
    font-weight: 900;
    line-height: 1.25;
}*/

.newcharte .db-searchTitle {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: nowrap;
    font-size: 13px;
    line-height: 1.25;
    font-weight: 500;
    min-width: 0;
}

.newcharte .db-searchTitle > span:first-child {
    font-weight: 900;
    flex:0 0 auto;
}

.newcharte .db-searchTitle .badge {
    min-width: 0;

    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;

    display: inline-flex;
    align-items: center;
    gap: 6px;

    padding: 4px 8px;
    background: var(--secondary_light);
    font-size:10px;
    font-weight: 500;
}

.newcharte .db-searchTitle .badge .dot {
    min-width: 4px;
    width:4px;
    height:4px;
    flex:0 0 auto;
}

/* =========================
   Mobile button
   ========================= */


.newcharte .db-icon{
    width: 40px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,.14);
    background: rgba(2, 51, 71, 0.35);
    color: var(--surface);
    cursor: pointer;
    transition: .15s ease;
}
.newcharte .db-icon:hover{
    background: rgba(2, 51, 71, 0.46);
}
.newcharte .db-mobile{ display: none; }



.newcharte .solv-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    flex-wrap:wrap;
    padding-bottom:12px;
    border-bottom:1px solid var(--border);
}

.newcharte .solv-title h3{
    margin:0 0 10px;
    font-size:16px;
    color:var(--primary);
    letter-spacing:-0.1px;
}
.newcharte .solv-subtitle{
    color:var(--muted);
    font-size:13px;
    margin-top:-5px;
}

.newcharte .solv-badge{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:10px 12px;
    border-radius: 16px;
    border:1px solid rgba(0,0,0,.06);
    font-weight: 900;
    white-space: nowrap;
}
.newcharte .solv-badge .dot{
    width:10px;height:10px;border-radius:999px;
    background: currentColor;
    opacity:.95;
}
.newcharte .solv-badge .range{
    margin-left:8px;
    padding:2px 8px;
    border-radius:999px;
    background: rgba(255,255,255,.55);
    font-size: 12px;
    font-weight: 900;
}

.newcharte .solv-badge.risk-unk {
    background: var(--primary);
}

/* Body layout */
.newcharte .solv-body{
    display:grid;
    grid-template-columns: 1.2fr .8fr;
    gap:14px;
    padding-top:14px;
    align-items:start;
}

.newcharte .solv-hero{
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 18px;
    padding: 18px;
    text-align: center;
}
.newcharte .solv-img{
    width: 100%;
    max-width: 460px;
    height: auto;
}
.newcharte .solv-hero-note{
    margin-top:10px;
    color: var(--muted);
    font-size: 12px;
    font-weight: 800;
}

.newcharte .solv-scale{

}
.newcharte .solv-scale-title{
    font-weight: 900;
    color: var(--text);
    font-size: 14px;
    margin-bottom:10px;
}

.newcharte .scale-row{
    display:flex;
    align-items:center;
    gap:10px;
    padding:9px 10px;
    border-radius: 14px;
    border:1px solid transparent;
}
.newcharte .scale-row .label{
    font-weight: 800;
    font-size: 13px;
    color: var(--text);
}
.newcharte .scale-row:hover{
    background:#f9fbfc;
    border-color: rgba(0,0,0,.05);
}
.newcharte .scale-row.active{
    background:#f2f6f8;
    border-color: rgba(0,0,0,.06);
    box-shadow: inset 0 -3px 0 var(--accent);
}

.newcharte .swatch{
    width:14px;height:14px;border-radius:6px;
    display:inline-block;
}

/* Footer */
.newcharte .solv-foot{
    margin-top:14px;
    padding-top:14px;
    border-top:1px solid var(--border);
}
.newcharte .solv-foot-title{
    font-weight: 900;
    font-size: 14px;
    color: var(--text);
    margin-bottom:10px;
}
.newcharte .solv-explain .item{
    padding:10px 0;
    border-top:1px dashed rgba(0,0,0,.08);
}
.newcharte .solv-explain .item:first-child{ border-top:0; padding-top:0; }
.newcharte .solv-explain .h{
    font-weight: 900;
    font-size: 13px;
    color: var(--text);
    text-decoration: underline;
}
.newcharte .solv-explain .p{
    margin-top:6px;
    font-size: 13px;
    color: var(--muted);
    line-height: 1.45;
    font-weight: 700;
}

.newcharte .solv-meta{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    margin-top:10px;
}

/* Risk colors (reprend tes couleurs existantes) */
.newcharte .risk-verylow{ color:#00663a; background: rgba(0,102,58,.10); }
.newcharte .risk-low{ color:#2dab66; background: rgba(45,171,102,.10); }
.newcharte .risk-medium{ color:#ccb102; background: rgba(204,177,2,.12); }
.newcharte .risk-high{ color:#ee7d00; background: rgba(238,125,0,.12); }
.newcharte .risk-veryhigh{ color:#cc1719; background: rgba(204,23,25,.12); }
.newcharte .risk-proc{ color:#7f2176; background: rgba(127,33,118,.12); }
.newcharte .risk-stop{ color:#000; background: rgba(0,0,0,.10); }

.newcharte .swatch.risk-verylow{ background:#00663a; }
.newcharte .swatch.risk-low{ background:#2dab66; }
.newcharte .swatch.risk-medium{ background:#ccb102; }
.newcharte .swatch.risk-high{ background:#ee7d00; }
.newcharte .swatch.risk-veryhigh{ background:#cc1719; }
.newcharte .swatch.risk-proc{ background:#7f2176; }
.newcharte .swatch.risk-stop{ background:#000; }














/* =========================
MODULE BAR (Sous-menu apps)
========================= */

.newcharte .db-modulebar{

}

/* Conteneur */
.newcharte .db-modulebar__wrap{
    /*background: #fff;
    border-bottom: 1px solid var(--border);*/
    padding: 20px 20px 10px 20px;
}

/* Ligne du haut */
.newcharte .db-modulebar__top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap: 12px;
}

/* Brand (icon + title) */
.newcharte .db-modulebar__brand{
    display:flex;
    align-items:center;
    gap: 12px;
    text-decoration:none;
    min-width: 0;
    margin-top: 1px;
}

.newcharte .db-modulebar__icon{
    width: 70px;
    height: 50px;
    border-radius: 16px;
    display:flex;
    align-items:center;
    justify-content:center;
    background: var(--primary_light);
    border: 1px solid rgba(0,70,96,.10);
    box-shadow: var(--shadow2);
    flex: 0 0 auto;
}
.newcharte .db-modulebar__icon img{
    width: 34px;
    height: 34px;
    object-fit: contain;
}

.newcharte .db-modulebar__name{
    display:flex;
    flex-direction:column;
    min-width: 0;
}
.newcharte .db-modulebar__title{
    font-size: 22px;
    font-weight: 1000;
    letter-spacing: -0.2px;
    color: var(--text);
    line-height: 1.05;
    text-transform: uppercase;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.newcharte .db-modulebar__subtitle{
    margin-top: 4px;
    font-size: 12.5px;
    font-weight: 800;
    color: var(--muted);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Badge premium */
.newcharte .db-modulebar__right{
    flex: 0 0 auto;
    display:flex;
    align-items:center;
}

.newcharte .db-modulebar__badge{
    display:inline-flex;
    align-items:center;
    gap: 8px;
    height: 34px;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(247,148,29,.12);
    border: 1px solid rgba(247,148,29,.35);
    color: var(--primary);
    font-weight: 1000;
    font-size: 12px;
    letter-spacing: .3px;
}


/* Sous-menu en pills */
.newcharte .db-subnav{
    display:flex;
    gap: 8px;
    flex-wrap: wrap;
    align-items:center;
    margin-top:10px;
    /*border-radius: 18px;
    border: 1px solid var(--border);
    background: #eef5fa;
    box-shadow: 0 6px 16px rgba(15, 23, 42, 0.04);*/
}

/* Item */
.newcharte .db-subnav__item{
    display:inline-flex;
    align-items:center;
    gap: 8px;

    padding: 8px 12px;
    border-radius: 14px;
    border: 1px solid rgba(0,70,96,.18);
    background: rgba(255,255,255,.30);

    text-decoration:none;
    color: var(--primary);
    font-weight: 1000;
    font-size: 12.5px;

    transition: .15s ease;
    user-select:none;
}

.newcharte .db-subnav__item.db-subnav__item__big {
    padding:10px 12px;
}

.newcharte .db-subnav__item span {
    margin-left:5px;
}

.newcharte .db-subnav__item:hover{
    background: rgba(255,255,255,.55);
    border-color: rgba(0,70,96,.26);
}

.newcharte .db-subnav__item.is-active,.newcharte .db-subnav__item.active, .newcharte .db-subnav__item:hover{
    background: var(--primary);
    color: #fff;
    border-color: rgba(0,70,96,.20);
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.08);
}

.newcharte .db-subnav__item.is-active i, .newcharte .db-subnav__item.active i, .newcharte .db-subnav__item:hover i{
    color: var(--secondary);
}


.newcharte .db-subnav__item--secondary.is-active,.newcharte .db-subnav__item--secondary.active, .newcharte .db-subnav__item--secondary:hover{
    background: var(--secondary);
}
.newcharte .db-subnav__item--secondary.is-active i, .newcharte .db-subnav__item--secondary.active i, .newcharte .db-subnav__item--secondary:hover i{
    color: white;
}

.newcharte .db-module-mini {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 8px 20px;
    border-radius: 0 0 16px 16px;
    background: var(--primary_light);
    border:1px solid var(--primary_soft);
    cursor: pointer;
    transition: all .25s ease;
    margin-left:20px;
}

.newcharte .db-module-mini:hover {
    background: var(--primary_soft);
}

/* Partie gauche */
.newcharte .db-module-mini__left {
    display: flex;
    align-items: center;
    gap: 8px;
}

/* Logo petit */
.newcharte .db-module-mini__logo {
    width: 18px;
    height: 18px;
    object-fit: contain;
}

/* Nom module */
.newcharte .db-module-mini__name {
    font-size: 16px;
    font-weight: 1000;
    letter-spacing: -0.2px;
    color: var(--text);
    line-height: 1.05;
    text-transform: uppercase;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Chevron */
.newcharte .db-module-mini__chevron {
    font-size: 12px;
    opacity: .8;
    transition: transform .25s ease;
}


.newcharte .db-module-mini__chevron {
    transition: transform .25s ease;
}

.newcharte .db-module-mini.is-open .db-module-mini__chevron {
    transform: rotate(180deg);
}

























/* =========================
POPUP COMPANY
========================= */
.newcharte .company-header{
    background: linear-gradient(135deg, var(--primary), var(--primary_dark));
    color:#fff;
    border-radius:20px;
    padding:22px 22px;
    box-shadow: var(--shadow);
    position:relative;
    overflow:hidden;
    z-index: 1;
}
.newcharte .company-header.header-top {
    z-index:2;
    position: relative;
}

.newcharte .company-header::after, .newcharte .header__gradient::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;
    z-index:0;*/
}


.newcharte .company-title{
    margin:0;
    font-size:28px;
    letter-spacing:-0.3px;
    line-height:1.1;
}

.newcharte .company-header .badges {
    z-index:3;
    position: relative;
}



















/* =========================
COMMON STYLE
========================= */
.newcharte .header-top{
    display:flex;
    justify-content:space-between;
    gap:16px;
    align-items:flex-start;
}
.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 .badge__tmp{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    justify-content:flex-end;
    padding: 0 15px 0 0;
    background-color: var(--primary) !important;
    color: white;
    border-radius: 12px;
}
.newcharte .dot{
    min-width:8px;
    width:8px;height:8px;border-radius:999px;
    display:inline-block;
    background: rgba(0,70,96,.25);
}
.newcharte .dot.dot-orange{
    background: var(--secondary);
    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 .dot.dot-blanc{
    background: white;
    box-shadow:0 0 0 4px rgba(255,255,255,.18);
}

/*
.newcharte .dot-color3{background:#49a4b1;box-shadow:0 0 0 4px color-mix(in srgb, #49a4b1 50%, transparent);border:1px solid rgba(255,255,255,.25);}
.newcharte .dot-color14{background:#ca6f20;box-shadow:0 0 0 4px color-mix(in srgb, #ca6f20 50%, transparent);border:1px solid rgba(255,255,255,.25);}
.newcharte .dot-color43{background:#3e9e3e;box-shadow:0 0 0 4px color-mix(in srgb, #3e9e3e 50%, transparent);border:1px solid rgba(255,255,255,.25);}
.newcharte .dot-color92{background:#c44747;box-shadow:0 0 0 4px color-mix(in srgb, #c44747 50%, transparent);border:1px solid rgba(255,255,255,.25);}
.newcharte .dot-color93{background:#c345bf;box-shadow:0 0 0 4px color-mix(in srgb, #c345bf 50%, transparent);border:1px solid rgba(255,255,255,.25);}
.newcharte .dot-color94{background:#395060;box-shadow:0 0 0 4px color-mix(in srgb, #395060 50%, transparent);border:1px solid rgba(255,255,255,.25);}
.newcharte .dot-color96{background:#5d3871;box-shadow:0 0 0 4px color-mix(in srgb, #5d3871 50%, transparent);border:1px solid rgba(255,255,255,.25);}
.newcharte .dot-color99{background:#705740;box-shadow:0 0 0 4px color-mix(in srgb, #705740 50%, transparent);border:1px solid rgba(255,255,255,.25);}
.newcharte .dot-color130{background:#7e7920;box-shadow:0 0 0 4px color-mix(in srgb, #7e7920 50%, transparent);border:1px solid rgba(255,255,255,.25);}
.newcharte .dot-color142{background:#2f4841;box-shadow:0 0 0 4px color-mix(in srgb, #2f4841 50%, transparent);border:1px solid rgba(255,255,255,.25);}
.newcharte .dot-color170{background:#3975BE;box-shadow:0 0 0 4px color-mix(in srgb, #3975BE 50%, transparent);border:1px solid rgba(255,255,255,.25);}
*/
.newcharte .dot-color1{
    background:var(--secondary_dark); /* turquoise plus lumineux */
    box-shadow:0 0 0 4px color-mix(in srgb, var(--secondary_dark) 45%, transparent);
    border:1px solid rgba(255,255,255,.3);
}

.newcharte .dot-color3{
    background:#5CBFCC; /* turquoise plus lumineux */
    box-shadow:0 0 0 4px color-mix(in srgb, #5CBFCC 45%, transparent);
    border:1px solid rgba(255,255,255,.3);
}

.newcharte .dot-color14{
    background:#E8892F; /* orange plus vibrant */
    box-shadow:0 0 0 4px color-mix(in srgb, #E8892F 45%, transparent);
    border:1px solid rgba(255,255,255,.3);
}

.newcharte .dot-color43{
    background:#4DBF4D; /* vert plus frais */
    box-shadow:0 0 0 4px color-mix(in srgb, #4DBF4D 45%, transparent);
    border:1px solid rgba(255,255,255,.3);
}

.newcharte .dot-color92{
    background:#E05A5A; /* rouge moins brique */
    box-shadow:0 0 0 4px color-mix(in srgb, #E05A5A 45%, transparent);
    border:1px solid rgba(255,255,255,.3);
}

.newcharte .dot-color93{
    background:#E063DA; /* violet plus néon soft */
    box-shadow:0 0 0 4px color-mix(in srgb, #E063DA 45%, transparent);
    border:1px solid rgba(255,255,255,.3);
}

.newcharte .dot-color94{
    background:#4F6F80; /* bleu pétrole éclairci */
    box-shadow:0 0 0 4px color-mix(in srgb, #4F6F80 45%, transparent);
    border:1px solid rgba(255,255,255,.3);
}

.newcharte .dot-color96{
    background:#7A4FA3; /* violet plus visible */
    box-shadow:0 0 0 4px color-mix(in srgb, #7A4FA3 45%, transparent);
    border:1px solid rgba(255,255,255,.3);
}

.newcharte .dot-color99{
    background:#9A7A5A; /* marron moins sombre */
    box-shadow:0 0 0 4px color-mix(in srgb, #9A7A5A 45%, transparent);
    border:1px solid rgba(255,255,255,.3);
}

.newcharte .dot-color130{
    background:#B8AE35; /* jaune olive plus vif */
    box-shadow:0 0 0 4px color-mix(in srgb, #B8AE35 45%, transparent);
    border:1px solid rgba(255,255,255,.3);
}

.newcharte .dot-color142{
    background:#3F6C63; /* vert profond éclairci */
    box-shadow:0 0 0 4px color-mix(in srgb, #3F6C63 45%, transparent);
    border:1px solid rgba(255,255,255,.3);
}

.newcharte .dot-color170{
    background:#4D8DFF; /* bleu plus dynamique */
    box-shadow:0 0 0 4px color-mix(in srgb, #4D8DFF 45%, transparent);
    border:1px solid rgba(255,255,255,.3);
}

.newcharte .dot-color0{
    background:#0f172a; /* bleu plus dynamique */
    box-shadow:0 0 0 4px color-mix(in srgb, #0f172a 45%, transparent);
    border:1px solid rgba(255,255,255,.3);
}



.newcharte .dot-color-parcelle{
    background:var(--green_dark); /* turquoise plus lumineux */
    box-shadow:0 0 0 4px color-mix(in srgb, var(--green_dark) 45%, transparent);
    border:1px solid rgba(255,255,255,.3);
}

.newcharte .dot-color-batiment{
    background:var(--secondary_dark); /* turquoise plus lumineux */
    box-shadow:0 0 0 4px color-mix(in srgb, var(--secondary_dark) 45%, transparent);
    border:1px solid rgba(255,255,255,.3);
}

.newcharte .dot-color-list0, .newcharte .dot-color-analyse_emplacement{
    background:var(--secondary); /* turquoise plus lumineux */
    box-shadow:0 0 0 4px color-mix(in srgb, var(--secondary) 45%, transparent);
    border:1px solid rgba(255,255,255,.3);
}
.newcharte .dot-color-list1{
    background:#ce4030; /* turquoise plus lumineux */
    box-shadow:0 0 0 4px color-mix(in srgb, #ce4030 45%, transparent);
    border:1px solid rgba(255,255,255,.3);
}
.newcharte .dot-color-list2{
    background:#3376b9; /* turquoise plus lumineux */
    box-shadow:0 0 0 4px color-mix(in srgb, #3376b9 45%, transparent);
    border:1px solid rgba(255,255,255,.3);
}
.newcharte .dot-color-list3{
    background:#73ad52; /* turquoise plus lumineux */
    box-shadow:0 0 0 4px color-mix(in srgb, #73ad52 45%, transparent);
    border:1px solid rgba(255,255,255,.3);
}


/*Loader*/
.newcharte .dbLoader{
    padding:40px;
}

.newcharte .dbLoader__top{
    display:flex;
    align-items:center;
    gap:12px;
}

.newcharte .dbLoader__spinner{
    width:34px;
    height:34px;
    border-radius:999px;
    border:3px solid rgba(0,70,96,.16);
    border-top-color: var(--primary_light);
    animation: dbSpin .9s linear infinite;
    flex:0 0 auto;
}

@keyframes dbSpin { to { transform: rotate(360deg); } }

.newcharte .dbLoader__title{
    font-weight:1000;
    color: var(--primary);
    font-size:15px;
    opacity: .55;
}

.newcharte .dbLoader__sub{
    margin-top:2px;
    font-weight:600;
    color: var(--muted);
    font-size:12px;
    opacity: .50;
}

.newcharte .dbLoader__skeleton{
    margin-top:12px;
    display:flex;
    flex-direction:column;
    gap:10px;
}

.newcharte .dbLoader__line{
    height:12px;
    border-radius:999px;
    background: linear-gradient(
            90deg,
            rgba(224,235,243,.55),
            rgba(224,235,243,.95),
            rgba(224,235,243,.55)
    );
    background-size: 200% 100%;
    animation: dbShimmer 1.1s ease-in-out infinite;
}

.newcharte .dbLoader__line.is-short{ width: 62%; }

@keyframes dbShimmer{
    0%   { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}


/* Tabs */
.newcharte .tabs{
    margin-top:14px;
    background:#fff;
    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(--secondary),
            0 2px 6px rgba(0,70,96,.08);
}

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

/* SUBTAB */
.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);
}


.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, .newcharte .doc-pill{
    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, .newcharte .doc-pill: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, .newcharte .doc-pill.active{
    background:var(--secondary);
    color:white;
    border-color: rgba(0,70,96,.20);
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.08);
}

.newcharte .subtab-btn.active[data-subtab^="persona_"] {
    background-color: #6f42c1; /* violet par exemple */
    color: #fff;
    border-color: #6f42c1;
}


.newcharte .subtab-btn.active[data-subtab^="persona_"] .subtab-count {
    color:#6f42c1;
}

.newcharte .subtab-content{
    display:none;
}
.newcharte .subtab-content.active{
    display:block;
}
/* Badge compteur */
.newcharte .subtab-count, .newcharte .doc-pill .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, .newcharte .doc-pill.active .count{
    background: white;
    color:var(--secondary);
}


.newcharte .db-subnav__item.is-active .dot,
.newcharte .db-subnav__item.active .dot,
.newcharte .db-subnav__item:hover .dot{
    background: var(--secondary);
    box-shadow: 0 0 0 4px rgba(247,148,29,.18);
}

.newcharte .subtab-btn.active .dot,
.newcharte .doc-pill.active .dot,
.newcharte .doc-pill:hover .dot,
.newcharte .db-subnav__item--secondary.is-active .dot,
.newcharte .db-subnav__item--secondary.active .dot,
.newcharte .db-subnav__item--secondary:hover .dot
{
    background: white;
    box-shadow: 0 0 0 4px rgba(255,255,255,.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:#fff;
    border:1px solid var(--border);
    border-radius: var(--radius);
    padding:16px;
    box-shadow: var(--shadow2);
}
.newcharte .card h3{
    margin:0 0 10px;
    font-size:19px;
    color:var(--primary);
    letter-spacing:-0.1px;
}
.newcharte .muted{
    color:var(--muted);
}


.newcharte #popup .card, .newcharte #popup_bis .card {
    padding-bottom:40px;
}

.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:#fff;
}
.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{
    width:100%;
    min-width: 100%;
    z-index:0;
}

.newcharte .listable .row{
    display: flex;
    align-items: center;
    gap: 0;
    padding:12px 16px;
    background:#fff;
}



.newcharte .listable .value-wrap{
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        gap: 8px 0px;
}

/* Alternance + hover */
.newcharte .listable .row:nth-child(even){
    background:var(--grey_ultra_light);
}
.newcharte .listable .row:hover{
    background:var(--primary_ultra_light);
    border-color:var(--primary_soft);
}

.newcharte .listable .row.highlight {background: var(--primary_soft)!important;}

.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:12.5px;
    font-weight:1000;
    text-overflow:ellipsis;
    white-space:nowrap;
    min-width: 0;
    padding-left:10px;
    border-left:1px dashed rgba(0,70,96,.18);
}

.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;
    margin-left: 0;
    padding-left:14px;
    border-left:1px dashed rgba(0,70,96,.12);
}
.newcharte .listable .row .d:not(:empty){
    margin-left: 10px;
}

.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;
}



/* Date / count : pas de retour à la ligne */
.newcharte .dbFavCell--date,
.newcharte .dbFavCell--count{
    white-space:nowrap;
}


/* Actions : colonne stable + alignement à droite */
.newcharte .dbFavCell--actions{
    flex: 0 0 20%;
    border-left: 0 !important;
    padding-left: 0 !important;
    justify-self:end;
    white-space:nowrap;
}

.newcharte .dbFavCell--date {
    flex: 0 0 20%;
}

.newcharte .dbFavCell--count {
    flex: 0 0 10%;
}

.newcharte .dbFavCell--name {
    flex:1 1 auto;
}

.dbFavRow:has(> .dbFavCell:nth-child(2)):not(:has(> .dbFavCell:nth-child(3))) .dbFavCell--actions{
    flex:0 0 50%;
}

.dbFavRows__70p .dbFavRow .dbFavCell--actions {
    flex:0 0 30%!important;
}
.dbFavRows__80p .dbFavRow .dbFavCell--actions {
    flex:0 0 20%!important;
}
.dbFavRows__90p .dbFavRow .dbFavCell--actions {
    flex:0 0 10%!important;
}



#synthese .row .k, #juridique .row .k {
    flex:0 0 40%;
}

#finance .row .k {
    flex:0 0 60%;

}
#synthese .row .v, #juridique .row .v, #finance .row .v {
    flex:1 1 auto;
}

#synthese .row .d, #juridique .row .d {
    flex:0 0 20%;
}











/* 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;
    opacity: 1;
}


.newcharte .btn-large {
    font-size:15px;
    padding:14px 16px;
}

.newcharte .btn-full {
    width:100%;
}

.newcharte button[type="submit"].btn{
    font-size:15px;
}

.newcharte a.transparent, .newcharte a.transparent .btn {
    opacity: 0;
    background: transparent;
    color: transparent;
    cursor: default;
    pointer-events: none;
}


.newcharte .btn-primary{
    background:var(--primary);
    color:white;
}

.newcharte .btn-primary-light{
    background:var(--primary_light);
    color:var(--primary);
}

.newcharte .btn-primary-ultra-light{
    background:var(--primary_ultra_light);
    color:var(--primary);
}

.newcharte .btn-primary-dark{
    background:var(--primary_dark);
    color:white;
}


.newcharte .btn.persona {
    background: #5b2d91;
    border-color:#44137d;
    color:white;
}
.newcharte .btn.persona:hover {
    color:white;
    background: #44137d;
}


.newcharte .btn-secondary{
    background:var(--secondary);
    color:white;
}

.newcharte .btn-secondary-light{
    background:var(--secondary_light);
    color:var(--secondary);
}

.newcharte .btn-secondary-ultra-light{
    background:var(--secondary_ultra_light);
    color:var(--secondary);
}

.newcharte .btn-secondary-dark{
    background:var(--secondary_dark);
    color:white;
}


.newcharte .btn-alert{
    background:var(--alert);
    color:white;
}

.newcharte .btn-alert-light{
    background:var(--alert_light);
    color:var(--alert);
}

.newcharte .btn-alert-ultra-light{
    background:var(--alert_ultra_light);
    color:var(--alert);
}

.newcharte .btn-alert-dark{
    background:var(--alert_dark);
    color:white;
}

.newcharte .btn-alert:hover,.newcharte .btn-alert-light:hover{
    border-color: var(--alert);
    box-shadow:
            inset 0 -4px 0 var(--alert),
            0 2px 6px rgba(0,70,96,.08);
}



.newcharte .btn-hover-primary:hover,.newcharte .actionBtn:hover .btn-hover-primary {
    border-color: var(--primary_soft);
    box-shadow:
            inset 0 -4px 0 var(--primary),
            0 2px 6px rgba(0,70,96,.08);
}


.newcharte .btn-hover-primary-white:hover,.newcharte .actionBtn:hover .btn-hover-white {
    color:white;
    background: var(--primary);
    border-color: white;
    box-shadow:-5px 0 0 5px white;
}


.newcharte .btn-hover-secondary-white:hover {
    color:white;
    background: var(--secondary);
    border-color: white;
    box-shadow:
            inset 0 -4px 0 white,
            0 2px 6px rgba(0,70,96,.08);
}

.newcharte .btn-hover-white:hover {
    border-color: white;
    box-shadow:
            inset 0 -4px 0 white,
            0 2px 6px rgba(0,70,96,.08);
}




.newcharte .btn-hover-primary-light:hover{
    border-color: var(--primary_light);
    box-shadow:
            inset 0 -3px 0 var(--primary_light),
            0 2px 6px rgba(0,70,96,.08);
}

.newcharte .btn-hover-primary-ultra-light:hover{
    border-color: var(--primary_ultra_light);
    box-shadow:
            inset 0 -3px 0 var(--primary_ultra_light),
            0 2px 6px rgba(0,70,96,.08);
}

.newcharte .btn-hover-primary-dark:hover{
    border-color: var(--primary_dark);
    box-shadow:
            inset 0 -3px 0 var(--primary_dark),
            0 2px 6px rgba(0,70,96,.08);
}



/*SELECT OPTION */

/* Wrapper */
.newcharte .dbSelect{
    position: relative;
    width: 100%;
}

/* Le select */
.newcharte .dbSelect__field{
    width: 100%;
    height: 46px;
    padding: 0 44px 0 14px;

    border-radius: 14px;
    border: 1px solid rgba(0,0,0,.10);
    background: var(--grey_light);

    color: var(--text);
    font-weight: 900;
    font-size: 14px;
    letter-spacing: -.1px;

    box-shadow: 0 10px 20px rgba(15,23,42,.06);
    outline: none;

    /* enlève la flèche native */
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;

    transition: .15s ease;
}

/* Hover */
.newcharte .dbSelect__field:hover{
    border-color: rgba(0,70,96,.28);
    box-shadow: 0 12px 24px rgba(15,23,42,.08);
}

/* Focus (standard “ring”) */
.newcharte .dbSelect__field:focus{
    border-color: rgba(0,70,96,.45);
    box-shadow:
            0 12px 24px rgba(15,23,42,.10),
            0 0 0 4px rgba(0,70,96,.10);
}

/* Disabled */
.newcharte .dbSelect__field:disabled{
    background: rgba(0,0,0,.03);
    color: rgba(0,0,0,.45);
    cursor: not-allowed;
    box-shadow: none;
}

/* Icône flèche */
.newcharte .dbSelect__icon{
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;

    width: 30px;
    height: 30px;
    border-radius: 10px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: rgba(0,0,0,.55);
    background: rgba(0,0,0,.04);
}

/* Quand focus, l’icône “suit” */
.newcharte .dbSelect__field:focus + .dbSelect__icon{
    color: var(--primary);
    background: rgba(0,70,96,.10);
}


.newcharte .dbSelect select{
    width: 100%;
    height: 46px;
    padding: 0 44px 0 14px;

    border-radius: 14px;
    border: 1px solid rgba(0,0,0,.10);
    background: var(--grey_light);

    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;

    font-weight: 900;
}

/* Chevron */
.newcharte .dbSelect::after{
    content: '';
    position: absolute;
    right: 16px;
    top: 50%;
    width: 8px;
    height: 8px;

    border-right: 2px solid rgba(0,0,0,.55);
    border-bottom: 2px solid rgba(0,0,0,.55);

    transform: translateY(-60%) rotate(45deg);
    pointer-events: none;
}




/*.newcharte .btn-secondary{
    background:var(--secondary);
    color:white;
}
.newcharte .btn-secondary:hover{ filter:brightness(.96); }

.newcharte .btn-secondary-dark{
    background:var(--secondary_dark);
    color:white;
}

.newcharte .btn-secondary-light{
    background:var(--secondary_light);
    border-color:var(--secondary);
    color:var(--secondary_dark);
}



.newcharte .btn-primary-light:hover, .newcharte .actionBtn:hover .btn-primary-light {
    border-color: var(--primary_ultra_light);
    box-shadow:
            inset 0 -3px 0 var(--secondary),
            0 2px 6px rgba(0,70,96,.08);
}


.newcharte .btn-primary:hover{ filter:brightness(.96); }

.newcharte .btn-secondary-dark:hover {
    border-color: white;
    box-shadow:
            inset 0 -3px 0 white,
            0 2px 6px rgba(0,70,96,.08);
}
.newcharte .btn-secondary-light:hover {
    border-color: var(--primary_ultra_light);
    box-shadow:
            inset 0 -3px 0 var(--secondary_light),
            0 2px 6px rgba(0,70,96,.08);
}*/



.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:var(--grey_ultra_light);
    border-color:var(--grey_light);
    color:var(--black_light);
}
.newcharte .btn-ghost:hover{ filter:brightness(.98); }

.newcharte .btn-arrondi {
    width:32px;
    height:32px;
    border-radius:999px;
}

.newcharte .btn-arrondi__nowidth {
    width:auto!important;
}

.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(--muted);
    border:1px solid var(--border);
}
.newcharte .tag.hot{
    background: rgba(247,148,29,.12);
    border-color: rgba(247,148,29,.35);
    color: var(--muted);
}

/* 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:#fff;
    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(--secondary);
    box-shadow: 0 0 0 4px rgba(247,148,29,.18);
}
.newcharte .event.blue:before{
    background:var(--primary);
    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:flex;
    gap:12px;
    padding:12px 14px;
    align-items:center;
    background:#fff;
    border-top:1px solid var(--border);
}




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

/* 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;
}



/* 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;
}


/* Header: H3 + search align right */
.newcharte .dir-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}

.newcharte .dir-head__title{
    margin:0;
}

/* Search UI */
.newcharte .dir-head__search{
    margin-left:auto;
    display:flex;
    align-items:center;
    gap:8px;
    padding:8px 10px;
    border:1px solid #dcdcdc;
    border-radius:10px;
    background:#fff;
    min-width:320px;
    max-width:520px;
    width:42%;
}

.newcharte .dir-head__search i{
    opacity:.7;
}

.newcharte .dbFavSearch input:focus {
    background: var(--secondary_light);
}

.newcharte .dir-search-clear{
    border:0;
    background:transparent;
    cursor:pointer;
    opacity:.65;
    padding:2px 4px;
}
.newcharte .dir-search-clear:hover{
    opacity:1;
}



/* Hidden rows when filtering */
.newcharte .dir-row.is-hidden{
    display:none !important;
}

/* “Allumer” les onglets qui matchent */
.newcharte .subtab-btn.is-match{
    box-shadow: 0 0 0 2px var(--secondary);
    border-color: var(--secondary);
}
.newcharte .subtab-btn.is-match .dot{
    opacity:1;
    color:var(--secondary);
}




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

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

.newcharte .dir-col.col-person {
    flex:1 1 auto;
}

.newcharte .dir-col.col-role {
    flex:0 0 20%;
}

.newcharte .dir-col.col-meta {
    flex:0 0 20%;
}

.newcharte .dir-col.col-actions {
    flex:0 0 30%;
}


/* 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 .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(--secondary);
    font-weight:800;
}


.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;
}

/*picto link*/
.newcharte .addlinkpicto a{
    position: relative;
    padding-left: 22px;
    display: inline-flex;
    align-items: center;
    color: var(--primary);
    text-decoration: none;
}

.newcharte .addlinkpicto a::before{
    content: "";
    position: absolute;
    left: 0;
    width: 16px;
    height: 16px;
    background-color: currentColor;
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
}

/* Site web / lien générique */
.newcharte .addlinkpicto a[href^="http"]:not([href*="linkedin"]):not([href*="twitter"]):not([href*="instagram"]):not([href*="youtube"]):not([href*="pinterest"])::before{
    mask-image: url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'>\
<path d='M12 2a10 10 0 100 20 10 10 0 000-20zm6.9 9h-3.2a15.6 15.6 0 00-1.4-5 8.1 8.1 0 014.6 5zm-6.9-6a13.7 13.7 0 011.8 6H10.2A13.7 13.7 0 0112 5zm-6.9 6a8.1 8.1 0 014.6-5 15.6 15.6 0 00-1.4 5H5.1z'/>\
</svg>");
}

/* LinkedIn */
.newcharte .addlinkpicto a[href*="linkedin.com"]::before{
    mask-image:url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'>\
<path d='M100.28 448H7.4V148.9h92.88zM53.79 108.1C24.09 108.1 0 83.5 0 53.8a53.79 53.79 0 01107.58 0c0 29.7-24.1 54.3-53.79 54.3zM447.9 448h-92.68V302.4c0-34.7-.7-79.2-48.29-79.2-48.29 0-55.69 37.7-55.69 76.7V448h-92.78V148.9h89.08v40.8h1.3c12.4-23.5 42.69-48.3 87.88-48.3 94 0 111.28 61.9 111.28 142.3V448z'/>\
</svg>");
}


/* Twitter / X */
.newcharte .addlinkpicto a[href*="twitter.com"]::before,
.newcharte .addlinkpicto a[href*="x.com"]::before{
    mask-image:url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'>\
<path d='M378.6 45H458L300.4 225.4 471 467h-135L215.8 298.2 60.2 467H-19.2L147.6 275.8-9 45h138l107.4 150.2L378.6 45z'/>\
</svg>");
}

/* Instagram */
.newcharte .addlinkpicto a[href*="instagram.com"]::before{
    mask-image:url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'>\
<path d='M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zM370.5 136.8c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8 0-14.9 12-26.8 26.8-26.8 14.8 0 26.8 12 26.8 26.8zM448 80v352c0 44.2-35.8 80-80 80H80c-44.2 0-80-35.8-80-80V80C0 35.8 35.8 0 80 0h288c44.2 0 80 35.8 80 80z'/>\
</svg>");
}

/* YouTube */
.newcharte .addlinkpicto a[href*="youtube.com"]::before{
    mask-image:url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'>\
<path d='M549.7 124.1c-6.3-23.7-24.8-42.3-48.5-48.5C456.7 64 288 64 288 64s-168.7 0-213.2 11.6c-23.7 6.3-42.2 24.8-48.5 48.5C14.7 168.7 14.7 256 14.7 256s0 87.3 11.6 131.9c6.3 23.7 24.8 41.5 48.5 47.8C119.3 448 288 448 288 448s168.7 0 213.2-11.6c23.7-6.3 42.2-24.1 48.5-47.8 11.6-44.6 11.6-131.9 11.6-131.9s0-87.3-11.6-131.9zM232 338.6V173.4L352 256l-120 82.6z'/>\
</svg>");
}

/* Pinterest */
.newcharte .addlinkpicto a[href*="pinterest.com"]::before{
    mask-image: url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'>\
<path d='M12 2a10 10 0 00-3.6 19.3c-.1-.8-.2-2 .1-2.9.2-.8 1.4-5.1 1.4-5.1s-.4-.8-.4-1.9c0-1.8 1-3.1 2.3-3.1 1.1 0 1.6.8 1.6 1.7 0 1-.7 2.6-1 4-.3 1.2.6 2.1 1.8 2.1 2.2 0 3.9-2.3 3.9-5.6 0-2.9-2.1-4.9-5.1-4.9-3.5 0-5.6 2.6-5.6 5.3 0 1 .4 2.1.9 2.7a.4.4 0 01.1.4c-.1.4-.3 1.2-.3 1.4 0 .2-.2.3-.4.2-1.5-.7-2.4-2.8-2.4-4.5 0-3.7 2.7-7.1 7.8-7.1 4.1 0 7.3 2.9 7.3 6.8 0 4.1-2.6 7.4-6.2 7.4-1.2 0-2.4-.6-2.8-1.4l-.8 3c-.3 1-.9 2.3-1.4 3A10 10 0 1012 2z'/>\
</svg>");
}

.newcharte .addlinkpicto a[href*="facebook.com"]::before{
    mask-image:url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'>\
<path d='M279.14 288l14.22-92.66h-88.91V127.41c0-25.35 12.42-50.06 52.24-50.06h40.42V6.26S260.43 0 225.36 0c-73.22 0-121.08 44.38-121.08 124.72v70.62H22.89V288h81.39v224h100.2V288z'/>\
</svg>");
}


.newcharte .listable .tag a:hover{
    text-decoration: underline;
    opacity:.9;
}

.newcharte .fin-table{
    width:100%;
    border-collapse:separate;
    border-spacing:0;
    background:#fff;
    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;
    min-width:420px;
}

/* Boutons pills */
.newcharte .action-pill{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:0px 5px;
    border-radius:99999px;
    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.is-empl {
    background: var(--primary);
}


.newcharte .action-pill:hover{
}

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

.newcharte .action-pill.action-pill__small, .newcharte .actions__small .action-pill {
    min-height:auto;
}

.newcharte .action-pill.action-pill__small .ic, .newcharte .actions__small .action-pill .ic {
    width:13px;
    height:24px;
}




.newcharte .action-pill .ic-save{
    font-weight:500;
}


.newcharte .action-pill .ic-empl{
    font-weight:500;
    background: var(--primary);
    color: white;
    border:0;
}

.newcharte .action-pill i {
    font-size:90%;
}
.newcharte .actions__small .action-pill i {
    font-size:80%;
}

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

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


/* ===============================
   FACEBOOK
================================= */
.newcharte .action-pill.is-facebook{
    background:#2c64f6;
    border-color:#2c64f6;
    color:#fff;
}
.newcharte .action-pill.is-facebook:hover{ filter:brightness(.96); }
.newcharte .action-pill.is-facebook .ic{
    background:#2c64f6;
    border-color:#2c64f6;
    color:#fff;
}


/* ===============================
   INSTAGRAM
================================= */
.newcharte .action-pill.is-instagram{
    background:#E4405F;
    border-color:#E4405F;
    color:#fff;
}
.newcharte .action-pill.is-instagram:hover{ filter:brightness(.96); }
.newcharte .action-pill.is-instagram .ic{
    background:#E4405F;
    border-color:#E4405F;
    color:#fff;
}


/* ===============================
   X (Twitter)
================================= */
.newcharte .action-pill.is-x{
    background:#000000;
    border-color:#000000;
    color:#fff;
}
.newcharte .action-pill.is-x:hover{ filter:brightness(.96); }
.newcharte .action-pill.is-x .ic{
    background:#000000;
    border-color:#000000;
    color:#fff;
}


/* ===============================
   PINTEREST
================================= */
.newcharte .action-pill.is-pinterest{
    background:#E60023;
    border-color:#E60023;
    color:#fff;
}
.newcharte .action-pill.is-pinterest:hover{ filter:brightness(.96); }
.newcharte .action-pill.is-pinterest .ic{
    background:#E60023;
    border-color:#E60023;
    color:#fff;
}


/* ===============================
   TIKTOK
================================= */
.newcharte .action-pill.is-tiktok{
    background:#000000;
    border-color:#000000;
    color:#fff;
}
.newcharte .action-pill.is-tiktok:hover{ filter:brightness(.96); }
.newcharte .action-pill.is-tiktok .ic{
    background:#000000;
    border-color:#000000;
    color:#fff;
}


/* ===============================
   WHATSAPP
================================= */
.newcharte .action-pill.is-whatsapp{
    background:#25D366;
    border-color:#25D366;
    color:#fff;
}
.newcharte .action-pill.is-whatsapp:hover{ filter:brightness(.96); }
.newcharte .action-pill.is-whatsapp .ic{
    background:#25D366;
    border-color:#25D366;
    color:#fff;
}


/* ===============================
   YOUTUBE
================================= */
.newcharte .action-pill.is-youtube{
    background:#FF0000;
    border-color:#FF0000;
    color:#fff;
}
.newcharte .action-pill.is-youtube:hover{ filter:brightness(.96); }
.newcharte .action-pill.is-youtube .ic{
    background:#FF0000;
    border-color:#FF0000;
    color:#fff;
}


/* ===============================
   GOOGLE
================================= */
.newcharte .action-pill.is-google{
    background:#4285F4;
    border-color:#4285F4;
    color:#fff;
}
.newcharte .action-pill.is-google:hover{ filter:brightness(.96); }
.newcharte .action-pill.is-google .ic{
    background:#4285F4;
    border-color:#4285F4;
    color:#fff;
}


/* ===============================
   TRIPADVISOR
================================= */
.newcharte .action-pill.is-tripadvisor{
    background:#34E0A1;
    border-color:#34E0A1;
    color:#000;
}
.newcharte .action-pill.is-tripadvisor:hover{ filter:brightness(.96); }
.newcharte .action-pill.is-tripadvisor .ic{
    background:#34E0A1;
    border-color:#34E0A1;
    color:#000;
}


/* ===============================
   PAGESJAUNES
================================= */
.newcharte .action-pill.is-pagesjaunes{
    background:#ffde07;
    border-color:#ffde07;
    color:#000;
}
.newcharte .action-pill.is-pagesjaunes:hover{ filter:brightness(.96); }
.newcharte .action-pill.is-pagesjaunes .ic{
    background:#ffde07;
    border-color:#ffde07;
    color:#000;
}


/* ===============================
   CONTACT / DEFAULT
================================= */
.newcharte .action-pill.is-contact{
    background:var(--secondary);
    border-color:var(--secondary);
    color:#fff;
}
.newcharte .action-pill.is-contact:hover{ filter:brightness(.96); }
.newcharte .action-pill.is-contact .ic{
    background:var(--secondary);
    border-color:var(--secondary);
    color:#fff;
}















/* =========================
TERRITORY CONTROL PANEL
Scope: .newcharte
========================= */

.newcharte .dbTer{
}

/* Header */
.newcharte .dbTerHead{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:14px;
    padding:16px;
    border-radius: var(--radius);
    border:1px solid var(--border);
    background: linear-gradient(135deg, #fff, var(--primary_ultra_light));
    box-shadow: var(--shadow2);
}

.newcharte .dbTerHead__title{
    display:flex;
    align-items:center;
    gap:12px;
    min-width:0;
}
.newcharte .dbTerHead__badge{
    width:44px;height:44px;
    border-radius:16px;
    display:flex;align-items:center;justify-content:center;
    background: var(--primary);
    color:#fff;
    box-shadow: 0 10px 24px rgba(0,70,96,.18);
    flex:0 0 auto;
}
.newcharte .dbTerHead__h1{
    font-weight:1000;
    font-size:18px;
    color: var(--text);
    letter-spacing:-.2px;
}
.newcharte .dbTerHead__sub{
    margin-top:4px;
    font-size:12.5px;
    font-weight:800;
    color: var(--muted);
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    max-width: 70ch;
}
.newcharte .dbTerHead__actions{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    justify-content:flex-end;
}

/* Layout */
.newcharte .dbTerBody{
    display:grid;
    grid-template-columns: 40% minmax(0, 1fr);
    align-items:start;
}

/* Left side */
.newcharte .dbTerSide{
    position:relative;
    box-shadow: var(--shadow2);

}

/* Summary */
.newcharte .dbTerSummary{
    padding:14px 14px 10px;
    border-bottom:1px solid var(--border);
    background: rgba(224,235,243,.35);
}
.newcharte .dbTerSummary__top{
    display:flex;
    align-items:baseline;
    justify-content:space-between;
    gap:12px;
}
.newcharte .dbTerSummary__label{
    font-size:11px;
    font-weight:1000;
    color: var(--muted);
    text-transform:uppercase;
    letter-spacing:.25px;
}
.newcharte .dbTerSummary__hint{
    font-size:11px;
    font-weight:800;
    color: var(--muted);
    opacity:.85;
}
.newcharte .dbTerChips{
    margin-top:10px;
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}
.newcharte .dbTerChip{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:7px 10px;
    border-radius:999px;
    border:1px solid rgba(0,70,96,.16);
    background: rgba(255,255,255,.65);
    font-weight:900;
    font-size:12px;
    color: var(--primary);
}
.newcharte .dbTerChip.is-empty{
    border-style:dashed;
    color: var(--muted);
}

/* Levels container */
.newcharte .dbTerLevels{
    padding:10px;
}

/* Each level as “accordion card” */
.newcharte .dbTerLevel{
    border:1px solid var(--grey);
    border-radius: 16px;
    background:#fff;
    box-shadow: 0 6px 16px rgba(15,23,42,.04);
    overflow:hidden;
    margin-bottom:10px;
}
.newcharte .dbTerLevel:last-child{ margin-bottom:0; }

.newcharte .dbTerLevel:hover{
    border-color:var(--primary);
}

.newcharte .dbTerLevel:hover .dbTerLevel__icon{
    color:var(--primary);
}

.newcharte .dbTerLevel:hover .dbTerLevel__btn{
    background: linear-gradient(135deg, var(--primary_ultra_light), var(--primary_light));
    opacity: 1;
}

/* Button */
.newcharte .dbTerLevel__btn{
    width:100%;
    display:flex;
    align-items:center;
    gap:12px;
    padding:12px 12px;
    background: linear-gradient(135deg, var(--grey_ultra_light), var(--grey_light));
    border:0;
    cursor:pointer;
    text-align:left;
    opacity: .55;
}
.newcharte .dbTerLevel__btn:hover{

}

.newcharte .dbTerLevel__icon{
    width:40px;height:40px;
    border-radius:14px;
    display:flex;align-items:center;justify-content:center;
    background: var(--primary_light);
    border:1px solid rgba(0,70,96,.12);
    color: var(--black);
    flex:0 0 auto;
}
.newcharte .dbTerLevel__meta{
    min-width:0;
    flex:1;
}
.newcharte .dbTerLevel__title{
    font-weight:1000;
    font-size:16px;
    color: var(--text);
}
.newcharte .dbTerLevel__desc{
    margin-top:2px;
    font-weight:800;
    font-size:12px;
    color: var(--muted);
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.newcharte .dbTerLevel__chev{
    width:34px;height:34px;
    border-radius:14px;
    display:flex;align-items:center;justify-content:center;
    background: rgba(255,255,255,.7);
    border:1px solid rgba(0,0,0,.06);
    color: var(--primary);
    flex:0 0 auto;
    transition: transform .15s ease;
}

/* Panel */
.newcharte .dbTerLevel__panel{
    border-top:1px solid var(--border);
    background:#fff;
}
.newcharte .dbTerPanelBody{
    padding:12px;
}

/* Search input (style “topbar-like” mais clair) */
.newcharte .dbTerSearch{
    display:flex;
    align-items:center;
    gap:10px;
    padding:10px 12px;
    border-radius: 14px;
    border:1px solid rgba(0,70,96,.14);
    background: var(--grey_ultra_light);
    margin-bottom:10px;
}
.newcharte .dbTerSearch i{
    color: var(--primary);
    opacity:.85;
}
.newcharte .dbTerSearch input{
    border:0;
    outline:0;
    background:transparent;
    width:100%;
    font-weight:900;
    font-size:13px;
    color: var(--text);
}

.newcharte .dbTerLevel.is-open {
    border-color:var(--primary);
}

.newcharte .dbTerLevel.is-open .dbTerLevel__icon{
    color:var(--primary);
}

.newcharte .dbTerLevel.is-open .dbTerLevel__btn {
    opacity: 1;
    background: linear-gradient(135deg, var(--primary_ultra_light),  var(--primary_light));
}

/* Open / close states (tu peux toggle ces classes en JS) */
.newcharte .dbTerLevel.is-open .dbTerLevel__chev{
    transform: rotate(180deg);
}

.newcharte .dbTerLevel.is-disabled{
    opacity:.55;
}
.newcharte .dbTerLevel.is-disabled .dbTerLevel__btn{
    cursor:not-allowed;
}

/* Right map */
.newcharte .dbTerMapCard{
    border:1px solid var(--border);
    background:#fff;
    box-shadow: var(--shadow2);
    overflow:hidden;
    position:relative;
}

.newcharte .dbTerMapTop{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:12px 14px;
    border-bottom:1px solid var(--border);
    background: linear-gradient(135deg, #fff, rgba(224,235,243,.35));
}
.newcharte .dbTerMapTop__title{
    display:flex;
    align-items:center;
    gap:10px;
    font-weight:1000;
    color: var(--primary);
}
.newcharte .dbTerMapTop__pill{
    display:inline-flex;
    align-items:center;
    height:22px;
    padding:0 10px;
    border-radius:999px;
    background: rgba(47,182,124,.12);
    border:1px solid rgba(47,182,124,.25);
    color: var(--green_dark);
    font-size:11px;
    font-weight:1000;
}
.newcharte .dbTerMapTop__tools{
    display:flex;
    gap:8px;
}

.newcharte .dbTerMapCanvas{
    height: 650px; /* ajuste selon ta page */
    width: 100%;
}

/* Map loading overlay */
.newcharte .dbTerMapLoading{
    position:absolute;
    left:14px;
    bottom:14px;
    align-items:center;
    gap:10px;
    padding:10px 12px;
    border-radius:14px;
    background: rgba(255,255,255,.92);
    border:1px solid var(--border);
    box-shadow: var(--shadow2);
    font-weight:900;
    color: var(--primary);
}














/* =========================
   Enrich design
========================= */
.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-wrap{
    display:flex;
    gap:12px;
}

/* BOUTONS */
.newcharte .enrich-action{
    flex:1;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    font-weight:600;
    font-size:12px;
    cursor:pointer;
    transition:all .18s ease;
    border-radius:999px;
    background: var(--secondary_light);
    border:1px solid var(--secondary);
    color:var(--primary);
    white-space:nowrap;
    padding-right:12px;
}




/* Hover propre */
.newcharte .enrich-action:hover,.newcharte .enrich-action.is-loading {
    border-color:var(--secondary_dark);
    background:var(--secondary);
    color:white;
    transform:translateY(-1px);
}
.newcharte .enrich-action.is-success:hover {
    color:var(--primary);
}

.newcharte .enrich-action i {
    width:30px;
    height:30px;
    background: var(--secondary);
    color:white;
    border-radius:9999px;
    text-align: center;
    font-size:14px;
    padding-top:8px;
    padding-right:2px;
}

.newcharte .enrich-action.is-success i {
    background: var(--green);
}


.newcharte .enrich-action.is-empty i {
    background: var(--grey);
}


/* CTA TEXT
.newcharte .enrich-cta{
    pointer-events:none;
}

.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{

}
*/


.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{

}
.newcharte .enrich-action.is-success{
    border-color: var(--green_dark);
    background: var(--green_light);
}
.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;
    cursor:not-allowed!important;
}
.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;
}

/* 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-head h3{
    margin: 0;
}

.newcharte .enrich-history-actions{
    display: flex;
    align-items: center;
    gap: 8px; /* espace entre les 2 boutons */
}

.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)*/
.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);
}
.newcharte .enrich_details {
    cursor:pointer;
}

.newcharte .enrich_details .bloc {
    background: var(--primary_dark);
}

.newcharte .picto-credit {
    width: 16px;
    height: 16px;
    border-radius: 50%;

    /* dégradé "crédit / énergie" (or + orange + rose) */
    background: linear-gradient(135deg, #f59e0b 0%, #f97316 55%, #ec4899 100%);

    /* glow + liseré */
    box-shadow:
            0 0 6px rgba(249,115,22,.7),
            inset 0 0 0 1px rgba(255,255,255,.35);

    display: inline-flex;
    align-items: center;
    justify-content: center;

    color: #fff;
    font-size: 9px;
    font-weight: 900;
    line-height: 1;
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial;

    position: relative;
}

/* anneau type "jeton" */
.newcharte .picto-credit::before{
    content:"";
    position:absolute;
    inset: 3px;
    border-radius: 50%;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.45);
    opacity: .7;
}

/* symbole crédit */
.newcharte .picto-credit::after{
    content: "C";
    transform: translateY(-.3px);
}








.newcharte .picto-foncier, .newcharte .picto-entreprise {
    width: 16px;
    height: 16px;
    border-radius: 50%;

    /* dégradé "crédit / énergie" (or + orange + rose) */
    background: linear-gradient(135deg, var(--primary_light) 0%, var(--primary) 55%, var(--primary_dark) 100%);

    /* glow + liseré
    box-shadow:
            0 0 6px rgba(249,115,22,.7),
            inset 0 0 0 1px rgba(255,255,255,.35);*/

    display: inline-flex;
    align-items: center;
    justify-content: center;

    color: #fff;
    font-size: 90%;
    font-weight: 900;
    line-height: 1;
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial;

    position: relative;
}

.newcharte .ic .picto-foncier, .newcharte .ic .picto-entreprise {
    font-size: 120%;
}

/* anneau type "jeton" */
.newcharte .picto-foncier::before, .newcharte .picto-entreprise::before{
    content:"";
    position:absolute;
    inset: 3px;
    border-radius: 50%;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.45);
    opacity: .7;
}

/* symbole crédit */
.newcharte .picto-foncier::after{
    content: "F";
    transform: translateY(-.3px);
}

/* symbole crédit */
.newcharte .picto-entreprise::after{
    content: "E";
    transform: translateY(-.3px);
}






/*STARS*/
/* Base */
.newcharte .dbStar{
    --star-on: var(--secondary);
    --star-off: #d1d5db;

    position: relative;
    display: inline-block;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 14px;
    line-height: 1;
    letter-spacing: 2px;
}

.dbStar--lg{ font-size: 18px; }
.dbStar--sm{ font-size: 12px; }

/* 5 étoiles éteintes */
.newcharte .dbStar::before{
    content: "\f005 \f005 \f005 \f005 \f005";
    color: var(--star-off);
}

/* Étoiles allumées */
.newcharte .dbStar::after{
    content: "\f005 \f005 \f005 \f005 \f005";
    color: var(--star-on);
    position: absolute;
    left: 0;
    top: 0;
    white-space: nowrap;
    overflow: hidden;
}

/* États */
.newcharte .dbStar__0::after{ width: 0%; }
.newcharte .dbStar__1::after{ width: 20%; }
.newcharte .dbStar__2::after{ width: 40%; }
.newcharte .dbStar__3::after{ width: 60%; }
.newcharte .dbStar__4::after{ width: 80%; }
.newcharte .dbStar__5::after{ width: 100%; }


.newcharte .dbActNav:hover .dbStar {
    --star-on:white;
}




/*count result*/
.newcharte .dbResultCount{
    display: inline-flex;
    width: auto;
    gap: 8px;

    font-size: 13px;
    font-weight: 800;
    color: var(--muted);

    border-radius: 999px;
    background: rgba(0,70,96,.1);
    padding: 5px;
}

/* Icône */
.newcharte .dbResultCount i{
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 18px;
    height: 18px;
    border-radius: 999px;

    background: rgba(0,70,96,.15);
    color: var(--primary);

    font-size: 11px;
    line-height: 1;
}

/* Badge nombre */
.newcharte .dbResultCount__value{
    color: white;
    font-weight: 1000;
    font-size: 12px;
    background: var(--primary);
    padding:0 10px;
    border-radius: 999px;
}





/* =========================================================
      BOARD – STACKED (100% / 100%) + différenciation forte
      Scope: .newcharte
      Requiert variables: --primary --secondary --border --text --muted --primary_light
      ========================================================= */

/* =========================
   Layout : 2 blocs empilés
   ========================= */

.newcharte .board{
    display: flex;
    flex-direction: column;
    gap: 22px;
    align-items: stretch;
}

.newcharte aside {
    position: relative;
    z-index:1;
}

.newcharte .board__action,
.newcharte .board__history{
    min-width: 0;
}

/* =========================
   App Card (base)
   ========================= */

.newcharte .appCard{
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 26px;
    box-shadow: 0 12px 32px rgba(15,23,42,.06);
    /*position: relative;*/
    z-index:10;
}

.newcharte .appCard.appCard__closed {
    border-radius: 26px 26px 0 0;
}

.newcharte .appCard::before,
.newcharte .appCard::after{
    pointer-events: none;
}



/* Tête de carte */
.newcharte .appCard__head{
    padding: 10px 18px;
    background: var(--secondary);
    border-bottom: 1px solid var(--border);
    z-index: 5;
    border-radius:25px;
}

.newcharte .appCard__head a{
    position: relative;
    z-index: 0;
}


.newcharte .appCard__head.p-20 {
    padding:20px;
}

/*
.newcharte .appCard__head::after{
    content:"";
    position:absolute;
    right:-120px;
    top:-120px;
    width:350px;
    height:260px;
    border-radius:999px;
    background: rgba(255,255,255,.14);
    transform: rotate(12deg);
}
*/
/* Body */
.newcharte .appCard__body{

}


/* Ligne titre */
.newcharte .appCard__headTop{
    display: flex;
    align-items: center;
    gap: 12px;
}

.newcharte .appTopActions{
    margin-left:auto;
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
    justify-content:flex-end;
    z-index:0;
}


.newcharte .appCard__title{
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 15px;
    font-weight: 1000;
    text-transform: uppercase;
    letter-spacing: -0.2px;
    line-height: 1.1;
    color: white;
}

.appCard__titleLabel {
    display: flex;
    align-items: center;
    gap: 10px;
    white-space: nowrap;
}

.appCard__titleText {
    display: inline-block;
    line-height: 1.2;
}

.newcharte .appCard__titleIcon{
    width: 34px;
    height: 34px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: 1px solid rgba(0,0,0,.10);
    box-shadow: 0 10px 20px rgba(15,23,42,.05);
}

.newcharte .appCard--secondary .appCard__titleIcon i{
    color: var(--secondary);
}


.newcharte .appCard__titleIcon i {

}

.newcharte .appCard__subtitle{
    margin-top: 6px;
    font-size: 12.5px;
    font-weight: 800;
    color: var(--muted);
    opacity: .9;
}

/* Lien header (Voir tout) */
.newcharte .appCard__headLink{
    display: inline-flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
    font-weight: 1000;
    font-size: 12.5px;
    color: var(--primary);
    background: rgba(255,255,255,.8);
    border: 1px solid rgba(0,0,0,.10);
    padding: 8px 10px;
    border-radius: 14px;
}

.newcharte .appCard__headLink:hover{
    background: #fff;
}






/* =========================
   Board lancer prospective / expertise
   ========================= */

.newcharte .board__action .appCard{
    border: 1px solid var(--primary); /* secondary */
    box-shadow:var(--shadow-focus-primary);
}

/* bandeau orange
.newcharte .board__action .appCard::before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:6px;
    background: var(--primary_dark);
    z-index: 2;
}*/

.newcharte .board__action .appCard.appCard--secondary::before{
    background: var(--secondary_dark);
}


.newcharte .appCard__head--primary{
    background: linear-gradient(135deg, var(--primary), var(--primary_head));
    border-bottom: none;
}

.newcharte .appCard__head--primary .appCard__title{
    color: #fff;
}

.newcharte .appCard__head--primary .appCard__subtitle{
    color: rgba(255,255,255,.92);
    opacity: 1;
}

.newcharte .appCard__head--primary .appCard__titleIcon{
    background: rgba(255,255,255,.18);
    border: 1px solid rgba(255,255,255,.22);
    box-shadow: none;
}

.newcharte .appCard__head--primary .appCard__titleIcon i{
    color: #fff;
}






.newcharte .appCard__head--secondary{
    background: linear-gradient(135deg, var(--secondary), var(--secondary_head));
    border-bottom: none;
}

.newcharte .board__action .appCard.appCard--secondary {
    border-color:var(--secondary);
    box-shadow: var(--shadow-focus-secondary);
}


/* halo décoratif
.newcharte .appCard__head--primary::after{
    content:"";
    position:absolute;
    right:-120px;
    top:-120px;
    width:260px;
    height:260px;
    border-radius:999px;
    background: rgba(255,255,255,.14);
    transform: rotate(12deg);
} */


/* CTA grid */
.newcharte .actionGrid{
    display:grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 20px;
    margin:30px;
}



.newcharte .actionBtn{
    border: 1px solid rgba(0,0,0,.12);
    border-radius: var(--radius);
    background:var(--primary_ultra_light);
    box-shadow: var(--shadow2);
    cursor:pointer;
    text-align:left;
    padding: 20% 40px;
    display:flex;
    flex-direction:column;
    gap: 10px;
    transition:.15s ease;
    position: relative;
    overflow:hidden;
}

.newcharte .actionBtn:hover, .newcharte .launchGrid .dbGroup:hover {
    transform: translateY(-2px);
    border-color: var(--primary);
    box-shadow: var(--shadow);
    background: var(--primary_soft);
}


.newcharte .launchGrid .uxAdvSection:hover {
    transform: translateY(-2px);
    border-color: var(--secondary);
    box-shadow: var(--shadow);
    background: var(--secondary_soft);
}

.newcharte #popup .launchForm {
    overflow: scroll;
}

.newcharte .actionBtn:hover .actionBtn__bgIcon {
    color:var(--primary)
}

.newcharte .actionBtn::after{
    content:"";
    position:absolute;
    right:-40px;
    bottom:-80px;
    width:190px;
    height:190px;
    border-radius:999px;
    background: var(--primary_light);
    border: 1px solid rgba(0,70,96,.18);
    z-index:0;
}

.newcharte .actionBtn__bgIcon{
    position:absolute;
    right: 26px;   /* ← tu ajustes */
    bottom: 22px;  /* ← tu ajustes */
    font-size: 64px; /* ← taille */
    color: rgba(0,70,96,.28);
    transform: rotate(-10deg);
    z-index:1;     /* au-dessus du rond */
    pointer-events:none;
}

.newcharte .actionBtn__content,
.newcharte .actionBtn__cta{
    position: relative;
    z-index: 2;
}

.newcharte .actionBtn--adresse .actionBtn__bgIcon{
    font-size: 62px;
    right: 28px;
    bottom: 16px;
}

.newcharte .actionBtn--territoire .actionBtn__bgIcon{
    font-size: 66px;
    right: 26px;
    bottom: 14px;
}

.newcharte .actionBtn--draw .actionBtn__bgIcon{
    font-size: 60px;
    right: 30px;
    bottom: 16px;
}

.newcharte .actionBtn__content{ position: relative; z-index: 1; }
.newcharte .actionBtn__title{
    font-weight: 800;
    font-size: 22px;
}
.newcharte .actionBtn__desc{
    margin-top: 3px;
    font-size: 13px;
    font-weight: 850;
    color: var(--muted);
}

.newcharte .actionBtn__cta{
    margin-top: 20px;
    position: relative;
    z-index: 1;
}











/* =========================
   Choice cards (Lancer)
   ========================= */

.newcharte .choiceGrid{
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.newcharte .choiceCard{
    width: 100%;
    display: flex;
    align-items: center;
    gap: 12px;

    padding: 14px 14px;
    border-radius: 20px;

    background: #fff;
    border: 1px solid rgba(0,0,0,.12);
    box-shadow: 0 10px 26px rgba(15,23,42,.06);

    cursor: pointer;
    text-align: left;
    transition: .15s ease;

    position: relative;
    overflow: hidden;
}

.newcharte .choiceCard:hover{
    transform: translateY(-2px);
    box-shadow: var(--shadow-focus-secondary);
    border-color: rgba(247,148,29,.30);
}

/* décor */
.newcharte .choiceCard:before{
    content:"";
    position: absolute;
    right: -70px;
    bottom: -70px;
    width: 190px;
    height: 190px;
    border-radius: 999px;
    background: radial-gradient(circle at 30% 30%,
    rgba(247,148,29,.14),
    rgba(0,70,96,.06) 60%,
    rgba(0,0,0,0) 70%);
}

/* icon */
.newcharte .choiceCard__icon{
    width: 52px;
    height: 52px;
    border-radius: 18px;
    display: flex;
    align-items: center;
    justify-content: center;

    background: var(--primary_light);
    border: 1px solid rgba(247,148,29,.18);
    box-shadow: 0 10px 20px rgba(15,23,42,.06);

    flex: 0 0 auto;
    position: relative;
    z-index: 1;
}

.newcharte .choiceCard__icon i{
    font-size: 20px;
    color: var(--primary);
}

.newcharte .choiceCard__content{
    flex: 1 1 auto;
    min-width: 0;
    position: relative;
    z-index: 1;
}

.newcharte .choiceCard__title{
    font-size: 14px;
    font-weight: 1000;
    color: var(--text);
    line-height: 1.2;
}

.newcharte .choiceCard__desc{
    margin-top: 3px;
    font-size: 12.5px;
    font-weight: 800;
    color: var(--muted);
    line-height: 1.25;
}

/* CTA */
.newcharte .choiceCard__cta{
    width: 36px;
    height: 36px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(247,148,29,.22);
    background: rgba(255,255,255,.92);
    flex: 0 0 auto;

    position: relative;
    z-index: 1;
}

.newcharte .choiceCard__cta i{
    color: var(--secondary);
    font-size: 14px;
}

/* =========================
   Search row (Historique)
   ========================= */

.newcharte .searchRow{
    display: flex;
    align-items: center;
    gap: 10px;

    padding: 12px 12px;
    border-radius: 16px;
    border: 1px solid rgba(0,0,0,.14);
    background: #fff;
    box-shadow: 0 12px 30px rgba(15,23,42,.07);

}

.newcharte .searchRow i{
    color: var(--muted);
}

.newcharte .search_input{
    border: 0;
    outline: 0;
    width: 100%;
    font-weight: 900;
    font-size: 13.5px;
    background: transparent;
}

.newcharte .searchRow__hint{
    font-size: 11px;
    font-weight: 1000;
    color: #5c3b00;
    border: 1px solid rgba(247,148,29,.24);
    background: rgba(247,148,29,.10);
    padding: 4px 8px;
    border-radius: 10px;
}

/* focus */
.newcharte .searchRow:focus-within{
    border-color: rgba(247,148,29,.35);
    box-shadow: var(--shadow-focus-secondary);
}














/* =========================
   Historique prospective
========================= */

.newcharte .historyList{
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* optionnel : zone scrollable pour l’historique */
.newcharte .board__history .appContent {
    margin:20px;
}

.newcharte .board__history .appContent .load_content{

}

/* scrollbar */
.newcharte .board__history .appContent .load_content::-webkit-scrollbar{
    width: 10px;
}
.newcharte .board__history .appContent .load_content::-webkit-scrollbar-thumb{
    background: rgba(0,0,0,.12);
    border-radius: 999px;
    border: 2px solid rgba(255,255,255,.9);
}
.newcharte .board__history .appContent .load_content::-webkit-scrollbar-thumb:hover{
    background: rgba(247,148,29,.28);
}



.newcharte .historyItem{
    border: 1px solid var(--border);
    border-radius: 14px;
    /*box-shadow: 0 10px 26px rgba(15,23,42,.05);*/
    overflow: hidden;
    transition: .15s ease;
    margin-top:1px;
    background: white;

}

.newcharte .historyItem:nth-child(even){
    background: var(--grey_ultra_light);
}

.newcharte .historyItem:hover{
    transform: translateY(-1px);
    /*box-shadow: 0 16px 40px rgba(15,23,42,.10);*/
    background: var(--secondary_ultra_light);
    border-color:var(--secondary_soft);
}

.newcharte .historyItem__top{
    padding: 15px 15px 0 15px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.newcharte .historyItem__meta{
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    min-width: 0;
}

.newcharte .pill{
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 28px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 1000;
    border: 1px solid var(--grey);
    background: linear-gradient(180deg, var(--grey_light), var(--grey_ultra_light));
    color: var(--muted);
}

.newcharte .pill strong{ }

.newcharte .pill--date{
    background: rgba(0,70,96,.06);
    border-color: rgba(0,70,96,.12);
    color: var(--primary);
}

.newcharte .pill--tag{
    background: rgba(247,148,29,.12);
    border-color: rgba(247,148,29,.22);
    color: #5c3b00;
}

.newcharte .pill--secondary{
    background: linear-gradient(180deg, var(--secondary_light), var(--secondary_ultra_light));
    border-color: var(--secondary);
}

.newcharte .pill--secondary i{
    color:var(--secondary);
}

.newcharte .historyItem__actions{
    display: flex;
    gap: 10px;
    flex: 0 0 auto;
}


.newcharte .historyItem__body{
    padding: 0 14px 14px;
    display: grid;
    gap: 8px;
}

.newcharte .historyItem__line{
    display: flex;
    gap: 10px;
    align-items: baseline;
    font-size: 12.5px;
    font-weight: 800;
    color: var(--muted);
    line-height: 1.35;
}

.newcharte .historyItem__line i{
    color: var(--primary);
    margin-top: 2px;
}

.newcharte .historyItem__line strong{
    color: var(--text);
    font-weight: 1000;
}

/* Footer CTA (historique) : orange pour distinguer du bloc lancer */
.newcharte .footerCta{
    margin-top: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;

    padding: 12px 14px;
    border-radius: 18px;

    background: var(--secondary);
    color: #fff;
    text-decoration: none;
    font-weight: 1000;
    text-transform: uppercase;
    font-size: 12.5px;
}

.newcharte .footerCta:hover{
    opacity: .95;
}



.newcharte .historyCard{
    padding:0 0 10px 10px;
}

.newcharte .historyCard__head{
    display:flex;
    justify-content: space-between;
    gap: 12px;
    padding: 14px;
    background: var(--primary_ultra_light);
    border-bottom: 1px solid var(--border);
}

.newcharte .historyCard__titleRow{
    display:flex;
    flex-wrap:wrap;
    gap: 8px;
    align-items:center;
}

.newcharte .historyCard__title {
    display:flex;
    flex-wrap:wrap;
    gap: 8px;
    align-items:center;
    color:var(--secondary);
    font-weight: 700;
    margin:0 15px 0 0;
}

.newcharte .historyCard__date{
    display:inline-flex;
    align-items:center;
    gap: 8px;
    font-weight: 900;
    font-size: 12.5px;
    color: var(--black_dark);
}

.newcharte .historyCard__badge{
    display:inline-flex;
    align-items:center;
    gap: 8px;
    padding: 6px 10px;
    border-radius: 999px;
    background: var(--secondary_light);
    color: #5c3b00;
    border: 1px solid rgba(0,0,0,.08);
    font-weight: 900;
    font-size: 12px;
}

.newcharte .historyCard__summary{
    margin-top: -5px;
    display:flex;
    flex-wrap:wrap;
    gap: 10px;
    color: var(--muted);
    font-weight: 800;
    font-size: 12.5px;
}

.newcharte .historyCard__summaryItem{
    display:inline-flex;
    gap: 8px;
    align-items:center;
    padding: 6px 10px;
    border-radius: 12px;
    background: var(--secondary_light);
    border:1px solid var(--secondary);
}

.newcharte .historyCard__summaryItem--localisation{
    display:inline-flex;
    gap: 8px;
    align-items:center;
    padding: 6px 10px;
    background: transparent;
    border: 0;
    color:var(--muted);
    font-size:14px;
    font-weight: 700;
    line-height: 1.3;
    text-overflow: ellipsis;
}

.newcharte .historyCard__actions{
    display:flex;
    gap: 10px;
    align-items:flex-start;
}

/* Body */
.newcharte .historyCard__body {
    max-height: 0;
    overflow: hidden;
    transition: max-height .35s ease, opacity .25s ease;
    opacity: 0;
}


/* Rows aligned (grid) */
.newcharte .historyRows{
    display:flex;
    flex-direction:column;

}

.newcharte .historyRow{
    display:grid;
    grid-template-columns: 18px 160px 1fr; /* icon | label | value */
    gap: 10px;
    align-items:center;
    padding:15px;
    border-bottom:1px dashed var(--border);
}


.newcharte .historyRow:hover{
    background: var(--secondary_soft);
}

.newcharte .historyRow__icon{
    margin-top: 2px;
    color: var(--secondary);
}

.newcharte .historyRow__label{
    font-weight: 600;
    font-size: 14px;
    overflow:hidden;
    text-overflow:ellipsis;
}

.newcharte .historyRow__value{
    min-width: 0;
    display:flex;
    flex-wrap: wrap;
    gap: 6px;
}

.newcharte .historyRow_unique{
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 5px 10px;
    border-radius: 999px;
    border: 1px solid var(--secondary_ultra_light);
    background: var(--secondary_soft);
    color: var(--text);
    font-weight: 900;
    font-size: 12px;
    line-height: 1;
    max-width: 520px;
    margin-right: -9px;
}

.newcharte .historyRow_unique__icon{
    color: var(--secondary_dark);
    font-size: 12px;
}

.newcharte .historyRow_unique__label{
    opacity: .8;
}

.newcharte .historyRow_unique__value{
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 320px;
}

.newcharte .historyRow_unique .with_coma{
    white-space: nowrap;
}

/* Si tu veux que with_coma ressemble à une chip (sinon ignore) */
.newcharte .historyRow__value .with_coma{
    display:inline-flex;
    padding: 6px 10px;
    border-radius: 999px;
    background: var(--grey_ultra_light);
    border: 1px solid rgba(0,0,0,.08);
    font-weight: 600;
    font-size: 12px;
    color: var(--text);
}

.newcharte .historyRow__value .with_coma:after{
    content:"";
}




.newcharte .historyCard.is-open .historyCard__body{
    max-height: 1000px; /* large pour contenu */
    opacity: 1;
}

/* curseur */
.newcharte .historyCard__summaryItem--filtres{
    cursor: pointer;
    transition: .2s ease;
}

/* rotation icône */
.newcharte .historyCard__toggleIcon{
    transition: transform .25s ease;
}

.newcharte .historyCard.is-open .historyCard__toggleIcon{
    transform: rotate(180deg);
}


.newcharte .historyCard__filtre{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;

    border:0;
    background:transparent;
    padding:0;
    text-align:left;
}

/* body fermé par défaut */
.newcharte .historyCard__body[hidden]{
    display:none !important;
}

/* petit chevron animé */
.newcharte .historyCard__chevron{
    transition: transform .18s ease;
    opacity:.8;
    display:inline-block;
    transform: rotate(0deg);
}

.newcharte .historyCard.is-open .historyCard__chevron,.newcharte .js-historyCardToggle[aria-expanded="true"] .historyCard__chevron{
    transform: rotate(180deg);
}

/* (optionnel) un peu d'air quand ouvert */
.newcharte .historyCard__body{
    margin-top:10px;
}

/* si tu veux un séparateur entre summary et body */
.newcharte .historyCard.is-open .historyCard__body{
    border-top:1px solid rgba(0,0,0,.08);
}





/* ================================
   HOVER MENU : label puis valeurs dessous
================================ */
.newcharte .dbHoverMenu .historyRow{
    display:grid;
    grid-template-columns: 16px 1fr;      /* icon | label */
    grid-template-areas:
        "icon label"
        "value value";
    gap: 6px 10px;
    align-items:start;
    padding:10px 12px;
    border-bottom:1px solid var(--border);
}

/* pas de hover bleu dans un menu */
.newcharte .dbHoverMenu .historyRow:hover{
    background:transparent;
}

.newcharte .dbHoverMenu .historyRow__icon{
    grid-area:icon;
    margin-top:2px;
    font-size:13px;
    color:var(--secondary);
}

.newcharte .dbHoverMenu .historyRow__label{
    grid-area:label;
    font-weight:700;
    font-size:12px;
    line-height:1.2;
    color:var(--text);
}

/* ajoute automatiquement ":" après le label */
.newcharte .dbHoverMenu .historyRow__label::after{
    content:" :";
    font-weight:700;
    opacity:.9;
}

.newcharte .dbHoverMenu .historyRow__value{
    grid-area:value;
    min-width:0;
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    padding-left:26px; /* aligne sous le texte (icon+gap) */
}

/* chips un peu plus petites dans le menu */
.newcharte .dbHoverMenu .historyRow__value .with_coma{
    padding:4px 8px;
    font-size:11px;
}

/* séparateur plus “menu” */
.newcharte .dbHoverMenu .historyRow:last-child{
    border-bottom:none;
}

/* panel fond blanc propre */
.newcharte .dbHoverMenu .dbHoverMenu__panel{
    background:#fff;
    border:1px solid var(--border);
    border-radius:12px;
    box-shadow:0 10px 30px rgba(0,0,0,.10);
    overflow:hidden;
}






/* ==============================
   PR LISTING — scoped prospective
   ============================== */

.newcharte #listings .prCard__inner{ width:100%; }
.newcharte #listings .row.pr-listing{ padding:0; border-radius:20px; }

/* =========================
   COMPANY HEADER (small)
   ========================= */
.newcharte #listings .pr-listing .company-header{
    padding:10px 15px;
    /*background:linear-gradient(135deg, var(--primary), var(--primary_dark));*/
    background:var(--primary);
}


.newcharte #listings .pr-listing .company-header .subline code {
    font-size:10px;
}

.company-header__small .header-top{
    display:flex;
    align-items:center;              /* centrage vertical réel */
    justify-content:space-between;
    gap:12px;
}

.company-header__small .badges{
    display:flex;
    align-items:center;
    gap:4px;
}

.newcharte #listings .company-header__small .company-title{ font-size:23px; }
.newcharte #listings .company-header__small .subline{
    margin:0;
    font-size:12px;
}

/* Badges icons */
.newcharte #listings .prHover__ico{
    width:26px;
    border:1px solid rgba(15,23,42,.10);
    border-radius:99999px;
    padding:5px;
    background:#fff;
    box-shadow:0 10px 22px rgba(15,23,42,.10);
}

/* =========================
   GRID LAYOUT
   ========================= */
.newcharte #listings .prCard__grid{
    display:grid;
    grid-template-columns:1.80fr .60fr;
}

.newcharte #listings .prCard__grid--full{
    grid-template-columns:1fr;
}



/* Columns */
.newcharte #listings .prCol--left{ padding:5px 0 10px 5px; }

.newcharte #listings .prCol--right{
    margin-top:-14px;
    background:
            radial-gradient(520px 140px at 100% 0%, color-mix(in srgb, var(--secondary) 14%, transparent), transparent 60%),
            #fff;
    padding:5px;
    /*box-shadow:0 12px 26px rgba(15,23,42,.10);*/
    display:flex;
    justify-content:flex-end;
}

/* =========================
   LINES (left column)
   ========================= */
.newcharte #listings .prLine{
    display:flex;
    align-items:flex-start;
    margin:8px 0 0 8px;
    font-size:12px;
    font-weight:600;
    color:var(--text);
}

.newcharte #listings .prLine i{
    width:18px;
    margin-top:2px;
    color:var(--primary);
}

.newcharte #listings .prLine a{
    color:var(--text);
    text-decoration:underline;
    text-underline-offset:2px;
    text-decoration-thickness:1px;
}

.newcharte #listings .prLine.adresse{ align-items:center; }

.newcharte #listings .prLine__text{ min-width:0; }

/* separator */
.newcharte #listings .prLine__sep{
    height:1px;
    background:var(--grey_ultra_light);
    margin:10px 0;
}

/* more lines */
.newcharte #listings .prLine__more{ display:none; }

/* toggle */
.newcharte #listings .prMoreToggle{
    display:inline-flex;
    align-items:center;
    gap:5px;
    padding:2px 7px;
    margin-left:6px;
    background:var(--primary_ultra_light);
    color:var(--primary);
    font-weight:900;
    font-size:9px;
    cursor:pointer;
    user-select:none;
}

.newcharte #listings .prMoreToggle:hover{ background:var(--primary_light); }
.newcharte #listings .prMoreToggle i{ color:var(--primary); }

.newcharte #listings .prMoreToggle.is-open{
    background:var(--secondary_light);
    color:var(--secondary_dark);
    border-color:rgba(247,148,29,.25);
}
.newcharte #listings .prMoreToggle.is-open i{ color:var(--secondary_dark); }

/* counter badge */
.newcharte #listings .prCounter{
    flex:1 1 auto;
    display:inline-flex;
    justify-content:flex-end;
    height:14px;
    padding:0 5px;
    font-size:10px;
    font-weight:700;
    background:linear-gradient(90deg,#fff 0%, rgba(0,0,0,.02) 30%, var(--primary_ultra_light) 100%);
    color:var(--text);
}

.newcharte #listings .row.pr-listing:hover .prCounter{
    background:linear-gradient(90deg,#fff 0%, rgba(0,0,0,.02) 30%, var(--primary_light) 100%);
}

.newcharte #listings .row.pr-listing .prCounter.actionable:hover{
    cursor:pointer;
    background:linear-gradient(90deg,#fff 0%, rgba(0,0,0,.02) 30%, var(--primary_soft) 100%);
}



/* =========================
   RIGHT: STREET SCORE
   ========================= */
.newcharte #listings .prRueScore{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    text-align:right;
    padding:19px 5px 0 0;
}

.newcharte #listings .prRueScore__top{
    display:flex;
    justify-content:space-between;
    align-items:baseline;
    gap:10px;
}

.newcharte #listings .prRueScore__hint{
    font-weight:500;
    font-size:12px;
    color:var(--muted);
}

.newcharte #listings .prRueScore__meta{
    margin-top:10px;
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
}

.newcharte #listings .prRueScore__meta--sep{ margin:15px 0 10px 0; }

.newcharte #listings .prRueScore__pill{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:6px 10px;
    border-radius:999px;
    border:1px solid rgba(15,23,42,.10);
    background:#fff;
    font-weight:950;
    font-size:12px;
}

.newcharte #listings .prRueScore__pill i{ color:var(--secondary_dark); }
.newcharte #listings .prRueScore__pill.actionable:hover,.newcharte #listings .prRueScore__pill.active{ background:var(--secondary_light); }
/* helper existant chez toi (utilisé dans solv-badge) */
.newcharte #listings .solv-small{
    font-size:11px;
    padding:5px 7px;
    font-weight:600;
    color:white;
}

/* =========================
   FOOT ACTIONS
   ========================= */
.newcharte #listings .prCard__foot{
    position:relative;
    display:flex;
    flex-direction:row;
    align-items:center;
    gap:6px;
    width:100%;
    padding:5px;
    border-radius:0 0 14px 14px;
}

/* pousse le dernier bouton (Sauvegarder) à droite */
.newcharte #listings .prCard__foot > .dbFavActionBtn:last-child{ margin-left:auto; }

/* action buttons style */
.newcharte #listings .pr-listing .dbFavActionBtn{
    background:#fff;
    color:var(--primary);
}

.newcharte #listings .pr-listing .dbFavActionBtn:hover{
    background:var(--primary_ultra_light);
}

.newcharte #listings .pr-listing .dbFavActionBtn.save_favorite{
    background:var(--black);
    color:#fff;
}

.newcharte #listings .pr-listing .dbFavActionBtn.save_favorite:hover{
    background:var(--black_dark);
    color:#fff;
}





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


.newcharte .company-header:hover .is-save {
    border-color:white;
}
.newcharte .is-save:hover, .newcharte .is-save:hover .ic{
    filter:brightness(.96);
    background:var(--green);
    border-color:var(--green)!important;
    color:#fff;
}







.newcharte .is-saved, .newcharte .is-saved .ic{
    background: var(--green);
    border-color: var(--green);
    color:#0f172a;
}
.newcharte .action-pill.is-saved .ic{
    background: var(--green);
    border:0;
}

.newcharte .is-saved, .newcharte .is-saved .ic{
    background:var(--green)!important;
    border-color:var(--green)!important;
    color:#fff!important;
}

.newcharte .is-saved i{
    font-weight: 900!important; /* solid */
}
/* =========================
   NOTICE (informative line)
   ========================= */
.newcharte #listings .prNotice{
    display:flex;
    align-items:center;
    gap:10px;
    padding:10px;
    background:radial-gradient(520px 140px at 0% 0%, color-mix(in srgb, var(--alert_ultra_light) 100%, transparent), transparent 60%), #fff;
    box-shadow:0 10px 22px rgba(15,23,42,.06);

}

.newcharte #listings .prNotice__icon{
    width:24px;
    height:24px;
    border-radius:12px;
    font-size:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    border:1px solid var(--alert);
    background:color-mix(in srgb, var(--alert_dark) 20%, var(--alert));
}

.newcharte #listings .prNotice__icon i{ color:#fff; }

.newcharte #listings .prNotice__content{ min-width:0; flex:1 1 auto; }

.newcharte #listings .prNotice__text{
    font-weight:600;
    font-size:12px;
    color:var(--muted);
    overflow:hidden;
    text-overflow:ellipsis;
}

.newcharte #listings .prNotice--info{
}


.newcharte #listings .prNoticeInline {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.4;
    margin: 5px 0 15px 0;
    border: 1px solid transparent;
}


.newcharte #listings .prNoticeInline i {
    font-size: 14px;
    flex-shrink: 0;
}


.newcharte #listings .prNoticeInline--danger {
    background: #fff2f2;
    border-color: #f5c2c7;
    color: #b4232c;
}

.newcharte #listings .prNoticeInline--danger i {
    color: #d92d20;
}


/*hover*/


.newcharte #listings .is-active .row.pr-listing, .newcharte #listings .row.pr-listing:hover{
    background:#fff;
    border-color:var(--primary_light);
    box-shadow:var(--shadow-focus-primary);
}

.newcharte #listings .is-active .pr-listing .company-header, .newcharte #listings .pr-listing:hover .company-header {
    background:linear-gradient(135deg, var(--black), var(--black_dark));
}






/* Pagination — design “fond bleu” compatible avec ton HTML (sans changer le contenu) */
.newcharte .dbPagination{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;

    border-radius:16px;

    /*background:linear-gradient(135deg, var(--primary), var(--primary_dark));
    border:1px solid rgba(255,255,255,.14);
    box-shadow:0 12px 28px rgba(15,23,42,.18);
    color:#fff;*/
    margin-top:10px;

}

/* Texte “Résultats …” */
.newcharte .dbPagination .pagination{
    display:inline-flex;
    align-items:center;
    gap:6px;
    margin:10px 0 0 15px;
    padding:0;

    font-weight:600;
    font-size:15px;
    color:var(--black);
    white-space:nowrap;
}

.newcharte .dbPagination #display,
.newcharte .dbPagination #total{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height:24px;
    border-radius:999px;
    background:rgba(255,255,255,.14);
    border:1px solid rgba(255,255,255,.18);
    color:var(--black);
    font-weight:950;
    letter-spacing:.2px;
}

/* Bloc droite */
.newcharte .dbPagination .pr-pagination-num{
    display:flex;
    align-items:center;
    gap:8px;
    margin-right: 5px;
}

.newcharte .dbPagination .pr-pagination-num .pagination{
    display:flex;
    align-items:center;
    gap:8px;
    list-style:none;
    margin:0;
    padding:0;
}

/* Boutons */
.newcharte .dbPagination .pr-pagination-button{
    display:inline-flex;
    align-items:center;
    gap:8px;

    height:34px;
    padding:0 12px;
    border-radius:12px;

    background:var(--primary);
    border:1px solid rgba(255,255,255,.16);
    color:#fff;

    font-weight:700;
    font-size:12px;
    text-decoration:none;
    white-space:nowrap;
    cursor: pointer;
    text-transform: uppercase;

    transition:transform .12s ease, background .12s ease, border-color .12s ease, box-shadow .12s ease;
}

.newcharte .dbPagination .pr-pagination-button i{
    font-size:14px;
    opacity:.95;
}

/* Hover / active */
.newcharte .dbPagination .pr-pagination-button:hover{
    /*background:rgba(255,255,255,.16);
    border-color:rgba(255,255,255,.22);
    box-shadow:0 10px 22px rgba(0,0,0,.18);*/
    background: var(--primary_dark);
    box-shadow:0 10px 22px rgba(0,0,0,.18);
    transform:translateY(-1px);

}

.newcharte .dbPagination .pr-pagination-button:active{
    transform:translateY(0);
    box-shadow:none;
}


#map-prospective{
    position:relative;
}

#map-panel{
    position:absolute;
    inset:0;
    z-index:999999;
    pointer-events:none;
    animation: slideDown .25s ease;
    height: calc(115vh - 220px);
    min-height: 420px;
    background: white;
    pointer-events:auto;
    border-radius: 20px;
    padding:10px;
}








@keyframes slideDown{
    from{
        opacity:0;
        transform: translateY(-10px);
    }
    to{
        opacity:1;
        transform: translateY(0);
    }
}






















/* =========================
   Comapny document
========================= */
.newcharte .doc-toolbar{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    align-items:flex-start;
    margin:12px 0 14px;
}

.newcharte .doc-pills {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.newcharte .doc-years{
    flex: 0 0 100%;
    width: 100%;
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}


.newcharte .doc-chip{
    border:1px dashed rgba(0,70,96,.22);
    background: rgba(0,70,96,.04);
    color: var(--primary);
    font-weight:900;
    padding:7px 10px;
    border-radius:12px;
    cursor:pointer;
    transition:.15s ease;
}
.newcharte .doc-chip:hover{ background: rgba(0,70,96,.07); }
.newcharte .doc-chip.active{
    border-style:solid;
    background:#ffffff;
    box-shadow: var(--shadow2);
}
.newcharte .doc-chip .count{
    margin-left:6px;
    font-size:12px;
    color: var(--muted);
}

.newcharte .doc-list{ display:flex; flex-direction:column; gap:10px; }

.newcharte .doc-item{
    display:flex;
    gap:12px;
    align-items:flex-start;
    justify-content:space-between;
    border:1px solid var(--border);
    border-radius:14px;
    background:#fff;
    padding:20px 15px;
}

.newcharte .doc-item:nth-child(2n) {
    background: #f9fbfc;
}
.newcharte .doc-left{ min-width:0; }
.newcharte .doc-actions{ display:flex; gap:8px; flex:0 0 auto; }

.newcharte .doc-top{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    align-items:center;
    font-size:12px;
    color:var(--muted);
}
.newcharte .doc-year{ font-weight:1000; color:var(--primary); }
.newcharte .doc-date{ color:var(--muted); }

.newcharte .doc-badge{
    font-weight:1000;
    font-size:12px;
    padding:4px 8px;
    border-radius:999px;
    border:1px solid var(--border);
    background:#f7fafc;
    color:var(--primary);
}
.newcharte .doc-badge.is-bilan{
    background: rgba(247,148,29,.12);
    border-color: rgba(247,148,29,.30);
}
.newcharte .doc-badge.is-acte{
    background: rgba(0,70,96,.08);
    border-color: rgba(0,70,96,.18);
}

.newcharte .doc-title{
    margin-top:12px;
    font-weight:1000;
    color:var(--text);
}
.newcharte .doc-desc{ margin-top:4px; }

.newcharte .doc-bullets{
    margin:6px 0 0;
    padding-left:18px;
    color:var(--text);
    font-size:13px;
}
.newcharte .doc-bullets li{ margin:2px 0; }


.newcharte .doc-progress{ margin-top:10px; }
.newcharte .doc-bar{
    height:10px;border-radius:999px;background:#fff;
    border:1px solid var(--border);
    overflow:hidden;
}
.newcharte .doc-bar-fill{
    height:100%;
    background: rgba(247,148,29,.85);
    border-radius:999px;
}
.newcharte .doc-progress-meta{
    margin-top:6px;
    font-size:12px;
    color:var(--primary);
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    align-items:center;
}





/* =========================
   LAUNCH block (ex-prospect)
   Scope: .newcharte
   ========================= */

.newcharte .launchTop{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    margin-bottom:12px;
}

.newcharte .launchBack{
    height:40px;
    border-top-right-radius:0;
    border-top-left-radius:0;
    border-bottom-left-radius:0;
}

.newcharte .launchGrid{
    display:grid;
    grid-template-columns:repeat(12, 1fr);
    gap:14px;
    margin:20px;
}

/* Cards */
.newcharte .actionBlock{
    grid-column:span 6;
    padding:14px;
    border-radius:18px;
    cursor:default;
}

.newcharte .launchGrid .actionBlock:after {
    content:none;
}

.newcharte .actionBlock--full{ grid-column:span 12; }



.newcharte .actionBlock:hover{
    transform:none;
    box-shadow:var(--shadow2);
}

.newcharte .launchCardTitle{
    margin:5px 0 0 10px;
    font-size:16px;
    color:var(--primary);
    letter-spacing:-.1px;
}

.newcharte .launchCardBody{ padding-top:5px; }

.newcharte .launchField{
    display:flex;
    flex-direction:column;
    gap:8px;
}

/* Inputs (on supporte aussi .prospectInput si tu en as encore) */
.newcharte .launchInput,
.newcharte .prospectInput{
    width:100%;
    height:42px;
    border-radius:14px;
    border:1px solid var(--border);
    background:#fff;
    padding:0 12px;
    font-weight:800;
    font-size:13.5px;
    color:var(--text);
    outline:none;
}

.newcharte .launchInput::placeholder,
.newcharte .prospectInput::placeholder{
    color:rgba(71,85,105,.75);
    font-weight:700;
}

.newcharte .launchInput:focus,
.newcharte .prospectInput:focus{
    border-color:rgba(247,148,29,.35);
    box-shadow:var(--shadow-focus-secondary);
}

.newcharte .launchInput:focus,
.newcharte .prospectInput:focus{
    border-color: rgba(247,148,29,.35);
    box-shadow: var(--shadow-focus-secondary);
}

/* Header (Ajax mode) */
.newcharte .launchHeader{
    height:54px;
    border-bottom:1px solid var(--border);
    background:var(--primary);
    display:flex;
    align-items:center;
    padding:0 14px;
    border-radius:16px;
    margin-bottom:12px;
    box-shadow:var(--shadow2);
}

.newcharte .launchHeaderTitle{
    color:#fff;
    font-weight:1000;
    font-size:16px;
    letter-spacing:-.2px;
}

/* Footer */
.newcharte .launchFooter{
    grid-column:span 12;
    display: flex;
    flex-direction: column;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding-top:4px;
}


.newcharte .launchError{
    color:var(--alert);
    font-weight:800;
    font-size:14px;
    width:100%;
    color:white;
}

.newcharte .launchSubmit{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    height:55px;
    font-size:17px;
}


/* =========================
   Toggle buttons row
   ========================= */

.newcharte .dbFiltersTop{
    display:flex;
    gap:12px;
    align-items:stretch;
    flex-wrap:wrap;
}

.newcharte #map-search .dbFilters {
    top:0;
}


.newcharte #map-search .dbFilters i {
    background: white;
    color: var(--secondary);
    padding-top: 6px;
    border-radius: 9999px;
    width: 30px;
    height: 30px;
    margin-top: 0px;
}

.newcharte .dbToggleBtn{
    flex: 0 0 auto;
    padding:15px 30px 15px 15px;
    border-radius:18px;
    cursor:pointer;
    display:flex;
    align-items:center;
    gap:12px;
    user-select:none;
    background:#fff;
    border:1px solid rgba(0,0,0,.10);
}

.newcharte .dbToggleBtn__input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}

.newcharte .dbToggleBtn__icon{
    width:40px;
    height:40px;
    border-radius:16px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(0,70,96,.06);
    border:1px solid rgba(0,70,96,.12);
    color:var(--primary);
    flex:0 0 auto;
}

.newcharte .dbToggleBtn__text{
    display:flex;
    flex-direction:column;
    gap:2px;
    min-width:0;
    flex:1 1 auto;
}

.newcharte .dbToggleBtn__title{
    font-weight:1000;
    color:var(--primary);
    font-size:14px;
}

.newcharte .dbToggleBtn__sub{
    font-size:12px;
    line-height:1.25;
}

.newcharte .dbToggleBtn:hover{
    box-shadow:var(--shadow-focus-secondary);
}

.newcharte .dbToggleBtn__input:checked ~ .dbToggleBtn__icon{
    background:rgba(247,148,29,.16);
    border-color:rgba(247,148,29,.35);
}

/* Active (modern) */
.newcharte .dbToggleBtn:has(.dbToggleBtn__input:checked){
    background:var(--secondary_ultra_light);
    border-color:var(--secondary_light);
    box-shadow:var(--shadow-focus-secondary);
}

/* Fallback (JS adds .is-on) */
.newcharte .dbToggleBtn.is-on{
    background:var(--secondary_ultra_light);
    border-color:var(--secondary_light);
    box-shadow:var(--shadow-focus-secondary);
}






/* =========================
   Panels (Magic + Advanced)
   ========================= */

.newcharte .dbMagicWrap,
.newcharte .dbAdvanced{
    margin-top:12px;
}

.newcharte .dbPanel{
    border-radius:20px;
    border:1px solid rgba(247,148,29,.25);
    background:#fff;
    padding:14px;
    box-shadow:var(--shadow2);
}

.newcharte .dbPanel__head{
    padding:6px 6px 12px;
    border-bottom:1px solid rgba(0,0,0,.08);
    margin-bottom:12px;
}

.newcharte .dbPanel__desc{
    margin-top:0;
    font-size:12.5px;
    line-height:1.25;
}

.newcharte .dbPanel__hint{
    font-weight:900;
    color:rgba(71,85,105,.85);
}


/* =========================
   Magic grid + chips
   ========================= */

.newcharte .dbMagicGrid{
    display:grid;
    grid-template-columns:repeat(4, minmax(0,1fr));
    gap:12px;
}



.newcharte .dbChip--selectable{
    display:flex;
    align-items:center;
    gap:12px;
    padding:8px;
    border-radius:18px;
    border:1px solid rgba(0,0,0,.10);
    background:#fff;
    font-weight:700;
    color:var(--text);
    cursor:pointer;
    user-select:none;
    transition:.15s ease;
}

.newcharte .dbChip--selectable input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}

.newcharte .dbChip__icon{
    width:38px;
    height:38px;
    border-radius:16px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(0,70,96,.06);
    border:1px solid rgba(0,70,96,.12);
    color:var(--primary);
    flex:0 0 auto;
}

.newcharte .dbChip__text{
    flex:1 1 auto;
    font-size:14px;
    line-height:1.2;
}

.newcharte .dbChip__check{
    width:30px;
    height:30px;
    border-radius:999px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(0,0,0,.05);
    border:1px solid rgba(0,0,0,.08);
    color:transparent;
    flex:0 0 auto;
    transition:.15s ease;
}

.newcharte .dbChip--selectable:hover{
    border-color:rgba(247,148,29,.35);
    box-shadow:var(--shadow-focus-secondary);
}

/* Magic selected */
.newcharte .magic_btn_check{
    border-color:rgba(247,148,29,.55);
    background:var(--secondary_ultra_light);
    box-shadow:var(--shadow-focus-secondary);
}
.newcharte .magic_btn_check .dbChip__icon{
    background:rgba(247,148,29,.18);
    border-color:rgba(247,148,29,.40);
}
.newcharte .magic_btn_check .dbChip__check{
    background:var(--secondary);
    border-color:rgba(0,0,0,.10);
    color:#fff;
}


/* =========================
   Advanced V1 (titles, rows, groups, options)
   =========================*/

.newcharte .dbSectionTitle{
    display:flex;
    align-items:center;
    gap:10px;
    font-weight:1000;
    color:var(--primary);
    font-size:18px;
    margin:10px 0;
}

.newcharte .dbSectionTitle i{
    width:30px;
    height:30px;
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(0,70,96,.06);
    border:1px solid rgba(0,70,96,.12);
    color:var(--primary);
}

.newcharte .dbFormRow{
    display:flex;
    flex-direction:column;
    gap:10px;
    background:rgba(255,255,255,.85);
    border:1px solid rgba(0,0,0,.08);
    border-radius:18px;
    padding:12px;
    margin-bottom:12px;
}

.newcharte .dbInlineCheck{
    display:flex;
    align-items:flex-start;
    gap:10px;
    font-weight:600;
    color:var(--text);
    font-size:14px;
}
.newcharte .dbInlineCheck input{ margin-top:3px; }

.newcharte .dbNote{ font-size:12px; }

.newcharte .dbDivider{
    height:1px;
    background:rgba(0,0,0,.10);
    margin:14px 0;
}

.newcharte .dbGrid1{
    display:grid;
    grid-template-columns:1fr;
}

.newcharte .dbGrid2{
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:12px;
}

.newcharte .dbGrid3{
    display:grid;
    grid-template-columns:repeat(3, minmax(0,1fr));
    gap:12px;
}


.newcharte .dbBox{
    background:rgba(255,255,255,.92);
    padding:5px;
}



.newcharte .dbBox--filters{
    display:flex;
    flex-direction:column;
    gap:20px;
}

.newcharte .dbGroup{
    background:var(--primary_ultra_light);
    border:1px solid rgba(0,0,0,.10);
    border-radius:18px;
    padding:15px;
}

.newcharte .dbGroup__title{
    display:flex;
    align-items:center;
    gap:10px;
    font-weight:1000;
    color:var(--primary);
    font-size:13.5px;
    margin-bottom:10px;
}

.newcharte .dbGroup__title i{
    width:30px;
    height:30px;
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#fff;
    border:1px solid rgba(0,70,96,.12);
    color:var(--primary);
}

.newcharte .dbOptions{
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:8px;
}

.newcharte .dbOptions__full{
    display:grid;
    grid-template-columns:repeat(1, minmax(0,1fr));
    gap:8px;
}


.newcharte .dbOption{
    display:flex;
    align-items:center;
    gap:10px;
    padding:10px;
    border-radius:14px;
    border:1px solid rgba(0,0,0,.08);
    background:#fff;
    font-weight:600;
    cursor:pointer;
    user-select:none;
    transition:.15s ease;
}

.newcharte .dbOption:hover{
    border-color:rgba(247,148,29,.35);
    box-shadow:var(--shadow-focus-secondary);
}

.newcharte .dbOption__text{
    font-size:13px;
    line-height:1.2;
    color:var(--text);
}


.newcharte .dbOption:has(input:checked){
    border-color:rgba(247,148,29,.55);
    background:var(--secondary_ultra_light);
    box-shadow:var(--shadow-focus-secondary);
}
.newcharte .dbOption:has(input:checked) .dbOption__text{
    color:var(--primary);
}


.newcharte .dbOption--dot{
    position:relative;
}

.newcharte .dbOption--dot input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}

.newcharte .dbOption__dot{
    width:14px;
    height:14px;
    border-radius:999px;
    background:var(--primary_ultra_light);
    border:1px solid rgba(0,0,0,.08);
    flex:0 0 auto;
    transition:.15s ease;
}

.newcharte .dbOption--dot input:checked ~ .dbOption__dot{
    background:var(--secondary);
    border-color:rgba(0,0,0,.08);
    box-shadow:0 0 0 4px rgba(247,148,29,.18);
}



/* =========================
   UX Advanced Search V2 (CLEAN)
   Scope: .uxAdv
   ========================= */

.newcharte .uxAdv{ margin-top:12px; }

.newcharte .uxAdvCard{
    border:1px solid rgba(0,0,0,.10);
    border-radius:22px;
    background:#fff;
    box-shadow: var(--shadow2);
    overflow:hidden;
}

/* Top bar */
.newcharte .uxAdvTop{
    display:flex;
    gap:16px;
    align-items:flex-start;
    justify-content:space-between;
    padding:14px 16px;
    border-bottom:1px solid rgba(0,0,0,.08);
    background: linear-gradient(180deg, rgba(0,70,96,.04), rgba(255,255,255,1));
}

.newcharte .uxAdvTop__left{
    flex: 1 1 60%;
    max-width: 60%;
}

.newcharte .uxAdvTop__right{
    display:flex;
    gap:10px;
    align-items:center;
    flex-wrap:wrap;
}

.newcharte .uxAdvTop .searchRow{ padding:5px 12px; }

/* Search input (tu utilises searchRow + uxAdvSearch__input) */
.newcharte .uxAdvSearch__input{
    flex: 1 1 auto;
    height: 42px;
    border: 0;
    outline: none;
    font-weight: 900;
    font-size: 14px;
    color: var(--text);
    background: transparent;
    padding: 0 6px;
    min-width: 180px;
}
.newcharte .uxAdvSearch__input::placeholder{
    color: rgba(71,85,105,.75);
    font-weight: 800;
}

/* Counter */
.newcharte .uxAdvCounter{
    display:flex;
    gap:8px;
    align-items:baseline;
    padding:8px 10px;
    border-radius:14px;
    background: rgba(0,0,0,.04);
    border:1px solid rgba(0,0,0,.06);
}
.newcharte .uxAdvCounter__num{ font-weight:1000; color:var(--primary); }
.newcharte .uxAdvCounter__txt{ font-size:12px; }

/* Reset button */
.newcharte .uxAdvBtn{
    border-radius:14px;
    padding:9px 12px;
    border:1px solid rgba(0,0,0,.10);
    background:#fff;
    font-weight:900;
    cursor:pointer;
}
.newcharte .uxAdvBtn:hover{ box-shadow: var(--shadow-focus-secondary); }

/* Layout */
.newcharte .uxAdvLayout{
    display:grid;
    grid-template-columns: 260px 1fr;
    min-height: 420px;
}


/* Sidebar */
.newcharte .uxAdvNav{
    border-right:1px solid rgba(0,0,0,.08);
    padding:12px;
    display:flex;
    flex-direction:column;
    gap:8px;
    background: rgba(0,0,0,.02);
}

.newcharte .uxAdvNavItem{
    width:100%;
    text-align:left;
    border-radius:16px;
    padding:10px 12px;
    border:1px solid rgba(0,0,0,.08);
    background:#fff;
    font-weight:1000;
    color:var(--primary);
    cursor:pointer;
    display:flex;
    gap:10px;
    align-items:center;
}
.newcharte .uxAdvNavItem:hover{ box-shadow: var(--shadow-focus-secondary); }

.newcharte .uxAdvNavItem.is-active{
    background: var(--secondary_ultra_light);
    border-color: rgba(247,148,29,.35);
}

.newcharte .uxAdvNavItem.is-match{
    border-color: rgba(247,148,29,.55);
    background: var(--secondary_ultra_light);
    box-shadow: var(--shadow-focus-secondary);
}

/* Badge compteur menu */
.newcharte .uxAdvNavItem .uxAdvNavBadge{
    margin-left:auto;
    font-size:12px;
    font-weight:1000;
    padding:4px 8px;
    border-radius:999px;
    background: rgba(0,0,0,.06);
    border:1px solid rgba(0,0,0,.08);
}
.newcharte .uxAdvNavItem.is-match .uxAdvNavBadge{
    background: rgba(247,148,29,.16);
    border-color: rgba(247,148,29,.35);
}

/* Content */
.newcharte .uxAdvContent{
    padding:15px;
    background: var(--secondary_ultra_light);
}

/* Tabs */
.newcharte .uxAdvTab{ display:none; }
.newcharte .uxAdvTab.is-active{ display:block; }

/* Section */
.newcharte .uxAdvSection{
    border:1px solid rgba(0,0,0,.08);
    border-radius:18px;
    padding:12px;
    background:#fff;
    margin-bottom:12px;
}

.newcharte .uxAdvSection__head{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:10px;
    margin:10px 0 15px 10px;
}

.newcharte .uxAdvSection__title{
    font-weight:700;
    color:var(--primary);
    display:flex;
    gap:10px;
    align-items:center;
    font-size:15px;
}

/* Pills grid */
.newcharte .uxAdvPills{
    display:grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap:10px;
}

.newcharte .uxAdvPills__full{
    grid-template-columns: repeat(1, minmax(0, 1fr))!important;
}


/* Pill option */
.newcharte .uxAdvPill{
    display:flex;
    align-items:center;
    gap:10px;
    padding:10px 12px;
    border-radius:999px;
    border:1px solid rgba(0,0,0,.10);
    background:#fff;
    cursor:pointer;
    user-select:none;
    transition:.15s ease;
}
.newcharte .uxAdvPill:hover{
    border-color: rgba(247,148,29,.35);
    box-shadow: var(--shadow-focus-secondary);
}

.newcharte .uxAdvPill__input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}

.newcharte .uxAdvPill__dot{
    width:14px;
    height:14px;
    border-radius:999px;
    background: rgba(0,0,0,.06);
    border:1px solid rgba(0,0,0,.10);
    flex:0 0 auto;
    transition:.15s ease;
}

.newcharte .uxAdvPill__text{
    font-weight:600;
    font-size:14px;
    color:var(--text);
    flex:1 1 auto;
    min-width:0;
}

.newcharte .uxAdvPill__check{
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    transition:.15s ease;

    font-size: 11px;
    font-weight: 700;
    opacity: .65;
    letter-spacing: .1px;
    line-height: 1.2;
}

/* Checked state */
.newcharte .uxAdvPill:has(.uxAdvPill__input:checked){
    background: var(--secondary_ultra_light);
    border-color: rgba(247,148,29,.55);
    box-shadow: var(--shadow-focus-secondary);
}
.newcharte .uxAdvPill:has(.uxAdvPill__input:checked) .uxAdvPill__dot{
    background: var(--secondary);
    box-shadow: 0 0 0 4px rgba(247,148,29,.18);
}
.newcharte .uxAdvPill:has(.uxAdvPill__input:checked) .uxAdvPill__check{
    color:var(--primary);
}


.newcharte .uxAdvPill__all{
    background: rgba(0,0,0,.03);
    border-color: rgba(0,0,0,.12);
    font-weight: 1000;
}

/* Hover très doux */
.newcharte .uxAdvPill__all:hover{
    background: rgba(0,0,0,.06);
}

/* Icône */
.newcharte .uxAdvPill__all .fa{
    opacity: .7;
    font-size: 13px;
}

/* Search hit highlight */
.newcharte .uxAdvPill.is-hit{
    border-color: rgba(247,148,29,.55);
    background: var(--secondary_ultra_light);
    box-shadow: var(--shadow-focus-secondary);
    outline: 2px solid rgba(247,148,29,.35);
    outline-offset: 0;
}

/* Mots-clés inputs */
.newcharte .uxAdvBox input.launchInput{
    border:1px solid rgba(0,0,0,.10);
}
.newcharte .uxAdvCheckLine{
    display:flex;
    gap:10px;
    align-items:flex-start;
    font-weight:600;
    margin-top:10px;
    font-size:13px;
}







/* =========================
   Activity Picker (V2)
   Scope: .newcharte
   ========================= */

/* Wrapper */
.newcharte .dbAct{ position: relative; }

/* Trigger */
.newcharte .dbAct__triggerWrap{ width:100%; }

.newcharte .dbAct__trigger{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;

    border:1px solid var(--border);
    background:#fff;
    border-radius: 14px;
    padding:4px 12px;

    cursor:pointer;
    box-shadow: var(--shadow2);
}
.newcharte .dbAct__trigger:hover{
    border-color: rgba(247,148,29,.35);
    box-shadow: var(--shadow-focus-secondary);
}

.newcharte .dbAct__tags{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:8px;
    min-width:0;
}
.newcharte .dbAct__placeholder{
    color: rgba(71,85,105,.75);
    font-weight:800;
}
.newcharte .dbAct__icon{
    width:36px;height:36px;
    border-radius:14px;
    border:1px solid rgba(0,0,0,.08);
    background: rgba(0,0,0,.02);
    display:flex;align-items:center;justify-content:center;
    color: var(--primary);
    flex:0 0 auto;
}

/* Tags (old trigger tags) */
.newcharte .dbActTag{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:6px 10px;
    border-radius:999px;
    background: rgba(0,70,96,.08);
    border:1px solid rgba(0,70,96,.14);
    color: var(--primary);
    font-weight:1000;
    font-size:12px;
    max-width: 100%;
}
.newcharte .dbActTag__x{
    opacity:.75;
    cursor:pointer;
}
.newcharte .dbActTag__x:hover{ opacity:1; }

/* Head (modal panel header) */
.newcharte .dbActPopover__head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:14px 14px;
    background: linear-gradient(135deg, var(--primary), var(--primary_dark));
    color:#fff;
}
.newcharte .dbActPopover__title{
    display:flex;align-items:center;gap:10px;
    font-weight:1000;
    letter-spacing:-.2px;
}
.newcharte .dbActPopover__badge{
    width:34px;height:34px;border-radius:14px;
    display:flex;align-items:center;justify-content:center;
    background: rgba(255,255,255,.18);
    border:1px solid rgba(255,255,255,.22);
}
.newcharte .dbActPopover__close{
    width:38px;height:38px;border-radius:14px;
    background: rgba(255,255,255,.14);
    border:1px solid rgba(255,255,255,.22);
    color:#fff;
    cursor:pointer;
}
.newcharte .dbActPopover__close:hover{ background: rgba(255,255,255,.20); }

/* Steps */
.newcharte .dbActStep{ padding:14px; }

.newcharte .dbActChoice{
    width:100%;
    display:flex;
    align-items:center;
    gap:14px;
    padding:14px;
    border-radius:18px;
    border:1px solid rgba(0,0,0,.10);
    background:#fff;
    cursor:pointer;
    transition:.15s ease;
}
.newcharte .dbActChoice + .dbActChoice{ margin-top:10px; }
.newcharte .dbActChoice:hover{
    border-color: rgba(247,148,29,.35);
    box-shadow: var(--shadow-focus-secondary);
    transform: translateY(-1px);
}
.newcharte .dbActChoice__ic{
    width:52px;height:52px;border-radius:18px;
    display:flex;align-items:center;justify-content:center;
    background: var(--primary_light);
    border:1px solid rgba(247,148,29,.18);
    flex:0 0 auto;
}
.newcharte .dbActChoice__ic img{ height:28px; width:auto; }
.newcharte .dbActChoice__txt{ min-width:0; margin-right: auto;}
.newcharte .dbActChoice__title{ font-weight:900; color: var(--text); font-size:16px; }
.newcharte .dbActChoice__desc{ margin-top:3px; margin-left:5px; font-style: italic; font-size:13px; font-weight:600; color: var(--muted); }
.newcharte .dbActChoice__go{
    width:36px;height:36px;border-radius:14px;
    display:flex;align-items:center;justify-content:center;
    border:1px solid rgba(247,148,29,.22);
    background: rgba(255,255,255,.92);
    color: var(--secondary);
    flex:0 0 auto;
}

/* Toolbar step2 */
.newcharte .dbActToolbar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin-bottom:12px;
}
.newcharte .dbActToolbar__actions{ display:flex; gap:8px; }

.newcharte .dbActBtn{
    height:40px;
    padding:0 12px;
    border-radius:14px;
    border:1px solid rgba(0,0,0,.10);
    background:#fff;
    font-weight:1000;
    cursor:pointer;
}
.newcharte .dbActBtn--primary{
    background: var(--secondary);
    border-color: var(--secondary_dark);
    color:#fff;
}
.newcharte .dbActBtn--primary:hover{ filter: brightness(.97); }
.newcharte .dbActBtn--ghost:hover{ box-shadow: var(--shadow-focus-secondary); }

/* Search */
.newcharte .dbActSearch{
    display:flex;
    align-items:center;
    gap:10px;
    padding:10px 12px;
    border-radius:16px;
    border:1px solid rgba(0,0,0,.12);
    background:#fff;
    box-shadow: var(--shadow2);
}

.newcharte .dbActSearch.in__toolbar {
    padding: 4px 12px;
}


.newcharte .dbActSearch .search_input{
    border:0; outline:0; width:100%;
    font-weight:900; font-size:14px;
    background:transparent;
}

/* Layout list */
.newcharte .dbActLayout{
    display:grid;
    grid-template-columns: 30% 1fr;
    gap:12px;
    margin-top:12px;
}
.newcharte .dbActSide{
    border:1px solid rgba(0,0,0,.08);
    border-radius:18px;
    background: var(--primary_ultra_light);
    padding:10px;
    overflow:scroll;
    height:450px;
}

.newcharte .dbTerPanelBody .dbActSide {
    height: 250px!important;
}


.newcharte .dbActNav{
    width:100%;
    border-radius:14px;
    padding:10px 10px;
    border:1px solid rgba(0,0,0,.08);
    background:var(--grey_ultra_light);
    font-weight:600;
    color: var(--primary);
    cursor:pointer;
    margin-bottom:8px;
    font-size:14px;
    text-align: left;
}
.newcharte .dbActNav:hover{
    cursor: pointer;
    background:var(--secondary);
    box-shadow: white;
    color:white;
}

.newcharte .dbActNav:hover .dot {
    background: white;
    box-shadow:0 0 0 4px rgba(255,255,255,.18);
}

.newcharte .dbActNav label{
    display:flex;
    gap:10px;
    cursor:pointer;
    width:100%;
    align-items: center;
}


.newcharte .dbActNav .check{
    font-weight: 1000;
    color:var(--secondary);
}

.newcharte .dbActNav:hover .check{
    color:white;
}

.newcharte .dbActNav .check .dot{
    background: var(--secondary);
    box-shadow:0 0 0 4px rgba(247,148,29,.18);
}


.newcharte .dbActNav:hover .check .dot{
    background: white;
}



.newcharte .dbActNav__action.btn {
    padding: 0 10px;
    height: 26px;
    font-size: 11px;
    font-weight: normal;
    margin: -11px -8px -11px 0;
    font-weight: 500;
}

.newcharte .dbActNav:hover .dbActNav__action.btn {
    background: white;
    color:var(--secondary);
}


.newcharte .dbActNav__text {
    flex:1 1 auto;
}
.newcharte .dbActNav__check {
    flex:0 0 auto;
    margin-left:auto;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:.15s ease;
    font-size: 11px;
    font-weight: 700;
    opacity: .65;
    letter-spacing: .1px;
    line-height: 1.2;
}


.newcharte .dbActMain{ min-width:0; }

.newcharte .dbActList{
    background:#fff;
    max-height: 440px;
    overflow:auto;
    padding:10px;
}

.newcharte .dbActSide.dbActSide_2{
    display:grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap:8px;
}

/* Les boutons prennent toute la largeur de leur colonne */
.newcharte .dbActSide.dbActSide_2 .dbActNav{
    margin-bottom:0; /* le gap gère l’espacement */
}


/* Overlay plein écran */
.newcharte #dbActPopover.dbActOverlay{
    position: fixed!important;
    inset: 0!important;
    width: 100vw;
    height: 100vh;
    z-index: 2147483647 !important;
    display: none;
    pointer-events: auto;
}

.newcharte #dbActPopover.dbActOverlay.is-open{ display: block; }

.newcharte #dbActPopover .dbActOverlay__backdrop{
    position: absolute;
    inset: 0;
    z-index: 0;
    background: rgba(15,23,42,.28);
    backdrop-filter: blur(4px);
}

.newcharte #dbActPopover .dbActOverlay__panel{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);

    width: 75%;
    max-width: 94vw;
    max-height: 88vh;
    overflow: clip;

    border-radius: 22px;
    background: #fff;
    box-shadow: 0 18px 45px rgba(0,0,0,.22);
    border: 1px solid rgba(0,0,0,.08);
}

/* dbTag (new tags) */
.newcharte .dbTag{
    display:inline-flex;
    align-items:center;
    gap:8px;

    max-width: 100%;
    padding-left:5px;
    border-radius: 999px;

    background: var(--secondary_ultra_light);
    border: 1px solid rgba(0,0,0,.10);
    color: var(--text);

    font-size: 10px;
    font-weight: 800;
    line-height: 1;
}
.newcharte .dbTag__label{
    min-width: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.newcharte .dbTag__remove{
    width: 22px;
    height: 22px;
    border-radius: 999px;

    display:flex;
    align-items:center;
    justify-content:center;

    border: 1px solid rgba(0,0,0,.12);
    background: rgba(255,255,255,.8);
    color: rgba(0,0,0,.55);

    cursor:pointer;
    padding: 0;
}
.newcharte .dbTag__remove:hover{
    color: white;
    background: var(--secondary);
}
.newcharte .dbTag__remove:focus{
    outline: none;
    box-shadow: 0 0 0 3px rgba(0,0,0,.12);
}

/* header / séparateurs */
.newcharte .dbActGroupTitle{
    padding:15px 0 10px 5px;
    font-weight:700;
    color: var(--primary);
    opacity:.9;
    font-size:15px;
}









/* Overlay plein écran */
.newcharte #dbOverlay.dbOverlay{
    position: fixed!important;
    inset: 0!important;
    width: 100vw;
    height: 100vh;
    z-index: 2147483647 !important;
    display: none;
    pointer-events: auto;
}

.newcharte #dbOverlay.dbOverlay.is-open{ display: block; }

.newcharte #dbOverlay .dbOverlay__backdrop{
    position: absolute;
    inset: 0;
    z-index: 0;
    background: rgba(15,23,42,.28);
    backdrop-filter: blur(4px);
}

.newcharte #dbOverlay .dbOverlay__panel{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);

    width: 75%;
    max-width: 94vw;
    max-height: 88vh;
    overflow: clip;

    border-radius: 22px;
    background: #fff;
    box-shadow: 0 18px 45px rgba(0,0,0,.22);
    border: 1px solid rgba(0,0,0,.08);
}






/*More info type get_city / get_cc dans overlay*/

.newcharte .dbMoreRpt{ display:flex; flex-direction:column; height:100%; padding:10px; }
.newcharte .dbMoreRpt__head{
    position:sticky; top:0; z-index:2;
    display:flex; justify-content:space-between; gap:12px;
    padding:14px;
    background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,255,255,.88));
    border-bottom:1px solid rgba(0,0,0,.06);
}
.newcharte .dbMoreRpt__title{
    font-size:24px; font-weight:800; text-transform:uppercase; color:var(--primary);
}
.newcharte .dbMoreRpt__meta{ margin-top:8px; display:flex; flex-wrap:wrap; gap:6px; }
.newcharte .dbPill{
    display:inline-flex; align-items:center; gap:6px;
    padding:6px 10px; border-radius:999px;
    background: var(--primary_ultra_light);
    border:1px solid rgba(0,0,0,.08);
    font-size:12px; font-weight:900; color:var(--primary);
}
.newcharte .dbMoreRpt__close{
    width:36px; height:36px; border-radius:12px;
    border:1px solid rgba(0,0,0,.08); background:#fff;
    color:var(--primary); cursor:pointer;
    display:flex; align-items:center; justify-content:center;
}
.newcharte .dbMoreRpt__close:hover{ background:var(--primary_ultra_light); box-shadow:var(--shadow-focus); }
.newcharte .dbMoreRpt__body{ padding:10px 10px 150px 10px; overflow:auto; max-height:88vh; }

.newcharte .dbTriple{
    display:grid; grid-template-columns: repeat(3, minmax(0, 1fr));
    gap:8px; margin-bottom:10px;
}
.newcharte .dbTriple__card{
    background:var(--primary_ultra_light); border:1px solid rgba(0,0,0,.06);
    border-radius:18px; padding:10px;
}
.newcharte .dbTriple__k{ font-size:13px; font-weight:900; color:var(--muted); }
.newcharte .dbTriple__v{ margin-top:4px; font-size:16px; font-weight:1100; color:var(--text); }

.newcharte .dbTableCard{
    border:1px solid rgba(0,0,0,.08);
    background: var(--grey_ultra_light);
    border-radius:18px;
    padding:12px;
    margin-bottom:10px;
}
.newcharte .dbTableCard__title{
    display:flex; align-items:center; gap:8px;
    font-size:15px; font-weight:1100; color:var(--text);
    margin-bottom:10px;
}

.newcharte .dbCompTable{ background:#fff; border:1px solid rgba(0,0,0,.06); border-radius:16px; overflow:hidden; }
.newcharte .dbCompRow{
    display:grid;
    grid-template-columns: 1.4fr .6fr .6fr .6fr;
    gap:10px;
    padding:10px 12px;
    border-top:1px solid rgba(0,0,0,.06);
    font-size:14px;
}


.newcharte .dbCompRow__hover:hover {
    background: var(--primary_light);
}




.newcharte .dbCompRow--head{
    border-top:0;
    background: var(--primary_ultra_light);
    font-weight:1100;
    color: var(--primary);
}
.newcharte .dbCompRow__name{ font-weight:900; color:var(--text); }
.newcharte .dbStrong{ font-weight:1100; color:var(--primary); }
.newcharte .t-right{ text-align:right; }

.newcharte .dbInlineInfo{
    background:#fff; border:1px solid rgba(0,0,0,.06);
    border-radius:16px; padding:10px; font-size:14px;
    color:var(--text);
}

.newcharte .dbInlineInfo h3 {
    padding-bottom: 5px;
    padding-top: 15px;
}

.newcharte .dbInlineInfo h4 {
    padding-bottom: 0;

}

.newcharte .dbInlineInfo ul {
    padding:0 0 30px 20px;
}

.newcharte .dbTags{ margin-top:10px; display:flex; flex-wrap:wrap; gap:6px; }
.newcharte .dbTag{
    padding:6px 10px; border-radius:999px;
    background: var(--primary_ultra_light);
    border:1px solid rgba(0,0,0,.08);
    font-size:12px; font-weight:900; color:var(--primary);
}






/*FILTRE PANEL ETIQUETTE*/
#mod_prospective #dbFilters.ter_situation_ville {
    margin-top:6px!important;
}
#mod_prospective #dbFilters.prospective {
    margin-left:-100%!important;
}


.newcharte .dbFilters{
    position:absolute;
    top: 90px;
    left: 100%;
    z-index: 1;
    margin-top:10%;
}

.newcharte .dbFilters__rail{
    display:flex;
    flex-direction:column;
    gap:5px;
}

.newcharte .dbFilters__tab{
    width:66px;
    height:56px;
    border-radius:20px 20px 20px 0;
    border:1px solid rgba(255,255,255,.14);
    background: color-mix(in srgb, var(--secondary) 90%, transparent);
    box-shadow: 0 12px 28px rgba(15,23,42,.18);
    color:#fff;
    position:relative;
    cursor:pointer;
}
.newcharte .dbFilters__tab.dbFilters__tab--hotel,.newcharte .dbFilters__tab.dbFilters__tab--camping {
    background: color-mix(in srgb, #3975BE 80%, transparent);
}
.newcharte .dbFilters__tab.dbFilters__tab--hotel:hover,.newcharte .dbFilters__tab.dbFilters__tab--camping:hover {
    background-color: #3975BE;
}

.newcharte .dbFilters__tab.dbFilters__tab--boulangerie {
    background: color-mix(in srgb, #ca6f20 80%, transparent);
}
.newcharte .dbFilters__tab.dbFilters__tab--boulangerie:hover {
    background-color: #ca6f20;
}

.newcharte .dbFilters__tab:hover {
    background: var(--secondary_dark);
}

.newcharte .dbFilters__tab i{
    font-size:18px;
    margin-right:5px;
}

.newcharte .dbFilters__label{
    display:none;
}

.newcharte .dbFilters__count{
    position:absolute;
    top:6px; right:3px;
    min-width:18px;
    height:18px;
    padding:0 6px;
    border-radius:999px;
    background:white;
    color: var(--secondary);
    font-size:11px;
    font-weight:1000;
    display:flex;
    align-items:center;
    justify-content:center;
}

.newcharte .dbFilters__tab.has-checked{
    box-shadow: 0 18px 40px rgba(15,23,42,.22);
    transform: translateX(1px);
}

.newcharte .dbFilters__panelWrap{
    position:absolute;
    left: 75px;
    top: 0;
    width: 360px;
    max-width: 88vw;
}

.newcharte .dbFilters__panel{
    display:block !important;
    position: absolute;
    background:#fff;
    border:1px solid rgba(0,0,0,.08);
    border-radius:18px;
    box-shadow: 0 18px 45px rgba(15,23,42,.22);
    overflow:hidden;

    /* état fermé */
    opacity:0;
    transform: translateX(-10px);
    pointer-events:none;
    visibility:hidden;

    transition:
            opacity .18s ease,
            transform .18s ease,
            visibility 0s linear .18s; /* visibilité après la fin */
    will-change: opacity, transform;
    width:360px;

}
.dbFilters__panel--double{
    width: 550px!important;
}

.newcharte .dbFilters__panel.is-open{
    opacity:1;
    transform: translateX(0);
    pointer-events:auto;
    visibility:visible;

    transition:
            opacity .18s ease,
            transform .18s ease,
            visibility 0s linear 0s;
    display:block;
}

.newcharte .dbFilters__panelHead{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:12px 14px;
    border-bottom:1px solid rgba(0,0,0,.08);
}

.newcharte .dbFilters__title{
    font-weight:1000;
    color: var(--secondary_dark);
    display:flex;
    align-items:center;
    gap:10px;
}

.newcharte .dbFilters__close{
    width:36px;height:36px;
    border-radius:12px;
    border:1px solid rgba(0,0,0,.08);
    background:#fff;
    cursor:pointer;
}

.newcharte .dbFilters__panelBody{
    padding:12px 14px;
    max-height: 340px;
    overflow:auto;
}

.newcharte .dbFilters__list{ list-style:none; padding:0; margin:0; }
.newcharte .dbFilters__item{ margin:5px 0; }


.newcharte .dbFilters__double{
    list-style:none;
    padding:0;
    margin:0;
    display:grid;
    grid-template-columns: 1fr 1fr;
    gap:32px;
}

.newcharte .dbFilters__colList{
    list-style:none;
    padding:0;
    margin:0;
}

.newcharte .dbFilters__subhead {
    grid-column: 1 / -1;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 12px;
    opacity: .8;
}



.newcharte .dbFilters__small {

}

.newcharte .dbFilters__small .dbFilters__tab {
    width:55px;
    height:50px;
}


.newcharte .dbFilters__small .dbFilters__count {
    width:15px;
    height:15px;
    font-size: 9px;
}





.dbFilters__paramFreeCompact input[type="text"]{
    width:50px !important;
    display:inline-block;
}

/* container */
.dbFilters__paramFreeCompact{
    display:flex;
    flex-direction:column;
    gap:4px;
    margin-top:20px;
}

/* title */
.dbFilters__paramFreeTitle{
    font-size:12px;
    font-weight:600;
    opacity:.85;
    text-align:left;
    margin-bottom:2px;
}

/* rows */
.dbFilters__rangeRow{
    display:flex;
    align-items:center;
    gap:4px;
    margin-left:5px;
}

.dbFilters__rangeLabel{
    font-size:11px;
    opacity:.7;
    min-width:18px;
    text-align:left;
}

.dbFilters__sep{
    font-size:11px;
    opacity:.6;
}

/* input sizes */
.dbFilters__input--mm{ font-size:12px; width:38px !important; text-align:center; }
.dbFilters__input--yyyy{ font-size:12px;  width:64px !important; text-align:center; }

.dbFilters__paramFreeActions{
    display:flex;
    justify-content:left;
}








.newcharte .dbCheck{
    display:flex;
    align-items:flex-start;
    gap:10px;
    padding:5px 7px;
    border-radius:12px;
    border:1px solid rgba(0,0,0,.06);
    background:#fff;
    cursor:pointer;
}

.newcharte .dbCheck:hover{
    background: rgba(0,70,96,.06);
    border-color: rgba(0,70,96,.14);
}

.newcharte .dbCheck input{ margin-top:2px; }

.newcharte .dbCheck__label{
    font-weight:600;
    font-size:12px;
    color:#0f172a;
    flex:1;
}

.newcharte .dbCheck__meta{
    font-size:12px;
    font-weight:900;
    color: rgba(15,23,42,.55);
}



/* =========================
  FAVORITES — INBOX VIEW
  Scope: .newcharte
  ========================= */


/* Toolbar tweak */
.newcharte .dbFavInbox__toolbar{
    align-items: center;
    gap: 12px;
    margin: 0 0 12px;
}

.newcharte .dbFavInbox__search{ min-width: 320px; }



/* Bulk bar */
.newcharte .dbFavBulk{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:10px 12px;
    border:1px solid rgba(0,70,96,.14);
    background: linear-gradient(135deg, var(--primary_ultra_light), #fff);
    border-radius: 16px;
    box-shadow: var(--shadow2);
    margin: 0 0 12px;
}

.newcharte .dbFavBulk.hide{ display:none; }
.newcharte .dbFavBulk__right{ display:flex; gap:8px; flex-wrap:wrap; }

/* Table wrapper uses .table-wrap existing */


/* =========================
   DESKTOP GRID (4 colonnes)
   ========================= */


/* Force les cellules à remplir leur colonne (évite les "écarts visuels") */
.newcharte .dbFavRow > .dbFavCell{
    /*width:100%;
    min-width:0;*/
}

/* Header row */
.newcharte .dbFavRow--head{
    position: sticky;
    top: 0;
    z-index: 3;
    background: var(--primary);
    border-top: 0 !important;
}

.newcharte .dbFavRow--head .k{
    color:#fff;
    font-weight:1000;
    border-left: 0 !important;
    padding-left: 0 !important;
    opacity:.95;
}

.newcharte .dbFavRow--head input{ accent-color: var(--secondary); }

/* Actions container : évite que ça wrap différemment selon les rows */
.newcharte .dbFavActions{
    display:flex;                 /* au cas où doc-actions ne serait pas flex */
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    flex-wrap:nowrap;             /* CRUCIAL pour stabilité visuelle */
}

.newcharte .dbFavRow .badge {
    background-color: var(--secondary_light);
}


/* Name cell internal */
.newcharte .dbFavName{
    display:flex;
    align-items:center;
    gap:10px;
    font-weight:1000;
    color: var(--text);

    min-width:0;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.newcharte .dbFavName i{
    width:30px;height:30px;
    border-radius:12px;
    display:flex;align-items:center;justify-content:center;
    background: var(--primary_light);
    border:1px solid rgba(0,70,96,.12);
    color: var(--primary);
    flex:0 0 auto;
}

.newcharte .dbFavSub{
    display:block;
    margin-top:4px;
    font-size:12px;
    font-weight:800;
    color: var(--muted);

    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.dbFavCell--actions,
.dbFavCell--actions.v{
    overflow: visible !important;
}



.newcharte .dbFavDel__confirm{
    display:flex;
    gap:8px;
    align-items:center;
}

.newcharte .dbFavDel__confirm.hide{ display:none; }









/* =========================
   FAVORITES LIST
   Scope: .dbFav
   ========================= */
/* Layout grid */
.newcharte .dbFavGrid{
    display:grid;
    grid-template-columns: minmax(29%, 1fr) 29%;
    gap: 1%;
    align-items:start;
}


.newcharte .dbFavGrid__5p{grid-template-columns: minmax(5%, 1fr) 95%;}
.newcharte .dbFavGrid__10p{grid-template-columns: minmax(10%, 1fr) 90%;}
.newcharte .dbFavGrid__15p{grid-template-columns: minmax(15%, 1fr) 85%;}
.newcharte .dbFavGrid__20p{grid-template-columns: minmax(20%, 1fr) 80%;}
.newcharte .dbFavGrid__25p{grid-template-columns: minmax(25%, 1fr) 75%;}
.newcharte .dbFavGrid__30p{grid-template-columns: minmax(30%, 1fr) 70%;}
.newcharte .dbFavGrid__35p{grid-template-columns: minmax(35%, 1fr) 65%;}
.newcharte .dbFavGrid__40p{grid-template-columns: minmax(40%, 1fr) 60%;}
.newcharte .dbFavGrid__45p{grid-template-columns: minmax(45%, 1fr) 55%;}
.newcharte .dbFavGrid__50p{grid-template-columns: minmax(50%, 1fr) 50%;}
.newcharte .dbFavGrid__55p{grid-template-columns: minmax(55%, 1fr) 45%;}
.newcharte .dbFavGrid__60p{grid-template-columns: minmax(60%, 1fr) 40%;}
.newcharte .dbFavGrid__65p{grid-template-columns: minmax(65%, 1fr) 35%;}
.newcharte .dbFavGrid__70p{grid-template-columns: minmax(70%, 1fr) 30%;}
.newcharte .dbFavGrid__75p{grid-template-columns: minmax(75%, 1fr) 25%;}
.newcharte .dbFavGrid__80p{grid-template-columns: minmax(80%, 1fr) 20%;}
.newcharte .dbFavGrid__85p{grid-template-columns: minmax(85%, 1fr) 15%;}
.newcharte .dbFavGrid__90p{grid-template-columns: minmax(90%, 1fr) 10%;}
.newcharte .dbFavGrid__95p{grid-template-columns: minmax(95%, 1fr) 5%;}
.newcharte .dbFavGrid__100p{grid-template-columns: 1fr;}

/* Toolbar */
.newcharte .dbFavToolbar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap: 12px;
    flex-wrap:wrap;
    margin: 12px 0;
}

.newcharte .dbFavSearch{
    display:flex;
    align-items:center;
    gap: 10px;

    padding: 10px 12px;
    border-radius: 14px;

    background: rgba(255,255,255,.96);
    border: 1px solid rgba(0,70,96,.14);
    box-shadow: 0 10px 26px rgba(15,23,42,.08);

    min-width: 320px;
    flex: 1 1 420px;
}

.newcharte .dbFavSearch i{ opacity:.85; }

.newcharte .dbFavSearch__input{
    width:100%;
    border:0;
    outline:0;
    background: transparent;
    font-weight: 900;
}

/* List rows */
.newcharte .dbFavRow{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap: 12px;

    padding: 10px 12px;
    border-radius: 14px;
    border: 1px solid rgba(0,70,96,.10);
    background: rgba(255,255,255,.96);
    /*box-shadow: 0 10px 26px rgba(15,23,42,.06);*/
    margin-bottom: 10px;
    transition: box-shadow .12s ease, border-color .12s ease, transform .12s ease, background .12s ease;
}


.newcharte .dbFavRow:hover{
    transform: translateY(-1px);
    box-shadow: 0 14px 34px rgba(15,23,42,.10);
    border-color: rgba(0,70,96,.18);
    z-index: 20;
}


.newcharte .dbFavRow.dbFavRow__sie {
    background: var(--secondary_ultra_light);
}

.newcharte .dbFavRow__actions{
    position: absolute;
    right: 10px;
    top: 40px;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    gap: 8px;
    cursor:pointer;
}

/* bouton toggle */
.newcharte .dbFavBadgesToggle{
    width: 34px;
    height: 34px;
    border-radius: 10px;
    border: 1px solid rgba(0,0,0,.12);
    background: #fff;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.newcharte .dbFavBadgesToggle:hover{
    background: rgba(0,0,0,.04);
}

/* badges fermés par défaut */
.newcharte .dbFavRow.is-badges-closed .dbFavIdentity__badges{
    display: none;
}

/* rotation de l’icône quand ouvert */
.newcharte .dbFavRow.is-badges-open .dbFavBadgesToggle i{
    transform: rotate(180deg);
}
.newcharte .dbFavBadgesToggle i{
    transition: transform .15s ease;
}



/* Identity block */
.newcharte .dbFavIdentity{
    display:flex;
    align-items:center;
    gap:12px;
    min-width:0;
}

.newcharte .dbFavBadge{
    flex:0 0 auto;
    width:30px;
    height:30px;
    border-radius:999px;

    font-weight:800;
    font-size:13px;

    display:flex;
    align-items:center;
    justify-content:center;

    background: var(--secondary);
    color:white;
    border:2px solid white;
}

.newcharte .dbFavIdentity__text{
    flex-direction:column;
    gap:4px;
    min-width:0;
    align-items:flex-start;
    width:100%;
}

.newcharte .dbFavIdentity__name{
    font-weight:900;
    font-size:14px;
    color: var(--text);
    line-height:1.2;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.newcharte .dbFavIdentity__text .badge{
    display:inline-flex;
    align-items:center;
    padding:4px 10px;
    font-size:11px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.4px;
    border-radius:999px;
    background:var(--secondary_light);
    line-height:1;
    width:auto;
    max-width:100%;
    white-space:nowrap;
    overflow:hidden;
    margin:0 5px 0 -5px;
}

.newcharte .dbFavIdentity__addr{
    font-size:12px;
    font-weight:700;
    color: var(--muted);
    line-height:1.3;

    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}



.newcharte .dbFavActionBtn{
    display:inline-flex;
    align-items:center;
    gap:6px;

    height:32px;
    padding:0 10px;

    border-radius:999px;
    border:1px solid rgba(15,23,42,.12);
    background: rgba(255,255,255,.9);

    font-size:12px;
    font-weight:800;
    cursor:pointer;
    white-space:nowrap;
}

.newcharte .dbFavActionBtn i{
    font-size:13px;
    opacity:.85;
}

.newcharte .dbFavActionBtn:hover{
    background: rgba(15,23,42,.06);
}

.newcharte .dbFavActionSep{
    width:1px;
    height:20px;
    background: rgba(15,23,42,.15);
    margin:0 4px;
}

/* Icon buttons (courrier / commentaire) */
.newcharte .dbFavIconBtn{
    width:32px;
    min-width:32px;
    height:32px;
    border-radius:999px;

    display:inline-flex;
    align-items:center;
    justify-content:center;

    border:1px solid rgba(15,23,42,.12);
    background: rgba(255,255,255,.9);

    color: inherit;
    text-decoration:none;
}

.newcharte .dbFavIconBtn:hover{
    background: rgba(15,23,42,.06);
}

.newcharte .dbFavIconBtn.is-active, .dbFavRow.is-visited .dbFavIconBtn.is-active {
    background: var(--secondary_light);
}


.newcharte .dbFavIconBtn.save_favorite {
    background: var(--black);
    cursor: pointer;
    color:white;
}



.newcharte .dbFavRow.is-client {
    border-color: var(--green);
}

.newcharte .dbFavRow.is-visited {
    background: var(--grey)!important;
    opacity:.6
}

.newcharte .dbFavRow.is-visited:hover {
    opacity:1
}

.newcharte .dbFavRow.is-visited .dbFavIconBtn {
    background: var(--grey);
}

.newcharte .dbFavRow.is-visited .dbFavIconBtn.visited {
    background: var(--secondary_light);
}


/* Map */
.newcharte .dbFavMap{
    position: sticky;
    top: 20px;
    z-index:0;
}

.newcharte .dbFavMapCard{
    border-radius: 18px;
    overflow:hidden;
    background: rgba(255,255,255,.96);
    border: 1px solid rgba(0,70,96,.14);
    box-shadow: 0 12px 28px rgba(15,23,42,.10);

    position: sticky;
    top: 12px;
    align-self: start;
    height: calc(100vh - 80px);
}

.newcharte .dbFavMapCard__map{
    height: 100%;
    border-radius: 12px;
    overflow: hidden;
}

.newcharte .dbFavMapCard__map_double {
    height:50%;
}

/* highlight depuis la map (marker hover) */
.newcharte .dbFavRow.is-hover{
    background: var(--secondary_soft)!important;
    box-shadow: 0 0 0 2px rgba(255,140,60,.25), 0 16px 38px rgba(15,23,42,.12);
}





.newcharte .dbFavSave__createLink{
    display:inline-flex;
    align-items:center;
    gap:10px;
    width:100%;
    padding:12px 14px;
    border-radius:14px;
    border:1px dashed var(--border);
    background: var(--secondary_light);
    color: var(--primary);
    font-weight:1000;
    cursor:pointer;
    user-select:none;
    transition:.15s ease;
    margin-top:10px;
    font-size:14px;
}

.newcharte .dbFavSave__createLink:hover{
    background: rgba(0,70,96,.06);
    border-color: rgba(0,70,96,.22);
}

.newcharte .dbFavSave__entity{
    margin-top:-2px;
    font-size:16px;
    font-weight:900;
    color:var(--text);
    margin-top:20px;
}

.newcharte .dbFavSave__sub{
    font-size:12px;
    font-weight:800;
    color:var(--muted);
    margin-top:2px;
}

.newcharte .add_list h3 {margin:0;}
.newcharte .back-list i {background: var(--primary);
    color: white;
    width: 20px;
    height: 20px;
    border-radius: 20px;
    text-align: center;
    padding: 5px 2px 0 0;
    font-size: 80%;}


.newcharte .dbFavCreate__stack .dbFavCreate__actions {
    border:0;
}


.newcharte .dbFavCreate__header{
    display:flex;
    align-items:center;
    gap:7px;
    margin-bottom:10px;
}

.newcharte .dbFavCreate__header h3 {margin:0;}

.newcharte .dbFavCreate__back{
    display:inline-flex;
    align-items:center;
    gap:6px;
    font-weight:900;
    font-size:13px;
    color:var(--primary);
    cursor:pointer;
    border-radius:10px;
    transition:.15s ease;
}

.newcharte .dbFavCreate__back:hover{
    background: rgba(0,70,96,.08);
}







/* =========================
   MAP SEARCH LAYOUT Prospective
   ========================= */

.newcharte #map-search{

}

.newcharte #map-list.loading{
    opacity: .5;
    /*pointer-events:none;*/
}
.newcharte #map-list.loading .appCard{
    pointer-events:none;
}


/* Canvas map = occupe tout */
.newcharte #map-canvas{
    width:100%;
    height:100%;
}

/* Auto refresh */
.newcharte #map .map-auto-refresh{
    position:absolute;
    left:16px;
    bottom:16px;
    z-index:20;
    background: rgba(255,255,255,.92);
    border: 1px solid rgba(0,0,0,.10);
    border-radius: 12px;
    padding:10px 12px;
    box-shadow: 0 12px 28px rgba(15,23,42,.14);
}

.newcharte #map-search .appCard{
    border:0;
    box-shadow: none;

}

/* =========================================================
   MAP ROUTE — Clean CSS (based on provided HTML)
   Scope: .newcharte #map-route …
   ========================================================= */

/* Wrapper */
.newcharte #map-route{
    position: relative; /* anchor for absolute overlays */
}

/* ===============================
   TOP RIGHT BAR
================================ */
.newcharte #map-route .dbMapBar{
    position:absolute;
    top:20px;
    right:20px;
    display:flex;
    align-items:center;
    gap:10px;
    z-index:50;
}

/* Shared button styles (button + label) */
.newcharte #map-route .dbMapBtn,
.newcharte #map-route .dbMapCheck{
    height:36px;
    border-radius:8px;
    border:1px solid #dcdcdc;
    background:#fff;
    font-size:13px;
    font-weight:600;
    cursor:pointer;
    transition:.15s ease;
}

/* Button */
.newcharte #map-route .dbMapBtn{
    padding:0 14px;
}
.newcharte #map-route .dbMapBtn:hover{
    background:#f5f5f5;
}
.newcharte #map-route .dbMapBtn.is-active{
    background:var(--secondary);
    color:#fff;
    border-color:var(--secondary_dark);
    opacity:.9;
}

/* Checkbox label */
.newcharte #map-route .dbMapCheck{
    padding:0 12px;
    display:flex;
    align-items:center;
    gap:6px;
}
.newcharte #map-route .dbMapCheck input{
    width:14px;
    height:14px;
    accent-color:var(--black);
}

/* ===============================
   RIGHT ACTIONS (VERTICAL)
================================ */
.newcharte #map-route .dbMapActions{
    position:absolute;
    top:50%;
    right:20px;
    transform:translateY(-50%);
    display:flex;
    flex-direction:column;
    gap:8px;
    z-index:50;
}

.newcharte #map-route .dbMapActionBtn{
    width:42px;
    height:42px;
    border-radius:8px;
    border:1px solid #dcdcdc;
    background:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    font-size:16px;
    transition:.15s ease;
    box-shadow:0 4px 12px rgba(0,0,0,.08);
}
.newcharte #map-route .dbMapActionBtn.is-active{
    background:var(--primary_dark);
    color:#fff;
    border-color:var(--primary_dark);
}

/* ===============================
   STREETVIEW (Pegman) - control skin
================================ */
.newcharte #map-route #mapStreetView{
    padding:0;
    overflow:hidden;
    position:relative;
}

/* Google internal pegman wrapper */
.newcharte #map-route #mapStreetView .gm-svpc{
    width:100% !important;
    height:100% !important;
    margin:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}
.newcharte #map-route #mapStreetView .gm-svpc > div{
    width:100% !important;
    height:100% !important;
}
.newcharte #map-route #mapStreetView .gm-svpc img{
    display:block;
    margin:auto;
}

/* Active overlay icon */
.newcharte #map-route #mapStreetView.is-active::after{
    content:"";
    position:absolute;
    inset:0;
    background:
            url("https://data-b.com/themes/frontend/assets/img/outstreetview.png")
            center / 85% no-repeat,
            #fff;
    border-radius:8px;
    pointer-events:none; /* keep drag possible */
}

/* ===============================
   "Surfaces & Foncier" button icon
================================ */
.newcharte #map-route #map-option-foncier{
    position:relative;
    padding-left:38px; /* room for icon */
}
.newcharte #map-route #map-option-foncier::before{
    content:"";
    position:absolute;
    left:10px;
    top:50%;
    transform:translateY(-50%);
    width:22px;
    height:22px;
    background:url("https://data-b.com/themes/frontend/assets/img/foncier_m2.png") center/contain no-repeat;
    pointer-events:none;
}
.newcharte #map-route #map-option-foncier.is-active::before{
    background-image:url("https://data-b.com/themes/frontend/assets/img/foncier_m2_blanc.png");
}

/* ===============================
   FONCIER ALERT (zoom-in notice)
================================ */
.newcharte #map-route .foncier_zoomin{
    position:absolute;
    top:70px; /* adjust depending top bar height */
    left:50%;
    transform:translateX(-50%);
    min-width:320px;
    max-width:600px;
    padding:10px 20px;
    background:#fff;
    border:1px solid var(--alert);
    color:var(--black);
    border-radius:10px;
    box-shadow:var(--shadow-focus-alert);
    font-size:14px;
    font-weight:600;
    text-align:center;
    z-index:60;
}

/* ===============================
   FONCIER LEGEND (bottom-right)
================================ */
.newcharte #map-route .foncier_label{
    position:absolute;
    right:14px;
    bottom:14px;
    z-index:9999; /* above Google panes */
}

.newcharte #map-route .foncierLegend{
    display:flex;
    align-items:center;
    gap:12px;
    padding:10px 12px;
    background:rgba(255,255,255,.94);
    border:1px solid rgba(0,0,0,.08);
    border-radius:14px;
    box-shadow:0 14px 34px rgba(15,23,42,.14);
    backdrop-filter:blur(6px);
    font-family:Roboto, Arial, sans-serif;
    user-select:none;
    pointer-events:none; /* legend shouldn't block map interactions */
}

.newcharte #map-route .foncierLegend__item{
    display:flex;
    align-items:center;
    gap:8px;
    padding:6px 10px;
    border-radius:999px;
    background:rgba(0,0,0,.03);
    border:1px solid rgba(0,0,0,.06);
}
.newcharte #map-route .foncierLegend__swatch{
    width:14px;
    height:14px;
    border-radius:4px;
    box-shadow:inset 0 0 0 1px rgba(0,0,0,.10);
}
.newcharte #map-route .foncierLegend__txt{
    font-size:13px;
    font-weight:700;
    color:var(--primary);
    white-space:nowrap;
}


/* Contenu de la carte */
.newcharte #map-route .dbInfo{
    min-width: 220px;
    max-width: 320px;

    background: #fff;
    border: 1px solid rgba(0,0,0,.08);
    border-radius: 14px;

    box-shadow: 0 18px 46px rgba(15,23,42,.12);
    overflow: hidden;

    font-family: Roboto, Arial, sans-serif;
}

.newcharte #map-route .dbInfo__head{
    padding: 12px 14px;
    border-bottom: 1px solid rgba(0,0,0,.06);
}

.newcharte #map-route .dbInfo__title{
    font-weight: 900;
    font-size: 14px;
    color: white;
    line-height: 1.2;
}

.newcharte #map-route .dbInfo__meta{
    padding: 10px 14px 12px;
    display: flex;
    align-items: center;
    gap: 8px;

    color: rgba(0,0,0,.65);
    font-size: 13px;
    font-weight: 600;
}

.newcharte #map-route .dbInfo__meta i{
    color: var(--secondary);
}

/* Bonus: retirer les paddings/coins “Google” autour du contenu */
.newcharte #map-canvas .gm-style .gm-style-iw-c{
    padding: 0 !important;
    border-radius: 14px !important;
    box-shadow: none !important; /* on gère l'ombre nous-mêmes */
}

.newcharte #map-canvas .gm-style .gm-style-iw-d{
    overflow: hidden !important;
}

/* Bonus: bouton close plus discret */
.newcharte #map-canvas .gm-ui-hover-effect{
    opacity: .7;
}
.newcharte #map-canvas .gm-ui-hover-effect:hover{
    opacity: 1;
}

.newcharte #map-canvas .gm-ui-hover-effect, .newcharte #map-canvas .gm-style-iw-chr{
    display: none !important;
}

/* Base marker */
.newcharte .dbMk{
    width: 34px;
    height: 34px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    position: relative;
    transition: width .15s ease, height .15s ease;

}

/* Icône FA */
.newcharte .dbMk i{
    color: #fff;
    font-size: 14px;
    line-height: 1;
    text-shadow: 0 1px 0 rgba(0,0,0,.18);
}

/* Brand background (enseigne) */
.newcharte .dbMk.has-brand{
    background-size: cover !important;
    background-position: center !important;
}

.newcharte .dbMk.is-active { transform: scale(1.06); filter: brightness(1.08) saturate(1.15); box-shadow: 0 0 0 4px rgba(247,148,29,.25); }

/* l’icône doit passer au-dessus du voile */
.newcharte .dbMk.has-brand i{
    position: relative;
    z-index: 1;
}

/* Mode compact: on ne garde que la pastille */
.newcharte .dbMk.is-compact {
    box-shadow:none!important;
}
.newcharte .dbMk.is-compact i{
    display:none;
}

.newcharte .dbMk.is-compact{
    background-image:none !important;
}

.newcharte .dbMk:focus,
.newcharte .dbMk:focus-visible {
    outline: none !important;
}

/* Si Google applique le focus sur un wrapper */
.gm-style .dbMk:focus,
.gm-style .dbMk:focus-visible {
    outline: none !important;
}

.gm-style *:focus {
    outline: none !important;
}
.gm-style div[class*="gm-style-iv"] {
    top: auto !important;
    bottom: 20px !important;
    left: 20px !important;
}
.gm-style .gm-iv-container{
    margin-left:60px;
}



/* Tooltip custom */
.newcharte .dbTooltip {
    position: fixed;
    z-index: 99999;
    pointer-events: none;

    padding: 6px 10px;
    border-radius: 8px;

    background: rgba(15,23,42,.95);
    color: #fff;

    font-size: 12px;
    font-weight: 700;
    white-space: nowrap;

    box-shadow: 0 10px 30px rgba(0,0,0,.25);
    opacity: 0;
    transform: translateY(4px);
    transition: opacity .12s ease, transform .12s ease;
}

.newcharte .dbTooltip.is-visible {
    opacity: 1;
    transform: translateY(0);
}


/*------------------
    HOVER GENERIC MENU
------------------*/
[data-hover-menu]{
    position: relative;
    overflow: visible;
}

.newcharte .dbHoverMenu__panel{
    display: none;
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    right: auto;
    z-index: 999999;

    width: 280px;
    max-width: calc(100vw - 24px);
    min-width: 0;
    max-height: calc(100vh - 24px);
    overflow: auto;
    box-sizing: border-box;

    transform: none !important;
}

.newcharte .dbHoverMenu.is-open .dbHoverMenu__panel{
    display: block;
}

.newcharte .dbHoverMenu__panel.is-right{
    left: auto;
    right: 0;
}

.newcharte .dbHoverMenu__panel.is-up{
    top: auto;
    bottom: calc(100% + 8px);
}

.newcharte .dbHoverMenu__item{
    white-space: normal;
    word-break: break-word;
}

@media (max-width: 768px){
    .newcharte .dbHoverMenu__panel{
        width: min(280px, calc(100vw - 24px));
        max-width: calc(100vw - 24px);
    }
}


/* panel quand il est porté dans body */
.newcharte .dbHoverMenuPortal{
    display:block;
    position:absolute;
    z-index: 2147483647; /* au-dessus de tout */
    min-width: 220px;
    background:#fff;
    border:1px solid rgba(15,23,42,.12);
    border-radius:14px;
    box-shadow: 0 18px 50px rgba(15,23,42,.18);
    padding:8px;
}

.newcharte .dbHoverMenu__list{
    list-style:none;
    margin:0;
    padding:0;
}

.newcharte .dbHoverMenu__item{
    width:100%;
    display:flex;
    align-items:center;
    gap:10px;

    padding:10px 10px;
    border-radius:10px;

    border:0;
    background:transparent;
    text-align:left;

    cursor:pointer;
    font-size:13px;
    font-weight:700;
    color: inherit;
    text-decoration:none;
}

.newcharte .dbHoverMenu__item:hover{
    background: rgba(15,23,42,.06);
}

.newcharte .dbHoverMenu__item.is-danger{
    color:#dc2626;
}


.newcharte .dbHoverMenu.is-open .dbHoverMenu__panel{
    display: block;
}

/* Sections */
.newcharte .dbHoverMenu__section{
    padding:8px 0;
}

/* Titre section */
.newcharte .dbHoverMenu__sectionTitle{
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.5px;
    opacity:.6;
    padding:4px 12px 6px;
}

/* Data brute */
.newcharte .dbHoverMenu__dataList{
    list-style:none;
    margin:0;
    padding:0 12px;
}

.newcharte .dbHoverMenu__dataItem{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:6px 0;
    font-size:13px;
    font-weight:700;
}

.newcharte .dbHoverMenu__label{
    opacity:.7;
}

.newcharte .dbHoverMenu__value{
    font-weight:900;
}

/* Séparateur */
.newcharte .dbHoverMenu__separator{
    height:1px;
    background:rgba(15,23,42,.10);
    margin:6px 8px;
}


.newcharte .dbHoverMenu__panel--double {
    width:400px;
}




.newcharte .routeMode{
    display:inline-flex;
    align-items:center;
    gap:10px;

    padding:8px 12px;
    border-radius:14px;

    background:var(--primary_dark);
    color:#fff;

    font-size:13px;
    font-weight:700;
}

/* labels */
.newcharte .routeMode__label{
    opacity:1;
    white-space:nowrap;
}

/* switch wrapper */
.newcharte .routeMode__switch{
    position:relative;
    width:42px;
    height:22px;
    display:inline-block;
}

/* input caché */
.newcharte .routeMode__switch input{
    opacity:0;
    width:0;
    height:0;
}

/* slider */
.newcharte .routeMode__slider{
    position:absolute;
    inset:0;
    background:rgba(255,255,255,.25);
    border-radius:999px;
    cursor:pointer;
    transition:background .2s ease;
}

.newcharte .routeMode__slider::before{
    content:"";
    position:absolute;
    width:18px;
    height:18px;
    left:2px;
    top:2px;
    background:#fff;
    border-radius:50%;
    transition:transform .2s ease;
}

/* état À pied */
.newcharte .routeMode__switch input:checked + .routeMode__slider{
    background:#f7941d;
}

.newcharte .routeMode__switch input:checked + .routeMode__slider::before{
    transform:translateX(20px);
}




/* Bouton
.newcharte #popup, .newcharte popup, .newcharte #popup_bis {
    border-radius:20px;
}

.newcharte #popup .close, .newcharte #popup_bis .close {
    position: fixed;
}

.newcharte #popup.xxlarge .close, .newcharte #popup_bis.xxlarge .close {
    bottom:2.5%;
    top:unset;
    left:40%;
    width:20%!important;
    z-index:9999;
}

.newcharte #popup .newcharte .close, #popup_bis .newcharte .close {
    background: transparent;
}
 */


#popup.visible,#popup_bis.visible{
    overflow:visible;
    border-radius:20px;
    display: flex;
}

#popup.small,#popup_bis.small{
    display: flex;
    flex-direction: column;
    max-height: 90vh;
    height:auto;
}


.popupContent{
    overflow: auto;
    flex: 1;
    border-radius: 20px;
}

#popup.small .popupContent,#popup_bis.small .popupContent{
    overflow-y: auto;
    flex: 1;
    border-radius: 20px;
}




/* ===========================
   POPUP NAV — SaaS moderne
   (pill flottante, compacte, centrée)
=========================== */

/* wrapper “pill” centré, qui dépasse légèrement */
.popup-nav-wrapper{
    position:absolute;
    left:50%;
    bottom:-18px;
    transform:translateX(-50%);

    /* compact mais adaptable */
    width:auto;
    max-width:92%;
    padding:6px;

    display:flex;
    align-items:center;
    gap:6px;

    z-index:9999;
    pointer-events:auto;

    background:rgba(255,255,255,.92);
    border:1px solid rgba(0,70,96,.18);
    border-radius:999px;

    box-shadow:
            0 14px 30px rgba(15,23,42,.18),
            0 0 0 6px rgba(255,255,255,.85);

    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);

    transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
}

/* petit “lift” au hover sur la barre entière */
.popup-nav-wrapper:hover{
    transform:translateX(-50%) translateY(-2px);
    box-shadow:
            0 18px 36px rgba(15,23,42,.20),
            0 0 0 6px rgba(255,255,255,.88);
}


/* chaque bloc nav est juste un conteneur */
.popup-nav{
    flex:none;
    pointer-events:auto;
}

/* bouton style SaaS */
.popup-nav button{
    border:0;
    background:transparent;
    cursor:pointer;

    padding:9px 14px;
    border-radius:999px;

    color:var(--primary);
    font-size:14px;
    font-weight:700;
    line-height:1;

    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;

    transition: background .15s ease, transform .15s ease, opacity .15s ease;
}

/* hover doux */
.popup-nav button:hover{
    background:var(--primary);
    color:white;
}

/* active */
.popup-nav button:active{
    transform:translateY(1px);
}

/* disabled */
.popup-nav button:disabled{
    opacity:.35;
    cursor:not-allowed;
    background:transparent !important;
}

/* Fermer un peu plus “call-to-action” */
.popup-nav--close button{
    background:rgba(0,70,96,.08);
    font-weight:800;
}
.popup-nav--close button:hover{
}

/* Back / Next un poil plus “icône” */
.popup-nav--back button,
.popup-nav--next button{
    font-size:17px;
    font-weight:800;
    padding-left:12px;
    padding-right:12px;
}













/*SURGACE MENU HOVER*/
.newcharte .dbFavIconBtn{
    z-index: auto !important;
}

/* 1) Base : on fixe le contexte d’empilement au niveau de la zone d’actions */
.newcharte .dbFavCell--actions,
.newcharte .dbFavActions{
    position: relative;
    z-index: 0;
}

/* 2) Le hover menu devient “au-dessus” quand ouvert */
.newcharte .dbHoverMenu[data-hover-menu]{
    position: relative;
    z-index: 0;
}

.newcharte .dbHoverMenu.is-open{
    z-index: 50; /* au-dessus des autres boutons de la row */
}

/* 3) Le panel au-dessus de tout dans la row */
.newcharte .dbHoverMenu__panel{
    z-index: 60;
}

.newcharte .dbFavRow{
    position: relative;
    z-index: 1;
}

.newcharte .dbFavRow:hover{
    z-index: 5;
}

.newcharte .dbFavRow:has(.dbHoverMenu.is-open){
    z-index: 10;
}
/*SURGACE MENU HOVER*/


/* ===============================
   Mapping decideur
================================= */

.newcharte .mapping .dir-table{
    border:0;
    display:block; /* évite le grid inutile ici */
}

/* ligne dirigeant */
.newcharte .mapping .dir-row{
    border:0;
}

/* première ligne (header visuel) */
.newcharte .mapping .dir-row:first-child{
    background:var(--primary)!important;
    color:#fff!important;
    border-radius:20px;
}

/* conteneur principal : avatar | identity | right */
.newcharte .mapping .dir-person{
    display:flex;
    align-items:center;
    gap:12px;
}

/* colonne identité (nom + role) */
.newcharte .mapping .dir-identity{
    flex:1;
    min-width:0;
}

/* IMPORTANT : le titre ne doit PAS être flex (sinon ça colle les actions) */
.newcharte .mapping .dir-name{
    display:block;
    color:var(--secondary)!important;
    line-height:1.2;
}

/* texte du nom */
.newcharte .mapping .dir-name-text{
    font-weight:700;
}

/* colonne droite (social + enrich) */
.newcharte .mapping .dir-right{
    margin-left:auto;
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    justify-content:center;
    gap:6px;
}

/* social en ligne */
.newcharte .mapping .dir-right .dir-social{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
}

/* enrich dessous (2 actions) */
.newcharte .mapping .dir-right .enrich-wrap{
    display:flex;
    flex-direction:row;
    align-items:flex-end;
    gap:6px;
}

/* lignes paires */
.newcharte .mapping .dir-row:not(.dir-header):nth-child(2n){
    background:transparent;
}

/* badges */
.newcharte .mapping .badges{
    justify-content:flex-start;
}







/* =========================
   Fav create (popup / 1 col)
========================= */
.newcharte .dbFavCreate{
    grid-column: span 12;
    position: relative;
    overflow: hidden;
}

.newcharte #popup .dbFavCreate, .newcharte #popup_bis .dbFavCreate {
    border-radius: 20px;
}

.newcharte .dbFavCreate:before{
    content:"";
    position:absolute;
    left:0; top:0;
    width:100%;
    height:3px;
    background: var(--primary);
    opacity:.9;
}

.newcharte .dbFavCreate__title{
    margin:0 0 10px 0;
    display:flex;
    align-items:center;
    gap:10px;
    font-size:15px;
    font-weight:1000;
}

.newcharte .dbFavCreate__title i{
    width:34px;
    height:34px;
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    background: var(--secondary_light);
    border:1px solid var(--border);
}

/* 1 colonne */
.newcharte .dbFavCreate__stack{
    display:flex;
    flex-direction:column;
    gap:10px;
}

/* Field wrapper premium */
.newcharte .dbField{
    position:relative;
    margin-top:20px;
}

.newcharte .dbField__label{
    font-size:11px;
    font-weight:1000;
    color:var(--muted);
    text-transform:uppercase;
    letter-spacing:.35px;
    margin:0 0 6px 2px;
}

/* Input / select base */
.newcharte .dbField__control,
.newcharte .dbField select.dbField__control{
    width:100%;
    height:46px;
    border-radius:14px;
    border:1px solid var(--border);
    background: var(--bg);
    box-shadow: 0 2px 10px rgba(0,0,0,.03);
    padding:0 14px;
    transition: box-shadow .15s ease, border-color .15s ease, transform .15s ease;
}

.newcharte .dbField__control:focus{
    outline:none;
    border-color: var(--primary);
    box-shadow: 0 6px 18px rgba(0,0,0,.06);
    transform: translateY(-1px);
}

/* SELECT premium : hide native arrow + add custom arrow chip */
.newcharte .dbSelectPremium{
    position:relative;
}

.newcharte .dbSelectPremium select{
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none;
    padding-right:58px; /* room for arrow chip */
    cursor:pointer;
}

.newcharte .dbSelectPremium__chip{
    position:absolute;
    right:8px;
    top:50%;
    transform:translateY(-50%);
    height:34px;
    min-width:42px;
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    background: var(--secondary_light);
    border:1px solid var(--border);
    pointer-events:none;
    opacity:.95;
}

.newcharte .dbSelectPremium__chip i{
    font-size:14px;
    opacity:.85;
}

.newcharte .dbSelectPremium select[multiple]{
    height:auto;
    min-height:140px;
    padding:10px 14px;
    padding-right:14px; /* pas besoin de place pour la chip */
    cursor:default;
}

/* Quand c'est un multiple, on masque la chip (elle gêne) */
.newcharte .dbSelectPremium select[multiple] + .dbSelectPremium__chip{
    display:none;
}

/* Actions */
.newcharte .dbFavCreate__actions{
    display:flex;
    justify-content:start;
    margin-top:2px;
    padding-top:10px;
    border-top:1px solid var(--border);
}

.newcharte .dbFavCreate__hint{
    font-size:12.5px;
    font-weight:700;
    color:var(--muted);
    line-height:1.35;
    margin-top:10px;
    padding:10px 12px;
    border:1px dashed var(--border);
    border-radius:14px;
}





/* =====================================================
   MAP PANEL PROSPECTIVE (DVF / IA)
   ===================================================== */
.dbMapPanel{
    height:100%;
    display:flex;
    flex-direction:column;
    overflow:hidden;
    background:#fff;
}

.dbMapPanel__head{
    position:sticky;
    top:0;
    z-index:5;
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    padding:14px 14px 12px;
    background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,255,255,.92));
    border-bottom:1px solid rgba(0,0,0,.06);
}

.dbMapPanel__title{
    font-size:18px;
    font-weight:1000;
    letter-spacing:-.2px;
    color:var(--primary);
    text-transform:uppercase;
    line-height:1.1;
}

.dbMapPanel__subline{
    font-size:15px;
    font-weight:700;
    letter-spacing:-.2px;
    color:var(--grey_dark);
    text-transform:uppercase;
    line-height:1.1;
    margin-top: 5px;
    display: flex;
}

.dbMapPanel__meta{
    margin-top:10px;
    display:flex;
    flex-wrap:wrap;
    gap:6px;
}


.company_dpe {
    background: var(--primary);
    color: white;
    border-radius: 999px;
    padding: 2px 10px;
}

.company_dpe:hover {
    background: var(--primary_dark);
}


.dbMapPanel__close{
    width:36px;
    height:36px;
    border-radius:12px;
    border:1px solid rgba(0,0,0,.08);
    background:#fff;
    color:var(--primary);
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
}

.dbMapPanel__close:hover{
    background:var(--primary_ultra_light);
    box-shadow:var(--shadow-focus);
}

.dbMapPanel__body{
    padding:12px;
    overflow:auto;
    height:100%;
}

.dbDvfPanel__title {
    font-size:18px;
    font-weight:1000;
    letter-spacing:-.2px;
    color:var(--primary);
    text-transform:uppercase;
    line-height:1.1;
}



#more_dvf .subtab{
    margin:12px 0 0;
}

#more_dvf .subtab-content{
    display:none !important;
}

#more_dvf .subtab-content.active{
    display:block !important;
}

#more_dvf .dbMapPanel__tools {
    margin:10px 0;
}

#more_dvf .table-wrap{
    margin-top:10px;
    overflow-x:hidden;
    max-width:100%;
}

#more_dvf .table-wrap table{
    width:100%;
    max-width:100%;
    min-width:0 !important;
    table-layout:fixed;
    border-collapse:collapse;
}

#more_dvf .table-wrap th,
#more_dvf .table-wrap td{
    min-width:0;
    white-space:normal;
    overflow:hidden;
    text-overflow:ellipsis;
    word-break:break-word;
    overflow-wrap:anywhere;
}

#more_dvf .table-wrap th.t-right,
#more_dvf .table-wrap td.t-right{
    white-space:normal;
}





/* =====================================================
   FONCIER SCOPE
   ===================================================== */
.newcharte .foncierCard {
    border:1px solid var(--border);
    border-radius: 20px;
    margin:20px 0;
}
.newcharte .foncierCard .company-header {
    padding:10px 22px;
}
.newcharte .foncierCard .company-header .company-title {
    font-size:22px;
}

.newcharte .foncierCard:hover {
    background: var(--secondary_ultra_light);
}
.newcharte .foncierCard__head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    padding-bottom:10px;
    border-bottom:1px dashed var(--border);
}
.newcharte .foncierCard__title{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:16px;
    font-weight:1000;
    letter-spacing:-0.1px;
    color:var(--primary);
    min-width:0;
    flex:1; /* important pour pousser les actions à droite */
}

.newcharte .foncierCard__actions{
    display:flex;
    align-items:center;
    gap:8px;
    flex-shrink:0; /* empêche les boutons de se compresser */
}
.newcharte .foncierCard__title span:last-child{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    display:inline-block;
    max-width: 620px;
}
.newcharte .foncierCard__section{ border-bottom:1px dashed var(--border); padding:15px; }
.newcharte .foncierCard__section:last-child {border:0;}

.newcharte .foncierCard__sectionTitle{
    display:flex;
    align-items:center;
    gap:8px;
    font-weight:1000;
    color:var(--text);
    margin-bottom:8px;
    font-size:14px;
}
.newcharte .foncierCard__sectionTitle i{ color:var(--secondary); }
.newcharte .foncierCard__cta{
    height:32px;
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:0 12px;
    border-radius:12px;
    font-weight:1000;
}
.newcharte #prop_etage h3 {
    background: var(--primary);
    color:white;
    padding:10px;
    font-size:16px;
    margin-top:30px;
}
.newcharte .foncierCard__section .person:nth-child(2n) {
    background: var(--grey_ultra_light);
}




/* Scope popup (évite impacts ailleurs) */
.popupContent .ia-suggestions{
    border: 1px solid rgba(0,0,0,.08);
    background: #fff;
    border-radius: 14px;
    padding: 10px 12px;
    box-shadow: 0 10px 22px rgba(0,0,0,.06);
    min-height: 44px;
    font-size: 14px;
    background: var(--secondary_ultra_light);
    overflow: scroll;
    max-height:220px;
}

.popupContent .ia-suggestions:empty{
    display:none;
}

/* Styles génériques des messages injectés (small/text-muted/text-danger) */
.popupContent .ia-suggestions .small{
    font-size: 12px;
}
.popupContent .ia-suggestions .text-muted{
    opacity: .75;
}
.popupContent .ia-suggestions .text-danger{
    color: #b42318; /* rouge sobre */
    font-weight: 600;
}

/* "Suggestions en cours…" -> loader discret */
.popupContent .ia-suggestions .small.text-muted{
    display: flex;
    align-items: center;
    gap: 8px;
}
.popupContent .ia-suggestions .loading:before{
    content: "";
    width: 14px;
    height: 14px;
    border-radius: 50%;
    border: 2px solid rgba(0,0,0,.12);
    border-top-color: rgba(0,0,0,.55);
    display: inline-block;
    animation: iaSpin .7s linear infinite;
}
@keyframes iaSpin{
    to { transform: rotate(360deg); }
}

/* Le wrapper que tu génères: .ia-suggestions__list */
.popupContent .ia-suggestions__list{
    display: flex;
    flex-wrap: wrap;
    gap: 8px !important; /* tu mets gap:6px inline, on force léger */
}

/* Boutons suggestion en "chips" (sans changer ton HTML) */
.popupContent .ia-suggestion-btn, .popupContent .selectize-control .item{
    /* on ne touche pas à tes classes btn/btn-ghost, on override juste le rendu */
    border-radius: 999px !important;
    padding: 5px 9px !important;
    line-height: 1 !important;
    font-size: 11px !important;
    border: 1px solid rgba(0,0,0,.10) !important;
    background: #f7f8fa !important;
    color: inherit;
    box-shadow: none !important;
    transition: transform .08s ease, box-shadow .12s ease, background .12s ease, border-color .12s ease, opacity .12s ease;
    white-space: nowrap;
    height:25px !important;
    text-shadow: none!important;
    font-weight: 900;
    color:var(--black)!important;
}

/* Hover (effet "chip") */
.popupContent .ia-suggestion-btn:hover{
    background: #fff !important;
    border-color: rgba(0,0,0,.16) !important;
    box-shadow: 0 8px 16px rgba(0,0,0,.08) !important;
    transform: translateY(-1px);
}
.popupContent .ia-suggestion-btn:active{
    transform: translateY(0);
    box-shadow: 0 4px 10px rgba(0,0,0,.08) !important;
}

/* Etat déjà ajouté */
.popupContent .ia-suggestion-btn.is-added{
    opacity: 0.45 !important;
    pointer-events: none;
    cursor: default;
    background: #eef0f4 !important;
    border-color: rgba(0,0,0,.08) !important;
    box-shadow: none !important;
    transform: none !important;
}

/* Petite séparation visuelle entre le titre "Suggestions..." et les chips */
.popupContent .ia-suggestions .small.text-muted[style*="margin-bottom"]{
    margin-bottom: 8px !important;
    padding-bottom: 8px;
    border-bottom: 1px dashed rgba(0,0,0,.10);
}

.popupContent .selectize-control.multi .selectize-input.has-items {
    overflow: scroll;
    max-height: 70px;
}


.newcharte .dbConfirmBox{
    margin:30px auto 10px;
    padding:25px;
    background:var(--green_ultra_light);
    border:1px solid var(--green_light);
    border-radius:var(--radius);
    box-shadow:var(--shadow);

    text-align:left;
}

.newcharte .dbConfirmBox__icon{
    font-size:36px;
    color:var(--green);
    margin-bottom:12px;
}

.newcharte .dbConfirmBox__title{
    font-size:20px;
    font-weight:800;
    color:var(--green_dark);
    margin-bottom:10px;
}

.newcharte .dbConfirmBox__text{
    font-size:15px;
    color:var(--text);
    line-height:1.5;
}

.newcharte .dbConfirmBox__hint{
    margin-top:16px;
    font-size:13px;
    color:var(--muted);
    font-style:italic;
}



/* =========================
   IA REPORT PAGE
   ========================= */

.newcharte .dbIaPage{
    margin-top: 14px;
}

.newcharte .dbIaPage__main{
    display:grid;
    grid-template-columns:minmax(0, 1fr) 320px;
    gap:20px;
    align-items:start;
}

/* LEFT */
.newcharte .dbIaReport{
    min-width:0;
}

.newcharte .dbIaReport__top{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    margin-bottom:14px;
    flex-wrap:wrap;
}

.newcharte .dbIaReport__meta,
.newcharte .dbIaReport__status{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
}

.newcharte .dbIaChip{
    display:inline-flex;
    align-items:center;
    gap:8px;
    min-height:34px;
    padding:0 12px;
    border-radius:999px;
    border:1px solid var(--border);
    background:#fff;
    color:var(--text);
    font-size:12px;
    font-weight:1000;
    box-shadow:var(--shadow2);
}

.newcharte .dbIaChip--primary{
    background:var(--primary_ultra_light);
    border-color:var(--primary_soft);
    color:var(--primary);
}

.newcharte .dbIaChip--success{
    background:var(--green_ultra_light);
    border-color:var(--green_light);
    color:var(--green_dark);
}

.newcharte .dbIaPaper{
    background:#fff;
    border:1px solid var(--border);
    border-radius:24px;
    box-shadow:var(--shadow);
    padding:34px 38px;
    position:relative;
    overflow:hidden;
}

.newcharte .dbIaPaper::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:8px;
    background:linear-gradient(90deg, var(--primary), var(--secondary));
}

/* RIGHT */
.newcharte .dbIaAside{
    top:20px;
    display:flex;
    flex-direction:column;
    gap:14px;
}

.newcharte .dbIaAsideCard{
    background:#fff;
    border:1px solid var(--border);
    border-radius:20px;
    box-shadow:var(--shadow2);
    padding:16px;
}

.newcharte .dbIaAsideCard__title{
    font-size:13px;
    font-weight:1000;
    text-transform:uppercase;
    letter-spacing:.08em;
    color:var(--primary);
    margin-bottom:12px;
}

.newcharte .dbIaAsideActions{
    display:flex;
    flex-direction:column;
    gap:10px;
}

.newcharte .dbIaAsideActions .btn{
    width:100%;
    justify-content:flex-start;
}

.newcharte .dbIaSources{
    list-style:none;
    margin:0;
    padding:0;
    display:flex;
    flex-direction:column;
    gap:8px;
}

.newcharte .dbIaSources li{
    margin:0;
    padding:0;
}

.newcharte .dbIaSources a{
    display:block;
    padding:10px 12px;
    border-radius:14px;
    text-decoration:none;
    color:var(--text);
    font-size:12.5px;
    font-weight:700;
    background:var(--grey_ultra_light);
    border:1px solid var(--border);
    transition:.15s ease;
    line-height:1.35;
}

.newcharte .dbIaSources a:hover{
    background:var(--secondary_ultra_light);
    border-color:var(--secondary_soft);
    color:var(--primary);
}










/* =========================
CHOSEN – newcharte skin
========================= */
.newcharte .chosen-container{
    width:100% !important;
    font-size:14px;
}

/* Le "control" (équivalent dbField__control) */
.newcharte .chosen-container-multi .chosen-choices,
.newcharte .chosen-container-single .chosen-single{
    min-height:46px;
    border-radius:14px;
    border:1px solid var(--border);
    background: var(--bg);
    box-shadow: 0 2px 10px rgba(0,0,0,.03);
    padding:6px 46px 6px 10px; /* place pour la chip à droite */
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:6px;
    transition: box-shadow .15s ease, border-color .15s ease, transform .15s ease;
}

/* Focus style (Chosen met "chosen-container-active") */
.newcharte .chosen-container-active .chosen-choices,
.newcharte .chosen-container-active .chosen-single{
    border-color: var(--primary);
    box-shadow: 0 6px 18px rgba(0,0,0,.06);
    transform: translateY(-1px);
}

/* Input search à l’intérieur */
.newcharte .chosen-container-multi .chosen-choices li.search-field input[type="text"]{
    height:28px;
    padding:0 4px;
    margin:0;
    font-size:14px;
    color:var(--text);
}



/* Tags (sélections) */
.newcharte .chosen-container-multi .chosen-choices li.search-choice{
    border:1px solid var(--border);
    background: var(--secondary_light);
    border-radius:999px;
    padding:6px 28px 6px 10px;
    margin:0;
    font-weight:900;
    color:var(--text);
    box-shadow:none;
}

/* Croix de suppression */
.newcharte .chosen-container-multi .chosen-choices li.search-choice .search-choice-close{
    top:50%;
    transform:translateY(-50%);
    right:10px;
    opacity:.75;
}
.newcharte .chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover{
    opacity:1;
}

/* La flèche (single) */
.newcharte .chosen-container-single .chosen-single div{
    width:42px;
}
.newcharte .chosen-container-single .chosen-single div b{
    background:none !important; /* on retire l’asset sprite */
}
.newcharte .chosen-container-single .chosen-single div:after{
    content:"\f078"; /* chevron-down */
    font-family:"Font Awesome 6 Free";
    font-weight:900;
    position:absolute;
    right:14px;
    top:50%;
    transform:translateY(-50%);
    color:var(--muted);
    opacity:.85;
}

/* Pour le multi : on ajoute aussi un chevron à droite */
.newcharte .chosen-container-multi .chosen-choices{
    position:relative;
}
.newcharte .chosen-container-multi .chosen-choices:after{
    content:"\f078";
    font-family:"Font Awesome 6 Free";
    font-weight:900;
    position:absolute;
    right:14px;
    top:50%;
    transform:translateY(-50%);
    color:var(--muted);
    opacity:.85;
    pointer-events:none;
}

/* Dropdown */
.newcharte .chosen-container .chosen-drop{
    border:1px solid var(--border);
    border-radius:14px;
    box-shadow: 0 14px 40px rgba(0,0,0,.12);
    margin-top:8px;
    background: white;
}

/* Barre de recherche dans dropdown */
.newcharte .chosen-container .chosen-search{
    padding:10px;
    border-bottom:1px solid var(--border);
    background: var(--secondary_light);
}
.newcharte .chosen-container .chosen-search input{
    height:40px;
    border-radius:12px;
    border:1px solid var(--border);
    padding:0 12px;
    box-shadow:none;
}

/* Résultats */
.newcharte .chosen-container .chosen-results{
    margin:0;
    padding:8px;
    height:150px; /* popup friendly */

}
.newcharte .chosen-container .chosen-results li{
    border-radius:12px;
    padding:10px 10px;
    font-weight:900;
    color:var(--text);
}
.newcharte .chosen-container .chosen-results li.highlighted{
    background: rgba(0,70,96,.10);
    color: var(--text);
}
.newcharte .chosen-container .chosen-results li.result-selected{
    opacity:.55;
}

/* Placeholder */
.newcharte .chosen-container-multi .chosen-choices li.search-field input[type="text"]::placeholder{
    color:var(--muted);
    font-weight:800;
}



/* Mask */
.infoenrich-mask{
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.45);
    z-index: 12000;
}

/* Popup */
.infoenrich-pop{
    position: fixed;
    left: 50%;
    top: 80px;
    transform: translateX(-50%);
    width: 520px;
    max-width: calc(100vw - 20px);
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 20px 50px rgba(0,0,0,.25);
    z-index: 12001;
    overflow: hidden;
    font-family: inherit;
}

/* Head */
.infoenrich-head{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 16px;
    border-bottom: 1px solid #e6eaee;
}

.infoenrich-title{
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 900;
    font-size: 15px;
}

.infoenrich-close{
    background: transparent;
    border: none;
    font-size: 18px;
    cursor: pointer;
    opacity: .6;
}
.infoenrich-close:hover{
    opacity: 1;
}

/* Body */
.infoenrich-body{
    padding: 16px;
}

.infoenrich-alert{
    background: #f3f6f9;
    padding: 1px 12px;
    border-radius: 10px;
    font-size: 13px;
    line-height: 1.5;
    margin-bottom: 14px;
}

/* Pricing */
.infoenrich-pricing{
    border: 1px solid #e6eaee;
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 14px;
}

.infoenrich-row{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 12px;
    font-weight: 800;
    font-size: 13px;
}

.infoenrich-row + .infoenrich-row{
    border-top: 1px solid #e6eaee;
}

.infoenrich-credits{
    font-weight: 700;
    font-size: 12px;
    color: #6c7680;
}

/* Checkbox */
.infoenrich-check{
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 800;
    font-size: 13px;
}

/* Footer */
.infoenrich-footer{
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    padding: 14px 16px;
    border-top: 1px solid #e6eaee;
    background: #fafbfc;
}

.infoenrich-cancel{
    background: transparent;
    border: 1px solid #e6eaee;
    padding: 8px 12px;
    border-radius: 10px;
    font-weight: 800;
    cursor: pointer;
}

.infoenrich-validate{
    background: #f7941d;
    border: 1px solid #e88714;
    color: #fff;
    padding: 8px 14px;
    border-radius: 10px;
    font-weight: 900;
    cursor: pointer;
}
.infoenrich-validate:hover{
    filter: brightness(.95);
}








/*Correctif V1 / V2*/
#header .border-bottom {
    border:0!important;
}
.newcharte .flex_start{
    justify-content:start;
}


/*===========
SLIDER JQUERY
 */
.newcharte .dbRangeCard{
    background:#fff;
    border:1px solid var(--border);
    border-radius:18px;
    padding:16px;
    box-shadow:var(--shadow2);
}

.newcharte .dbRangeCard__head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:14px;
}

.newcharte .dbRangeCard__title{
    font-size:14px;
    font-weight:1000;
    color:var(--primary);
}

.newcharte .dbRangeCard__value{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:34px;
    padding:0 12px;
    border-radius:999px;
    background:var(--secondary_light);
    border:1px solid var(--secondary);
    color:var(--primary);
    font-size:13px;
    font-weight:1000;
    white-space:nowrap;
}

.newcharte .dbRangeCard__body{
    padding:4px 2px 0;
}

.newcharte .dbRangeSlider{
    margin:8px 4px 10px;
}

/* rail */
.newcharte .dbRangeSlider.ui-slider{
    position:relative;
    height:10px;
    border:0;
    border-radius:999px;
    background:linear-gradient(90deg, var(--primary_ultra_light), var(--primary_light));
    box-shadow:inset 0 1px 2px rgba(15,23,42,.08);
}

/* partie active */
.newcharte .dbRangeSlider .ui-slider-range{
    height:100%;
    border-radius:999px;
    background:linear-gradient(90deg, var(--secondary), var(--secondary_dark));
}

/* poignée */
.newcharte .dbRangeSlider .ui-slider-handle{
    top:50%;
    margin-top:-4px;
    margin-left:-16px;

    width:20px;
    height:20px;
    border-radius:999px;
    border:3px solid #fff;
    background:var(--primary);
    box-shadow:
            0 8px 18px rgba(15,23,42,.16),
            0 0 0 5px rgba(0,70,96,.10);
    cursor:pointer;
    outline:none;
}

.newcharte .dbRangeSlider .ui-slider-handle:hover{
    transform:scale(1.04);
}

.newcharte .dbRangeSlider .ui-slider-handle:focus{
    box-shadow:
            0 8px 18px rgba(15,23,42,.16),
            0 0 0 6px rgba(247,148,29,.18);
    background: var(--secondary);
}

/* graduation */
.newcharte .dbRangeScale{
    display:flex;
    justify-content:space-between;
    gap:8px;
    margin-top:10px;
    font-size:11px;
    font-weight:900;
    color:var(--muted);
    user-select:none;
}


.newcharte .dbCaRanges{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:18px;
    margin-top:24px;
}

.newcharte .dbCaRange{
    position:relative;
    padding:22px 22px 20px;
    border-radius:20px;
    border:1px solid var(--border);
    background:#fff;
    box-shadow:var(--shadow2);
    overflow:hidden;
}

.newcharte .dbCaRange::after{
    content:"";
    position:absolute;
    right:-45px;
    bottom:-45px;
    width:140px;
    height:140px;
    border-radius:999px;
    opacity:.12;
    pointer-events:none;
}

.newcharte .dbCaRange__top{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:14px;
}

.newcharte .dbCaRange__dot{
    width:14px;
    height:14px;
    border-radius:999px;
    flex:0 0 auto;
}

.newcharte .dbCaRange__eyebrow{
    font-size:12px;
    font-weight:1000;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.newcharte .dbCaRange__value{
    line-height:1.2;
    color:var(--text);
    font-size:18px;
    font-weight:700;
}

.newcharte .dbCaRange__value strong{
    font-size:22px;
    font-weight:1000;
    letter-spacing:-0.03em;
    white-space:nowrap;
}

.newcharte .dbCaRange__prefix,
.newcharte .dbCaRange__sep{
    font-size:15px;
    font-weight:700;
    color:var(--muted);
    margin:0 4px 0 0;
}

.newcharte .dbCaRange__sep{
    margin:0 6px;
}

.newcharte .dbCaRange__desc{
    margin-top:14px;
    font-size:13px;
    line-height:1.45;
    color:var(--muted);
    font-style:italic;
}

/* Variante basse */
.newcharte .dbCaRange--low{
    border-color:rgba(47,182,124,.22);
    background:linear-gradient(180deg, #fff 0%, var(--green_ultra_light) 100%);
}

.newcharte .dbCaRange--low .dbCaRange__dot{
    background:var(--green);
    box-shadow:0 0 0 6px rgba(47,182,124,.16);
}

.newcharte .dbCaRange--low .dbCaRange__eyebrow{
    color:var(--green_dark);
}

.newcharte .dbCaRange--low::after{
    background:var(--green);
}

/* Variante haute */
.newcharte .dbCaRange--high{
    border-color:rgba(226,85,85,.20);
    background:linear-gradient(180deg, #fff 0%, var(--alert_ultra_light) 100%);
}

.newcharte .dbCaRange--high .dbCaRange__dot{
    background:var(--alert);
    box-shadow:0 0 0 6px rgba(226,85,85,.14);
}

.newcharte .dbCaRange--high .dbCaRange__eyebrow{
    color:var(--alert_dark);
}

.newcharte .dbCaRange--high::after{
    background:var(--alert);
}

/* Responsive */
@media (max-width: 760px){
    .newcharte .dbCaRanges{
        grid-template-columns:1fr;
    }

    .newcharte .dbCaRange{
        padding:18px 16px;
    }

    .newcharte .dbCaRange__value strong{
        font-size:16px;
    }
}


















/* =========================
REPONSIVE CLASSES
========================= */
/* Ultra wide */
@media (min-width: 2000px) {
    .newcharte .dbFavGrid__50p {
        grid-template-columns: minmax(40%, 1fr) 60%;
    }
}
@media (min-width: 2200px) {
    .newcharte .dbFavGrid__50p {
        grid-template-columns: minmax(30%, 1fr) 70%;
    }
}

/* <= 1500 */
@media (max-width: 1500px) {
    .newcharte .db-topbar__search { flex-basis: 280px; }
}

/* <= 1200 */
@media (max-width: 1200px) {
    .newcharte .db-topbar__search { flex-basis: 280px; }
}

/* <= 1100 */
@media (max-width: 1100px) {
    .newcharte .dbFavGrid { grid-template-columns: 1fr; }
    .newcharte .dbFavMap { position: relative; top: auto; }
    .newcharte .dbFavMapCard__map {  }

    .newcharte .dbMagicGrid { grid-template-columns: repeat(2, 1fr); }
}

/* <= 980 */
@media (max-width: 980px) {

    .newcharte .dbFavMap {
        /*display: none;*/
    }
    .newcharte #map-route .foncierLegend {
        gap: 8px;
        padding: 8px 10px;
    }
    .newcharte #map-route .foncierLegend__item { padding: 6px 8px; }
    .newcharte #map-route .foncierLegend__txt { font-size: 12px; }

    .newcharte #map-search {
        grid-template-rows: auto 55vh 45vh;
        grid-template-columns: 1fr;
        height: 100dvh;
    }
    .newcharte #map-search > .board__action {
        grid-column: 1;
        grid-row: 1;
    }
    .newcharte #map-search > #map-results {
        grid-column: 1;
        grid-row: 2;
        border-right: 0;
        border-bottom: 1px solid rgba(0,0,0,.08);
    }
    .newcharte #map-search > #map {
        grid-column: 1;
        grid-row: 3;
    }

    .newcharte .dbFavRow {
        grid-template-columns: 1fr;
        grid-template-areas:
      "name"
      "meta"
      "actions";
        row-gap: 10px;
    }
    .newcharte .dbFavCell--name { grid-area: name; }

    .newcharte .dbFavCell--date,
    .newcharte .dbFavCell--count {
        grid-area: meta;
        border-left: 0 !important;
        padding-left: 0 !important;
        display: flex;
        gap: 10px;
        align-items: center;
        white-space: nowrap;
    }

    .newcharte .dbFavCell--actions {
        grid-area: actions;
        justify-self: start;
        white-space: normal;
    }

    .newcharte .dbFavActions {
        justify-content: flex-start;
        flex-wrap: wrap;
    }

    .newcharte .dbFavRow--head { display: none; }

    .newcharte #listings .prCard__grid { grid-template-columns: 1fr; }
    .newcharte #listings .prCol--left {
        padding-right: 0;
        border-right: 0;
        border-bottom: 1px solid rgba(15,23,42,.08);
        padding-bottom: 12px;
    }

    .newcharte .actionGrid { grid-template-columns: 1fr; }
    .newcharte .dbTerBody { grid-template-columns: 1fr; }
    .newcharte .dbTerSide { position: relative; top: auto; }
    .newcharte .dbTerMapCanvas { height: 420px; }

    .newcharte .db-topbar__search { flex-basis: 240px; }
}

/* <= 900 */
@media (max-width: 900px) {

    .newcharte #dbOverlay .dbOverlay__panel{
        width:100%;
    }


    .newcharte .dbFavBadge {
        width:20px;
        height: 20px;
        font-size:10px;
    }

    #load_favorite.p-20, #load_tsp.p-20 {
        padding:20px 10px;
    }

    #map-list.p-20 {
        padding:20px 10px;
    }
    .newcharte .subline code {
        display: flex;
        margin-bottom: 10px;
    }

    .newcharte .db-subnav__item, .newcharte .dbFavActionBtn i {
        font-size:20px;
    }
    .newcharte .dbFavActionBtn {
        width: 55px;
        justify-content: center;
    }

    .newcharte .dbFavActionBtn .picto-ia {
        width:26px;
        height:26px;
        font-size: 12px;
    }

    .newcharte .actionBtn {
        padding:10% 20px;
    }
    .newcharte .actionBtn__title {
        font-size:16px;
    }
    .newcharte.db-topbar {
        z-index:0;
    }
    .newcharte .appCard__title {
        font-size:14px;
    }
    .newcharte #listings .company-header__small .company-title {
        font-size: 19px;
    }
    .newcharte .dbHoverMenu__item{
        display: flex;
        align-items: center;
        padding:10px 0 10px 20px;
        font-size:14px;
        font-weight: 600;
    }
    .newcharte .dbHoverMenu__separator {
        display: none;
    }
    .newcharte .dbFavActionSep {display:none;}
    .newcharte .mapping .dir-person { flex-wrap: wrap; }
    .newcharte .mapping .dir-right {
        width: 100%;
        margin-left: 0;
        align-items: flex-start;
        justify-content: flex-start;
        margin-top: 8px;
    }
    .newcharte .mapping .dir-right .dir-social,
    .newcharte .mapping .dir-right .enrich-wrap {
        justify-content: flex-start;
        align-items: flex-start;
    }

    .newcharte .dbFavActionBtn span:not([class^="picto-"]) { display: none; }
    .newcharte .dbFavInbox__search { width: 100%; min-width: 0; }

    .newcharte .uxAdvPills { grid-template-columns: 1fr; }

    .newcharte .uxAdvNav {
        flex-direction: row;
        overflow: auto;
        border-right: none;
        border-bottom: 1px solid rgba(0,0,0,.08);
    }

    .newcharte .uxAdvLayout { grid-template-columns: 1fr; }
    .newcharte .dbOptions { grid-template-columns: 1fr; }
    .newcharte .dbGrid3 { grid-template-columns: 1fr; }

    .newcharte .launchFooter {
        flex-direction: column;
        align-items: stretch;
    }

    .newcharte .actionBlock { grid-column: span 12; }

    .newcharte .dir-head {
        flex-direction: column;
        align-items: stretch;
    }
    .newcharte .dir-head__search {
        width: 100%;
        max-width: none;
        min-width: 0;
    }

    .newcharte .dbFavIdentity {
        gap:6px;
    }

    .newcharte .dbFavIdentity__text .badge {
        max-width:350px;
    }

    .newcharte .solv-body { grid-template-columns: 1fr; }
    .newcharte .solv-img { max-width: 420px; }
    .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 #decideur .dir-actions {
        justify-content: flex-start;
        margin-top: -30px;

    }
    .newcharte #decideur .enrich-wrap {
        margin-top:35px;
    }

    /*.newcharte #decideur #representant_legaux .dir-actions {
        margin-top: -50px;
    }

    .newcharte #decideur #representant_legaux .enrich-wrap {
        margin-top:55px;
    }*/

    .newcharte .listable .row {
        grid-template-columns: 1fr;
        gap: 6px;
    }
    .newcharte .listable .row .v,
    .newcharte .listable .row .d {
        padding-left: 0;
        border-left: 0;
    }

    .newcharte .m-hide { display: none !important; }
    .newcharte .db-mobile { display: inline-flex; }

    .newcharte .dbFilters {display:none;}

    .newcharte #map-panel {
        position: fixed;
        top:0;
        height:100%;
    }

    .newcharte #pano.height-500 {height:250px;}
    .newcharte .popupContent.p-20, .newcharte .popupContent .p-20 {padding:10px;}


    .newcharte .listable .row .v {
        white-space:normal;
    }

    .newcharte .listable .dbFavRow.row{
        flex-wrap: wrap;
        padding: 12px;
    }

    .newcharte .listable .dbFavCell--name{
        flex:0 0 88%;
    }

    .newcharte .listable .dbFavCell--actions,.dbFavRow:has(> .dbFavCell:nth-child(2)):not(:has(> .dbFavCell:nth-child(3))) .dbFavCell--actions{
        flex:0 0 10%;
    }

    .newcharte .listable .dbFavActions{
    }

    .newcharte .dbFavName i {
        display: none;
    }

    .newcharte .listable .dbFavActionBtn,
    .newcharte .listable .dbFavIconBtn{
        max-width: 100%;
    }
    .newcharte #search_ul_listes {
        overflow: hidden;
        height: auto;
    }

    .newcharte #favorite-list.listable .dbFavCell--name, .newcharte #tsp-list.listable .dbFavCell--name {
        flex:0 0 60%;
    }
    .newcharte #favorite-list.listable .dbFavCell--actions,.newcharte #tsp-list.listable .dbFavCell--actions {
        flex:0 0 38%;
    }

    .newcharte #favorite-lists.listable .dbFavCell--name {
        flex:0 0 65%;
    }
    .newcharte #favorite-lists.listable .dbFavCell--count {
        flex:0;
    }
    .newcharte #favorite-lists.listable .dbFavCell--actions {
        flex:1 1 auto;
    }

    .newcharte #tsp-lists.listable .dbFavCell--name {
        flex:0 0 90%;
    }
    .newcharte #tsp-lists.listable .dbFavCell--count {
        flex:0;
    }
    .newcharte #tsp-lists.listable .dbFavCell--actions {
        flex:1 1 auto;
    }

}

/* <= 820 */
@media (max-width: 820px) {
    .newcharte .historyCard__head { flex-direction: column; }
    .newcharte .historyCard__actions {
        justify-content: flex-start;
        flex-wrap: wrap;
    }
    .newcharte .historyRow { grid-template-columns: 18px 130px 1fr; }

    .newcharte .dbFavSearch { flex: 1; }

    .newcharte .appCard__headTop {
        align-items: flex-start;
        gap: 10px;
        flex-wrap:wrap;
    }

    /*.appCard__headTop .appCard__title,
    .appCard__headTop .appTopActions{
        flex:0 0 100%;
        width:100%;
    }

    .appTopActions{
        margin-top:10px;
    }*/

    .newcharte .historyItem__top {
        flex-direction: column;
        align-items: stretch;
    }

    .newcharte .historyItem__actions {
        justify-content: flex-start;
        flex-wrap: wrap;
    }

    .newcharte .board__history .appContent .load_content {
        max-height: none;
        overflow: visible;
        padding-right: 0;
    }
}

/* <= 720 */
@media (max-width: 720px) {

    .newcharte .btn {
        height:28px;
        padding: 5px;
    }

    .newcharte .badge {
        padding:0 0 0 5px;
    }

    .newcharte .foncierCard__title span:last-child { max-width: 100%; }

    .newcharte #dbActPopover .dbActOverlay__panel {
        left: 0;
        top: 0;
        transform: none;
        width: 100vw;
        max-width: 100vw;
        height: 100vh;
        max-height: 100vh;
        border-radius: 0;
    }

    .newcharte .dbActLayout { grid-template-columns: 1fr; }
    .newcharte .dbActSide {  }
    .newcharte .dbActList { max-height: calc(100vh - 220px); }

    .newcharte .dbPagination {
        align-items: stretch;
    }

    .newcharte .dbPagination .pagination {
        white-space: normal;
    }

    .newcharte .dbPagination .pr-pagination-num .pagination {
        justify-content: space-between;
    }

    .newcharte .dbPagination .pr-pagination-button {
        width: 100%;
        justify-content: center;
    }

    .newcharte .db-modulebar__title { font-size: 18px; }
    .newcharte .db-subnav {
        flex-wrap: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
    }
    .newcharte .db-subnav__item {
        white-space: nowrap;
        flex: 0 0 auto;
    }

}

/* <= 640 */
@media (max-width: 640px) {
    .dbMapPanel__head { padding: 12px 12px 10px; }
    .dbMapPanel__body { padding: 10px; }

    #more_dvf .table-wrap th,
    #more_dvf .table-wrap td { font-size: 12px; }

    .newcharte .db-popover--apps {
        width: 92vw;
        padding: 12px;
    }
    .newcharte .db-popover--apps .db-apps__grid {
        grid-template-columns: 1fr;
        gap: 10px;
    }
}

/* <= 600 */
@media (max-width: 600px) {
    .newcharte .dbMagicGrid { grid-template-columns: 1fr; }
}

/* <= 520 */
@media (max-width: 520px) {
    /* Sur mobile: chips qui passent bien */
    .popupContent .ia-suggestion-btn {
        font-size: 12px !important;
        padding: 7px 9px !important;
    }

    .popup-nav button {
        padding: 8px 10px;
        font-size: 13px;
    }
    .popup-nav--close button {
        padding-left: 12px;
        padding-right: 12px;
    }

    .newcharte #listings .prNotice { align-items: flex-start; }
    .newcharte #listings .prNotice__text { white-space: normal; }

    .newcharte .enrich-history-kpis { grid-template-columns: 1fr; }
    .newcharte .enrich-history-id { max-width: 220px; }
    .newcharte .enrich-history-meta .one-line { max-width: 220px; }
}






/* ======================================================
   DECIDEUR ROW – Responsive mobile
   ====================================================== */
@media (max-width: 900px){

    .dir-row.dir-row__decideur{
        flex-wrap: wrap;
    }

    .dir-row.dir-row__decideur > .dir-col {
        flex:0 0 100%;
        max-width:100%;
    }

    .dir-row.dir-row__decideur .col-actions {
        margin-top:-50px;
    }


}


/* ===============================
   FAVORIS – responsive actions
================================ */
@media (max-width: 900px){

    .newcharte .dbFavActions{
        display:flex;
        flex-wrap:wrap;
        gap:8px;
    }

    /* actions normales en premier */
    .newcharte .dbFavActions > a,
    .newcharte .dbFavActions > .comment,
    .newcharte .dbFavActions > .dbFavDel{
        order:1;
    }

    /* enrich passe en dessous */
    .newcharte .dbFavActions .enrich-wrap{
        order:2;
        width:100%;
        display:flex;
        gap:8px;
    }

    /* supprime le séparateur qui n'a plus de sens */
    .newcharte .dbFavActions .dbFavActionSep{
        display:none;
    }

    .newcharte .listable .row .v {

    }
    .newcharte .dbFavRow > .dbFavCell {

    }

    .newcharte .dbFavCell--name{

    }

    .newcharte .dbFavCell--date{
        display: none;
    }

    .newcharte .dbFavCell--count{
        flex:0 0 50px;
        justify-content: flex-end;
    }

    .newcharte .dbFavCell--actions{
        flex:0 0 160px;
        display:flex;
        justify-content:flex-end;
    }

    .newcharte #load_tsp .dbFavCell--actions{
        flex:0 0 50px;
    }

}
