
/* Météo — informations prévisionnelles avec attribution Open-Meteo */
.weather-panel{background:#fff;border-radius:20px;border:1px solid #dce5dc;box-shadow:0 8px 22px #29452e0a;padding:23px;margin:22px 0 36px;color:#2c3e33}
.weather-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px}
.weather-head h3,.weather-head h2{font-family:Georgia,serif;color:#304d3b;margin:4px 0 0;font-size:clamp(23px,3vw,31px)}
.weather-eyebrow{display:block;font-size:11px;font-weight:850;color:#637c65;text-transform:uppercase;letter-spacing:.1em}
.weather-select{padding:10px 12px;background:#f6f8f3;border:1px solid #b9cfbc;border-radius:10px;font-size:14px;color:#304d3b;min-width:160px}
.weather-present{display:flex;align-items:center;flex-wrap:wrap;gap:16px;background:#edf2e9;border-radius:14px;padding:17px;margin-bottom:16px}
.weather-icon{font-size:38px;line-height:1.1;flex:0 0 45px}.weather-nowtemp{font-size:35px;font-weight:800;color:#253f30;line-height:1.1}.weather-summary{flex:1;min-width:150px}.weather-secondary{font-size:13px;color:#546959;margin-top:3px}.weather-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
.weather-day{background:#f7f9f4;border:1px solid #e4eae0;border-radius:11px;padding:12px 6px;text-align:center;min-width:0}
.weather-day strong{font-size:13px;display:block}.weather-day .weather-emoji{font-size:26px;display:block;margin:4px 0}.weather-day .weather-temps{font-weight:700;font-size:14px}.weather-day .weather-rain{font-size:11px;display:block;color:#617368}
.weather-bottom{margin:14px 0 0;display:flex;gap:8px 18px;flex-wrap:wrap;align-items:center;font-size:12px;color:#637467}
.weather-bottom a{color:#315c40;font-weight:650}.weather-status{font-size:14px;color:#4e6657}
.weather-action{display:inline-block;border-radius:9px;background:#304d3b;color:#fff;padding:10px 14px;font-size:13px;font-weight:700;text-decoration:none}
.weather-action:hover{background:#41674b}.weather-spinner{display:inline-block;width:12px;height:12px;border:2px solid #c9ddcb;border-top-color:#2b5434;border-radius:50%;animation:weather-spin .8s linear infinite;margin-right:8px}
@keyframes weather-spin{to{transform:rotate(360deg)}}
@media(max-width:930px){.weather-days{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:570px){.weather-panel{padding:15px;margin:14px 0 25px}.weather-days{grid-template-columns:repeat(2,minmax(0,1fr))}.weather-day{padding:10px 6px}.weather-present{gap:12px;padding:12px}.weather-nowtemp{font-size:30px}.weather-head .weather-select{width:100%}}
