/* JAG V2 - Carte France par régions (SVG historique fourni) */
.jag-france-map-widget{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:28px;
    width:100%;
    min-width:0;
}
.jag-france-map-widget.list-left .jag-france-map-list{order:1}
.jag-france-map-widget.list-left .jag-france-map-svg{order:2}
.jag-france-map-widget.list-right .jag-france-map-svg{order:1}
.jag-france-map-widget.list-right .jag-france-map-list{order:2}

.jag-france-map-svg{
    flex:1 1 58%;
    min-width:0;
    text-align:center;
}
.jag-france-map-svg-root{
    display:block;
    width:100%;
    height:auto;
    max-width:470px;
    margin:0 auto;
    overflow:visible;
    filter:drop-shadow(0 10px 16px rgba(63,94,10,.10));
}
.jag-map-regions .regions{
    fill:var(--jag-map-fill,#3F5E0A);
    fill-opacity:1;
    stroke:#fff;
    stroke-opacity:1;
    stroke-width:.65;
    stroke-linecap:round;
    stroke-linejoin:round;
    stroke-miterlimit:10;
    transition:fill .16s ease,filter .16s ease;
    cursor:pointer;
    outline:none;
}
.jag-map-regions .regions:hover,
.jag-map-regions .regions.is-hovered,
.jag-map-regions .regions:focus{
    fill:var(--jag-map-hover,#70B002);
    filter:brightness(1.04);
}

.jag-france-map-list{
    flex:1 1 42%;
    margin:0;
    padding:0;
    list-style:none;
    column-count:var(--jag-map-columns,2);
    column-gap:22px;
    min-width:260px;
}
.jag-france-map-list li{
    break-inside:avoid;
    margin:0;
    padding:2px 0;
}
.jag-france-map-list a{
    display:flex;
    align-items:center;
    gap:7px;
    padding:5px 7px;
    border-radius:7px;
    color:#62685e;
    text-decoration:none;
    font-size:13px;
    line-height:1.35;
}
.jag-france-map-list a:before{
    content:"";
    width:7px;
    height:7px;
    flex:0 0 7px;
    border-radius:50%;
    background:var(--jag-map-fill,#3F5E0A);
    opacity:.72;
}
.jag-france-map-list a span{flex:1}
.jag-france-map-list a small{
    color:#7c8378;
    font-size:11px;
    white-space:nowrap;
}
.jag-france-map-list a:hover,
.jag-france-map-list a:focus{
    color:#26321b;
    background:#f2f6eb;
    text-decoration:none;
}
.jag-france-map-list a:hover small,
.jag-france-map-list a:focus small{color:#3F5E0A}

.jag-france-map-tooltip{
    position:absolute;
    z-index:30;
    display:none;
    pointer-events:none;
    min-width:170px;
    padding:10px 13px;
    border:1px solid #dce3d5;
    border-radius:9px;
    background:#fff;
    box-shadow:0 10px 28px rgba(26,40,12,.16);
    text-align:center;
    color:#2f352c;
    transform:translate(-50%,-115%);
}
.jag-france-map-tooltip.is-visible{display:block}
.jag-france-map-tooltip .tx_reg_tooltip{
    display:block;
    margin-bottom:2px;
    font-size:13px;
    font-weight:800;
    color:#26321b;
}
.jag-france-map-tooltip .tx_tooltip{
    display:block;
    font-size:12px;
    color:#697065;
}
.jag-france-map-tooltip-arrow{
    position:absolute;
    left:50%;
    bottom:-7px;
    width:12px;
    height:12px;
    background:#fff;
    border-right:1px solid #dce3d5;
    border-bottom:1px solid #dce3d5;
    transform:translateX(-50%) rotate(45deg);
}

.jag-france-map-widget.map-only .jag-france-map-svg{flex-basis:100%}
.jag-home-map-widget .jag-france-map-svg-root{max-width:370px}
.jag-search-map-card{
    margin:0 0 18px;
    padding:20px;
    border:1px solid #d8dfd1;
    border-radius:14px;
    background:#fff;
    box-shadow:0 8px 24px rgba(33,52,15,.05);
}
.jag-search-map-card-header{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
    margin-bottom:16px;
}
.jag-search-map-card-header h2{margin:0 0 3px;font-size:18px}
.jag-search-map-card-header p{margin:0;color:#6b7167;font-size:13px}

.jag-filter-map-zone{background:#f7faF2}
.jag-map-zone-pill{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:10px 11px;
    border:1px solid #dce6cb;
    border-radius:8px;
    background:#fff;
}
.jag-map-zone-pill strong{color:#3F5E0A}
.jag-map-zone-pill a{color:#6c7d46;text-decoration:none;font-size:12px}
.jag-map-zone-pill a:hover{text-decoration:underline}

@media(max-width:1050px){
    .jag-france-map-widget.has-list{align-items:flex-start}
    .jag-france-map-list{min-width:220px;column-count:1}
}
@media(max-width:820px){
    .jag-france-map-widget{display:block}
    .jag-france-map-list{
        margin-top:18px;
        column-count:2!important;
        min-width:0;
    }
    .jag-france-map-widget.list-left .jag-france-map-list{
        margin-top:0;
        margin-bottom:18px;
    }
    .jag-france-map-svg-root{max-width:430px}
}
@media(max-width:560px){
    .jag-france-map-list{column-count:1!important}
    .jag-france-map-tooltip{display:none!important}
    .jag-map-regions .regions{stroke-width:.9}
}
