#map{
  width:100%;
  height:420px;
}
.list-group-item .meta{
  font-size: 0.85rem;
  color: #6c757d;
}

.loc-wrap{ position: relative; }
.loc-suggestions{
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + 4px);
  z-index: 1000;
  max-height: 280px;
  overflow: auto;
  border-radius: 14px;
  box-shadow: 0 10px 30px rgba(0,0,0,.12);
}

.hero{
  background: radial-gradient(1200px 400px at 10% 10%, rgba(13,110,253,.18), transparent 60%),
              radial-gradient(900px 300px at 90% 20%, rgba(25,135,84,.18), transparent 55%),
              linear-gradient(180deg, #ffffff, #f8f9fa);
}

/* Mobile responsiveness tweaks */
@media (max-width: 576px){
  #map{ height: 320px; }
  .map-actions{ flex-wrap: wrap; }
  .map-actions .btn{ flex: 1 1 auto; }
}
@media (min-width: 577px) and (max-width: 992px){
  #map{ height: 380px; }
}

/* İstasyon listesine otomatik kaydırma sonrası kısa vurgu */
#stationResults.station-highlight{
  outline: 3px solid rgba(25,135,84,.35);
  outline-offset: 6px;
  border-radius: 14px;
  animation: stationPulse 1.2s ease-in-out;
}
@keyframes stationPulse{
  0%{ transform: translateY(0); }
  30%{ transform: translateY(-2px); }
  100%{ transform: translateY(0); }
}

/* --- V10: Rota üzerindeki istasyonlar için "E" rozeti (harita işareti) --- */
.e-station-icon{ background: transparent; border: none; }
.e-badge{
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: #0bbf4a;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial;
  box-shadow: 0 6px 18px rgba(0,0,0,.25);
  border: 2px solid rgba(255,255,255,.92);
}

/* --- V13: Üst duyuru bandı (marquee) --- */
.announce-wrap{
  border-radius: 16px;
  background: rgba(13,110,253,.08);
  border: 1px solid rgba(13,110,253,.22);
  padding: 12px 12px 10px;
}
.announce-head{ margin-bottom: 8px; }
.announce-pill{
  font-weight: 800;
  letter-spacing: .7px;
  font-size: .72rem;
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(13,110,253,.15);
  color: #0d6efd;
}
.announce-marquee{
  position: relative;
  overflow: hidden;
  border-radius: 12px;
  background: rgba(255,255,255,.65);
  border: 1px solid rgba(0,0,0,.06);
  padding: 8px 10px;
}
.announce-track{
  display: inline-block;
  white-space: nowrap;
  will-change: transform;
    /* v14: Daha yavaş kayan yazı */
  animation: announceMarquee 45s linear infinite;
}
.announce-marquee:hover .announce-track{ animation-play-state: paused; }
.announce-item{ margin-right: 28px; }
.announce-dot{ opacity: .45; margin: 0 10px; }
.announce-foot{ opacity: .9; }

@keyframes announceMarquee{
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}

@media (max-width: 768px){
  .duyuru-section{
    order: 999;
  }
}
