/* styles/views/landing-map.css — extrait de styles.css L1578-L1689. Landing map (Leaflet) V2. */

/* ====================== LANDING MAP + OVERLAYS ======================== */
/* La view-landing n'a plus de padding : la map prend tout l'écran */
#view-landing.active{
  display:block;
  padding:0;
  position:relative;
  overflow:hidden;
  min-height:100vh;min-height:100dvh;
}

/* Carte Leaflet en fond */
.landing-map{
  position:absolute; inset:0;
  z-index:0;
  background:var(--bg-deep, #0a0a0a);
}
/* Leaflet DOM inherit pour survoler avec les overlays */
.landing-map .leaflet-container{ background:transparent; font-family:inherit; }
.leaflet-popup-content-wrapper,
.landing-map-tip{
  background:var(--panel) !important;
  color:var(--fg) !important;
  border:1px solid var(--border) !important;
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.06em;
  padding:4px 8px;
  border-radius:6px;
  box-shadow:0 4px 12px rgba(0,0,0,.3);
}
.landing-map-tip.station-tip{
  padding:6px 10px;
  text-align:left;
}
.landing-map-tip.station-tip .tip-name{
  font-family:var(--sans, inherit);
  font-size:13px; font-weight:600; letter-spacing:0;
  margin-bottom:4px;
}
.landing-map-tip.station-tip .tip-chips{
  display:flex; flex-wrap:wrap; gap:4px;
  justify-content:center; align-items:center;
}
.landing-map-tip.station-tip .tip-name{
  text-align:center;
}
.landing-map-tip.station-tip .tip-chip{
  display:inline-flex; align-items:center; justify-content:center;
  width:22px; height:22px; padding:0;
  font-family:var(--mono); font-size:10px; font-weight:700;
  letter-spacing:0;
  line-height:1;
}
.landing-map-tip.station-tip .tip-chip.tip-chip-metro{ border-radius:50%; }
.landing-map-tip.station-tip .tip-chip.tip-chip-rer{   border-radius:5px; }

/* Thème-toggle survole la map en haut à droite */
.landing-theme-toggle{
  position:absolute; top:16px; right:16px;
  z-index:5;
}
/* (Zoom map landing : stylé dans le bloc CHROME UNIFIÉ en fin de fichier) */

/* Bottom-left : modes verticalement alignés */
.landing-modes{
  position:absolute; left:24px; bottom:24px;
  z-index:4;
  display:flex; flex-direction:column; gap:10px;
  min-width:280px;
}
.landing-modes .mode-btn{
  position:relative;
  display:flex; align-items:center; gap:14px;
  padding:14px 20px;
  background:color-mix(in srgb, var(--panel) 92%, transparent);
  backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
  border:1px solid color-mix(in srgb, var(--accent) 28%, var(--border-strong));
  border-radius:var(--r-card);
  color:var(--fg); cursor:pointer;
  font-family:var(--sans); text-align:left;
  transition:border-color .18s ease, transform .15s ease, box-shadow .25s ease, background .2s ease;
  /* Légère lueur néon persistente pour signaler "je suis un bouton de jeu" */
  box-shadow:
    var(--sh-card),
    0 0 0 1px color-mix(in srgb, var(--accent) 8%, transparent),
    0 0 22px -6px color-mix(in srgb, var(--accent) 35%, transparent);
}
.landing-modes .mode-btn::after{
  content:"";
  position:absolute;inset:0;
  border-radius:inherit;pointer-events:none;
  background:linear-gradient(90deg,
    color-mix(in srgb, var(--accent) 10%, transparent) 0%,
    transparent 60%);
  opacity:.55;
  transition:opacity .25s ease;
}
.landing-modes .mode-btn:hover{
  border-color:var(--accent);
  transform:translateY(-2px);
  background:color-mix(in srgb, var(--accent) 6%, var(--panel));
  box-shadow:
    var(--sh-card),
    0 0 0 1px var(--accent),
    0 0 40px -4px color-mix(in srgb, var(--accent) 65%, transparent);
}
.landing-modes .mode-btn:hover::after{ opacity:1; }
.landing-modes .mode-btn:hover .mode-btn-icon{
  background:color-mix(in srgb, var(--accent) 28%, var(--panel-2));
  box-shadow:0 0 16px -2px var(--accent);
}
