/* RadarČeska · Station Experience v3.0.0
   Visual hierarchy redesign on top of stable station/live APIs. */

.rs-page.rs-station-v3{
  --rs-green:#08745a;
  --rs-green-2:#11a77d;
  --rs-ink:#102f38;
  --rs-muted:#6e8084;
  --rs-line:#dce8e4;
  --rs-soft:#f6f9f8;
  --rs-soft-green:#eff8f4;
  --rs-shadow:0 12px 34px rgba(18,55,56,.045);
}

.rs-page.rs-station-v3 .rs-main{
  max-width:1220px;
}

/* HERO — compact, editorial, not dashboard-heavy */
.rs-page.rs-station-v3 .rs-hero{
  padding:30px 34px 26px;
  border:1px solid var(--rs-line);
  border-radius:24px;
  background:
    radial-gradient(circle at 92% 10%,rgba(62,204,157,.12),transparent 34%),
    linear-gradient(180deg,#fff,#fbfdfc);
  box-shadow:var(--rs-shadow);
}
.rs-page.rs-station-v3 .rs-hero h1{
  margin:4px 0 8px;
  letter-spacing:-.04em;
  line-height:.98;
}
.rs-page.rs-station-v3 .rs-hero>p{
  max-width:760px;
  margin:0 0 20px;
  color:#567075;
}
.rs-page.rs-station-v3 .rs-kpis{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:8px;
}
.rs-page.rs-station-v3 .rs-kpis>div{
  min-height:66px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:10px 13px;
  border:1px solid #e4ece9;
  border-radius:14px;
  background:#f6f9f8;
}
.rs-page.rs-station-v3 .rs-kpis span{
  font-size:10px;
  color:#637579;
}
.rs-page.rs-station-v3 .rs-kpis strong{
  margin-top:2px;
  font-size:22px;
  line-height:1;
  color:var(--rs-ink);
}

/* MAIN LIVE BLOCK — this was the biggest missing piece in 3.0.1 */
.rs-page.rs-station-v3 .rs-live-layout{
  display:grid;
  grid-template-columns:minmax(0,1.72fr) minmax(300px,.78fr);
  gap:14px;
  align-items:stretch;
}
.rs-page.rs-station-v3 .rs-card{
  border:1px solid var(--rs-line);
  border-radius:20px;
  box-shadow:var(--rs-shadow);
  background:#fff;
}
.rs-page.rs-station-v3 .rs-map-card,
.rs-page.rs-station-v3 .rs-nearby-card{
  min-height:430px;
  height:430px;
}
.rs-page.rs-station-v3 .rs-map-card{
  display:flex;
  flex-direction:column;
}
.rs-page.rs-station-v3 .rs-nearby-card{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.rs-page.rs-station-v3 .rs-section-head{
  margin-bottom:12px;
}
.rs-page.rs-station-v3 .rs-section-head h2{
  letter-spacing:-.025em;
}
.rs-page.rs-station-v3 .rs-section-head small{
  font-size:9.5px;
  color:#7e8d90;
  white-space:nowrap;
}
.rs-page.rs-station-v3 .rs-station-map{
  flex:1 1 auto;
  min-height:0;
  height:auto;
  border:1px solid #dce7e3;
  border-radius:15px;
  overflow:hidden;
  background:#f3f7f5;
}
.rs-page.rs-station-v3 .rs-map-legend{
  min-height:18px;
  margin-top:7px;
  font-size:9px;
  color:#718185;
}

/* Live-train panel: compact Flightradar-like list */
.rs-page.rs-station-v3 .rs-nearby-list{
  display:grid;
  gap:7px;
  min-height:0;
  overflow:auto;
  scrollbar-width:thin;
  padding-right:2px;
}
.rs-page.rs-station-v3 .rs-nearby-train-v3{
  min-height:58px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  padding:9px 10px;
  border:1px solid #e1e9e6;
  border-radius:12px;
  background:#fff;
  text-decoration:none;
  color:inherit;
  transition:transform .13s ease,border-color .13s ease,background-color .13s ease,box-shadow .13s ease;
}
.rs-page.rs-station-v3 .rs-nearby-train-v3:hover{
  transform:translateY(-1px);
  border-color:#c9ddd6;
  background:#fcfefd;
  box-shadow:0 6px 16px rgba(17,76,64,.055);
}
.rs-page.rs-station-v3 .rs-live-train-main{
  min-width:0;
}
.rs-page.rs-station-v3 .rs-live-train-main strong{
  display:block;
  font-size:13px;
  line-height:1.15;
  color:#12343c;
  text-decoration:none;
}
.rs-page.rs-station-v3 .rs-live-train-main small{
  display:block;
  margin-top:4px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:9.5px;
  color:#718185;
}
.rs-page.rs-station-v3 .rs-live-side{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:4px;
}
.rs-page.rs-station-v3 .rs-live-side b{
  font-size:11px;
  line-height:1;
  color:#193b42;
}
.rs-page.rs-station-v3 .rs-live-status{
  display:inline-flex;
  align-items:center;
  min-height:19px;
  padding:2px 7px;
  border-radius:999px;
  font-size:9px;
  font-weight:800;
  line-height:1;
  background:#edf3f1;
  color:#4d6569;
}
.rs-page.rs-station-v3 .rs-live-status.is-ontime{background:#e9f6ef;color:#08745a}
.rs-page.rs-station-v3 .rs-live-status.is-minor{background:#fff5dc;color:#8a6a10}
.rs-page.rs-station-v3 .rs-live-status.is-major{background:#fff0e5;color:#a15526}
.rs-page.rs-station-v3 .rs-live-status.is-critical{background:#ffe8e9;color:#a33d45}
.rs-page.rs-station-v3 .rs-live-more{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  margin-top:1px;
  border-radius:10px;
  background:var(--rs-soft-green);
  color:var(--rs-green);
  font-size:10px;
  font-weight:800;
  text-decoration:none;
}
.rs-page.rs-station-v3 .rs-live-empty-v2{
  margin:auto 0;
  display:grid;
  gap:5px;
  padding:16px;
  border:1px solid #e2ebe8;
  border-radius:13px;
  background:#f6f9f8;
}
.rs-page.rs-station-v3 .rs-live-empty-v2 strong{font-size:12px;color:#294b50}
.rs-page.rs-station-v3 .rs-live-empty-v2 span{font-size:10px;line-height:1.45;color:#748488}

/* No map coordinates: keep it useful but never giant. */
.rs-page.rs-station-v3 .rs-live-layout.is-no-map,
.rs-page.rs-station-v3 .rs-live-layout:has(.rs-map-card.is-map-empty){
  grid-template-columns:minmax(0,1fr) minmax(300px,.82fr);
}
.rs-page.rs-station-v3 .rs-map-card.is-map-empty{
  min-height:250px;
  height:250px;
}
.rs-page.rs-station-v3 .rs-map-card.is-map-empty .rs-station-map{
  min-height:150px;
}
.rs-page.rs-station-v3 .rs-map-empty{
  height:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:22px;
  text-align:center;
}
.rs-page.rs-station-v3 .rs-map-empty strong{font-size:13px;color:#294a4f}
.rs-page.rs-station-v3 .rs-map-empty span{font-size:10px;color:#76878a}
.rs-page.rs-station-v3 .rs-map-empty a{font-size:10px;font-weight:800;color:var(--rs-green);text-decoration:none}

/* Timetable blocks — cleaner hierarchy, less spreadsheet */
.rs-page.rs-station-v3 .rs-next-hour{
  position:relative;
  overflow:hidden;
}
.rs-page.rs-station-v3 .rs-next-hour::before{
  content:'';
  position:absolute;
  inset:16px auto 16px 0;
  width:3px;
  border-radius:3px;
  background:linear-gradient(#0fa77a,#73d4b6);
}
.rs-page.rs-station-v3 .rs-next-hour .rs-board{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:20px;
}
.rs-page.rs-station-v3 .rs-board-row{
  min-height:58px;
  padding-top:9px;
  padding-bottom:9px;
}
.rs-page.rs-station-v3 .rs-board-row time{
  font-size:15px;
  font-weight:850;
  color:#102f38;
}
.rs-page.rs-station-v3 .rs-train strong{
  font-size:12.5px;
  line-height:1.15;
}
.rs-page.rs-station-v3 .rs-train span{
  margin-top:2px;
  font-size:9.5px;
  color:#728286;
}
.rs-page.rs-station-v3 .rs-next-hour .rs-board-row.is-next-connection{
  background:linear-gradient(90deg,rgba(16,167,122,.075),rgba(16,167,122,0));
}
.rs-page.rs-station-v3 .rs-two{
  gap:14px;
}
.rs-page.rs-station-v3 .rs-two>.rs-card{
  min-width:0;
}

/* Kill raw/legacy anchor aesthetics inside the live card */
.rs-page.rs-station-v3 .rs-nearby-card a{
  text-decoration:none;
}

/* Mobile is purpose-built, not shrunk desktop */
@media (max-width:900px){
  .rs-page.rs-station-v3 .rs-kpis{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .rs-page.rs-station-v3 .rs-live-layout{
    grid-template-columns:1fr;
  }
  .rs-page.rs-station-v3 .rs-map-card,
  .rs-page.rs-station-v3 .rs-nearby-card{
    height:auto;
    min-height:0;
  }
  .rs-page.rs-station-v3 .rs-station-map{
    height:300px;
    min-height:300px;
  }
  .rs-page.rs-station-v3 .rs-nearby-list{
    max-height:none;
    overflow:visible;
  }
  .rs-page.rs-station-v3 .rs-next-hour .rs-board{
    grid-template-columns:1fr;
  }
}
@media (max-width:640px){
  .rs-page.rs-station-v3 .rs-main{
    padding-left:9px;
    padding-right:9px;
  }
  .rs-page.rs-station-v3 .rs-hero{
    padding:22px 17px 18px;
    border-radius:18px;
  }
  .rs-page.rs-station-v3 .rs-hero h1{
    font-size:34px;
  }
  .rs-page.rs-station-v3 .rs-kpis{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px;
  }
  .rs-page.rs-station-v3 .rs-kpis>div{
    min-height:58px;
    padding:9px 10px;
  }
  .rs-page.rs-station-v3 .rs-kpis>div:last-child{
    grid-column:1/-1;
  }
  .rs-page.rs-station-v3 .rs-station-map{
    height:250px;
    min-height:250px;
  }
  .rs-page.rs-station-v3 .rs-card{
    border-radius:16px;
  }
}
