.f67-wrap{ margin:16px 0; }
.f67-topbar{display:flex; justify-content:space-between; align-items:center; gap:12px; padding:10px 12px; border:1px solid rgba(0,0,0,.08); border-radius:12px; background:#fff;}
.f67-title{font-weight:800}
.f67-actions{display:flex; gap:8px; flex-wrap:wrap}

.f67-layout{display:flex; gap:12px; margin-top:10px; align-items:stretch}
.f67-left{width:360px; max-width:95vw}
.f67-mapwrap{flex:1; min-width:0}

.f67-card{background:#fff; border:1px solid rgba(0,0,0,.08); border-radius:12px; padding:12px}
.f67-card-title{font-weight:800; margin-bottom:8px}
.f67-card-subtitle{font-weight:700; margin:10px 0 6px}
.f67-muted{color:#666; font-size:12px}

#f67Form{display:flex; flex-direction:column; gap:10px}
#f67Form label{display:flex; flex-direction:column; gap:6px; font-size:13px}
#f67Form input, #f67Form select{padding:10px; border-radius:10px; border:1px solid rgba(0,0,0,.12)}
.f67-row{display:grid; grid-template-columns:1fr 1fr; gap:8px}

.f67-btn{padding:10px 10px; border-radius:10px; border:1px solid rgba(0,0,0,.12); background:#f7f7f7; cursor:pointer;}
.f67-btn.primary{background:#1f6feb; border-color:#1f6feb; color:#fff}
.f67-btn.active{outline:2px solid #1f6feb}

.f67-suggest{display:none; border:1px solid rgba(0,0,0,.12); border-radius:10px; overflow:hidden; margin-top:6px}
.f67-s-item{padding:10px; background:#fff; cursor:pointer}
.f67-s-item:hover{background:#f3f6ff}

.f67-loader{margin-top:8px; font-size:13px; color:#334155}

/* MAP + RIGHT PANEL: IMPORTANT: no overlay (flex) */
#f67MapWrap{position:relative; display:flex; width:100%; gap:12px; align-items:stretch}
#f67Map{flex:1 1 auto; min-width:0; height:520px; border-radius:12px; border:1px solid rgba(0,0,0,.08); background:#fff;}
#f67Right{flex:0 0 380px; width:380px; max-width:380px; display:none}
#f67MapWrap.has-right #f67Right{display:block}
#f67MapWrap.has-right #f67Map{height:520px}

.f67-right-list{max-height:480px; overflow:auto}

.f67-bliz{border:1px solid rgba(0,0,0,.08); border-radius:12px; padding:10px; margin-bottom:10px; background:#fff}
.f67-bliz-row{display:flex; justify-content:space-between; gap:10px; align-items:flex-start}
.f67-l{font-size:12px; color:#666; margin:10px 0 6px}
.f67-v{padding:10px; border-radius:10px; border:1px solid rgba(0,0,0,.08); background:#fafafa}
.f67-pill{font-size:12px; padding:6px 10px; border-radius:999px; border:1px solid rgba(0,0,0,.12); white-space:nowrap}
.p-red{background:#ffe8ec; border-color:#ffb3c0}
.p-yellow{background:#fff7da; border-color:#ffe08a}
.p-green{background:#e8fff1; border-color:#b8f0ce}
.p-gray{background:#eff2f7; border-color:#cbd5e1; color:#475569}
.f67-actions-row{display:flex; justify-content:space-between; gap:8px; margin-top:10px; align-items:center; flex-wrap:wrap}

.f67-toast{position:fixed; left:50%; bottom:18px; transform:translateX(-50%); background:rgba(17,26,51,.92); color:#fff; border:1px solid rgba(255,255,255,.14); padding:10px 12px; border-radius:999px; opacity:0; transition:opacity .2s ease, transform .2s ease; z-index:999999;}
.f67-toast.show{opacity:1; transform:translateX(-50%) translateY(-2px);}

/* Uploader */
.f67-uploader{border:1px dashed rgba(0,0,0,.18); border-radius:12px; padding:10px; background:#fff}
.f67-uploader input[type="file"]{display:none}
.f67-drop{border-radius:10px; padding:14px; background:#f7f7f7; cursor:pointer; text-align:center}
.f67-drop-title{font-weight:800}
.f67-drop-sub{font-size:12px; color:#666; margin-top:4px}
.f67-uploader.drag .f67-drop{outline:2px solid #1f6feb}
.f67-previews{display:flex; gap:10px; flex-wrap:wrap; margin-top:10px}
.f67-prev{position:relative; width:92px; height:92px; border-radius:12px; overflow:hidden; border:1px solid rgba(0,0,0,.08)}
.f67-prev img{width:100%; height:100%; object-fit:cover}
.f67-prev-remove{position:absolute; top:6px; right:6px; width:24px; height:24px; border-radius:999px; border:0; background:rgba(15,23,42,.75); color:#fff; cursor:pointer; line-height:24px}

/* Hover photo tooltip */
.leaflet-tooltip.f67-photo-tip{background:transparent;border:0;box-shadow:none;padding:0}
.leaflet-tooltip.f67-photo-tip:before{display:none}
.f67-tip{background:#fff;border:1px solid rgba(0,0,0,.12);border-radius:12px;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.18)}
.f67-tip img{display:block;width:160px;height:110px;object-fit:cover}

/* Colored pins (Leaflet divIcon) */
.f67-pin-wrap{background:transparent;border:0}
.f67-pin{width:18px;height:18px;border-radius:999px;background:var(--pin);border:3px solid var(--ring);box-shadow:0 6px 14px rgba(0,0,0,.18)}

/* Public stats section (independent) */
.f67-pubstats{margin-top:18px; padding:16px; border:1px solid rgba(0,0,0,.08); border-radius:14px; background:#fff; clear:both; width:100%}
.f67-pubstats-head{display:flex; align-items:flex-start; justify-content:space-between; gap:14px; flex-wrap:wrap}
.f67-pubstats h2{margin:0; font-size:20px}
.f67-pubstats-controls{display:flex; gap:10px; align-items:flex-end; flex-wrap:wrap}
.f67-pubstats-controls label{display:flex; flex-direction:column; gap:6px; font-size:13px}
.f67-pubstats-controls input,.f67-pubstats-controls select{min-width:200px; padding:9px 10px; border:1px solid rgba(0,0,0,.14); border-radius:10px}
.f67-pubstats-grid{display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:12px; margin-top:12px}
@media (max-width: 980px){
  .f67-layout{flex-direction:column}
  .f67-left{width:100%}
  #f67MapWrap{flex-direction:column}
  #f67Right{width:100%; max-width:100%}
  #f67Map{height:360px}
  .f67-pubstats-grid{grid-template-columns:1fr}
  .f67-pubstats-controls input,.f67-pubstats-controls select{min-width:160px}
}
.f67-pubstats-card{border:1px solid rgba(0,0,0,.08); border-radius:14px; padding:12px; background:#fafafa}
.f67-pubstats-card h3{margin:0 0 10px; font-size:14px}
#f67PubRanking{display:flex; flex-direction:column; gap:8px}
.f67-rank-row{display:grid; grid-template-columns:28px 1fr 60px; gap:10px; align-items:center; padding:8px 10px; border:1px solid rgba(0,0,0,.08); border-radius:12px; background:#fff}
.f67-rank-n{font-weight:800; opacity:.8}
.f67-rank-v{text-align:right; font-weight:800}

/* Hide commune field (front) but keep it in DOM for submission */
#f67Form input[name="commune"]{
  display:none !important;
}
#f67Form input[name="commune"]{
  visibility:hidden !important;
  height:0 !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
}


/* ===== Leaflet tooltip fix (avoid "thin line") ===== */
.leaflet-tooltip.f67-photo-tip{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}
.leaflet-tooltip.f67-photo-tip:before{ display:none !important; }

/* Tooltip card */
.f67-tip{
  width: 220px;
  max-width: 220px;
  background:#fff;
  border:1px solid rgba(0,0,0,.15);
  border-radius:14px;
  overflow:hidden;
  box-shadow:0 14px 36px rgba(0,0,0,.22);
}

/* Header */
.f67-tip-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:10px;
  padding:10px 10px 8px;
}
.f67-tip-commune{
  font-weight:800;
  font-size:13px;
  line-height:1.15;
  color:#111827;
}
.f67-tip-pill{
  font-size:12px;
  padding:4px 8px;
  border-radius:999px;
  border:1px solid rgba(0,0,0,.12);
  white-space:nowrap;
}

/* Image */
.f67-tip-img{
  display:block;
  width: 220px;
  height: 140px;
  object-fit: cover;
}

/* No photo */
.f67-tip-nophoto{
  padding: 12px;
  font-size:12px;
  color:#64748b;
}

/* Make sure theme doesn't break tooltip images */
.leaflet-tooltip.f67-photo-tip img{
  max-width:none !important;
}

/* Add yellow pill (treated) */
.p-yellow{ background:#fff7d6; border-color:#f0d28a; color:#7a5200; }
/* Existing colors (keep or add if missing) */
.p-red{background:#ffe8ec; border-color:#ffb3c0}
.p-green{background:#e8fff1; border-color:#b8f0ce}
.p-gray{background:#eff2f7; border-color:#cbd5e1; color:#475569}



/* Z-INDEX FIX: empêcher Leaflet (pane/controls) de passer au-dessus du menu sticky */
.f67-wrap, .f67-layout, #f67MapWrap, #f67Map { position: relative; z-index: 0; }
/* ✅ Laisser Leaflet gérer ses z-index par défaut (ne pas écraser .leaflet-pane) */

/* Ton masque */
#f67Map .leaflet-maskPane-pane{
  z-index: 350 !important;
}

/* Ton pane custom de tooltip (créé via map.createPane("tooltipTopPane")) */
#f67Map .leaflet-tooltipTopPane-pane{
  z-index: 1000 !important;
}

/* Tooltip elle-même */
.leaflet-tooltip.f67-photo-tip{
  z-index: 1100 !important;
}

#f67Map .leaflet-control-container{ z-index: 5 !important; }
#f67Map .leaflet-top, #f67Map .leaflet-bottom{ z-index: 6 !important; }

/* Tooltip (fix "thin line") */
.leaflet-tooltip.f67-photo-tip{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}
.leaflet-tooltip.f67-photo-tip:before{ display:none !important; }
.leaflet-tooltip.f67-photo-tip img{ max-width:none !important; }

/* Tooltip toujours au-dessus de tout */
.leaflet-tooltip.f67-photo-tip{
  z-index: 1000 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

.leaflet-tooltip.f67-photo-tip:before{
  display: none !important;
}

.f67-ranking-more{
  width: 100%;
  margin-top: 10px;
  justify-content: center;
}

.f67-stats-cta{
  margin-top: 12px;
  border: 1px dashed rgba(0,0,0,.18);
  border-radius: 14px;
  background: #fff;
  padding: 14px;
}
.f67-stats-cta-inner{display:flex;flex-direction:column;gap:10px}
.f67-stats-cta-title{font-weight:900;font-size:16px}
.f67-stats-cta-text{color:#475569;line-height:1.4}
.f67-stats-cta-actions{display:flex;gap:10px;flex-wrap:wrap}



/* === Fond de carte moins coloré (gris) pour faire ressortir les nids ===
#f67Map .leaflet-tile{
  filter: grayscale(1) saturate(0.5) contrast(0.95) brightness(1.05);
}

/* Optionnel : adoucir un peu les labels/traits 
#f67Map .leaflet-overlay-pane{
  filter: saturate(0.75) contrast(0.95);
}
*/
/*V11*/
