.lc-meteo-map{--lcm-blue:#1d4ed8;--lcm-border:#d8dee9;position:relative;width:100%;background:linear-gradient(180deg,#eef7ff,#fff);border:1px solid var(--lcm-border);border-radius:14px;box-sizing:border-box;overflow:hidden}.lc-meteo-map__canvas{position:relative;width:100%;aspect-ratio:907 / 1000;height:auto;min-height:0;max-height:none;overflow:hidden;background:linear-gradient(180deg,#eef7ff,#fff)}.lc-meteo-map__geojson{position:absolute;inset:0;width:100%;height:100%;overflow:hidden}.lc-departments-svg{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain}.lc-departments-svg [id^="dep_"]{outline:none}.lc-department__shape{cursor:pointer}.lc-department__shape{stroke:#fff;stroke-width:1.15;vector-effect:non-scaling-stroke;transition:filter .12s,stroke-width .12s}.lc-department__shape.is-hovered{stroke:#111827;stroke-width:2.4;filter:brightness(.96)}.lc-department.is-hovered .lc-department__shape{stroke:#111827;stroke-width:2.4;filter:brightness(.96)}.lc-department__temp{font-size:18px;font-weight:800;text-anchor:middle;dominant-baseline:middle;fill:#111827;pointer-events:none;paint-order:stroke;stroke:#fff;stroke-width:2.5px;stroke-linejoin:round}.lc-meteo-department-tooltip{position:absolute;z-index:10;pointer-events:none;background:#111827;color:#fff;padding:7px 9px;border-radius:6px;font-size:12px;line-height:1.35;box-shadow:0 3px 12px #0004;white-space:nowrap}.lc-meteo-map__geo-error{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#b91c1c;background:#fff8}.lc-meteo-map__canvas{background:linear-gradient(180deg,#eef7ff,#fff)}.lc-meteo-map__markers{position:absolute;left:4.65%;top:8px;width:90.7%;height:calc(100% - 16px);pointer-events:none}.lc-meteo-marker{position:absolute;transform:translate(-50%,-50%);z-index:3;cursor:default}.lc-meteo-marker__dot{width:28px;height:28px;border-radius:50%;border:3px solid #fff;box-shadow:0 2px 7px #0004;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#111;background:#fff}.lc-meteo-marker__label{position:absolute;left:50%;top:31px;transform:translateX(-50%);white-space:nowrap;background:#fff;border:1px solid #d7dce4;border-radius:5px;padding:2px 5px;font-size:11px;box-shadow:0 1px 4px #0002}.lc-meteo-marker__temp{font-size:11px}.lc-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:4px}.lc-dot--cold{background:#60a5fa}.lc-dot--mild{background:#86efac}.lc-dot--warm{background:#facc15}.lc-dot--hot{background:#f87171}.lc-meteo-map__legend{display:flex;gap:14px;flex-wrap:wrap;padding:8px 14px;font-size:12px;border-top:1px solid var(--lcm-border);background:#fff}.lc-meteo-map__updated{padding:6px 14px;font-size:11px;color:#64748b;background:#fff}.lc-meteo-map__loading{position:absolute;z-index:5;left:50%;top:50%;transform:translate(-50%,-50%);background:#fff;padding:10px 14px;border-radius:8px;box-shadow:0 3px 12px #0002;font-size:14px}.lc-meteo-map.is-loaded .lc-meteo-map__loading{display:none}.lc-meteo-attribution{padding:5px 10px;font-size:10px;color:#64748b;background:#fff}.lc-meteo-attribution a{color:inherit}.lc-meteo-ticker{width:100%;overflow:hidden;background:#111827;color:#fff}.lc-meteo-ticker__viewport{overflow:hidden;width:100%}.lc-meteo-ticker__track{display:inline-flex;min-width:max-content;align-items:center;gap:0;animation:lc-meteo-scroll 38s linear infinite}.lc-meteo-ticker:hover .lc-meteo-ticker__track{animation-play-state:paused}.lc-meteo-ticker__item{display:inline-flex;align-items:center;padding:8px 18px;font-size:14px;gap:7px}.lc-meteo-ticker__item+.lc-meteo-ticker__item{border-left:1px solid #ffffff33}.lc-meteo-ticker__temp{font-weight:700}.lc-meteo-ticker__city{font-weight:600}.lc-meteo-ticker__minmax{font-size:11px;color:#cbd5e1}.lc-meteo-ticker__loading{padding:9px 15px;font-size:13px}@keyframes lc-meteo-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}@media(prefers-reduced-motion:reduce){.lc-meteo-ticker__track{animation:none}.lc-meteo-ticker__track{transform:none!important}}.lc-department__code,.lc-department__temp{font-size:18px;font-weight:800;text-anchor:middle;dominant-baseline:middle;fill:#111827;pointer-events:none;paint-order:stroke;stroke:#fff;stroke-width:2.5px;stroke-linejoin:round}.lc-meteo-map__legend{gap:8px;font-size:11px}.lc-meteo-marker__label{font-size:9px}.lc-meteo-marker__dot{width:24px;height:24px}.lc-meteo-map__legend{gap:8px;font-size:11px}.lc-meteo-marker__label{font-size:9px}.lc-meteo-marker__dot{width:24px;height:24px}.lc-meteo-map__legend{gap:8px;font-size:11px}.lc-city-marker{pointer-events:none}.lc-city-marker circle{fill:#fff;stroke:#111827;stroke-width:1.5}.lc-city-marker__icon{font-size:15px;text-anchor:middle;dominant-baseline:auto}.lc-city-marker__label{font-size:10px;font-weight:700;fill:#111827;paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round}
.lc-meteo-map__error{position:absolute;z-index:6;left:50%;top:calc(50% + 55px);transform:translate(-50%,-50%);max-width:min(90%,560px);padding:10px 14px;background:#fff7ed;border:1px solid #fdba74;color:#9a3412;border-radius:8px;box-shadow:0 3px 12px #0002;font-size:12px;text-align:center}.lc-meteo-map__error+.lc-meteo-map__canvas{opacity:.9}

.lc-meteo-map__markers{display:none!important}

.lc-department__icon{font-size:19px;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;text-anchor:middle;dominant-baseline:middle;pointer-events:none;paint-order:stroke;stroke:#fff;stroke-width:2px;stroke-linejoin:round}.lc-department__temp{letter-spacing:-.3px}.lc-meteo-map__canvas{height:clamp(700px,132vw,1180px)}
.lc-department__icon{font-size:16px}.lc-department__temp{font-size:15px;stroke-width:2px}

/* Icônes météo vectorielles intégrées au SVG : pas d'emoji, donc affichage fiable. */
.lc-department__weather-icon{overflow:visible}
.weather-sun__disc{fill:#facc15;stroke:#f59e0b;stroke-width:1}
.weather-sun__ray{stroke:#f59e0b;stroke-width:2;stroke-linecap:round}
.weather-cloud__body{fill:#f8fafc;stroke:#94a3b8;stroke-width:1.2}
.weather-rain{stroke:#3b82f6;stroke-width:2;stroke-linecap:round}
.weather-snow{fill:#3b82f6}
.weather-lightning{fill:#f59e0b;stroke:#d97706;stroke-width:.7}
.weather-fog{stroke:#64748b;stroke-width:2;stroke-linecap:round}
.lc-department__temp{font-size:22px;font-weight:900;fill:#111827;paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round}
.weather-sun__ray{stroke-width:1.7}.weather-rain{stroke-width:1.8}

/* V1.7 — responsive map */
.lc-meteo-map svg { overflow: visible; }
@media (max-width: 900px) {
    .lc-meteo-map { border-radius: 10px; }
}
@media (max-width: 600px) {
    .lc-meteo-map { border-radius: 8px; }
    .lc-meteo-map__canvas { aspect-ratio: 907 / 1000; }
    .lc-meteo-map__legend { font-size: 10px; gap: 6px; padding: 6px 8px; }
}
@media (max-width: 420px) {
    .lc-meteo-map__legend { display: none; }
}
