/* Sam Wind 13.3.0 — navigation fluide et surfaces exclusives
   Cette feuille est volontairement chargée en dernier afin de neutraliser
   les doublons hérités sans réécrire le moteur météo. */

:root{
  --sam-nav-ease:cubic-bezier(.22,.75,.25,1);
}

/* L’ancienne action ronde « Alertes » dupliquait l’entrée Alertes de la
   navigation principale et affichait en plus le nombre de favoris. */
.map-top-actions .header-alert-cta{display:none!important}

/* État actif cohérent entre la navigation haute et la navigation mobile. */
.map-primary-nav a,.map-primary-nav button,.map-mobile-nav a,.map-mobile-nav button{
  transition:color .16s ease,background-color .16s ease,border-color .16s ease,opacity .16s ease;
}
.map-primary-nav .active,.map-primary-nav [aria-current="page"]{color:#62e9f6!important}
.map-mobile-nav .active,.map-mobile-nav [aria-current="page"]{color:#62e9f6!important}

/* Le résumé de gauche reste utile sur la carte seule, mais ne répète plus
   les prochaines heures déjà disponibles dans la chronologie inférieure. */
.sam-clear-trend,.sam-clear-help,.sam-clear-change{display:none!important}
.sam-clear-actions{grid-template-columns:1.15fr 1fr!important}
.sam-wind-clear{
  width:min(535px,calc(100% - 112px))!important;
  transition:opacity .16s ease,visibility .16s ease,transform .2s var(--sam-nav-ease)!important;
}

/* Une seule surface contextuelle à la fois : dès qu’une fiche, une liste,
   une prévision, une alerte, le feedback ou les filtres sont ouverts, le
   résumé de carte est retiré visuellement et du parcours clavier. */
body.spot-detail-open .sam-wind-clear,
body.spot-list-open .sam-wind-clear,
body.sheet-open .sam-wind-clear,
body.modal-open .sam-wind-clear,
body.map-controls-expanded .sam-wind-clear,
html.sw-feedback-open .sam-wind-clear,
body.sw-feedback-open .sam-wind-clear,
.sam-wind-clear.sam-surface-suspended{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translateY(10px)!important;
}

/* La bannière de demande d’avis ne doit jamais se poser sur une fiche ou
   un formulaire déjà ouvert. Elle réapparaît automatiquement au retour à
   la carte, puisque le widget conserve son état interne. */
body.spot-detail-open .sw-feedback-prompt,
body.spot-list-open .sw-feedback-prompt,
body.sheet-open .sw-feedback-prompt,
body.modal-open .sw-feedback-prompt,
body.map-controls-expanded .sw-feedback-prompt{
  display:none!important;
}

/* Le panneau droit devient l’unique fiche visible sur ordinateur. */
@media(min-width:901px){
  body.spot-detail-open .map-legend-compact{opacity:.22!important}
  .spot-detail-panel{will-change:transform}
  .spot-detail-head{position:sticky!important;top:0;z-index:8}
  .spot-detail-head .sheet-close{display:grid!important}
}

/* Sur les écrans assez larges, la carte se range proprement à gauche du
   panneau au lieu d’être recouverte. */
@media(min-width:1440px){
  body.spot-detail-open .map-first-main,
  body.modal-open .map-first-main{
    width:calc(100% - var(--sw-panel-w))!important;
    transition:width .22s var(--sam-nav-ease)!important;
  }
}

/* Smartphone : l’en-tête ne répète plus Alertes, déjà accessible dans la
   barre inférieure. Le bouton Avis reste dans le menu Spots comme en 13.2. */
@media(max-width:900px){
  .map-top-actions .header-alert-cta{display:none!important}
  .map-topbar{justify-content:flex-start!important}
  .map-top-actions{margin-left:auto!important}
}

/* Téléphone étroit : deux informations courtes et un seul bouton Détails. */
@media(max-width:700px){
  .sam-clear-actions{grid-template-columns:1fr!important}
  .sam-clear-actions [data-clear-forecast]{display:none!important}
  .sam-clear-actions [data-clear-details]{display:block!important}
  body[data-sam-surface="detail"] .topbar-settings,
  body[data-sam-surface="spots"] .topbar-settings,
  body[data-sam-surface="forecast"] .topbar-settings,
  body[data-sam-surface="favorites"] .topbar-settings,
  body[data-sam-surface="alerts"] .topbar-settings{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .sam-wind-clear,.map-first-main,.map-primary-nav a,.map-primary-nav button,
  .map-mobile-nav a,.map-mobile-nav button{transition:none!important}
}
