/* Radar Česka · v0.4.3.11i · inline mobile timeline hotfix
 * Desktop remains compact. Mobile uses the site's EXISTING bottom weather nav.
 * This file deliberately does not create any second bottom navigation.
 */
.timeline-shell.timeline-pro{
  isolation:isolate;
  pointer-events:auto!important;
  z-index:42!important;
  position:absolute!important;
  left:18px!important;
  right:18px!important;
  bottom:max(12px,env(safe-area-inset-bottom))!important;
  width:auto!important;
  height:auto!important;
  min-height:68px!important;
  box-sizing:border-box!important;
  overflow:visible!important;
  padding:0!important;
  border:1px solid rgba(20,71,78,.11)!important;
  border-radius:17px!important;
  background:rgba(255,255,255,.978)!important;
  box-shadow:0 10px 28px rgba(20,55,63,.13),0 2px 7px rgba(20,55,63,.05)!important;
  backdrop-filter:blur(20px) saturate(138%);
  -webkit-backdrop-filter:blur(20px) saturate(138%);
}
.timeline-shell .timeline-main{
  position:relative;z-index:2;pointer-events:auto;
  display:grid!important;
  grid-template-columns:minmax(154px,182px) minmax(340px,1fr) auto!important;
  align-items:center!important;
  gap:14px!important;
  min-height:66px!important;
  padding:7px 12px 10px!important;
  box-sizing:border-box!important;
}
.timeline-shell .rc-timeline-primary{
  min-width:0;display:grid;grid-template-columns:46px minmax(0,1fr);align-items:center;gap:10px;
}
.timeline-shell .rc-timeline-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;min-width:max-content}
.timeline-shell .play-btn{
  position:relative;z-index:8;width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;padding:0!important;
  display:grid!important;place-items:center!important;border:1px solid rgba(9,120,102,.25)!important;border-radius:50%!important;
  background:linear-gradient(145deg,#16b199,#087d70)!important;color:#fff!important;
  box-shadow:0 6px 18px rgba(8,104,91,.22),0 0 0 3px rgba(239,251,248,.90)!important;
  cursor:pointer!important;pointer-events:auto!important;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease!important;
}
.timeline-shell .play-btn:hover{transform:translateY(-1px) scale(1.02);box-shadow:0 8px 21px rgba(8,104,91,.27),0 0 0 3px rgba(239,251,248,.98)!important}
.timeline-shell .play-btn:active{transform:scale(.96)}
.timeline-shell .play-btn:focus-visible{outline:3px solid rgba(15,177,153,.28);outline-offset:3px}
.timeline-shell .play-btn.is-playing{background:linear-gradient(145deg,#0c907f,#086b61)!important}
.timeline-shell .play-btn svg{width:20px!important;height:20px!important;fill:currentColor!important;pointer-events:none}
.timeline-shell .timeline-now{min-width:0!important;padding:0!important;display:grid!important;align-content:center!important;gap:2px!important}
.timeline-shell .timeline-kind{display:block!important;color:#637f86!important;font-size:7px!important;line-height:1.1!important;font-weight:900!important;letter-spacing:.065em!important;text-transform:uppercase!important;white-space:normal!important}
.timeline-shell .timeline-now strong,.timeline-shell #frameTime{color:#153a42!important;font-size:12px!important;line-height:1.05!important;font-weight:900!important;letter-spacing:-.02em!important;white-space:nowrap!important}
.timeline-shell .slider-wrap{
  position:relative;z-index:5;pointer-events:auto!important;min-width:0!important;min-height:42px!important;
  display:block!important;visibility:visible!important;opacity:1!important;overflow:visible!important;
  padding:1px 2px 0!important;box-sizing:border-box!important;
}
.timeline-shell .radar-timeline{display:block!important;visibility:visible!important;opacity:1!important;pointer-events:none!important}
.timeline-shell .timeline-rail{height:3px!important;background:#d4e2e5!important}
.timeline-shell .timeline-history-progress,.timeline-shell .timeline-forecast-progress{height:4px!important}
.timeline-shell .timeline-hit-input{z-index:7!important;pointer-events:auto!important;cursor:ew-resize!important;touch-action:none!important;-webkit-tap-highlight-color:transparent}
.timeline-shell .timeline-ticks{margin-top:0!important;min-height:14px!important;display:block!important;visibility:visible!important;opacity:1!important}
.timeline-shell .timeline-ticks span{font-size:6.8px!important;font-weight:800!important;letter-spacing:-.01em!important}
.timeline-shell #forecastLeadBtn,.timeline-shell #leadBadge{
  position:relative;z-index:8;pointer-events:auto!important;touch-action:manipulation;min-width:58px!important;height:36px!important;padding:0 9px!important;
  display:grid!important;place-items:center!important;border-radius:11px!important;font-size:8.5px!important;line-height:1!important;font-weight:900!important;cursor:pointer!important;box-sizing:border-box!important;
}
.timeline-shell #forecastLeadBtn{color:#6758cb!important;border:1px solid rgba(112,91,215,.19)!important;background:#f7f5ff!important}
.timeline-shell #leadBadge{color:#087b6b!important;border:1px solid rgba(8,151,128,.22)!important;background:#f1fbf8!important}
.timeline-shell .timeline-credit-inline{position:absolute!important;right:12px!important;bottom:3px!important;z-index:4!important;margin:0!important;padding:0!important;max-width:48vw!important;color:#a0afb3!important;font-size:5.6px!important;line-height:1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;pointer-events:none!important}
.timeline-shell.rc-control-active{box-shadow:0 12px 31px rgba(20,55,63,.16),0 0 0 2px rgba(13,171,145,.08)!important}
.app-shell[data-mode="weather"] .map-actions{bottom:calc(90px + max(10px,env(safe-area-inset-bottom)))!important}

/* Remove every artefact from 11g's duplicate nav/quick buttons. */
.rc-mobile-weather-nav,.rc-mobile-leads{display:none!important}

@media(max-width:980px) and (min-width:701px){
  .timeline-shell.timeline-pro{left:11px!important;right:11px!important;bottom:max(10px,env(safe-area-inset-bottom))!important;min-height:64px!important}
  .timeline-shell .timeline-main{grid-template-columns:minmax(128px,150px) minmax(220px,1fr) auto!important;gap:9px!important;padding:6px 9px 9px!important;min-height:62px!important}
  .timeline-shell .rc-timeline-primary{grid-template-columns:42px minmax(0,1fr);gap:8px}
  .timeline-shell .play-btn{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important}
  .timeline-shell .timeline-kind{font-size:6.5px!important}.timeline-shell .timeline-now strong,.timeline-shell #frameTime{font-size:11px!important}
  .timeline-shell #forecastLeadBtn,.timeline-shell #leadBadge{min-width:54px!important;height:34px!important;padding:0 8px!important;font-size:8px!important}
  .app-shell[data-mode="weather"] .map-actions{bottom:calc(86px + max(10px,env(safe-area-inset-bottom)))!important}
}

/* Mobile: use existing .mobile-weather-nav underneath. Timeline itself = two clean rows. */
@media(max-width:700px){
  :root{--rc-existing-weather-nav-h:63px;--rc-mobile-timeline-h:93px}
  .timeline-shell.timeline-pro{
    left:8px!important;right:8px!important;
    bottom:calc(var(--rc-existing-weather-nav-h) + max(6px,env(safe-area-inset-bottom)))!important;
    min-height:0!important;height:auto!important;border-radius:15px!important;
    box-shadow:0 9px 24px rgba(20,55,63,.14),0 2px 5px rgba(20,55,63,.05)!important;
  }
  .timeline-shell .timeline-main{
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:"primary actions" "slider slider"!important;
    align-items:center!important;gap:3px 8px!important;min-height:0!important;
    padding:7px 9px 8px!important;
  }
  .timeline-shell .rc-timeline-primary{grid-area:primary;grid-template-columns:40px minmax(0,1fr);gap:8px;min-width:0}
  .timeline-shell .rc-timeline-actions{grid-area:actions;gap:5px;align-self:center}
  .timeline-shell .slider-wrap{
    grid-area:slider!important;display:block!important;visibility:visible!important;opacity:1!important;
    width:100%!important;height:38px!important;min-height:38px!important;overflow:visible!important;
    padding:0 2px 13px!important;margin:0!important;
  }
  .timeline-shell .radar-timeline{
    display:block!important;visibility:visible!important;opacity:1!important;
    left:2px!important;right:2px!important;top:9px!important;height:20px!important;
  }
  .timeline-shell .timeline-rail,.timeline-shell .timeline-zone,.timeline-shell .timeline-progress{display:block!important;visibility:visible!important;opacity:1!important}
  .timeline-shell .timeline-rail{top:8px!important;height:3px!important;background:#cfe0e3!important}
  .timeline-shell .timeline-history-progress,.timeline-shell .timeline-forecast-progress{top:7px!important;height:4px!important}
  .timeline-shell .timeline-now-marker{display:block!important;visibility:visible!important;opacity:1!important}
  .timeline-shell .timeline-cursor{display:block!important;visibility:visible!important;opacity:1!important}
  .timeline-shell .timeline-hit-input{display:block!important;visibility:visible!important;top:0!important;height:28px!important;width:100%!important;opacity:0!important}
  .timeline-shell .timeline-ticks{
    display:block!important;visibility:visible!important;opacity:1!important;
    position:absolute!important;left:2px!important;right:2px!important;bottom:0!important;height:12px!important;
  }
  /* Existing app.css hides most mobile tick labels; 11h intentionally brings them back. */
  .timeline-shell .timeline-ticks span{
    display:block!important;visibility:visible!important;opacity:1!important;
    font-size:6.25px!important;line-height:1!important;font-weight:820!important;color:#748b92!important;
    white-space:nowrap!important;
  }
  .timeline-shell .timeline-ticks span.is-now{color:#078f78!important;font-weight:950!important}
  .timeline-shell .timeline-ticks span.is-forecast{color:#4f87ae!important}
  .timeline-shell .play-btn{width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;box-shadow:0 5px 14px rgba(9,101,89,.20),0 0 0 3px rgba(239,251,248,.9)!important}
  .timeline-shell .play-btn svg{width:18px!important;height:18px!important}
  .timeline-shell .timeline-now{display:grid!important;gap:1px!important}
  .timeline-shell .timeline-kind{display:block!important;font-size:6.1px!important;letter-spacing:.045em!important;max-width:155px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .timeline-shell .timeline-now strong,.timeline-shell #frameTime{font-size:10.5px!important}
  .timeline-shell #forecastLeadBtn{display:none!important}
  .timeline-shell #leadBadge{display:grid!important;min-width:48px!important;height:34px!important;padding:0 7px!important;border-radius:10px!important;font-size:8px!important}
  .timeline-shell .timeline-credit-inline{display:none!important}
  .app-shell[data-mode="weather"]:not(.has-place) .map-actions{
    bottom:calc(var(--rc-existing-weather-nav-h) + var(--rc-mobile-timeline-h) + 18px + env(safe-area-inset-bottom))!important;
  }
  .app-shell[data-mode="weather"].has-place .map-actions{bottom:calc(272px + env(safe-area-inset-bottom))!important}
}

@media(max-width:390px){
  :root{--rc-existing-weather-nav-h:61px;--rc-mobile-timeline-h:91px}
  .timeline-shell.timeline-pro{left:7px!important;right:7px!important}
  .timeline-shell .timeline-main{padding:6px 8px 7px!important;gap:2px 6px!important}
  .timeline-shell .rc-timeline-primary{grid-template-columns:38px minmax(0,1fr);gap:7px}
  .timeline-shell .play-btn{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important}
  .timeline-shell .timeline-kind{font-size:5.8px!important;max-width:128px!important}
  .timeline-shell .timeline-now strong,.timeline-shell #frameTime{font-size:10px!important}
  .timeline-shell .timeline-ticks span{font-size:5.8px!important}
  .timeline-shell #leadBadge{min-width:45px!important;height:32px!important;font-size:7.6px!important}
}

@media(prefers-reduced-motion:reduce){.timeline-shell .play-btn,.timeline-shell #forecastLeadBtn,.timeline-shell #leadBadge{transition:none!important}}


/* 11i · MOBILE INLINE TIMELINE
 * Keep the scrubber INSIDE the same white Play/Pause panel.
 * The site's original mobile navigation remains below and receives no timeline labels.
 */
@media(max-width:700px){
  :root{--rc-existing-weather-nav-h:63px;--rc-mobile-timeline-h:62px}

  .timeline-shell.timeline-pro{
    left:8px!important;
    right:8px!important;
    bottom:calc(var(--rc-existing-weather-nav-h) + max(6px,env(safe-area-inset-bottom)))!important;
    min-height:58px!important;
    height:58px!important;
    border-radius:15px!important;
    overflow:hidden!important;
  }

  .timeline-shell .timeline-main{
    display:grid!important;
    grid-template-columns:minmax(126px,150px) minmax(0,1fr) auto!important;
    grid-template-areas:"primary slider actions"!important;
    align-items:center!important;
    column-gap:8px!important;
    row-gap:0!important;
    height:100%!important;
    min-height:0!important;
    padding:6px 9px!important;
  }

  .timeline-shell .rc-timeline-primary{
    grid-area:primary!important;
    display:grid!important;
    grid-template-columns:38px minmax(0,1fr)!important;
    align-items:center!important;
    gap:7px!important;
    min-width:0!important;
  }

  .timeline-shell .rc-timeline-actions{
    grid-area:actions!important;
    align-self:center!important;
    gap:0!important;
    min-width:auto!important;
  }

  .timeline-shell .play-btn{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    min-height:38px!important;
    box-shadow:0 4px 12px rgba(9,101,89,.19),0 0 0 2px rgba(239,251,248,.92)!important;
  }
  .timeline-shell .play-btn svg{width:17px!important;height:17px!important}

  .timeline-shell .timeline-now{
    min-width:0!important;
    display:grid!important;
    gap:1px!important;
    overflow:hidden!important;
  }
  .timeline-shell .timeline-kind{
    display:block!important;
    max-width:100%!important;
    font-size:5.65px!important;
    line-height:1.05!important;
    letter-spacing:.035em!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  .timeline-shell .timeline-now strong,
  .timeline-shell #frameTime{
    font-size:10.2px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  .timeline-shell .slider-wrap{
    grid-area:slider!important;
    position:relative!important;
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    width:100%!important;
    min-width:0!important;
    height:38px!important;
    min-height:38px!important;
    margin:0!important;
    padding:0 1px 13px!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }

  .timeline-shell .radar-timeline{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    position:absolute!important;
    left:1px!important;
    right:1px!important;
    top:7px!important;
    height:21px!important;
  }
  .timeline-shell .timeline-rail{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    top:8px!important;
    height:3px!important;
    background:#cfe0e3!important;
  }
  .timeline-shell .timeline-history-progress,
  .timeline-shell .timeline-forecast-progress{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    top:7px!important;
    height:4px!important;
  }
  .timeline-shell .timeline-now-marker,
  .timeline-shell .timeline-cursor{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
  }
  .timeline-shell .timeline-hit-input{
    display:block!important;
    visibility:visible!important;
    top:0!important;
    height:27px!important;
    width:100%!important;
    opacity:0!important;
  }

  .timeline-shell .timeline-ticks{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    position:absolute!important;
    left:1px!important;
    right:1px!important;
    bottom:0!important;
    height:11px!important;
    margin:0!important;
    pointer-events:none!important;
  }
  .timeline-shell .timeline-ticks span{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    font-size:5.65px!important;
    line-height:1!important;
    font-weight:820!important;
    color:#748b92!important;
    white-space:nowrap!important;
  }
  .timeline-shell .timeline-ticks span.is-now{color:#078f78!important;font-weight:950!important}
  .timeline-shell .timeline-ticks span.is-forecast{color:#4f87ae!important}

  .timeline-shell #forecastLeadBtn{display:none!important}
  .timeline-shell #leadBadge{
    display:grid!important;
    min-width:47px!important;
    width:47px!important;
    height:34px!important;
    padding:0 5px!important;
    border-radius:10px!important;
    font-size:7.7px!important;
  }
  .timeline-shell .timeline-credit-inline{display:none!important}

  /* Explicitly keep all timeline labels inside the white panel. */
  .timeline-shell .timeline-main,
  .timeline-shell .slider-wrap,
  .timeline-shell .timeline-ticks{z-index:3!important}

  /* Never draw helper lead labels above the existing bottom navigation. */
  .rc-mobile-leads,
  .rc-mobile-weather-nav{display:none!important}

  .app-shell[data-mode="weather"]:not(.has-place) .map-actions{
    bottom:calc(var(--rc-existing-weather-nav-h) + var(--rc-mobile-timeline-h) + 16px + env(safe-area-inset-bottom))!important;
  }
}

@media(max-width:390px){
  :root{--rc-existing-weather-nav-h:61px;--rc-mobile-timeline-h:59px}
  .timeline-shell.timeline-pro{
    left:7px!important;
    right:7px!important;
    height:55px!important;
    min-height:55px!important;
  }
  .timeline-shell .timeline-main{
    grid-template-columns:minmax(112px,128px) minmax(0,1fr) 43px!important;
    column-gap:6px!important;
    padding:5px 7px!important;
  }
  .timeline-shell .rc-timeline-primary{
    grid-template-columns:36px minmax(0,1fr)!important;
    gap:6px!important;
  }
  .timeline-shell .play-btn{
    width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;
  }
  .timeline-shell .timeline-kind{font-size:5.15px!important}
  .timeline-shell .timeline-now strong,
  .timeline-shell #frameTime{font-size:9.4px!important}
  .timeline-shell .slider-wrap{height:36px!important;min-height:36px!important;padding-bottom:12px!important}
  .timeline-shell .timeline-ticks span{font-size:5.05px!important}
  .timeline-shell #leadBadge{min-width:43px!important;width:43px!important;height:32px!important;font-size:7.2px!important;padding:0 4px!important}
}


.mobile-sheet-grabber,.rc-sheet-grabber{display:none}

/* Radar Česka · v0.4.3.11k · unified mobile bottom sheets
 * One interaction model for weather place, forecast-point, traffic and trains.
 * The grabber is always centered, tappable and draggable; collapsed cards keep
 * a useful one-line preview above the contextual bottom navigation.
 */
@media(max-width:700px){
  :root{
    --rc-sheet-nav-h:62px;
    --rc-sheet-side:7px;
    --rc-sheet-radius:19px;
    --rc-sheet-handle-w:38px;
    --rc-sheet-handle-h:4px;
  }

  .rc-unified-mobile-sheet,
  .mobile-map-sheet{
    --sheet-drag-y:0px;
    box-sizing:border-box;
    transform:translate3d(0,var(--sheet-drag-y),0);
    transform-origin:50% 100%;
    transition:transform .22s cubic-bezier(.2,.72,.28,1),height .22s cubic-bezier(.2,.72,.28,1),max-height .22s cubic-bezier(.2,.72,.28,1),box-shadow .18s ease;
    will-change:transform;
    overscroll-behavior:contain;
  }
  .rc-unified-mobile-sheet.is-sheet-dragging,
  .mobile-map-sheet.is-sheet-dragging{transition:none!important}
  .rc-unified-mobile-sheet.is-sheet-no-transition,
  .mobile-map-sheet.is-sheet-no-transition{transition:none!important}

  /* Traffic/Trains had an unstyled button in the upper-left corner.
     This is the same control, now intentionally rendered as the grabber. */
  .mobile-sheet-grabber,
  .rc-sheet-grabber,
  .mobile-sheet.has-place .sheet-handle-btn{
    appearance:none!important;
    -webkit-appearance:none!important;
    position:absolute!important;
    z-index:30!important;
    left:50%!important;
    top:2px!important;
    width:72px!important;
    height:22px!important;
    min-width:72px!important;
    min-height:22px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:999px!important;
    background:transparent!important;
    box-shadow:none!important;
    color:transparent!important;
    font-size:0!important;
    line-height:0!important;
    transform:translateX(-50%)!important;
    display:grid!important;
    place-items:center!important;
    cursor:ns-resize!important;
    touch-action:none!important;
    -webkit-tap-highlight-color:transparent!important;
    user-select:none!important;
  }
  .mobile-sheet.has-place .sheet-handle-btn .sheet-handle,
  .mobile-sheet-grabber>span,
  .rc-sheet-grabber>span{
    display:block!important;
    position:static!important;
    width:var(--rc-sheet-handle-w)!important;
    height:var(--rc-sheet-handle-h)!important;
    margin:0!important;
    border:0!important;
    border-radius:999px!important;
    background:rgba(38,67,75,.24)!important;
    box-shadow:0 1px 0 rgba(255,255,255,.65)!important;
    transform:none!important;
    pointer-events:none!important;
  }

  .mobile-sheet-grabber:focus-visible,
  .rc-sheet-grabber:focus-visible,
  .mobile-sheet.has-place .sheet-handle-btn:focus-visible{
    outline:2px solid rgba(9,164,138,.34)!important;
    outline-offset:-2px!important;
  }

  #incidentCard,
  #trafficOverview,
  #trainDetailCard,
  #trainOverview,
  #modelPointCard,
  #warningCard{
    left:var(--rc-sheet-side)!important;
    right:var(--rc-sheet-side)!important;
    top:auto!important;
    bottom:calc(var(--rc-sheet-nav-h) + env(safe-area-inset-bottom))!important;
    width:auto!important;
    max-width:none!important;
    border-radius:var(--rc-sheet-radius)!important;
    background:rgba(255,255,255,.985)!important;
    box-shadow:0 -3px 18px rgba(24,58,65,.08),0 14px 38px rgba(24,58,65,.17)!important;
    backdrop-filter:blur(22px) saturate(142%)!important;
    -webkit-backdrop-filter:blur(22px) saturate(142%)!important;
  }
  #incidentCard,
  #trafficOverview,
  #trainDetailCard,
  #trainOverview{padding-top:25px!important}
  #warningCard{padding-top:23px!important}

  #incidentCard .card-close,
  #trainDetailCard .card-close,
  #modelPointCard .card-close,
  #warningCard .card-close{
    position:absolute!important;
    top:17px!important;
    right:9px!important;
    width:29px!important;
    height:29px!important;
    min-width:29px!important;
    min-height:29px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid rgba(24,63,72,.08)!important;
    border-radius:10px!important;
    background:rgba(246,250,250,.96)!important;
    box-shadow:0 3px 10px rgba(28,58,65,.07)!important;
    color:#698087!important;
    display:grid!important;
    place-items:center!important;
    font-size:17px!important;
    line-height:1!important;
  }

  #incidentCard{max-height:min(64dvh,540px)!important;overflow:auto!important;padding-left:10px!important;padding-right:10px!important;padding-bottom:9px!important}
  #trafficOverview{max-height:min(58dvh,470px)!important;overflow:hidden!important;padding-left:10px!important;padding-right:10px!important;padding-bottom:9px!important}
  #trafficOverview .traffic-overview-list{overflow:auto!important;overscroll-behavior:contain!important}

  #trainDetailCard{max-height:min(66dvh,570px)!important;overflow:auto!important;padding-left:10px!important;padding-right:10px!important;padding-bottom:9px!important}
  #trainDetailCard .train-journey-list{max-height:min(20dvh,155px)!important;overflow:auto!important;overscroll-behavior:contain!important}
  #trainOverview{max-height:min(58dvh,470px)!important;overflow:hidden!important;padding-left:10px!important;padding-right:10px!important;padding-bottom:9px!important}
  #trainOverview .train-overview-list{overflow:auto!important;overscroll-behavior:contain!important}

  #modelPointCard{
    max-height:min(59dvh,500px)!important;
    overflow:auto!important;
    padding-top:0!important;
    padding-bottom:8px!important;
  }
  #modelPointCard .model-point-head{padding-top:27px!important;padding-left:18px!important;padding-right:50px!important}
  #modelPointCard .card-close{position:absolute!important;float:none!important}

  #warningCard{max-height:min(58dvh,480px)!important;overflow:auto!important}

  #trafficOverview.is-collapsed,
  #trainOverview.is-collapsed{
    height:82px!important;min-height:82px!important;max-height:82px!important;
    overflow:hidden!important;
  }
  #incidentCard.is-collapsed,
  #trainDetailCard.is-collapsed,
  #modelPointCard.is-collapsed,
  #warningCard.is-collapsed{
    height:91px!important;min-height:91px!important;max-height:91px!important;
    overflow:hidden!important;
  }

  #modelPointCard.is-collapsed .model-point-primary,
  #modelPointCard.is-collapsed .model-point-extras,
  #modelPointCard.is-collapsed .model-point-trend,
  #modelPointCard.is-collapsed .model-point-foot,
  #modelPointCard.is-collapsed .model-point-note,
  #modelPointCard.is-collapsed .model-point-city-link,
  #modelPointCard.is-collapsed .model-point-data-sources{display:none!important}
  #modelPointCard.is-collapsed .model-point-head{
    min-height:65px!important;
    padding:22px 48px 7px 14px!important;
    border-bottom:0!important;
  }
  #modelPointCard.is-collapsed .model-point-head h2{font-size:14px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  #modelPointCard.is-collapsed .model-point-head small{font-size:7px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  #modelPointCard.is-collapsed .model-point-icon{width:30px!important;height:30px!important;border-radius:10px!important;font-size:15px!important}

  #warningCard.is-collapsed #warningDescription,
  #warningCard.is-collapsed .warning-validity,
  #warningCard.is-collapsed .warning-instruction,
  #warningCard.is-collapsed .warning-card-foot{display:none!important}
  #warningCard.is-collapsed h2{margin-right:36px!important;font-size:14px!important;line-height:1.15!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}

  /* Weather card: the handle tucks/restores the whole card.
     "Celý výhled" still owns the internal full forecast expansion. */
  #mobileSheet.has-place{
    --sheet-drag-y:0px;
    left:var(--rc-sheet-side)!important;
    right:var(--rc-sheet-side)!important;
    bottom:calc(var(--rc-sheet-nav-h) + env(safe-area-inset-bottom))!important;
    width:auto!important;
    border-radius:var(--rc-sheet-radius)!important;
    background:rgba(255,255,255,.985)!important;
    box-shadow:0 -3px 18px rgba(24,58,65,.07),0 14px 38px rgba(24,58,65,.17)!important;
    backdrop-filter:blur(22px) saturate(142%)!important;
    -webkit-backdrop-filter:blur(22px) saturate(142%)!important;
    transform:translate3d(0,var(--sheet-drag-y),0)!important;
    transition:transform .22s cubic-bezier(.2,.72,.28,1),height .22s cubic-bezier(.2,.72,.28,1),max-height .22s cubic-bezier(.2,.72,.28,1)!important;
    overflow:hidden!important;
  }
  #mobileSheet.has-place.is-sheet-dragging{transition:none!important}

  /* v0.4.3.13f · "Celý výhled" is an internal expansion, not a tuck gesture.
     The unified sheet previously forced overflow:hidden, which clipped the
     hourly/7-day forecast even after app.js correctly added is-expanded. */
  #mobileSheet.has-place.is-expanded{
    height:calc(76dvh - env(safe-area-inset-top))!important;
    max-height:calc(76dvh - env(safe-area-inset-top))!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch;
  }
  #mobileSheet.has-place.is-expanded .mobile-weather-body{
    display:block!important;
  }
  #mobileForecastToggle{
    position:relative;
    z-index:6;
    pointer-events:auto!important;
    touch-action:manipulation;
  }
  #mobileSheet.has-place .mobile-sheet-close{
    top:17px!important;right:9px!important;width:29px!important;height:29px!important;
    border:1px solid rgba(24,63,72,.08)!important;border-radius:10px!important;
    background:rgba(246,250,250,.96)!important;font-size:17px!important;
  }
  #mobileSheet.has-place.is-collapsed{
    min-height:88px!important;
    height:88px!important;
    max-height:88px!important;
    padding-top:23px!important;
    padding-bottom:8px!important;
  }
  #mobileSheet.has-place.is-collapsed .mobile-weather-head{min-height:53px!important;padding-right:34px!important}
  #mobileSheet.has-place.is-collapsed .mobile-situation,
  #mobileSheet.has-place.is-collapsed .mobile-live-dock,
  #mobileSheet.has-place.is-collapsed .mobile-live-panel,
  #mobileSheet.has-place.is-collapsed .mobile-weather-body{display:none!important}
  #mobileSheet.has-place.is-collapsed .mobile-status-icon{width:38px!important;height:38px!important;border-radius:12px!important}
  #mobileSheet.has-place.is-collapsed .mobile-status-icon svg{width:25px!important;height:25px!important}
  #mobileSheet.has-place.is-collapsed .mobile-status-copy strong{font-size:12px!important}
  #mobileSheet.has-place.is-collapsed .mobile-status-copy small{font-size:7.5px!important}
  #mobileSheet.has-place.is-collapsed .mobile-today-range strong{font-size:12px!important}
  #mobileSheet.has-place.is-collapsed .mobile-today-range span{font-size:8px!important}

  .app-shell.has-place:has(#mobileSheet.is-collapsed) .map-actions{
    bottom:calc(160px + env(safe-area-inset-bottom))!important;
  }

  .mobile-sheet-grabber,
  .rc-sheet-grabber,
  #mobileSheet.has-place .sheet-handle-btn{pointer-events:auto!important}
}

@media(max-width:390px){
  :root{--rc-sheet-nav-h:61px;--rc-sheet-side:6px;--rc-sheet-radius:18px}
  #incidentCard,#trafficOverview,#trainDetailCard,#trainOverview,#modelPointCard,#warningCard,#mobileSheet.has-place{left:6px!important;right:6px!important}
}

@media(prefers-reduced-motion:reduce){
  .rc-unified-mobile-sheet,.mobile-map-sheet,#mobileSheet.has-place{transition:none!important}
}

/* Radar Česka · v0.4.3.11k · location + overview restore + refresh feedback */
#overviewRestoreBtn[hidden]{display:none!important}
.map-overview-restore{
  color:#087f6d!important;
  border-color:rgba(8,151,128,.24)!important;
  background:rgba(239,251,248,.97)!important;
  box-shadow:0 9px 24px rgba(10,105,91,.13)!important;
}
.app-shell[data-mode="trains"] .map-overview-restore{
  color:#287b9c!important;
  border-color:rgba(47,135,169,.22)!important;
  background:rgba(239,249,253,.97)!important;
}
.map-overview-restore:hover{transform:translateY(-1px) scale(1.02)!important}

#locateBtn.has-location{
  color:#087f9a!important;
  border-color:rgba(23,145,176,.32)!important;
  background:rgba(239,250,253,.98)!important;
  box-shadow:0 8px 24px rgba(27,124,150,.14),0 0 0 3px rgba(35,155,183,.06)!important;
}
#locateBtn.is-loading{cursor:progress!important}
#locateBtn.is-loading svg{opacity:.18!important}
#locateBtn.is-loading::after{
  content:"";position:absolute;width:16px;height:16px;border-radius:50%;
  border:2px solid rgba(37,108,126,.18);border-top-color:#168ba5;
  animation:rc-map-refresh-spin .75s linear infinite;
}

.user-location-marker{
  width:22px;height:22px;border:3px solid #fff;border-radius:50%;
  background:rgba(42,164,196,.19);
  box-shadow:0 3px 12px rgba(25,90,111,.28),0 0 0 5px rgba(42,164,196,.12);
  display:grid;place-items:center;pointer-events:none!important;
}
.user-location-marker>span{
  display:block;width:8px;height:8px;border-radius:50%;background:#169bc1;
  box-shadow:0 0 0 1px rgba(255,255,255,.85);
}
.user-location-marker::after{
  content:"";position:absolute;inset:-8px;border:1px solid rgba(22,155,193,.30);border-radius:50%;
  animation:rc-user-location-pulse 2.2s ease-out infinite;
}

#trafficOverviewRefresh.is-refreshing,#trainOverviewRefresh.is-refreshing{
  position:relative;color:transparent!important;cursor:progress!important;
}
#trafficOverviewRefresh.is-refreshing::after,#trainOverviewRefresh.is-refreshing::after{
  content:"";position:absolute;left:50%;top:50%;width:12px;height:12px;margin:-7px 0 0 -7px;
  border:2px solid rgba(63,101,111,.18);border-top-color:#168ba5;border-right-color:#168ba5;
  border-radius:50%;animation:rc-map-refresh-spin .72s linear infinite;
}
#trafficOverviewRefresh:disabled,#trainOverviewRefresh:disabled,
#trafficLayerRefresh:disabled,#trainLayerRefresh:disabled{cursor:progress!important;opacity:.78}
#trafficLayerRefresh.is-refreshing,#trainLayerRefresh.is-refreshing{background:#f5fbfa!important}

@keyframes rc-map-refresh-spin{to{transform:rotate(360deg)}}
@keyframes rc-user-location-pulse{0%{transform:scale(.72);opacity:.72}70%,100%{transform:scale(1.45);opacity:0}}

@media(max-width:700px){
  .map-overview-restore{width:40px!important;height:40px!important;border-radius:13px!important}
  .map-overview-restore svg{width:19px!important;height:19px!important}
  .user-location-marker{width:20px;height:20px;border-width:3px;box-shadow:0 3px 10px rgba(25,90,111,.25),0 0 0 4px rgba(42,164,196,.11)}
  .user-location-marker>span{width:7px;height:7px}
}
@media(prefers-reduced-motion:reduce){
  .user-location-marker::after{animation:none!important;opacity:.3}
  #locateBtn.is-loading::after,#trafficOverviewRefresh.is-refreshing::after,#trainOverviewRefresh.is-refreshing::after{animation-duration:1.4s!important}
}

/* v1.8 · mobile overview hierarchy, search entities, location centering */
.overview-mobile-subline,.overview-live-state{display:none}
.search-train-option .search-result-kind{display:inline-grid;place-items:center;width:18px;height:18px;margin-right:7px;border-radius:6px;background:#eaf8f4;color:#0a8f79;font-style:normal;font-size:9px;vertical-align:-4px}
.user-location-marker{display:none!important}

@media(max-width:700px){
  .traffic-overview-head,.train-overview-head{align-items:center!important;margin-bottom:5px!important}
  .traffic-overview-head .overview-title-block,.train-overview-head .overview-title-block{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:2px!important;min-width:0!important}
  .traffic-overview-head .overview-kicker,.train-overview-head .overview-kicker{display:none!important}
  .traffic-overview-head strong,.train-overview-head strong{font-size:13px!important;line-height:1.1!important;letter-spacing:-.018em!important;color:#173a43!important}
  .overview-mobile-subline{display:block!important;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:7px!important;line-height:1.2!important;font-weight:690;color:#7a9097!important}

  .traffic-overview-actions,.train-overview-actions{display:flex!important;align-items:center!important;gap:4px!important;flex:0 0 auto!important}
  .overview-live-state{display:inline-flex!important;align-items:center;gap:4px;height:23px;padding:0 7px;border:1px solid rgba(15,145,119,.11);border-radius:999px;background:rgba(236,249,245,.88);color:#18806c;font-size:6.3px;font-weight:900;letter-spacing:.055em;white-space:nowrap}
  .overview-live-state i{width:6px;height:6px;border-radius:50%;background:#12b891;box-shadow:0 0 0 3px rgba(18,184,145,.08);animation:rc-overview-live-pulse 2.35s ease-out infinite}
  .overview-live-state[data-state="waiting"]{background:#f5f8f8;color:#789096;border-color:rgba(68,98,106,.08)}
  .overview-live-state[data-state="waiting"] i{background:#a1b1b5;box-shadow:none;animation:none}
  .overview-live-state[data-state="error"]{background:#fff3f3;color:#b75a5f;border-color:rgba(185,77,84,.10)}
  .overview-live-state[data-state="error"] i{background:#d06a6f;box-shadow:none;animation:none}

  .traffic-status-badge,.train-status-badge{display:none!important}
  .traffic-overview.is-collapsed,.train-overview.is-collapsed{
    height:76px!important;min-height:76px!important;max-height:76px!important;
    padding-top:22px!important;padding-bottom:7px!important;
  }
  .traffic-overview.is-collapsed .traffic-overview-head,.train-overview.is-collapsed .train-overview-head{margin:0!important;min-height:43px!important}
  .traffic-overview.is-collapsed .overview-mobile-subline,.train-overview.is-collapsed .overview-mobile-subline{max-width:min(57vw,225px)!important}
  .traffic-overview.is-collapsed .traffic-overview-text,
  .traffic-overview.is-collapsed .traffic-overview-scope,
  .traffic-overview.is-collapsed .traffic-overview-grid,
  .traffic-overview.is-collapsed .traffic-overview-list,
  .traffic-overview.is-collapsed .traffic-overview-more,
  .traffic-overview.is-collapsed .traffic-overview-foot,
  .train-overview.is-collapsed .train-overview-text,
  .train-overview.is-collapsed .train-overview-grid,
  .train-overview.is-collapsed .train-overview-list,
  .train-overview.is-collapsed .train-overview-more,
  .train-overview.is-collapsed .train-overview-foot{display:none!important}

  .search-option.search-train-option{background:linear-gradient(180deg,rgba(241,250,248,.72),rgba(255,255,255,.4))}
  .search-option.search-train-option:hover{background:#edf9f6}
  .search-train-option span{display:flex;align-items:center}
}

@keyframes rc-overview-live-pulse{0%{box-shadow:0 0 0 0 rgba(18,184,145,.18)}70%,100%{box-shadow:0 0 0 5px rgba(18,184,145,0)}}
@media(prefers-reduced-motion:reduce){.overview-live-state i{animation:none!important}}

/* Radar Česka · v0.4.3.11m · mobile navigation/icon polish
   Mobile only. Desktop intentionally untouched.
   - shared clean icon language in the primary chips + mobile hamburger
   - global warning badge belongs to Výstrahy
   - live traffic/train sheet has one compact hierarchy, icon + pulse + title
   - duplicated overview copy is removed by JS on healthy live states
*/
.rc-mobile-alert-chip{display:none!important}

@media(max-width:700px){
  /* Header stays on one row: brand | search | menu. */
  .brand-row{
    grid-template-columns:max-content minmax(0,1fr) max-content!important;
    grid-template-rows:34px!important;
    gap:6px!important;
    align-items:center!important;
  }
  .search-wrap{width:100%!important;min-width:0!important;max-width:none!important;justify-self:stretch!important}

  /* Seven compact mode cards. They fit a normal phone and become horizontally
     scrollable only on very narrow devices. */
  .layer-chips{
    display:grid!important;
    grid-template-columns:repeat(7,minmax(0,1fr))!important;
    width:100%!important;
    max-width:none!important;
    margin-top:6px!important;
    gap:4px!important;
    padding:0!important;
    overflow:visible!important;
  }
  .layer-chip,
  .layer-chip:nth-of-type(n+4),
  .layer-chip:nth-of-type(n+6),
  .rc-mobile-alert-chip{
    display:flex!important;
    min-width:0!important;
    width:auto!important;
    height:47px!important;
    padding:4px 2px 3px!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:center!important;
    gap:2px!important;
    border-radius:12px!important;
    font-size:7.2px!important;
    line-height:1!important;
    font-weight:760!important;
    letter-spacing:-.01em!important;
    color:#46626c!important;
    background:rgba(255,255,255,.91)!important;
    border:1px solid rgba(35,70,80,.08)!important;
    box-shadow:0 4px 13px rgba(34,62,72,.07)!important;
    position:relative!important;
  }
  .layer-chip.is-active{
    color:#078f78!important;
    border-color:rgba(11,191,156,.25)!important;
    background:linear-gradient(180deg,rgba(229,250,246,.97),rgba(244,253,251,.96))!important;
    box-shadow:0 5px 15px rgba(11,191,156,.10),inset 0 0 0 1px rgba(11,191,156,.045)!important;
  }
  .layer-chip.is-coming{opacity:1!important}
  #moreLayersBtn{display:none!important}

  /* Shared SVG masks. The DOM glyphs remain for desktop; on mobile the same
     line-art family is rendered consistently for every category. */
  .layer-chip .chip-icon{
    width:18px!important;height:18px!important;min-width:18px!important;
    margin:0!important;font-size:0!important;line-height:0!important;
    color:inherit!important;background-color:currentColor!important;
    -webkit-mask:var(--rc-mobile-icon) center/contain no-repeat!important;
    mask:var(--rc-mobile-icon) center/contain no-repeat!important;
  }
  .layer-chip .chip-icon svg{display:none!important}
  .layer-chip[data-layer="weather"]{--rc-mobile-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7.5 18.5h9.2a4.1 4.1 0 0 0 .4-8.18A5.65 5.65 0 0 0 6.4 9.2a4.65 4.65 0 0 0 1.1 9.3Z'/%3E%3Cpath d='M8 5.1 6.8 3.8M12 4V2M4.6 8H2.7M18.8 6.2l1.4-1.4'/%3E%3C/g%3E%3C/svg%3E")}
  .layer-chip[data-layer="traffic"]{--rc-mobile-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 14.5V12l1.8-4.3A2 2 0 0 1 8.65 6.5h6.7a2 2 0 0 1 1.85 1.2L19 12v2.5'/%3E%3Cpath d='M4.5 14.5h15v3h-15zM7 17.5v1.2M17 17.5v1.2M7.5 11.5h9M7.3 14.7h.01M16.7 14.7h.01'/%3E%3C/g%3E%3C/svg%3E")}
  .layer-chip[data-layer="trains"]{--rc-mobile-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='6' y='3.5' width='12' height='14' rx='2.5'/%3E%3Cpath d='M8.5 7h7M8 11h8M8.5 17.5 6.5 21M15.5 17.5l2 3.5M9 20h6M9 14.5h.01M15 14.5h.01'/%3E%3C/g%3E%3C/svg%3E")}
  .layer-chip[data-layer="transit"]{--rc-mobile-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 3h8M10 3 8.5 6M14 3l1.5 3'/%3E%3Crect x='6' y='6' width='12' height='12' rx='2.4'/%3E%3Cpath d='M8.5 9h7M8.5 12.5h7M9 18l-1 2M15 18l1 2M9 15.5h.01M15 15.5h.01'/%3E%3C/g%3E%3C/svg%3E")}
  .layer-chip[data-layer="water"]{--rc-mobile-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3.2S6.5 9.2 6.5 14a5.5 5.5 0 0 0 11 0C17.5 9.2 12 3.2 12 3.2Z' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M9.4 14.2a2.8 2.8 0 0 0 2.8 2.8' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E")}
  .layer-chip[data-layer="air"]{--rc-mobile-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M3 8h9.5c2.6 0 2.6-3.6.2-3.6-1.2 0-2 .7-2.2 1.6M3 12h14.3c3 0 3 4.2.2 4.2-1.4 0-2.3-.8-2.6-1.8M3 16h6.5'/%3E%3C/g%3E%3C/svg%3E")}
  .rc-mobile-alert-chip{--rc-mobile-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3.7 21 19H3L12 3.7Z'/%3E%3Cpath d='M12 9v4.6M12 16.7h.01'/%3E%3C/g%3E%3C/svg%3E")}
  .rc-mobile-alert-chip.is-active{color:#a75a16!important;background:#fff5eb!important;border-color:rgba(238,122,34,.22)!important}

  /* The global warning counter lives on Výstrahy on mobile, never on Počasí. */
  .layer-chip[data-layer="weather"] .weather-alert-badge{display:none!important}
  .rc-mobile-alert-badge{
    position:absolute!important;right:2px!important;top:2px!important;
    display:grid;place-items:center;min-width:16px;height:16px;padding:0 4px;
    border-radius:999px;background:#ef7a24;color:#fff;font-size:7px;font-weight:900;
    border:2px solid rgba(255,255,255,.98);box-shadow:0 2px 7px rgba(186,81,18,.18)
  }
  .rc-mobile-alert-badge[hidden]{display:none!important}

  /* Fix the old absolute-positioning bug that could visually place the badge
     over Oblačnost. The alert button itself is now the positioning context. */
  #mobileWeatherNav .weather-mobile-item[data-weather-view="alerts"]{position:relative!important}
  #mobileWeatherAlertBadge{right:5px!important;top:3px!important}

  /* Live overview: one icon language, one live pulse, one title and one subtitle. */
  .traffic-overview-head .overview-title-block,
  .train-overview-head .overview-title-block{
    position:relative!important;
    padding-left:39px!important;
    min-height:34px!important;
    align-content:center!important;
    gap:2px!important;
  }
  .traffic-overview-head .overview-title-block::before,
  .train-overview-head .overview-title-block::before{
    content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);
    width:29px;height:29px;border-radius:9px;background-color:#0aa184;
    -webkit-mask:var(--rc-overview-icon) center/21px 21px no-repeat;
    mask:var(--rc-overview-icon) center/21px 21px no-repeat;
  }
  .traffic-overview-head .overview-title-block{--rc-overview-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 14.5V12l1.8-4.3A2 2 0 0 1 8.65 6.5h6.7a2 2 0 0 1 1.85 1.2L19 12v2.5'/%3E%3Cpath d='M4.5 14.5h15v3h-15zM7 17.5v1.2M17 17.5v1.2M7.5 11.5h9M7.3 14.7h.01M16.7 14.7h.01'/%3E%3C/g%3E%3C/svg%3E")}
  .train-overview-head .overview-title-block{--rc-overview-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='6' y='3.5' width='12' height='14' rx='2.5'/%3E%3Cpath d='M8.5 7h7M8 11h8M8.5 17.5 6.5 21M15.5 17.5l2 3.5M9 20h6M9 14.5h.01M15 14.5h.01'/%3E%3C/g%3E%3C/svg%3E")}
  .traffic-overview-head .overview-title-block::after,
  .train-overview-head .overview-title-block::after{
    content:"";position:absolute;left:29px;top:4px;width:7px;height:7px;border-radius:50%;
    background:#12b891;box-shadow:0 0 0 0 rgba(18,184,145,.22);animation:rc-overview-live-pulse 2.35s ease-out infinite
  }
  .traffic-overview-head strong,.train-overview-head strong{font-size:13.5px!important;font-weight:860!important}
  .overview-mobile-subline{font-size:7.5px!important;font-weight:680!important;color:#718991!important;max-width:min(58vw,230px)!important}
  .traffic-overview-actions .overview-live-state,.train-overview-actions .overview-live-state{display:none!important}
  .traffic-overview-actions,.train-overview-actions{gap:5px!important}
  .traffic-overview-actions button,.train-overview-actions button{width:29px!important;height:29px!important;border-radius:10px!important}
  .traffic-overview.is-collapsed,.train-overview.is-collapsed{
    height:82px!important;min-height:82px!important;max-height:82px!important;padding-top:22px!important;padding-bottom:7px!important
  }
  .traffic-overview.is-collapsed .traffic-overview-head,.train-overview.is-collapsed .train-overview-head{min-height:48px!important}

  /* Mobile hamburger: corresponding items use the exact same icon family as
     the primary chips. Desktop glyphs remain untouched. */
  .main-menu-nav [data-menu-mode] .main-menu-icon,
  .main-menu-nav a[href="zive"] .main-menu-icon,
  .main-menu-nav a[href="kontakt"] .main-menu-icon{
    font-size:0!important;background-color:#0a927b!important;
    -webkit-mask:var(--rc-menu-icon) center/20px 20px no-repeat!important;
    mask:var(--rc-menu-icon) center/20px 20px no-repeat!important;
    box-shadow:none!important;border:1px solid rgba(11,191,156,.06)
  }
  .main-menu-nav [data-menu-mode="weather"] .main-menu-icon{--rc-menu-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7.5 18.5h9.2a4.1 4.1 0 0 0 .4-8.18A5.65 5.65 0 0 0 6.4 9.2a4.65 4.65 0 0 0 1.1 9.3Z'/%3E%3Cpath d='M8 5.1 6.8 3.8M12 4V2M4.6 8H2.7M18.8 6.2l1.4-1.4'/%3E%3C/g%3E%3C/svg%3E")}
  .main-menu-nav [data-menu-mode="traffic"] .main-menu-icon{--rc-menu-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 14.5V12l1.8-4.3A2 2 0 0 1 8.65 6.5h6.7a2 2 0 0 1 1.85 1.2L19 12v2.5'/%3E%3Cpath d='M4.5 14.5h15v3h-15zM7 17.5v1.2M17 17.5v1.2M7.5 11.5h9M7.3 14.7h.01M16.7 14.7h.01'/%3E%3C/g%3E%3C/svg%3E")}
  .main-menu-nav [data-menu-mode="trains"] .main-menu-icon{--rc-menu-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='6' y='3.5' width='12' height='14' rx='2.5'/%3E%3Cpath d='M8.5 7h7M8 11h8M8.5 17.5 6.5 21M15.5 17.5l2 3.5M9 20h6M9 14.5h.01M15 14.5h.01'/%3E%3C/g%3E%3C/svg%3E")}
  .main-menu-nav a[href="zive"] .main-menu-icon{--rc-menu-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='2.5'/%3E%3Cpath d='M7.6 7.6a6.2 6.2 0 0 0 0 8.8M16.4 7.6a6.2 6.2 0 0 1 0 8.8M4.6 4.6a10.5 10.5 0 0 0 0 14.8M19.4 4.6a10.5 10.5 0 0 1 0 14.8'/%3E%3C/g%3E%3C/svg%3E")}
  .main-menu-nav a[href="kontakt"] .main-menu-icon{--rc-menu-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 5.5h16v11H9l-4.5 3v-3H4z'/%3E%3Cpath d='M8 10h.01M12 10h.01M16 10h.01'/%3E%3C/g%3E%3C/svg%3E")}
}

@media(max-width:370px){
  .layer-chips{gap:3px!important}
  .layer-chip,.rc-mobile-alert-chip{height:45px!important;font-size:6.7px!important;border-radius:11px!important}
  .layer-chip .chip-icon{width:17px!important;height:17px!important;min-width:17px!important}
  .brand-text{font-size:12.5px!important}
}
@media(max-width:700px){.traffic-overview-text.overview-copy-redundant,.train-overview-text.overview-copy-redundant{display:none!important}}

/* 11m · mobile hamburger mirrors the same icon vocabulary. */
.main-menu-mobile-only{display:none!important}
@media(max-width:700px){
  .main-menu-mobile-only{display:grid!important}
  .main-menu-nav [data-menu-view="alerts"] .main-menu-icon,
  .main-menu-nav [data-menu-layer] .main-menu-icon{
    font-size:0!important;background-color:#0a927b!important;
    -webkit-mask:var(--rc-menu-icon) center/20px 20px no-repeat!important;
    mask:var(--rc-menu-icon) center/20px 20px no-repeat!important;
    box-shadow:none!important
  }
  .main-menu-nav [data-menu-view="alerts"] .main-menu-icon{--rc-menu-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3.7 21 19H3L12 3.7Z'/%3E%3Cpath d='M12 9v4.6M12 16.7h.01'/%3E%3C/g%3E%3C/svg%3E")}
  .main-menu-nav [data-menu-layer="transit"] .main-menu-icon{--rc-menu-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 3h8M10 3 8.5 6M14 3l1.5 3'/%3E%3Crect x='6' y='6' width='12' height='12' rx='2.4'/%3E%3Cpath d='M8.5 9h7M8.5 12.5h7M9 18l-1 2M15 18l1 2M9 15.5h.01M15 15.5h.01'/%3E%3C/g%3E%3C/svg%3E")}
  .main-menu-nav [data-menu-layer="water"] .main-menu-icon{--rc-menu-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3.2S6.5 9.2 6.5 14a5.5 5.5 0 0 0 11 0C17.5 9.2 12 3.2 12 3.2Z' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M9.4 14.2a2.8 2.8 0 0 0 2.8 2.8' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E")}
  .main-menu-nav [data-menu-layer="air"] .main-menu-icon{--rc-menu-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M3 8h9.5c2.6 0 2.6-3.6.2-3.6-1.2 0-2 .7-2.2 1.6M3 12h14.3c3 0 3 4.2.2 4.2-1.4 0-2.3-.8-2.6-1.8M3 16h6.5'/%3E%3C/g%3E%3C/svg%3E")}
  .main-menu-alert-badge{
    justify-self:end;display:grid;place-items:center;min-width:19px;height:19px;padding:0 5px;
    border-radius:999px;background:#ef7a24;color:#fff;font-size:7.5px;font-weight:900
  }
  .main-menu-alert-badge[hidden]{display:none!important}
}

/* Radar Česka · v0.4.3.11t · mobile bottom dock + live overview polish
   Mobile only. Desktop remains untouched.
   - the app follows the visible mobile viewport so contextual navigation stays
     physically at the bottom when browser chrome expands/collapses
   - ordinary browser mode does not reserve a huge iPhone-like safe-area gap;
     standalone/PWA mode still respects the full device safe area
   - the same floating "i" above Poloha restores hidden Weather / Traffic /
     Trains live overviews
   - live state dots are aligned with the title and pulse gently
*/
@media(max-width:700px){
  :root{
    --rc-mobile-browser-safe-bottom:min(8px, env(safe-area-inset-bottom));
    --rc-mobile-nav-safe-bottom:var(--rc-mobile-browser-safe-bottom);
    --rc-mobile-nav-base-h:58px;
  }

  html,body{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    overflow:hidden!important;
    overscroll-behavior:none!important;
  }
  .app-shell{
    position:fixed!important;
    left:0!important;
    top:0!important;
    right:auto!important;
    bottom:auto!important;
    width:100%!important;
    height:var(--rc-mobile-viewport-h,100dvh)!important;
    min-height:0!important;
    max-height:none!important;
    overflow:hidden!important;
  }

  /* One physical bottom edge for all three contextual navs. The map keeps
     painting beneath the translucent dock, but the dock itself never floats
     a centimetre above the visible viewport. */
  #mobileWeatherNav,
  #mobileTrafficNav,
  #mobileTrainNav{
    position:absolute!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    margin:0!important;
    box-sizing:border-box!important;
    height:calc(var(--rc-mobile-nav-base-h) + var(--rc-mobile-nav-safe-bottom))!important;
    padding-bottom:var(--rc-mobile-nav-safe-bottom)!important;
    border-radius:0!important;
  }
  #mobileWeatherNav{
    padding-top:3px!important;
    padding-left:max(5px,env(safe-area-inset-left))!important;
    padding-right:max(5px,env(safe-area-inset-right))!important;
  }
  #mobileTrafficNav,#mobileTrainNav{
    padding-top:4px!important;
    padding-left:max(5px,env(safe-area-inset-left))!important;
    padding-right:max(5px,env(safe-area-inset-right))!important;
  }
  #mobileWeatherNav .mobile-nav-item,
  #mobileTrafficNav .mobile-traffic-btn,
  #mobileTrainNav .mobile-train-btn{
    height:50px!important;
    min-height:50px!important;
    align-self:start!important;
  }

  /* Every sheet/control now keys off the same real bottom dock instead of
     adding env(safe-area-inset-bottom) a second time. */
  .timeline-shell.timeline-pro{
    bottom:calc(var(--rc-mobile-nav-base-h) + var(--rc-mobile-nav-safe-bottom) + 5px)!important;
  }
  #mobileSheet:not(.has-place):not(.is-live-open){
    bottom:calc(var(--rc-mobile-nav-base-h) + var(--rc-mobile-nav-safe-bottom) + 65px)!important;
  }
  #mobileSheet:not(.has-place).is-live-open,
  #mobileSheet.has-place,
  #incidentCard,#trafficOverview,#trainDetailCard,#trainOverview,#modelPointCard,#warningCard{
    bottom:calc(var(--rc-mobile-nav-base-h) + var(--rc-mobile-nav-safe-bottom))!important;
  }

  /* The floating restore button is deliberately the same control for all
     modes and sits directly above Poloha because both live in .map-actions. */
  .map-overview-restore{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    min-height:40px!important;
    border-radius:13px!important;
    color:#087f70!important;
    background:rgba(238,251,248,.97)!important;
    border:1px solid rgba(8,151,128,.22)!important;
    box-shadow:0 7px 20px rgba(10,105,91,.13)!important;
  }
  .map-overview-restore svg{width:18px!important;height:18px!important;stroke-width:1.75!important}
  .app-shell[data-mode="weather"] .map-overview-restore{
    color:#078c78!important;
    background:rgba(238,251,248,.98)!important;
  }
  .app-shell[data-mode="traffic"] .map-overview-restore{
    color:#078c78!important;
    background:rgba(238,251,248,.98)!important;
  }
  .app-shell[data-mode="trains"] .map-overview-restore{
    color:#247c9b!important;
    background:rgba(239,249,253,.98)!important;
  }

  /* Traffic + trains: keep the mode icon on the left, but move LIVE state to
     the actual title line. The previous absolute dot near the top edge caused
     the visually "shot up" green point from the mobile screenshots. */
  .traffic-overview-head .overview-title-block::after,
  .train-overview-head .overview-title-block::after{display:none!important}
  .traffic-overview-head .overview-title-block,
  .train-overview-head .overview-title-block{
    min-height:32px!important;
    padding-left:36px!important;
    gap:2px!important;
  }
  .traffic-overview-head .overview-title-block::before,
  .train-overview-head .overview-title-block::before{
    width:26px!important;
    height:26px!important;
    left:1px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    background-color:#0b947c!important;
    -webkit-mask-size:19px 19px!important;
    mask-size:19px 19px!important;
  }
  .traffic-overview-head .overview-title-block strong,
  .train-overview-head .overview-title-block strong{
    display:inline-flex!important;
    align-items:center!important;
    width:max-content!important;
    max-width:100%!important;
    gap:6px!important;
    line-height:1.05!important;
  }
  .traffic-overview-head .overview-title-block strong::after,
  .train-overview-head .overview-title-block strong::after{
    content:"";
    display:block;
    width:6px;
    height:6px;
    flex:0 0 6px;
    border-radius:50%;
    background:#10b895;
    box-shadow:0 0 0 0 rgba(16,184,149,.18);
    animation:rc-live-title-pulse 2.6s ease-out infinite;
  }
  .traffic-overview-head .overview-mobile-subline,
  .train-overview-head .overview-mobile-subline{
    line-height:1.15!important;
    color:#789097!important;
  }
  .traffic-overview-actions,.train-overview-actions{align-items:center!important}

  /* Slightly calmer collapsed cards: less vertical chrome, more map. */
  #trafficOverview.is-collapsed,#trainOverview.is-collapsed,
  .traffic-overview.is-collapsed,.train-overview.is-collapsed{
    height:76px!important;
    min-height:76px!important;
    max-height:76px!important;
    padding-top:20px!important;
    padding-bottom:6px!important;
  }
  #trafficOverview.is-collapsed .traffic-overview-head,
  #trainOverview.is-collapsed .train-overview-head{
    min-height:43px!important;
    margin-bottom:0!important;
  }

  /* Weather Živě uses the same title-aligned pulse vocabulary. */
  .mobile-live-trigger .live-feed-pulse{display:none!important}
  .mobile-live-trigger b{
    display:inline-flex!important;
    align-items:center!important;
    gap:6px!important;
    line-height:1!important;
    color:#1e5c53!important;
  }
  .mobile-live-trigger b::after{
    content:"";
    width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:#10b895;
    box-shadow:0 0 0 0 rgba(16,184,149,.18);
    animation:rc-live-title-pulse 2.6s ease-out infinite;
  }
  #mobileSheet:not(.has-place):not(.is-live-open) .mobile-live-trigger>span{
    grid-template-columns:auto minmax(0,1fr)!important;
    gap:7px!important;
  }
  .mobile-live-head strong{
    display:inline-flex!important;
    align-items:center!important;
    gap:7px!important;
    line-height:1.1!important;
  }
  .mobile-live-head strong::before{
    content:"";
    width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:#10b895;
    box-shadow:0 0 0 0 rgba(16,184,149,.18);
    animation:rc-live-title-pulse 2.6s ease-out infinite;
  }
  .mobile-live-dock .mobile-live-dismiss,
  .mobile-live-head button{
    color:#71868d!important;
    border-color:rgba(25,67,75,.09)!important;
    background:rgba(248,251,251,.98)!important;
  }

  @keyframes rc-live-title-pulse{
    0%,45%{box-shadow:0 0 0 0 rgba(16,184,149,.18);opacity:1}
    78%{box-shadow:0 0 0 4px rgba(16,184,149,0);opacity:.92}
    100%{box-shadow:0 0 0 0 rgba(16,184,149,0);opacity:1}
  }
}

/* Full safe area only when Radar Česka is installed as a standalone/PWA. In a
   normal browser the visual viewport itself already excludes browser chrome,
   so reserving the full inset again creates the unwanted blank strip. */
@media(max-width:700px) and (display-mode:standalone){
  :root{--rc-mobile-nav-safe-bottom:env(safe-area-inset-bottom)}
}

@media(max-width:700px) and (prefers-reduced-motion:reduce){
  .traffic-overview-head .overview-title-block strong::after,
  .train-overview-head .overview-title-block strong::after,
  .mobile-live-trigger b::after,
  .mobile-live-head strong::before{animation:none!important;box-shadow:0 0 0 2px rgba(16,184,149,.10)!important}
}


/* Radar Česka · v0.4.3.11u · brand + mobile Živě panel polish
   - .cz is part of the brand on desktop and mobile, but visually secondary
   - mobile header keeps brand/search/menu on one row with a slightly shorter search
   - expanded Weather Živě has one close action, weather icon, top-right "Více živě"
   - the live list owns vertical scrolling so radar/model timeline can never trap it
*/
.brand-name{display:inline-flex;align-items:baseline;gap:1px;min-width:0;white-space:nowrap}
.brand-domain{font-size:11px;font-weight:780;letter-spacing:-.01em;color:#5f7780;opacity:.82}

@media(max-width:700px){
  /* Adding .cz must not push search or hamburger onto another line. */
  .brand-row{
    grid-template-columns:max-content minmax(112px,180px) max-content!important;
    justify-content:space-between!important;
  }
  .brand{gap:5px!important}
  .brand-name{gap:0!important}
  .brand-domain{font-size:7.7px!important;font-weight:800!important;color:#617980!important;opacity:.8!important}
  .search-wrap{
    width:100%!important;min-width:112px!important;max-width:180px!important;
    justify-self:stretch!important;
  }

  /* While the live panel is open, the compact dock and its dismiss X are not
     another control. This removes the duplicated close button. */
  #mobileSheet.is-live-open .mobile-live-dock,
  #mobileSheet.is-live-open > .mobile-sheet-close{display:none!important}

  /* The expanded weather live panel mirrors Traffic/Trains: icon -> title +
     subtle live pulse -> contextual actions. */
  .mobile-live-panel{min-width:0!important}
  .mobile-live-head{
    position:relative!important;top:auto!important;z-index:6!important;
    display:flex!important;align-items:center!important;justify-content:space-between!important;
    gap:8px!important;min-height:34px!important;margin:0 0 6px!important;padding:0 0 5px!important;
    background:rgba(255,255,255,.985)!important;
    border-bottom:1px solid rgba(18,55,65,.055)!important;
  }
  .mobile-live-title{display:flex;align-items:center;gap:7px;min-width:0}
  .mobile-live-weather-icon{
    display:grid;place-items:center;flex:0 0 26px;width:26px;height:26px;border-radius:9px;
    color:#0a927b;background:linear-gradient(180deg,#eaf9f5,#f4fcfa);
    border:1px solid rgba(11,191,156,.12)
  }
  .mobile-live-weather-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .mobile-live-head strong{
    display:inline-flex!important;align-items:center!important;gap:6px!important;
    min-width:0!important;font-size:9.6px!important;line-height:1!important;color:#244a52!important;
  }
  .mobile-live-head strong::before{display:none!important}
  .mobile-live-head strong::after{
    content:"";display:block;width:6px;height:6px;flex:0 0 6px;border-radius:50%;
    background:#10b895;box-shadow:0 0 0 0 rgba(16,184,149,.18);
    animation:rc-live-title-pulse 2.6s ease-out infinite
  }
  .mobile-live-head-actions{display:flex;align-items:center;gap:5px;flex:0 0 auto}
  .mobile-live-more{
    display:inline-flex;align-items:center;gap:3px;height:27px;padding:0 8px;border-radius:9px;
    background:rgba(11,191,156,.075);border:1px solid rgba(11,157,132,.10);
    color:#0b816d;text-decoration:none;font-size:7.4px;font-weight:850;white-space:nowrap
  }
  .mobile-live-more:active{transform:scale(.97)}
  .mobile-live-head #mobileLiveClose{
    display:grid!important;place-items:center!important;width:27px!important;height:27px!important;min-width:27px!important;
    padding:0!important;border:1px solid rgba(20,65,73,.08)!important;border-radius:9px!important;
    background:#f6f9f9!important;color:#71868d!important;font-size:16px!important;line-height:1!important
  }

  /* Dedicated touch scrolling. The outer sheet stays fixed while only the
     event list scrolls, so swipes do not get swallowed by the map/timeline. */
  #mobileSheet:not(.has-place).is-live-open{
    overflow:hidden!important;
    max-height:min(52dvh,430px)!important;
  }
  #mobileSheet:not(.has-place).is-live-open .mobile-live-panel{
    display:flex!important;flex-direction:column!important;min-height:0!important;
    max-height:calc(min(52dvh,430px) - 18px)!important;
  }
  .mobile-live-list{
    flex:1 1 auto!important;min-height:0!important;
    max-height:min(34dvh,300px)!important;overflow-y:auto!important;overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;touch-action:pan-y!important;
    scrollbar-width:thin;padding-right:2px!important
  }
  .mobile-live-list::-webkit-scrollbar{width:3px}
  .mobile-live-list::-webkit-scrollbar-thumb{background:rgba(57,94,101,.16);border-radius:999px}
  .mobile-live-foot{margin-top:5px!important;padding-top:5px!important;min-height:12px!important}
  .mobile-live-updated{text-align:left!important}
}

@media(max-width:370px){
  .brand-domain{font-size:7.1px!important}
  .brand-text{font-size:12.2px!important}
  .search-wrap{min-width:108px!important;max-width:158px!important}
  .mobile-live-more{padding:0 6px;font-size:6.9px}
}

@media(max-width:700px) and (prefers-reduced-motion:reduce){
  .mobile-live-head strong::after{animation:none!important;box-shadow:0 0 0 2px rgba(16,184,149,.10)!important}
}

/* Radar Česka · v0.4.3.13g · one-tap mobile full forecast */
@media(max-width:700px){
  #mobileForecastToggle{
    min-height:36px!important;
    padding:0 8px!important;
    border-radius:10px!important;
    -webkit-tap-highlight-color:transparent;
    -webkit-user-select:none;
    user-select:none;
    touch-action:manipulation!important;
    transition:background .12s ease,transform .08s ease,color .12s ease;
  }
  #mobileForecastToggle.is-pressing,
  #mobileForecastToggle:active{
    background:rgba(11,167,142,.075)!important;
    transform:scale(.985);
  }
  #mobileForecastToggle span{transition:transform .16s ease}
}


/* Radar Česka · v0.4.3.13i · deterministic one-tap mobile forecast CTA */
@media(max-width:700px){
  .mobile-situation-actions{
    position:relative!important;
    z-index:40!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
  }
  #mobileForecastToggle{
    position:relative!important;
    z-index:50!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    width:100%!important;
    min-width:100%!important;
    min-height:44px!important;
    height:44px!important;
    margin:0!important;
    padding:0 13px!important;
    box-sizing:border-box!important;
    border:1px solid rgba(11,167,142,.16)!important;
    border-radius:12px!important;
    background:rgba(236,249,246,.96)!important;
    color:#126f63!important;
    font-size:9.2px!important;
    font-weight:860!important;
    text-align:left!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
    -webkit-tap-highlight-color:transparent!important;
    user-select:none!important;
    -webkit-user-select:none!important;
  }
  #mobileForecastToggle::after{
    content:"";
    position:absolute;
    inset:-4px;
    border-radius:14px;
    pointer-events:none;
  }
  #mobileForecastToggle.is-pressing,
  #mobileForecastToggle:active{
    background:rgba(223,246,241,.98)!important;
    transform:scale(.992)!important;
  }
  #mobileForecastToggle span{
    display:grid!important;
    place-items:center!important;
    width:24px!important;
    height:24px!important;
    border-radius:8px!important;
    background:rgba(11,167,142,.08)!important;
    font-size:12px!important;
    pointer-events:none!important;
  }
  .mobile-city-link{
    width:100%!important;
    min-height:34px!important;
  }
  #mobileSheet.has-place[data-full-forecast="open"],
  #mobileSheet.has-place.is-expanded{
    height:calc(76dvh - env(safe-area-inset-top))!important;
    max-height:calc(76dvh - env(safe-area-inset-top))!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
  }
  #mobileSheet.has-place[data-full-forecast="open"] .mobile-weather-body,
  #mobileSheet.has-place.is-expanded .mobile-weather-body{
    display:block!important;
  }
}


/* Radar Česka · v0.4.3.13j · compact mobile forecast actions
   Keep the proven 13i one-tap hit handling, but return the CTA to a compact
   two-action row: "Celý přehled" + SEO "Detailně". */
@media(max-width:700px){
  .mobile-situation-actions{
    position:relative!important;
    z-index:40!important;
    display:flex!important;
    grid-template-columns:none!important;
    align-items:center!important;
    gap:7px!important;
    width:100%!important;
  }
  #mobileForecastToggle{
    flex:1 1 auto!important;
    width:auto!important;
    min-width:0!important;
    min-height:36px!important;
    height:36px!important;
    padding:0 9px 0 11px!important;
    border-radius:10px!important;
    background:rgba(239,249,247,.78)!important;
    border:1px solid rgba(11,167,142,.12)!important;
    font-size:8.6px!important;
    font-weight:850!important;
    line-height:1!important;
  }
  #mobileForecastToggle::after{
    inset:-2px!important;
    border-radius:11px!important;
  }
  #mobileForecastToggle span{
    width:20px!important;
    height:20px!important;
    flex:0 0 20px!important;
    border-radius:7px!important;
    background:rgba(11,167,142,.07)!important;
    font-size:11px!important;
    line-height:1!important;
  }
  .mobile-situation-actions .mobile-city-link{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:82px!important;
    min-height:36px!important;
    height:36px!important;
    padding:0 10px!important;
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    border-radius:10px!important;
    border:1px solid rgba(11,167,142,.16)!important;
    background:rgba(255,255,255,.78)!important;
    color:#127d6d!important;
    font-size:8.5px!important;
    font-weight:850!important;
    text-decoration:none!important;
    white-space:nowrap!important;
    touch-action:manipulation!important;
    -webkit-tap-highlight-color:transparent!important;
  }
  .mobile-situation-actions .mobile-city-link span{
    font-size:11px!important;
    line-height:1!important;
  }
  .mobile-situation-actions .mobile-city-link[hidden]{
    display:none!important;
  }
}

/* Radar Česka · v0.4.3.13k · mobile place-card pointer isolation
   app.css intentionally hides the automatic Radar/model timeline while a
   place card is open. The global timeline polish later re-enabled
   pointer-events with !important, so its invisible range input could still
   sit above "Celý přehled" and steal the first/whole tap. Keep the timeline
   fully inert for the entire lifetime of the mobile place sheet. */
@media(max-width:700px){
  .app-shell.has-place .timeline-shell.timeline-pro{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translate3d(0,18px,0)!important;
  }
  .app-shell.has-place .timeline-shell.timeline-pro,
  .app-shell.has-place .timeline-shell.timeline-pro *{
    pointer-events:none!important;
  }

  /* The contextual bottom navigation remains usable. Only the hidden
     time/radar range control is isolated; the place-card actions own their
     visible hit area without an invisible layer crossing them. */
  #mobileSheet.has-place .mobile-situation-actions,
  #mobileSheet.has-place #mobileForecastToggle,
  #mobileSheet.has-place #mobileCityLink{
    pointer-events:auto!important;
  }
}

/* Radar Česka · v0.4.3.13l · mobile readability polish
   Mobile only. Keep the current compact visual language, but remove the
   sub-8px type that is difficult to read on real phones. The hierarchy stays
   dense: captions are clearer, values gain contrast, navigation remains the
   same size and the map keeps as much space as possible. */
@media(max-width:700px){
  /* Primary mode chips: same seven-card layout, slightly more legible labels. */
  .layer-chip,
  .layer-chip:nth-of-type(n+4),
  .layer-chip:nth-of-type(n+6),
  .rc-mobile-alert-chip{
    font-size:8.2px!important;
    line-height:1.08!important;
    font-weight:780!important;
  }

  /* Weather playback: the old 5.65px captions were below practical phone
     readability. Add only four pixels to the dock and use a clear micro-type
     scale without changing the interaction or timeline geometry. */
  :root{--rc-mobile-timeline-h:66px}
  .timeline-shell.timeline-pro{
    min-height:62px!important;
    height:62px!important;
  }
  .timeline-shell .timeline-main{
    grid-template-columns:minmax(132px,156px) minmax(0,1fr) auto!important;
    padding-top:6px!important;
    padding-bottom:6px!important;
  }
  .timeline-shell .timeline-kind{
    font-size:6.8px!important;
    line-height:1.12!important;
    letter-spacing:.04em!important;
    font-weight:850!important;
    color:#55717a!important;
  }
  .timeline-shell .timeline-now strong,
  .timeline-shell #frameTime{
    font-size:11.4px!important;
    line-height:1.05!important;
    font-weight:900!important;
    color:#143c46!important;
  }
  .timeline-shell .timeline-ticks span{
    font-size:6.8px!important;
    line-height:1!important;
    font-weight:830!important;
    color:#647d85!important;
  }
  .timeline-shell #leadBadge{
    font-size:8.3px!important;
    font-weight:880!important;
  }

  /* Bottom navigation: retain the existing icon-first appearance but make
     labels readable at a glance. */
  #mobileWeatherNav .mobile-nav-item,
  #mobileTrafficNav .mobile-traffic-btn,
  #mobileTrainNav .mobile-train-btn{
    font-size:8.5px!important;
    line-height:1.05!important;
    font-weight:780!important;
  }
  #mobileWeatherNav .mobile-nav-item>span:last-child,
  #mobileTrainNav .mobile-train-btn>b{
    font-size:8.5px!important;
    line-height:1.05!important;
    font-weight:790!important;
    letter-spacing:-.01em!important;
  }

  /* Train detail — keep the current card composition, just give captions,
     route data and journey rows a professional readable type hierarchy. */
  #trainDetailCard .train-detail-kicker{
    font-size:8.9px!important;
    line-height:1.15!important;
    font-weight:850!important;
    letter-spacing:.055em!important;
  }
  #trainDetailCard .train-detail-freshness{
    font-size:8.4px!important;
    font-weight:820!important;
  }
  #trainDetailCard .train-detail-title-row h2,
  #trainDetailCard #trainDetailTitle{
    font-size:19px!important;
    line-height:1.08!important;
    letter-spacing:-.025em!important;
  }
  #trainDetailCard #trainDetailRoute{
    font-size:10.2px!important;
    line-height:1.35!important;
    color:#587079!important;
  }
  #trainDetailCard .train-detail-delay span{
    font-size:8.8px!important;
    line-height:1.15!important;
    font-weight:720!important;
    color:#6a8188!important;
  }
  #trainDetailCard .train-detail-delay strong{
    font-size:13.2px!important;
    line-height:1.12!important;
    font-weight:880!important;
  }
  #trainDetailCard .train-eta-copy small{
    font-size:8.3px!important;
    line-height:1.12!important;
    font-weight:820!important;
    letter-spacing:.025em!important;
  }
  #trainDetailCard .train-eta-copy strong{
    font-size:11.2px!important;
    line-height:1.16!important;
    font-weight:860!important;
  }
  #trainDetailCard .train-eta-copy em{
    font-size:8.8px!important;
    line-height:1.18!important;
  }
  #trainDetailCard .train-eta>b{
    font-size:9.1px!important;
    font-weight:900!important;
  }
  #trainDetailCard .train-detail-meta>span{
    font-size:8.7px!important;
    line-height:1.12!important;
    font-weight:700!important;
    color:#6b8087!important;
  }
  #trainDetailCard .train-detail-meta>strong{
    font-size:10.7px!important;
    line-height:1.22!important;
    font-weight:840!important;
    color:#123d46!important;
  }
  #trainDetailCard .train-journey-head>span{
    font-size:11.2px!important;
    line-height:1.15!important;
    font-weight:900!important;
  }
  #trainDetailCard .train-journey-actions strong,
  #trainDetailCard .train-journey-actions button{
    font-size:8.3px!important;
    font-weight:820!important;
  }
  #trainDetailCard .train-journey-list{
    font-size:9.2px!important;
    line-height:1.25!important;
  }
  #trainDetailCard .train-journey-list :is(strong,b){
    font-size:10.4px!important;
    line-height:1.18!important;
    font-weight:840!important;
  }
  #trainDetailCard .train-journey-list :is(small,em,time){
    font-size:8.2px!important;
    line-height:1.2!important;
    color:#6e838a!important;
  }
  #trainDetailCard .train-journey-note,
  #trainDetailCard .train-detail-foot{
    font-size:8.1px!important;
    line-height:1.25!important;
    color:#6e838a!important;
  }

  /* Traffic detail — description and facts are content, not footnotes. */
  #incidentCard .traffic-incident-kicker{
    font-size:9px!important;
    line-height:1.15!important;
    font-weight:870!important;
    letter-spacing:.045em!important;
  }
  #incidentCard h2,
  #incidentCard #incidentTitle{
    font-size:18.5px!important;
    line-height:1.12!important;
    letter-spacing:-.025em!important;
  }
  #incidentCard .traffic-incident-roadline{
    font-size:9.3px!important;
    line-height:1.2!important;
    font-weight:820!important;
  }
  #incidentCard #incidentDescription{
    font-size:10.5px!important;
    line-height:1.42!important;
    font-weight:520!important;
    color:#536b73!important;
  }
  #incidentCard .traffic-incident-facts,
  #incidentCard .traffic-incident-section{
    font-size:10px!important;
    line-height:1.35!important;
    color:#49636b!important;
  }
  #incidentCard .traffic-incident-meta>span{
    font-size:8.8px!important;
    line-height:1.12!important;
    font-weight:710!important;
    color:#6b8087!important;
  }
  #incidentCard .traffic-incident-meta>strong{
    font-size:10.4px!important;
    line-height:1.18!important;
    font-weight:850!important;
    color:#123d46!important;
  }
  #incidentCard .traffic-incident-source{
    font-size:8.2px!important;
    line-height:1.2!important;
    color:#6c8188!important;
  }

  /* Live overview sublines were 7–7.5px. They stay secondary, but no longer
     look like inaccessible legal copy. */
  .traffic-overview-head .overview-mobile-subline,
  .train-overview-head .overview-mobile-subline{
    font-size:8.6px!important;
    line-height:1.2!important;
    font-weight:700!important;
    color:#667f87!important;
  }
}

@media(max-width:370px){
  /* On the narrowest phones protect the seven-column header from wrapping. */
  .layer-chip,.rc-mobile-alert-chip{font-size:7.7px!important}
  #mobileWeatherNav .mobile-nav-item,
  #mobileTrafficNav .mobile-traffic-btn,
  #mobileTrainNav .mobile-train-btn,
  #mobileWeatherNav .mobile-nav-item>span:last-child,
  #mobileTrainNav .mobile-train-btn>b{font-size:8px!important}
}

/* Radar Česka · v0.4.3.13m · mobile live clarity
   Mobile-only refinement of the weather live preview and traffic overview.
   Goal: readable editorial hierarchy instead of tiny table-like data blocks. */
@media(max-width:700px){
  /* ---------- Weather · compact status on the map ---------- */
  #mobileSheet:not(.has-place):not(.is-live-open){
    width:min(238px,calc(100vw - 78px))!important;
  }
  #mobileSheet:not(.has-place):not(.is-live-open) .mobile-live-dock{
    grid-template-columns:minmax(0,1fr) 34px!important;
    gap:6px!important;
  }
  #mobileSheet:not(.has-place):not(.is-live-open) .mobile-live-trigger{
    height:42px!important;
    min-height:42px!important;
    padding:0 9px 0 12px!important;
    border-radius:14px!important;
    border:1px solid rgba(17,75,77,.11)!important;
    background:rgba(255,255,255,.965)!important;
    box-shadow:0 7px 22px rgba(25,58,65,.11)!important;
    backdrop-filter:blur(18px) saturate(135%)!important;
  }
  #mobileSheet:not(.has-place):not(.is-live-open) .mobile-live-trigger>span{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    column-gap:8px!important;
    row-gap:2px!important;
    align-items:center!important;
    min-width:0!important;
  }
  #mobileSheet:not(.has-place):not(.is-live-open) .mobile-live-trigger b{
    grid-column:1!important;
    grid-row:1 / span 2!important;
    font-size:10.2px!important;
    line-height:1!important;
    font-weight:900!important;
    letter-spacing:-.01em!important;
    color:#174e47!important;
  }
  #mobileSheet:not(.has-place):not(.is-live-open) .mobile-live-trigger b::after{
    width:6px!important;height:6px!important;flex-basis:6px!important;
  }
  #mobileSheet:not(.has-place):not(.is-live-open) .mobile-live-trigger small{
    display:block!important;
    grid-column:2!important;
    grid-row:1 / span 2!important;
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:8.6px!important;
    line-height:1.15!important;
    font-weight:700!important;
    color:#6f858b!important;
  }
  #mobileSheet:not(.has-place):not(.is-live-open) .mobile-live-trigger>em{
    display:grid!important;
    place-items:center!important;
    width:24px!important;height:24px!important;
    margin-left:4px!important;
    border-radius:8px!important;
    background:#eef8f5!important;
    color:#178c77!important;
    font-size:16px!important;
    font-style:normal!important;
  }
  #mobileSheet:not(.has-place):not(.is-live-open) .mobile-live-dismiss{
    width:34px!important;height:42px!important;min-width:34px!important;
    border-radius:14px!important;
    border:1px solid rgba(17,75,77,.09)!important;
    background:rgba(255,255,255,.945)!important;
    box-shadow:0 7px 22px rgba(25,58,65,.08)!important;
    color:#71858b!important;
    font-size:16px!important;
  }

  /* ---------- Weather · expanded live digest ---------- */
  #mobileSheet:not(.has-place).is-live-open{
    max-height:min(56dvh,470px)!important;
    padding:12px 11px 10px!important;
    border-radius:20px!important;
    border-color:rgba(18,61,69,.08)!important;
    box-shadow:0 18px 52px rgba(24,58,65,.18)!important;
  }
  #mobileSheet:not(.has-place).is-live-open .mobile-live-panel{
    max-height:calc(min(56dvh,470px) - 20px)!important;
  }
  .mobile-live-head{
    min-height:40px!important;
    margin:0 0 8px!important;
    padding:0 1px 8px!important;
  }
  .mobile-live-weather-icon{
    width:31px!important;height:31px!important;flex-basis:31px!important;
    border-radius:10px!important;
  }
  .mobile-live-weather-icon svg{width:17px!important;height:17px!important}
  .mobile-live-head strong{
    font-size:12.6px!important;
    line-height:1.1!important;
    font-weight:900!important;
    letter-spacing:-.018em!important;
    color:#183f48!important;
  }
  .mobile-live-more{
    height:31px!important;
    padding:0 9px!important;
    border-radius:10px!important;
    font-size:8.7px!important;
    font-weight:850!important;
  }
  .mobile-live-head #mobileLiveClose{
    width:31px!important;height:31px!important;min-width:31px!important;
    border-radius:10px!important;
  }
  .mobile-live-list{
    gap:7px!important;
    max-height:min(38dvh,326px)!important;
    padding:1px 1px 2px!important;
  }
  .mobile-live-item{
    position:relative!important;
    display:grid!important;
    grid-template-columns:34px minmax(0,1fr) 15px!important;
    gap:9px!important;
    align-items:center!important;
    min-height:62px!important;
    padding:9px 9px!important;
    border:1px solid rgba(29,75,82,.075)!important;
    border-radius:14px!important;
    background:linear-gradient(180deg,rgba(255,255,255,.99),rgba(247,250,250,.97))!important;
    box-shadow:0 4px 14px rgba(25,58,65,.055)!important;
    text-align:left!important;
  }
  .mobile-live-item:active{transform:scale(.993)!important}
  .mobile-live-item-icon{
    display:grid!important;
    place-items:center!important;
    width:34px!important;height:34px!important;
    border-radius:11px!important;
    background:#eef8f5!important;
    color:#158b77!important;
    font-size:17px!important;
    line-height:1!important;
  }
  .mobile-live-item[data-kind="warning"] .mobile-live-item-icon,
  .mobile-live-item[data-kind="storm"] .mobile-live-item-icon,
  .mobile-live-item[data-kind="storm_approaching"] .mobile-live-item-icon{background:#fff3e9!important;color:#d56b2c!important}
  .mobile-live-item[data-kind="wind_strong"] .mobile-live-item-icon,
  .mobile-live-item[data-kind="wind_increase"] .mobile-live-item-icon{background:#eef7fb!important;color:#4e86a4!important}
  .mobile-live-item-copy{
    min-width:0!important;
    display:grid!important;
    gap:4px!important;
  }
  .mobile-live-item-top{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:8px!important;
    min-width:0!important;
  }
  .mobile-live-item-copy strong{
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:10.8px!important;
    line-height:1.16!important;
    font-weight:900!important;
    letter-spacing:-.012em!important;
    color:#1c454e!important;
  }
  .mobile-live-item-time{
    flex:0 0 auto!important;
    display:inline-flex!important;
    align-items:center!important;
    min-height:20px!important;
    padding:0 6px!important;
    border-radius:999px!important;
    background:#f0f5f5!important;
    color:#667e85!important;
    font-size:7.7px!important;
    line-height:1!important;
    font-weight:850!important;
    font-style:normal!important;
  }
  .mobile-live-item-copy>span:not(.mobile-live-item-top){
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    overflow:hidden!important;
    font-size:8.8px!important;
    line-height:1.28!important;
    font-weight:560!important;
    color:#637a81!important;
  }
  .mobile-live-item-chevron{
    display:grid!important;
    place-items:center!important;
    color:#8ba0a5!important;
    font-size:19px!important;
    font-style:normal!important;
  }
  .mobile-live-item .live-feed-new-badge,
  .mobile-live-item .live-feed-update-badge{
    margin-left:5px!important;
    padding:2px 4px!important;
    border-radius:999px!important;
    font-size:6.2px!important;
    vertical-align:1px!important;
  }
  .mobile-live-empty{
    display:grid!important;
    gap:3px!important;
    padding:13px 14px!important;
    border:1px solid rgba(28,78,84,.07)!important;
    border-radius:14px!important;
    background:#f6faf9!important;
    color:#60777e!important;
    line-height:1.3!important;
  }
  .mobile-live-empty strong{font-size:10.6px!important;color:#28534f!important}
  .mobile-live-empty span{font-size:8.8px!important;color:#70858b!important}
  .mobile-live-foot{
    margin-top:7px!important;
    padding:7px 2px 0!important;
    border-top:1px solid rgba(18,55,65,.055)!important;
  }
  .mobile-live-updated{font-size:7.8px!important;color:#829499!important}

  /* ---------- Traffic · compact live card ---------- */
  #trafficOverview.is-collapsed,
  .traffic-overview.is-collapsed{
    height:72px!important;
    min-height:72px!important;
    max-height:72px!important;
    padding:19px 10px 7px!important;
    border-radius:18px!important;
    background:rgba(255,255,255,.975)!important;
    box-shadow:0 12px 32px rgba(25,58,65,.14)!important;
  }
  #trafficOverview.is-collapsed .traffic-overview-head,
  .traffic-overview.is-collapsed .traffic-overview-head{
    min-height:44px!important;
    margin:0!important;
  }
  .traffic-overview-head .overview-kicker{display:none!important}
  .traffic-overview-head .overview-title-block{
    min-height:36px!important;
    padding-left:40px!important;
    gap:3px!important;
  }
  .traffic-overview-head .overview-title-block::before{
    width:30px!important;height:30px!important;
    -webkit-mask-size:20px 20px!important;mask-size:20px 20px!important;
    border-radius:10px!important;
  }
  .traffic-overview-head .overview-title-block strong{
    font-size:13.8px!important;
    line-height:1.08!important;
    font-weight:900!important;
    letter-spacing:-.018em!important;
    color:#183f48!important;
  }
  .traffic-overview-head .overview-mobile-subline{
    display:block!important;
    max-width:min(61vw,270px)!important;
    font-size:9px!important;
    line-height:1.18!important;
    font-weight:680!important;
    color:#6b8289!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  .traffic-overview-actions button{
    width:31px!important;height:31px!important;
    border-radius:10px!important;
    background:#f7fafa!important;
    border-color:rgba(26,71,78,.08)!important;
    color:#6d858b!important;
  }

  /* ---------- Traffic · expanded overview: editorial list, not a table ---------- */
  #trafficOverview:not(.is-collapsed),
  .traffic-overview:not(.is-collapsed){
    max-height:min(58dvh,500px)!important;
    padding-left:11px!important;
    padding-right:11px!important;
    padding-bottom:10px!important;
    border-radius:20px!important;
  }
  #trafficOverview:not(.is-collapsed) .traffic-overview-head{
    margin-bottom:8px!important;
  }
  .traffic-status-badge,
  .traffic-overview-grid,
  .traffic-overview-text.overview-copy-redundant{display:none!important}
  .traffic-overview-scope{
    margin:4px 0 8px!important;
    padding:3px!important;
    gap:3px!important;
    border-radius:12px!important;
    background:#f2f6f6!important;
  }
  .traffic-overview-scope button{
    min-height:34px!important;
    border-radius:9px!important;
    gap:5px!important;
    font-size:8.8px!important;
    font-weight:850!important;
    color:#6a8288!important;
  }
  .traffic-overview-scope button span{font-size:12px!important}
  .traffic-overview-scope button.is-active{
    background:#fff!important;
    color:#1d5a52!important;
    box-shadow:0 2px 10px rgba(24,65,72,.075)!important;
  }
  .traffic-overview-list{
    display:grid!important;
    gap:7px!important;
    margin-top:0!important;
    max-height:min(34dvh,292px)!important;
    padding:1px!important;
  }
  .traffic-overview-item{
    grid-template-columns:34px minmax(0,1fr) 16px!important;
    gap:9px!important;
    min-height:58px!important;
    padding:8px 9px!important;
    border:1px solid rgba(29,75,82,.075)!important;
    border-radius:14px!important;
    background:linear-gradient(180deg,#fff,#f8fafa)!important;
    box-shadow:0 4px 14px rgba(25,58,65,.045)!important;
    transform:none!important;
  }
  .traffic-overview-item:hover{transform:none!important}
  .traffic-overview-item:active{background:#f5f9f8!important;transform:scale(.994)!important}
  .traffic-overview-item-icon{
    width:34px!important;height:34px!important;
    border-radius:11px!important;
  }
  .traffic-overview-item-icon svg{width:18px!important;height:18px!important}
  .traffic-overview-item-copy{gap:4px!important}
  .traffic-overview-item-copy b{
    font-size:10.5px!important;
    line-height:1.16!important;
    font-weight:900!important;
    letter-spacing:-.01em!important;
    color:#214952!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  .traffic-overview-item-copy small{
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    overflow:hidden!important;
    font-size:8.5px!important;
    line-height:1.25!important;
    font-weight:600!important;
    color:#71868c!important;
  }
  .traffic-overview-item-arrow{
    font-size:19px!important;
    color:#91a2a6!important;
  }
  .traffic-overview-more{
    min-height:35px!important;
    margin-top:7px!important;
    border-radius:11px!important;
    font-size:8.7px!important;
    font-weight:850!important;
  }
  .traffic-overview-empty{
    padding:13px 12px!important;
    border-radius:13px!important;
    background:#f6f9f9!important;
    font-size:9px!important;
    line-height:1.35!important;
    color:#6e8389!important;
  }
  .traffic-overview-foot{
    margin-top:7px!important;
    padding-top:7px!important;
    font-size:7.8px!important;
    line-height:1.2!important;
    color:#819499!important;
  }
}

@media(max-width:370px){
  #mobileSheet:not(.has-place):not(.is-live-open){width:min(218px,calc(100vw - 74px))!important}
  #mobileSheet:not(.has-place):not(.is-live-open) .mobile-live-trigger small{display:block!important;font-size:8.1px!important}
  .mobile-live-item{grid-template-columns:32px minmax(0,1fr) 13px!important;gap:7px!important}
  .mobile-live-item-icon{width:32px!important;height:32px!important;font-size:16px!important}
  .traffic-overview-head .overview-mobile-subline{max-width:54vw!important;font-size:8.5px!important}
}
@media(max-width:700px){.mobile-live-item-chevron{padding:0!important;line-height:1!important}}
