/* RadarČeska — Railfan Mode v1.1 / Train Detail v3 */

.train-view-nav .train-tab[data-train-tone="railfan"]{
  --train-tab-accent:#466f7b;
  --train-tab-soft:#eef5f6;
  --train-tab-border:#cfdee1;
  flex-basis:168px;
  min-width:168px;
}
.train-view-nav .train-tab[data-train-tone="railfan"] .train-tab-symbol svg{
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.train-railfan-mobile-btn.is-active{
  background:#edf5f6;
  color:#355d67;
  box-shadow:inset 0 0 0 1px #cfdee1;
}
.train-railfan-mobile-btn.is-active span{
  background:#dcebed;
  color:#355d67;
}

.train-railfan-detail{
  margin-top:7px;
  padding:10px;
  border:1px solid rgba(45,84,92,.11);
  border-radius:14px;
  background:linear-gradient(180deg,#f8fbfb 0%,#f3f8f8 100%);
}
.train-railfan-detail[hidden]{display:none}
.train-railfan-detail-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:8px;
}
.train-railfan-detail-head>div{display:grid;gap:1px;min-width:0}
.train-railfan-detail-head small{
  font-size:6.2px;
  line-height:1;
  font-weight:900;
  letter-spacing:.08em;
  color:#718b90;
}
.train-railfan-detail-head strong{
  font-size:10px;
  line-height:1.15;
  color:#284b53;
}
.train-railfan-category{
  flex:0 0 auto;
  max-width:52%;
  padding:4px 7px;
  border-radius:999px;
  background:#e3eff1;
  color:#355d67;
  font-size:6.6px;
  line-height:1;
  font-weight:850;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.train-railfan-facts{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:5px;
}
.train-railfan-fact{
  min-width:0;
  min-height:36px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:7px;
  padding:7px 8px;
  border:1px solid rgba(46,84,91,.075);
  border-radius:10px;
  background:rgba(255,255,255,.72);
}
.train-railfan-fact span{
  flex:0 0 auto;
  font-size:6.1px;
  line-height:1.15;
  color:#809497;
}
.train-railfan-fact strong{
  min-width:0;
  font-size:7.8px;
  line-height:1.2;
  color:#31545b;
  text-align:right;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.train-railfan-fact.is-speed strong{font-variant-numeric:tabular-nums;color:#176f60}
.train-railfan-fact.is-vehicle strong{color:#284f5a}
.train-railfan-actions{
  display:flex;
  gap:5px;
  margin-top:7px;
}
.train-railfan-actions button{
  flex:1 1 0;
  min-height:29px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  border:1px solid #d2e1e3;
  border-radius:9px;
  background:#fff;
  color:#3e6570;
  font:inherit;
  font-size:6.7px;
  font-weight:850;
  cursor:pointer;
}
.train-railfan-actions button:hover{background:#edf5f6;border-color:#bdd2d6}
.train-railfan-actions button[hidden]{display:none}
.train-railfan-actions button span{font-size:9px;line-height:1}

body.train-railfan-mode #railInfraLabChip{
  box-shadow:0 9px 22px rgba(26,61,69,.11),inset 0 0 0 1px rgba(69,112,123,.08);
}

@media (max-width:760px){
  .train-railfan-detail{
    margin-top:4px;
    padding:7px;
    border-radius:11px;
  }
  .train-railfan-detail-head{margin-bottom:5px}
  .train-railfan-detail-head small{font-size:5.3px}
  .train-railfan-detail-head strong{font-size:8px}
  .train-railfan-category{font-size:5.5px;padding:3px 5px}
  .train-railfan-facts{gap:4px}
  .train-railfan-fact{min-height:31px;padding:5px 6px;border-radius:8px}
  .train-railfan-fact span{font-size:5.2px}
  .train-railfan-fact strong{font-size:6.8px}
  .train-railfan-actions{margin-top:5px;gap:4px}
  .train-railfan-actions button{min-height:25px;border-radius:8px;font-size:5.8px}
  .train-detail-card.is-collapsed .train-railfan-detail{display:none}
}

@media (prefers-reduced-motion:reduce){
  .train-railfan-actions button{transition:none}
}


/* RADARCESKA-TRAIN-DETAIL-v3.0.0 — Co tudy pojede */
.train-railfan-passages{
  margin-top:8px;
  padding-top:8px;
  border-top:1px solid rgba(45,84,92,.09);
}
.train-railfan-passages[hidden]{display:none}
.train-railfan-passages-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:6px;
}
.train-railfan-passages-head>div{display:grid;gap:1px;min-width:0}
.train-railfan-passages-head small{
  font-size:5.8px;
  line-height:1;
  font-weight:900;
  letter-spacing:.08em;
  color:#7b9296;
}
.train-railfan-passages-head strong{
  max-width:250px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:8.2px;
  line-height:1.2;
  color:#31545b;
}
.train-railfan-passages-head>button{
  width:25px;
  height:25px;
  flex:0 0 25px;
  border:1px solid #d5e2e4;
  border-radius:8px;
  background:#fff;
  color:#56777e;
  font:inherit;
  font-size:11px;
  font-weight:850;
  cursor:pointer;
}
.train-railfan-passages-head>button:hover{background:#edf5f6}
.train-railfan-station-tabs{
  display:flex;
  gap:4px;
  overflow-x:auto;
  padding:0 0 5px;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
}
.train-railfan-station-tabs::-webkit-scrollbar{display:none}
.train-railfan-station-tabs button{
  flex:0 0 auto;
  min-width:82px;
  max-width:145px;
  display:grid;
  gap:1px;
  padding:5px 7px;
  border:1px solid rgba(58,94,101,.10);
  border-radius:9px;
  background:rgba(255,255,255,.72);
  color:#45676e;
  text-align:left;
  cursor:pointer;
}
.train-railfan-station-tabs button span{font-size:5.1px;line-height:1;color:#82979a;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.train-railfan-station-tabs button b{font-size:6.6px;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.train-railfan-station-tabs button.is-active{background:#e5f0f1;border-color:#c8dbde;color:#305963;box-shadow:inset 0 0 0 1px rgba(70,111,123,.05)}
.train-railfan-passages-list{display:grid;gap:3px}
.train-railfan-passage-row{
  width:100%;
  min-height:38px;
  display:grid;
  grid-template-columns:40px minmax(0,1fr) auto;
  align-items:center;
  gap:7px;
  padding:5px 7px;
  border:1px solid rgba(54,91,98,.075);
  border-radius:9px;
  background:rgba(255,255,255,.76);
  color:#355a62;
  font:inherit;
  text-align:left;
  cursor:pointer;
}
.train-railfan-passage-row:hover:not(:disabled){background:#eef6f6;border-color:#cadde0}
.train-railfan-passage-row.is-loading{opacity:.55;pointer-events:none}
.train-railfan-passage-row.is-unavailable{animation:train-railfan-nudge .22s ease 2}
.train-railfan-passage-row.is-static{cursor:default}
.train-railfan-passage-time{font-size:8px;line-height:1;font-variant-numeric:tabular-nums;color:#214b55}
.train-railfan-passage-copy{display:grid;gap:2px;min-width:0}
.train-railfan-passage-copy b{font-size:6.9px;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.train-railfan-passage-copy small{font-size:5.5px;line-height:1.15;color:#829397;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.train-railfan-passage-row em{font-style:normal;font-size:5.7px;line-height:1;font-weight:850;color:#71878b;white-space:nowrap}
.train-railfan-passage-row em.is-delay{color:#b16a2d}
.train-railfan-passages-loading,.train-railfan-passages-empty{
  min-height:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:7px;
  border:1px dashed rgba(58,94,101,.12);
  border-radius:9px;
  color:#7c9296;
  font-size:6px;
  line-height:1.25;
  text-align:center;
}
.train-railfan-passages-loading i{width:7px;height:7px;border:1.5px solid #b8cccf;border-top-color:#4f7a83;border-radius:50%;animation:train-railfan-spin .7s linear infinite}
.train-railfan-passages-note{margin:4px 1px 0;font-size:5.2px;line-height:1.25;color:#8a9b9e}
.train-railfan-passages-note[hidden]{display:none}
@keyframes train-railfan-spin{to{transform:rotate(360deg)}}
@keyframes train-railfan-nudge{50%{transform:translateX(2px)}}

@media (max-width:760px){
  .train-railfan-passages{margin-top:6px;padding-top:6px}
  .train-railfan-passages-head{margin-bottom:4px}
  .train-railfan-passages-head small{font-size:4.9px}
  .train-railfan-passages-head strong{font-size:6.9px;max-width:180px}
  .train-railfan-passages-head>button{width:23px;height:23px;flex-basis:23px;font-size:9px}
  .train-railfan-station-tabs{gap:3px;padding-bottom:4px}
  .train-railfan-station-tabs button{min-width:75px;max-width:122px;padding:4px 6px;border-radius:8px}
  .train-railfan-station-tabs button span{font-size:4.5px}
  .train-railfan-station-tabs button b{font-size:5.8px}
  .train-railfan-passages-list{gap:3px}
  .train-railfan-passage-row{min-height:34px;grid-template-columns:35px minmax(0,1fr) auto;gap:5px;padding:4px 6px;border-radius:8px}
  .train-railfan-passage-time{font-size:6.8px}
  .train-railfan-passage-copy b{font-size:5.9px}
  .train-railfan-passage-copy small{font-size:4.8px}
  .train-railfan-passage-row em{font-size:5px}
  .train-railfan-passages-loading,.train-railfan-passages-empty{min-height:34px;font-size:5.1px}
  .train-railfan-passages-note{font-size:4.6px}
}

@media (prefers-reduced-motion:reduce){
  .train-railfan-passages-loading i,.train-railfan-passage-row.is-unavailable{animation:none}
}
