.guide-weather-host {
  position: relative !important;
}

.weather-section,
.weather-pill {
  display: none !important;
}

.guide-weather-forecast {
  --weather-ink: #f7f5ef;
  --weather-muted: rgba(255, 255, 255, .76);
  position: absolute;
  z-index: 12;
  top: clamp(24px, 4vw, 58px);
  right: clamp(18px, 4vw, 64px);
  display: flex;
  align-items: stretch;
  max-width: min(720px, calc(100% - 36px));
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 9px;
  background: rgba(42, 48, 52, .72);
  color: var(--weather-ink);
  box-shadow: 0 12px 34px rgba(0, 0, 0, .18);
  backdrop-filter: blur(14px) saturate(110%);
  -webkit-backdrop-filter: blur(14px) saturate(110%);
  font-family: inherit;
  line-height: 1.15;
}

.guide-weather-forecast[data-inline="true"] {
  position: static;
  flex: 0 1 auto;
  max-width: min(620px, 68vw);
}

.guide-weather-day {
  display: grid;
  grid-template-columns: auto auto auto;
  align-items: baseline;
  gap: 7px;
  padding: 12px 15px;
  white-space: nowrap;
}

.guide-weather-day + .guide-weather-day {
  border-left: 1px solid rgba(255, 255, 255, .2);
}

.guide-weather-label {
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .02em;
}

.guide-weather-temp {
  font-size: .78rem;
  font-weight: 760;
}

.guide-weather-rain {
  color: var(--weather-muted);
  font-size: .68rem;
  font-weight: 700;
}

.guide-weather-source {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

@media (max-width: 760px) {
  .guide-weather-forecast,
  .guide-weather-forecast[data-inline="true"] {
    position: absolute;
    right: 14px;
    display: grid;
    width: auto;
    max-width: calc(100% - 28px);
  }

  .guide-weather-forecast,
  .guide-weather-forecast[data-inline="true"] { top: 78px; }

  .guide-weather-forecast[data-city="Pisa"] { top: 16px; }

  .guide-weather-day {
    grid-template-columns: 58px auto auto;
    gap: 6px;
    padding: 8px 10px;
  }

  .guide-weather-day + .guide-weather-day {
    border-top: 1px solid rgba(255, 255, 255, .2);
    border-left: 0;
  }

  .guide-weather-label { font-size: .64rem; }
  .guide-weather-temp { font-size: .68rem; }
  .guide-weather-rain { font-size: .61rem; }
}

@media print {
  .guide-weather-forecast { display: none !important; }
}
