body:has(.tp-map) .site-header,body:has(.tp-map) .main-navigation,body:has(.tp-map) .site-footer,body:has(.tp-map) .widget-area,body:has(.tp-map) .generate-back-to-top{display:none}
html:has(.tp-map),body:has(.tp-map){overflow:hidden}
.tp-map{position:fixed;inset:0;z-index:10000;display:grid;grid-template-columns:340px minmax(0,1fr);background:#f7f5ef;color:#153d32;font-family:Arial,Helvetica,sans-serif;isolation:isolate}
body.admin-bar .tp-map{top:32px}
.tp-map *{box-sizing:border-box}
.tp-sidebar{padding:24px;overflow-y:auto;min-height:0;border-right:1px solid #dce4de}
.tp-map .tp-back{color:#155840;text-decoration:none;font-size:14px;font-weight:700}
.tp-map .tp-eyebrow{font-size:10px;font-weight:700;letter-spacing:1.4px;color:#217a50;margin:26px 0 12px}
.tp-map h1{font-size:27px;line-height:1.15;letter-spacing:-.7px;margin:0 0 14px;color:#153d32;font-weight:700}
.tp-map .tp-intro{font-size:14px;line-height:1.55;color:#596960}
.tp-map .tp-search,.tp-map .tp-reset{width:100%;padding:12px;border-radius:9px;font-size:14px;line-height:1.4;cursor:pointer}
.tp-map .tp-search{background:#217a50;color:#fff;border:0}
.tp-map .tp-controls{display:grid;gap:9px;margin:20px 0}
.tp-map label{font-size:13px;font-weight:700;margin-top:5px}
.tp-map select{width:100%;min-width:0;padding:10px;background:#fff;border:1px solid #cfd8d2;border-radius:8px;color:#153d32;font-size:14px}
.tp-map .tp-reset{background:#edf5ef;border:1px solid #cfd8d2;color:#153d32;margin-top:8px}
.tp-map .tp-count{font-weight:700;font-size:14px;margin:14px 0 8px}
.tp-map .tp-message,.tp-map .tp-source{font-size:12px;line-height:1.5;color:#596960}
.tp-map .tp-source{margin-top:20px;padding-top:16px;border-top:1px solid #dce4de}
.tp-map summary{cursor:pointer;color:#153d32;font-weight:700}
.tp-map .tp-source a{color:#217a50}
#tp-leaflet{width:100%;height:100%;min-height:0;min-width:0;z-index:0}
.tp-legend{display:flex;flex-wrap:wrap;gap:10px;font-size:12px;margin-top:15px}.tp-legend span{display:flex;align-items:center;gap:5px}.tp-dot{display:inline-block;width:10px;height:10px;border-radius:50%}.tp-dot.depot,.tp-marker.depot{background:#217a50}.tp-dot.agence,.tp-marker.agence{background:#28649b}.tp-dot.centre,.tp-marker.centre{background:#855c9e}.tp-dot.specialiste,.tp-marker.specialiste{background:#9c5928}.tp-marker{border:2px solid white;border-radius:50%;box-shadow:0 2px 5px #0005;color:white;display:flex;align-items:center;justify-content:center;font:bold 13px Arial}.tp-map .leaflet-popup-content{font:13px/1.45 Arial;max-height:320px;overflow-y:auto}.tp-map .leaflet-popup-content p{margin:9px 0}.tp-map .leaflet-popup-content a{color:#155840;text-decoration:underline}
.tp-map .trivior-location-picker{padding:12px;margin:12px 0;background:white}
.tp-map .trivior-location-picker h3{font-size:16px;padding-right:75px}
.tp-map .trivior-picker-fields{grid-template-columns:minmax(0,1fr) 44px;gap:8px}
.tp-map .trivior-picker-fields input{grid-column:1/-1}
.tp-map .trivior-picker-close{top:12px;right:12px}
.tp-map :focus-visible{outline:3px solid #217a50;outline-offset:3px}
@media(max-width:782px){body.admin-bar .tp-map{top:46px}}
@media(max-width:760px){.tp-map{grid-template-columns:1fr;grid-template-rows:max-content minmax(420px,1fr);overflow-y:auto}.tp-sidebar{padding:16px;overflow:visible;border-right:0;border-bottom:1px solid #dce4de}.tp-map h1{font-size:23px}.tp-map h1 br{display:none}.tp-map .tp-eyebrow{margin:14px 0 8px}.tp-map .tp-controls{grid-template-columns:1fr 1fr;margin:12px 0;column-gap:12px}.tp-map label[for=tp-service]{grid-column:1;grid-row:1}.tp-map label[for=tp-waste]{grid-column:2;grid-row:1}.tp-map #tp-service{grid-column:1;grid-row:2}.tp-map #tp-waste{grid-column:2;grid-row:2}.tp-map .tp-reset{grid-column:1/-1}.tp-map .tp-source{margin-top:12px;padding-top:10px}.tp-map .trivior-picker-fields{grid-template-columns:minmax(0,1fr) auto 44px}.tp-map .trivior-picker-fields input{grid-column:auto}}
@media(max-width:420px){.tp-map .trivior-picker-fields{grid-template-columns:minmax(0,1fr) 44px}.tp-map .trivior-picker-fields input{grid-column:1/-1}}
@media(max-width:760px){.tp-map label[for=tp-type],.tp-map #tp-type{grid-column:1/-1}}
@media(max-width:760px){.tp-map label[for=tp-department]{grid-column:1;grid-row:3}.tp-map #tp-department{grid-column:1;grid-row:4}.tp-map label[for=tp-type]{grid-column:2;grid-row:3}.tp-map #tp-type{grid-column:2;grid-row:4}}
