/* =========================================================
   Carte interactive géologie / argiles
   Styles spécifiques à Geologie-Localisation.php
   ========================================================= */

.sig-card { background:#fff; border:1px solid rgba(20,35,50,.12); border-radius:18px; box-shadow:0 10px 30px rgba(20,35,50,.08); }
.sig-search { padding:22px; margin-top:22px; }
.sig-search label { display:block; font-weight:700; margin-bottom:8px; }
.sig-search-row { display:flex; gap:10px; align-items:stretch; flex-wrap:wrap; }
.sig-search input[type="search"] { flex:1 1 320px; min-height:48px; border:1px solid rgba(20,35,50,.22); border-radius:12px; padding:0 14px; font-size:1rem; }
.sig-search small { display:block; margin-top:10px; color:#64748b; }
.sig-map-grid { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:18px; align-items:start; margin-top:22px; }
.sig-map-main { display:grid; gap:16px; min-width:0; }
    #sig-map { height:380px; min-height:320px; border-radius:18px; overflow:hidden; border:1px solid rgba(20,35,50,.14); background:#edf2f7; }
#sig-map.sig-map-loading { background:#edf2f7; }
.sig-map-placeholder { min-height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; padding:24px; text-align:center; color:#334155; background:linear-gradient(135deg,#edf2f7,#f8fafc); }
.sig-map-placeholder strong { color:#0f2f4a; font-size:1.05rem; font-weight:800; }
.sig-map-placeholder span { max-width:420px; color:#64748b; line-height:1.45; }
.sig-map-error { background:#fff7ed; }
.sig-panel { padding:20px; align-self:start; }
.sig-panel h3 { margin-top:0; }
.sig-layer-list { display:grid; gap:12px; margin:18px 0; }
.sig-layer-toggle { display:flex; gap:12px; align-items:flex-start; padding:12px; border:1px solid rgba(20,35,50,.12); border-radius:12px; cursor:pointer; transition:background-color .18s ease, border-color .18s ease, box-shadow .18s ease; }
.sig-layer-toggle:hover { border-color:rgba(230,112,24,.35); background:#fffaf5; }
.sig-layer-toggle.is-active { border-color:rgba(230,112,24,.65); background:#fff7ed; box-shadow:0 0 0 3px rgba(230,112,24,.10); }
.sig-layer-toggle input[type="checkbox"] { -webkit-appearance:none; appearance:none; flex:0 0 24px; width:24px; height:24px; margin:0; border:2px solid rgba(20,35,50,.28); border-radius:7px; background:#fff; cursor:pointer; position:relative; transition:background-color .18s ease, border-color .18s ease, box-shadow .18s ease; }
.sig-layer-toggle input[type="checkbox"]:checked { background:#e67018; border-color:#e67018; box-shadow:0 0 0 3px rgba(230,112,24,.18); }
.sig-layer-toggle input[type="checkbox"]:checked::after { content:""; position:absolute; left:7px; top:3px; width:6px; height:12px; border:solid #fff; border-width:0 3px 3px 0; transform:rotate(45deg); }
.sig-layer-toggle input[type="checkbox"]:focus-visible { outline:3px solid rgba(230,112,24,.35); outline-offset:2px; }
.sig-layer-copy { display:block; min-width:0; }
.sig-layer-title { display:block; font-weight:700; color:#0f2f4a; line-height:1.25; }
.sig-layer-toggle.is-active .sig-layer-title { color:#e67018; }
.sig-layer-copy small { display:block; color:#64748b; margin-top:3px; line-height:1.35; }
.sig-mini-actions { display:grid; gap:10px; margin-top:16px; }
.sig-status { margin-top:14px; padding:12px; border-radius:12px; background:#f8fafc; color:#475569; font-size:.95rem; }
#sig-infos-terrain.is-updated .sig-result-card { border-color:rgba(230,112,24,.55); box-shadow:0 0 0 4px rgba(230,112,24,.10), 0 12px 30px rgba(20,35,50,.10); }

.sig-results-block { margin-top:0; padding:20px; border:1px solid rgba(20,35,50,.12); border-radius:18px; background:#fff; box-shadow:0 10px 30px rgba(20,35,50,.08); }
.sig-results-block h2 { margin-top:0; }
.sig-results-block .geotch-intro { margin-bottom:18px; }
.sig-results { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:18px; margin-top:22px; }
.sig-result-card { padding:18px; }
.sig-result-card h3 { margin-top:0; }
.sig-result-card dl { margin:0; }
.sig-result-card dt { font-weight:700; margin-top:10px; color:#334155; }
.sig-result-card dd { margin:4px 0 0; color:#475569; }
.sig-badge { display:inline-flex; align-items:center; gap:6px; padding:5px 10px; border-radius:999px; background:#eef2ff; color:#334155; font-size:.9rem; font-weight:700; }
.sig-warning { margin-top:18px; padding:16px 18px; border-left:4px solid #b45309; background:#fffbeb; border-radius:12px; color:#78350f; }
@media (max-width: 980px) {
    .sig-map-grid { grid-template-columns:1fr; }
    .sig-results { grid-template-columns:1fr; }
        #sig-map { height:330px; min-height:300px; }
    }
.sig-field-spaced { display:block; margin-top:12px; }


@media (max-width: 560px) {
    #sig-map { height:300px; min-height:280px; }
}
