/* components.css — wersja uporządkowana: usunięto stare warstwy hero i nieużywane selektory. */

.pk-advice-grid div{
  padding: 16px;
  border-radius: 22px;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.09);
}

.pk-rain-stats div{
  padding: 16px;
  border-radius: 22px;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.09);
}

.pk-advice-grid span{
  display: block;
  color: var(--faint);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .13em;
  font-weight: 900;
}

.pk-rain-stats span{
  display: block;
  color: var(--faint);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .13em;
  font-weight: 900;
}

.pk-data-card small{
  display: block;
  color: var(--faint);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .13em;
  font-weight: 900;
}

.pk-two-col small{
  display: block;
  color: var(--faint);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .13em;
  font-weight: 900;
}

.pk-ai h3{
  font-size: 27px;
  line-height: 1.05;
  margin: 26px 0 14px;
  letter-spacing: -.045em;
}

.pk-ai p{
  color: var(--muted);
  line-height: 1.65;
  margin: 0;
}

.pk-ai footer{
  display: flex;
  justify-content: space-between;
  gap: 14px;
  margin-top: 24px;
  color: var(--faint);
  font-size: 12px;
}

.pk-pogodynek__speech{
  font-size: 18px;
  line-height: 1.45;
  color: var(--muted);
  margin: 0 0 22px;
}

.pk-advice-grid{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.pk-advice-grid strong{
  display: block;
  margin-top: 8px;
}

meter{
  width: 100%;
  height: 10px;
}

.pk-forecast-strip{
  display: grid;
  grid-template-columns: repeat(5,1fr);
  gap: 12px;
  margin-top: 22px;
}

.forecast-day{
  min-height: 160px;
  border-radius: 24px;
  padding: 16px;
  background: rgba(255,255,255,.065);
  border: 1px solid rgba(255,255,255,.08);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.forecast-day .day-name{
  color: var(--faint);
  font-weight: 900;
}

.forecast-day img{
  width: 42px;
  height: 42px;
}

.temperature-bar-container{
  height: 8px;
  border-radius: 999px;
  background: rgba(255,255,255,.10);
  position: relative;
  overflow: hidden;
}

.temperature-bar{
  border-radius: 999px;
}

.temperature-values{
  font-weight: 900;
}

.pk-rain-context p{
  color: var(--muted);
  line-height: 1.6;
}

.pk-rain-stats{
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 12px;
  margin-top: 22px;
}

.pk-rain-stats strong{
  font-size: 22px;
}

.pk-chart-card--main .pk-chart-placeholder{
  min-height: 650px;
}

.pk-data-card{
  padding: 24px;
  min-height: 230px;
}

.pk-data-card>span{
  font-size: 34px;
}

.pk-data-card h3{
  font-size: 22px;
  margin: 14px 0 18px;
  letter-spacing: -.04em;
}

.pk-data-card p{
  color: var(--muted);
  line-height: 1.55;
}

.pk-two-col{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.pk-two-col>div{
  padding: 14px;
  border-radius: 18px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.08);
}

.pk-two-col strong{
  display: block;
  font-size: 22px;
  margin-top: 8px;
}

.pk-two-col em{
  display: block;
  color: var(--faint);
  font-style: normal;
  margin-top: 6px;
}

.pk-class-pill{
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  border-radius: 16px;
  padding: 10px 13px;
  background: rgba(255,255,255,.09);
  font-weight: 900;
}

.pk-data-card--live span{
  color: var(--green);
  text-shadow: 0 0 20px rgba(74,222,128,.55);
}

.pk-record-card h2{
  font-size: 34px;
  margin: 0;
}

.pk-record-value{
  font-size: clamp(70px,8vw,125px);
  font-weight: 950;
  letter-spacing: -.105em;
  background: linear-gradient(180deg,#fff7ed,#fb923c,#ef4444);
  -webkit-background-clip: text;
  color: transparent;
  margin: 20px 0;
}

.pk-record-card p{
  color: var(--muted);
  font-size: 17px;
}

.pk-record-mini span{
  font-size: 46px;
}

.pk-record-mini p{
  margin: 16px 0 6px;
  color: var(--muted);
  font-weight: 900;
}

.pk-record-mini strong{
  font-size: 38px;
  letter-spacing: -.06em;
}

.pk-atmosphere{
  position: fixed;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
  z-index: -1;
}

.pk-cloud{
  position: absolute;
  width: 360px;
  height: 120px;
  border-radius: 999px;
  background: radial-gradient(circle at 28% 45%,rgba(255,255,255,.16),transparent 38%),radial-gradient(circle at 58% 42%,rgba(255,255,255,.10),transparent 42%);
  filter: blur(14px);
  opacity: .34;
  animation: pk-cloud-move 42s linear infinite;
}

.pk-cloud--one{
  top: 120px;
  left: -280px;
}

.pk-cloud--two{
  top: 360px;
  right: -320px;
  animation-duration: 58s;
  animation-direction: reverse;
}

.pk-rain-layer{
  position: absolute;
  inset: -20%;
  opacity: 0;
  background-image: linear-gradient(115deg,rgba(125,211,252,.0) 0 45%,rgba(125,211,252,.26) 46% 47%,rgba(125,211,252,0) 48%);
  background-size: 34px 34px;
  animation: pk-rain-fall .7s linear infinite;
}

.pk-stars{
  position: absolute;
  inset: 0;
  opacity: .18;
  background-image: radial-gradient(circle,rgba(255,255,255,.85) 1px,transparent 1.5px),radial-gradient(circle,rgba(255,255,255,.55) 1px,transparent 1.5px);
  background-size: 120px 120px,210px 210px;
  background-position: 0 0,38px 70px;
}

.pk-theme-day .pk-stars{
  opacity: 0;
}

.pk-theme-evening .pk-stars{
  opacity: 0;
}

.pk-theme-heat .pk-stars{
  opacity: 0;
}

.pk-theme-rain .pk-rain-layer{
  opacity: .34;
}

.pk-theme-rain .pk-cloud{
  opacity: .55;
}

.pk-theme-day .pk-cloud{
  opacity: .24;
}

.pk-theme-heat .pk-cloud{
  opacity: .24;
}

.pk-theme-evening .pk-cloud{
  opacity: .38;
}

.pk-top-actions{
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
}

.pk-soft-button:hover{
  transform: translateY(-2px);
  background: rgba(255,255,255,.12);
  border-color: rgba(255,255,255,.22);
}

.pk-live{
  position: relative;
}

.pk-live small{
  display: block;
  color: var(--faint);
  font-size: 10px;
  margin-left: 3px;
  line-height: 1;
}

.pk-pogodynek__mascot{
  position: relative;
  width: max-content;
  margin-bottom: 18px;
}

.pk-pogodynek__halo{
  position: absolute;
  inset: -14px;
  border-radius: 34px;
  background: radial-gradient(circle,rgba(56,232,255,.18),transparent 70%);
  filter: blur(6px);
  z-index: -1;
  animation: pk-pulse-soft 3.4s ease-in-out infinite;
}

.pk-pogodynek__face{
  width: 82px;
  height: 82px;
  border-radius: 30px;
  display: grid;
  place-items: center;
  font-size: 42px;
  background: radial-gradient(circle at 30% 20%,rgba(255,255,255,.22),rgba(56,232,255,.09));
  border: 1px solid rgba(56,232,255,.25);
  box-shadow: 0 20px 70px rgba(56,232,255,.10);
  margin-bottom: 18px;
  position: relative;
  z-index: 2;
  transition: transform .28s ease;
}

.pk-pogodynek:hover .pk-pogodynek__face{
  transform: translateY(-3px) rotate(-2deg) scale(1.03);
}

.pk-soft-button{
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.075);
  color: var(--text);
  border-radius: 18px;
  min-width: auto;
  height: auto;
  font-weight: 950;
  cursor: pointer;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.11);
  transition: transform .22s ease,background .22s ease,border-color .22s ease;
  padding: 13px 16px;
  margin-top: 12px;
}

.pk-card:hover{
  transform: translateY(-3px);
  border-color: rgba(157,202,255,.24);
  box-shadow: 0 30px 100px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.12);
}

.pk-record-card{
  background: radial-gradient(circle at 80% 20%,rgba(251,146,60,.28),transparent 34%),linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.032));
  position: relative;
  overflow: hidden;
}

.pk-record-card:after{
  content: "";
  position: absolute;
  right: -90px;
  top: -120px;
  width: 320px;
  height: 320px;
  border-radius: 999px;
  background: radial-gradient(circle,rgba(239,68,68,.34),transparent 70%);
  filter: blur(3px);
  pointer-events: none;
}

.pk-tv-mode .pk-topbar{
  display: none;
}

.pk-tv-mode .pk-app{
  padding-top: 28px;
}

.pk-tv-mode .pk-shell{
  max-width: 1800px;
}

.pk-tv-mode .pk-hero{
  min-height: calc(100vh - 90px);
}

.pk-tv-mode .pk-footer{
  display: none;
}

.pk-chart-command{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin: 12px 0 18px;
  padding: 20px;
  border-radius: 28px;
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.09);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
}

.pk-chart-command__lead{
  display: flex;
  align-items: center;
  gap: 16px;
}

.pk-chart-command__lead>span{
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border-radius: 18px;
  background: rgba(96,165,250,.16);
  font-size: 26px;
}

.pk-chart-command h3{
  margin: 0;
  font-size: 22px;
  letter-spacing: -.045em;
}

.pk-chart-pills{
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.pk-chart-pills span{
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 0 14px;
  border-radius: 999px;
  background: rgba(255,255,255,.075);
  border: 1px solid rgba(255,255,255,.10);
  font-weight: 900;
  color: var(--muted);
}

.pk-chart-pills span.is-active{
  color: #fff;
  background: linear-gradient(135deg,rgba(96,165,250,.28),rgba(56,232,255,.16));
  border-color: rgba(125,211,252,.28);
  box-shadow: 0 0 28px rgba(56,232,255,.12);
}

.pk-ai{
  min-height: 250px;
}

.pk-pogodynek{
  min-height: 250px;
}

.pk-card__top h2{
  letter-spacing: -.06em;
}

.pk-pogodynek h2{
  margin: 0 0 14px;
  font-size: 30px;
  letter-spacing: -.06em;
}

.pk-ai h2{
  letter-spacing: -.06em;
}

.pk-theme-heat .pk-nowline>div:first-child{
  box-shadow: 0 0 42px rgba(251,146,60,.14),inset 0 1px 0 rgba(255,255,255,.11);
}

.pk-theme-rain .pk-nowline>div:nth-child(3){
  box-shadow: 0 0 42px rgba(56,232,255,.14),inset 0 1px 0 rgba(255,255,255,.11);
}

.pk-chart-grid{
  stroke: rgba(214,230,255,.075);
  stroke-width: 1;
}

.pk-chart-line{
  fill: none;
  stroke-width: 4;
  stroke-linecap: round;
  stroke-linejoin: round;
  filter: drop-shadow(0 12px 18px rgba(0,0,0,.25));
}

.pk-chart-area{
  opacity: .22;
}

.pk-chart-dot{
  stroke: rgba(255,255,255,.7);
  stroke-width: 2;
}

.pk-chart-bars rect{
  rx: 7;
  filter: drop-shadow(0 10px 16px rgba(0,0,0,.22));
}

.pk-chart-labels{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  color: var(--faint);
  font-size: 12px;
  font-weight: 800;
  margin-top: 10px;
}

.pk-chart-summary{
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 10px;
  margin-top: 14px;
}

.pk-chart-summary div{
  border-radius: 18px;
  padding: 12px;
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.07);
}

.pk-chart-summary small{
  display: block;
  color: var(--faint);
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: 10px;
  font-weight: 900;
  margin-bottom: 5px;
}

.pk-chart-summary strong{
  font-size: 18px;
  letter-spacing: -.03em;
}

.pk-public-beta-note h2{
  margin: 0;
  font-size: 28px;
  letter-spacing: -.05em;
}

.pk-public-beta-note p:last-child{
  margin: 0;
  color: var(--muted);
  line-height: 1.6;
}

.pk-chart-command--real .pk-chart-pills button{
  border: 1px solid rgba(255,255,255,.1);
  cursor: pointer;
  font: inherit;
  color: inherit;
  background: rgba(255,255,255,.07);
  border-radius: 999px;
  padding: 10px 14px;
  transition: .2s ease;
}

.pk-chart-command--real .pk-chart-pills button:hover{
  background: rgba(255,255,255,.18);
  transform: translateY(-1px);
}

.pk-chart-command--real .pk-chart-pills button.is-active{
  background: rgba(255,255,255,.18);
  transform: translateY(-1px);
}

.pk-chart-split{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.pk-empty-chart{
  min-height: 320px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  text-align: center;
  border: 1px dashed rgba(255,255,255,.18);
  border-radius: 22px;
  background: rgba(255,255,255,.035);
  padding: 28px;
  color: rgba(255,255,255,.78);
}

.pk-empty-chart code{
  color: #fff;
  background: rgba(255,255,255,.1);
  padding: 2px 6px;
  border-radius: 8px;
}

.pk-data-error{
  width: 100%;
  padding: 20px;
  border-radius: 20px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.1);
  display: flex;
  flex-direction: column;
  gap: 6px;
  color: rgba(255,255,255,.75);
}

.pk-data-error strong{
  color: #fff;
  font-size: 18px;
}

.pk-temp.temp-deep-freeze{
  --temp-glow: #7c3aed;
  background: linear-gradient(180deg,#f5d0fe 0%,#c084fc 35%,#7c3aed 72%,#312e81 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.pk-temp.temp-hard-freeze{
  --temp-glow: #2563eb;
  background: linear-gradient(180deg,#dbeafe 0%,#60a5fa 38%,#2563eb 75%,#1e3a8a 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.pk-temp.temp-freeze{
  background: linear-gradient(180deg,#ecfeff 0%,#67e8f9 42%,#06b6d4 75%,#075985 100%);
  -webkit-background-clip: text;
  color: transparent;
  --temp-glow: #06b6d4;
  background-clip: text;
}

.pk-temp.temp-cold{
  --temp-glow: #14b8a6;
  background: linear-gradient(180deg,#ccfbf1 0%,#2dd4bf 45%,#14b8a6 78%,#0f766e 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.pk-temp.temp-cool{
  background: linear-gradient(180deg,#dcfce7 0%,#86efac 42%,#22c55e 78%,#15803d 100%);
  -webkit-background-clip: text;
  color: transparent;
  --temp-glow: #22c55e;
  background-clip: text;
}

.pk-temp.temp-mild{
  background: linear-gradient(180deg,#f7fee7 0%,#bef264 42%,#84cc16 78%,#4d7c0f 100%);
  -webkit-background-clip: text;
  color: transparent;
  --temp-glow: #a3e635;
  background-clip: text;
}

.pk-temp.temp-warm{
  background: linear-gradient(180deg,#fef9c3 0%,#fde047 42%,#facc15 76%,#ca8a04 100%);
  -webkit-background-clip: text;
  color: transparent;
  --temp-glow: #facc15;
  background-clip: text;
}

.pk-temp.temp-hot{
  background: linear-gradient(180deg,#fff7ed 0%,#fdba74 38%,#fb923c 72%,#c2410c 100%);
  -webkit-background-clip: text;
  color: transparent;
  --temp-glow: #fb923c;
  background-clip: text;
}

.pk-temp.temp-very-hot{
  --temp-glow: #ef4444;
  background: linear-gradient(180deg,#fee2e2 0%,#f87171 38%,#ef4444 72%,#7f1d1d 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.pk-temp.temp-extreme{
  --temp-glow: #991b1b;
  background: linear-gradient(180deg,#fecaca 0%,#ef4444 32%,#991b1b 68%,#450a0a 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.pk-comfort-board{
  margin-top: var(--gap);
}

.pk-comfort-card h2{
  margin: 0 0 10px;
  font-size: clamp(28px,3vw,46px);
  letter-spacing: -.065em;
}

.pk-comfort-card p{
  margin: 0;
  color: var(--muted);
  line-height: 1.65;
  max-width: 720px;
}

.pk-hourly{
  padding: 28px;
  min-height: 220px;
}

.pk-hourly .pk-data-error{
  grid-column: 1/-1;
  min-height: 118px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  padding: 18px;
  border-radius: 22px;
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.1);
}

.pk-hour-card:hover{
  transform: translateY(-2px);
  background: linear-gradient(180deg,rgba(255,255,255,.145),rgba(255,255,255,.06));
  border-color: rgba(255,255,255,.18);
}

.pk-hour-card time{
  font-size: 13px;
  font-weight: 950;
  color: var(--muted);
  letter-spacing: .08em;
}

.pk-hour-card span{
  font-size: 12px;
  color: var(--muted);
  font-weight: 800;
}

.pk-hour-card small{
  font-size: 12px;
  color: var(--muted);
  font-weight: 800;
}

.pk-comfort-card{
  padding: 26px;
  display: grid;
  grid-template-columns: minmax(320px,.8fr) minmax(420px,1.2fr) !important;
  gap: 24px;
  align-items: center;
}

.pk-comfort-explain{
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: 18px;
  align-items: stretch;
}

.pk-comfort-facts{
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}

.pk-comfort-facts>div{
  padding: 18px;
  border-radius: 24px;
  background: linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035));
  border: 1px solid rgba(255,255,255,.09);
}

.pk-comfort-facts span{
  display: block;
  color: var(--faint);
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.pk-comfort-facts strong{
  display: block;
  margin-top: 12px;
  font-size: 30px;
  letter-spacing: -.055em;
  line-height: 1;
  color: var(--text);
}

.pk-comfort-facts small{
  display: block;
  margin-top: 8px;
  color: var(--muted);
  font-weight: 800;
}

.pk-comfort-reasons{
  padding: 18px;
  border-radius: 24px;
  background: linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035));
  border: 1px solid rgba(255,255,255,.09);
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.pk-factor{
  display: grid;
  grid-template-columns: 130px 74px 1fr;
  align-items: center;
  gap: 12px;
}

.pk-factor span{
  color: var(--muted);
  font-weight: 900;
  font-size: 14px;
}

.pk-factor b{
  color: var(--text);
  font-size: 13px;
  text-align: right;
}

.pk-factor meter{
  width: 100%;
  height: 10px;
}

.pk-factor meter::-webkit-meter-bar{
  background: rgba(255,255,255,.12);
  border: 0;
  border-radius: 999px;
}

.pk-factor meter::-webkit-meter-optimum-value{
  background: linear-gradient(90deg,#60a5fa,#facc15,#fb923c,#ef4444);
  border-radius: 999px;
}

.pk-factor meter::-moz-meter-bar{
  background: linear-gradient(90deg,#60a5fa,#facc15,#fb923c,#ef4444);
  border-radius: 999px;
}

.pk-hourly .pk-card__top{
  margin-bottom: 8px;
}

.pk-hourly-strip{
  display: grid;
  grid-template-columns: repeat(12,minmax(84px,1fr));
  gap: 10px;
  margin-top: 18px;
  overflow-x: auto;
  padding-bottom: 6px;
  scrollbar-width: thin;
}

.pk-hourly-strip::-webkit-scrollbar{
  height: 8px;
}

.pk-hourly-strip::-webkit-scrollbar-thumb{
  background: rgba(255,255,255,.18);
  border-radius: 999px;
}

.pk-hour-card{
  min-height: 148px;
  padding: 14px 10px;
  border-radius: 24px;
  background: linear-gradient(180deg,rgba(255,255,255,.105),rgba(255,255,255,.045));
  border: 1px solid rgba(255,255,255,.11);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  text-align: center;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
  transition: transform .18s ease, background .18s ease, border-color .18s ease;
}

.pk-hour-card img{
  width: 34px;
  height: 34px;
  object-fit: contain;
  filter: drop-shadow(0 10px 20px rgba(0,0,0,.25));
}

.pk-hour-card strong{
  font-size: 26px;
  line-height: 1;
  letter-spacing: -.06em;
  color: var(--text);
}

.pk-hourly-lead{
  margin: 10px 0 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.55;
  max-width: 980px;
}

.pk-chart-pills button::after{
  content: "";
}

.pk-chart-pills button.is-active{
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.16);
}

.pk-real-charts{
  display: block;
  gap: 18px;
  margin-top: 18px;
  grid-template-columns: 1fr;
}

.pk-chart-panel{
  display: none !important;
  min-height: 430px;
  animation: none;
}

.pk-chart-panel.is-active{
  display: block !important;
  animation: pkFadeUp .28s ease both;
  min-height: 430px;
}

.pk-chart-command--real{
  position: sticky;
  top: 12px;
  z-index: 5;
  backdrop-filter: blur(18px);
}

.pk-public-beta-note{
  margin-top: var(--gap);
  padding: 28px;
  display: grid;
  grid-template-columns: .75fr 1fr;
  gap: 28px;
  align-items: center;
  background: linear-gradient(135deg,rgba(56,232,255,.06),rgba(255,255,255,.035));
}

.pk-empty-chart strong{
  font-size: 20px;
  color: #fff;
  margin-bottom: 6px;
  display: block;
}

.pk-empty-chart span{
  font-size: 15px;
  margin-bottom: 8px;
  display: block;
  color: var(--muted);
  line-height: 1.45;
}

.pk-empty-chart small{
  max-width: 560px;
  line-height: 1.5;
  color: var(--faint);
  display: block;
  margin-top: 8px;
}

.pk-highchart{
  min-height: 390px;
  width: 100%;
}

.pk-chart-card--main .pk-highchart{
  min-height: 430px;
}

.pk-chart-split .pk-highchart{
  min-height: 360px;
}

.pk-empty-chart--calm{
  border-style: solid;
  background: linear-gradient(135deg,rgba(56,232,255,.045),rgba(255,255,255,.025));
}

.pk-chart-panel .pk-card__top h2{
  letter-spacing: -.055em;
}

.pk-chart-pills button{
  position: relative;
  isolation: isolate;
}

.pk-chart-pills button.is-active::before{
  content: "";
  position: absolute;
  inset: 3px;
  border-radius: 999px;
  background: linear-gradient(135deg,rgba(255,255,255,.16),rgba(255,255,255,.04));
  z-index: -1;
}

.pk-insight{
  display: grid;
  grid-template-columns: 34px minmax(0,1fr);
  gap: 10px;
  align-items: start;
  padding: 12px;
  border-radius: 18px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.08);
}

.pk-insight span{
  font-size: 1.2rem;
}

.pk-insight p{
  margin: 0;
  color: rgba(255,255,255,.82);
  line-height: 1.35;
}

.pk-card{
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.pk-theme-fog .pk-sky{
  filter: saturate(.75) brightness(.92) blur(.5px);
}

.pk-theme-storm .pk-sky{
  background: radial-gradient(circle at 20% 10%,rgba(99,140,255,.26),transparent 32%),linear-gradient(180deg,#060912,#111827 65%,#05070d);
}

.pk-theme-freeze .pk-sky{
  background: radial-gradient(circle at 78% 8%,rgba(132,220,255,.26),transparent 34%),linear-gradient(180deg,#071727,#0b2138 60%,#07101f);
}

.pk-theme-night .pk-hero{
  --hero-accent: #60a5fa;
}

.pk-theme-day .pk-hero{
  --hero-accent: #facc15;
}

.pk-theme-evening .pk-hero{
  --hero-accent: #fb923c;
}

.pk-theme-heat .pk-hero{
  --hero-accent: #ef4444;
}

.pk-theme-freeze .pk-hero{
  --hero-accent: #38bdf8;
}

.pk-theme-rain .pk-hero{
  --hero-accent: #38bdf8;
}

.pk-theme-fog .pk-hero{
  --hero-accent: #cbd5e1;
}

.pk-temp-meta{
  display: flex;
  gap: 12px !important;
  flex-wrap: wrap;
  margin-top: 18px !important;
}

.pk-temp-meta span{
  padding: 9px 13px !important;
  border-radius: 999px;
  background: rgba(255,255,255,.075) !important;
  border: 1px solid rgba(255,255,255,.10);
  color: rgba(255,255,255,.82) !important;
  font-weight: 800;
  font-size: 14px !important;
  border-color: rgba(255,255,255,.12) !important;
  backdrop-filter: blur(16px);
}

.pk-theme-storm .pk-hero{
  --hero-accent: #818cf8;
  animation: pkHeroStormGlow 8.5s ease-in-out infinite !important;
}

.pk-live-stage{
  display: grid !important;
  grid-template-columns: minmax(0,1.85fr) minmax(340px,.85fr) !important;
  gap: 24px !important;
  align-items: stretch !important;
  margin-top: 26px !important;
}

.pk-scene-grid{
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.026) 1px,transparent 1px);
  background-size: 58px 58px;
  opacity: .52;
  mask-image: radial-gradient(circle at 68% 46%,black 0 38%,transparent 74%);
}

.pk-scene-icon img{
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter: drop-shadow(0 26px 80px rgba(255,255,255,.22));
}

.pk-scene-wind{
  position: absolute;
  right: -25%;
  top: 35%;
  width: 80%;
  height: 34%;
  background: repeating-linear-gradient(168deg, transparent 0 28px, rgba(255,255,255,.050) 30px 32px, transparent 36px 70px);
  opacity: .42;
  animation: pkWindMove 9s linear infinite;
  mask-image: linear-gradient(90deg,transparent,black 28%,transparent);
}

.pk-scene-rain{
  position: absolute;
  inset: -20%;
  background: repeating-linear-gradient(115deg,transparent 0 18px,rgba(125,211,252,.09) 19px 20px,transparent 21px 42px);
  opacity: 0;
  animation: pkRainFall 1.6s linear infinite;
}

.pk-theme-rain .pk-scene-rain{
  opacity: .38;
}

.pk-theme-storm .pk-scene-rain{
  opacity: .38;
}

.pk-theme-fog .pk-live-canvas:before{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg,transparent,rgba(255,255,255,.10),transparent);
  filter: blur(18px);
  animation: pkFog 10s ease-in-out infinite;
  z-index: 1;
  pointer-events: none;
}

.pk-theme-storm .pk-live-canvas:after{
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(180,200,255,.28);
  opacity: 0;
  animation: pkLightning 8s infinite;
  z-index: 1;
  pointer-events: none;
}

.pk-live-canvas__main .pk-kicker{
  margin: 0 0 10px;
  font-size: 12px;
  letter-spacing: .24em;
  opacity: .70;
}

.pk-live-canvas__temperature .pk-temp-meta{
  margin-top: 18px !important;
}

.pk-live-canvas__temperature .pk-temp-meta span{
  font-size: 14px;
  padding: 10px 14px;
  background: rgba(0,0,0,.18);
  backdrop-filter: blur(14px);
}

.pk-live-metric span{
  display: block;
  color: var(--faint);
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .15em;
  font-weight: 950;
}

.pk-live-metric{
  min-height: 96px;
  padding: 15px 16px;
  border-radius: 24px;
  background: rgba(0,0,0,.16);
  border: 1px solid rgba(255,255,255,.11);
  backdrop-filter: blur(16px);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10);
}

.pk-live-metric strong{
  display: block;
  margin-top: 10px;
  font-size: clamp(22px,1.7vw,33px);
  line-height: .92;
  letter-spacing: -.055em;
}

.pk-live-metric small{
  display: block;
  margin-top: 5px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
}

.pk-live-side{
  display: grid !important;
  grid-template-rows: auto 1fr !important;
  gap: 24px !important;
  min-width: 0;
}

.pk-live-side .pk-card{
  min-height: 0 !important;
}

.pk-live-side .pk-ai{
  padding: 28px !important;
}

.pk-live-side .pk-pogodynek{
  padding: 28px !important;
}

.pk-live-side .pk-ai h3{
  font-size: clamp(22px,1.7vw,31px) !important;
  margin: 20px 0 12px;
}

.pk-live-side .pk-pogodynek h2{
  font-size: clamp(24px,1.8vw,32px) !important;
}

.pk-shell-section{
  margin-top: 24px !important;
}

.pk-live-stage + .pk-shell-section .pk-hourly{
  margin-top: 0 !important;
}

.pk-live-canvas .pk-temp{
  line-height: .92 !important;
  padding-top: .06em !important;
  padding-right: .08em !important;
  overflow: visible !important;
  display: inline-block !important;
  letter-spacing: -.095em !important;
}

.pk-temp{
  font-size: clamp(110px,11vw,172px) !important;
  line-height: .92 !important;
  font-weight: 950;
  letter-spacing: -.095em !important;
  background: linear-gradient(180deg,#fff8d6 0%,#ffd66b 32%,#ff9d2e 68%,#ff7a1a 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  text-shadow: 0 24px 78px rgba(255,147,46,.22) !important;
  filter: drop-shadow(0 28px 72px rgba(255,153,46,.22));
  transform: translateX(-.035em);
  margin: 0 0 8px !important;
  padding-top: .06em !important;
  padding-right: .08em !important;
  overflow: visible !important;
  display: inline-block !important;
}

.pk-hero-condition{
  margin: 18px 0 0;
  max-width: 620px !important;
  font-size: 22px !important;
  line-height: 1.28 !important;
  color: rgba(255,255,255,.9) !important;
  font-weight: 850 !important;
  letter-spacing: -.045em !important;
  margin-top: 18px !important;
  text-shadow: 0 14px 38px rgba(0,0,0,.22);
  position: relative;
  z-index: 5;
}

.pk-live-canvas{
  min-height: 360px !important;
  padding: 38px 42px 30px !important;
  overflow: hidden;
  display: grid !important;
  grid-template-columns: minmax(390px,.95fr) minmax(360px,.9fr) !important;
  grid-template-rows: auto 1fr auto !important;
  gap: 20px 30px !important;
  position: relative !important;
  background: linear-gradient(115deg, rgba(8,14,30,.96) 0%, rgba(9,18,38,.88) 42%, rgba(11,24,48,.74) 100%) !important;
  isolation: isolate;
}

.pk-live-canvas:before{
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: linear-gradient(90deg, rgba(2,6,23,.76) 0%, rgba(2,6,23,.50) 42%, rgba(2,6,23,.18) 100%);
  pointer-events: none;
}

.pk-live-canvas__metrics{
  position: relative;
  z-index: 5;
  grid-column: 1 / -1;
  grid-row: 3;
  display: grid;
  grid-template-columns: repeat(6,minmax(0,1fr));
  gap: 12px;
  align-self: end;
}

.pk-live-canvas__scene{
  position: absolute;
  inset: 0;
  z-index: 1 !important;
  overflow: hidden;
  pointer-events: none;
}

.pk-live-canvas__scene:before{
  content: "";
  position: absolute;
  inset: -30%;
  background: radial-gradient(circle at 78% 36%, rgba(255,255,255,.22), transparent 0 16%, transparent 42%);
  opacity: .4;
  animation: pkAtmoLight 14s ease-in-out infinite;
}

.pk-time-dawn .pk-live-canvas{
  background: linear-gradient(115deg,#111827 0%,#1d3557 52%,#f59e0b 145%) !important;
}

.pk-time-day .pk-live-canvas{
  background: linear-gradient(115deg,#061426 0%,#0b3b66 56%,#60a5fa 135%) !important;
}

.pk-time-sunset .pk-live-canvas{
  background: linear-gradient(115deg,#111827 0%,#3b1d4a 54%,#fb923c 145%) !important;
}

.pk-time-twilight .pk-live-canvas{
  background: linear-gradient(115deg,#080b1a 0%,#172554 58%,#7c3aed 150%) !important;
}

.pk-time-night .pk-live-canvas{
  background: linear-gradient(115deg,#020617 0%,#071326 58%,#111827 100%) !important;
}

.pk-sky-rain .pk-live-canvas{
  background: linear-gradient(115deg,#020617 0%,#0f263c 55%,#164e63 130%) !important;
}

.pk-sky-storm .pk-live-canvas{
  background: linear-gradient(115deg,#020617 0%,#111827 55%,#312e81 140%) !important;
}

.pk-sky-fog .pk-live-canvas{
  background: linear-gradient(115deg,#111827 0%,#334155 65%,#64748b 150%) !important;
}

.pk-sky-snow .pk-live-canvas{
  background: linear-gradient(115deg,#07111f 0%,#1e3a5f 62%,#dbeafe 150%) !important;
}

.pk-sky-cloudy .pk-live-canvas{
  background: linear-gradient(115deg,#07111f 0%,#1f2937 60%,#475569 140%) !important;
}

.pk-atmo-hot .pk-live-canvas{
  box-shadow: inset 0 0 0 1px rgba(251,146,60,.24), 0 30px 90px rgba(251,113,33,.20);
}

.pk-atmo-freeze .pk-live-canvas{
  box-shadow: inset 0 0 0 1px rgba(125,211,252,.26), 0 30px 90px rgba(59,130,246,.20);
}

.pk-atmo-layer{
  position: absolute;
  inset: 0;
  pointer-events: none;
  display: block;
  z-index: 1;
}

.pk-atmo-layer--clouds{
  inset: -18% -28%;
  opacity: .35;
  background: radial-gradient(ellipse at 70% 35%, rgba(255,255,255,.26) 0 9%, transparent 23%),
    radial-gradient(ellipse at 84% 52%, rgba(255,255,255,.18) 0 10%, transparent 25%),
    radial-gradient(ellipse at 58% 62%, rgba(255,255,255,.14) 0 8%, transparent 24%);
  filter: blur(12px);
  transform: translate3d(0,0,0);
  animation: pkAtmoClouds calc(38s * var(--pk-atmo-speed,1)) linear infinite;
}

.pk-sky-clear .pk-atmo-layer--clouds{
  opacity: .10;
}

.pk-sky-partly .pk-atmo-layer--clouds{
  opacity: .34;
}

.pk-sky-cloudy .pk-atmo-layer--clouds{
  opacity: .58;
}

.pk-atmo-windy .pk-atmo-layer--clouds{
  animation-duration: 16s;
  opacity: .48;
}

.pk-atmo-layer--rain{
  inset: -25% -10%;
  opacity: var(--pk-rain-opacity,0);
  background: repeating-linear-gradient(112deg, transparent 0 16px, rgba(186,230,253,.44) 17px 18px, transparent 19px 38px),
    repeating-linear-gradient(112deg, transparent 0 34px, rgba(125,211,252,.22) 35px 36px, transparent 37px 70px);
  filter: blur(.15px);
  animation: pkAtmoRain .82s linear infinite;
}

.pk-sky-storm .pk-atmo-layer--rain{
  opacity: .60;
  animation-duration: .62s;
}

.pk-atmo-layer--snow{
  opacity: 0;
  background-image: radial-gradient(circle,rgba(255,255,255,.95) 0 1px,transparent 1.8px),
    radial-gradient(circle,rgba(255,255,255,.65) 0 1px,transparent 2px),
    radial-gradient(circle,rgba(255,255,255,.75) 0 1.4px,transparent 2.2px);
  background-size: 90px 90px,140px 140px,210px 210px;
  animation: pkAtmoSnow 13s linear infinite;
}

.pk-sky-snow .pk-atmo-layer--snow{
  opacity: .45;
}

.pk-atmo-layer--fog{
  opacity: 0;
  inset: -12% -30%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.24), transparent),
    linear-gradient(90deg, transparent 15%, rgba(255,255,255,.13), transparent 75%);
  filter: blur(18px);
  animation: pkAtmoFog 18s ease-in-out infinite;
}

.pk-sky-fog .pk-atmo-layer--fog{
  opacity: .55;
}

.pk-atmo-layer--wind{
  opacity: 0;
  inset: 18% -35% 18% 25%;
  background: repeating-linear-gradient(174deg, transparent 0 26px, rgba(255,255,255,.12) 27px 29px, transparent 31px 68px);
  mask-image: linear-gradient(90deg,transparent,black 18%,black 72%,transparent);
  animation: pkAtmoWind 3.8s linear infinite;
}

.pk-atmo-windy .pk-atmo-layer--wind{
  opacity: .42;
}

.pk-atmo-layer--lightning{
  opacity: 0;
  background: rgba(205,220,255,.35);
}

.pk-sky-storm .pk-atmo-layer--lightning{
  animation: pkAtmoLightning 9s infinite;
}

.pk-scene-sun{
  position: absolute;
  right: -145px !important;
  bottom: auto !important;
  width: 430px !important;
  height: 430px !important;
  border-radius: 999px;
  background: radial-gradient(circle,#fff 0 4%,#fde68a 5% 13%,rgba(251,146,60,.32) 26%,rgba(251,146,60,.10) 48%,transparent 69%) !important;
  filter: blur(1.2px) !important;
  opacity: .42 !important;
  animation: pkAtmoSunBreath 8s ease-in-out infinite !important;
  z-index: 2;
  top: -135px !important;
}

.pk-time-night .pk-scene-sun{
  background: radial-gradient(circle,#fff 0 5%,rgba(191,219,254,.42) 13%,rgba(59,130,246,.16) 42%,transparent 70%) !important;
  opacity: .26 !important;
}

.pk-sky-rain .pk-scene-sun{
  opacity: .16 !important;
}

.pk-sky-cloudy .pk-scene-sun{
  opacity: .16 !important;
}

.pk-sky-storm .pk-scene-sun{
  opacity: .08 !important;
}

.pk-scene-icon{
  position: absolute;
  right: 2% !important;
  top: 20% !important;
  width: 390px !important;
  height: 390px !important;
  opacity: .055 !important;
  filter: blur(1px) saturate(1.15) !important;
  transform: rotate(-6deg);
  display: grid;
  place-items: center;
  animation: pkAtmoIcon 18s ease-in-out infinite !important;
  z-index: 2;
}

.pk-sky-rain .pk-scene-icon{
  opacity: .035 !important;
}

.pk-sky-storm .pk-scene-icon{
  opacity: .035 !important;
}

.pk-sky-fog .pk-scene-icon{
  opacity: .035 !important;
}

.pk-live-canvas__temperature .pk-temp{
  font-size: clamp(100px,9.4vw,168px) !important;
  line-height: .78 !important;
  letter-spacing: -.11em !important;
  text-shadow: 0 24px 90px rgba(251,146,60,.20);
  overflow: visible !important;
}

.pk-live-canvas .pk-hero-condition{
  max-width: 620px !important;
  margin: 18px 0 0 !important;
  font-size: clamp(18px,1.25vw,25px) !important;
  line-height: 1.28 !important;
  font-weight: 950 !important;
  letter-spacing: -.04em;
  color: rgba(255,255,255,.9) !important;
}

.pk-hero-station{
  grid-template-columns: minmax(0,1.65fr) minmax(330px,.78fr) !important;
  gap: 24px !important;
  align-items: stretch !important;
}

.pk-station-hero{
  min-height: 520px !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0,1fr) minmax(310px,.44fr) !important;
  grid-template-rows: 1fr auto !important;
  gap: 0 !important;
  border-radius: 38px !important;
  overflow: hidden !important;
  background: radial-gradient(circle at 84% 22%, rgba(96,165,250,.34), transparent 28%),
    radial-gradient(circle at 78% 72%, color-mix(in srgb, var(--hero-accent, #38e8ff) 22%, transparent), transparent 34%),
    linear-gradient(135deg, rgba(4,12,28,.98) 0%, rgba(8,25,50,.92) 48%, rgba(10,34,66,.76) 100%) !important;
}

.pk-station-hero:before{
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(90deg, rgba(2,6,23,.62), rgba(2,6,23,.30) 48%, rgba(2,6,23,.12)),
    radial-gradient(circle at 28% 52%, rgba(255,255,255,.10), transparent 38%);
  pointer-events: none;
}

.pk-station-hero .pk-live-canvas__scene{
  z-index: 0 !important;
}

.pk-station-hero__content{
  position: relative;
  z-index: 4;
  grid-column: 1;
  grid-row: 1;
  padding: clamp(30px,4vw,58px);
  display: grid;
  align-content: center;
  gap: 28px;
  min-width: 0;
}

.pk-station-hero__headline h1{
  max-width: 780px;
  margin: 0;
  font-size: clamp(42px,5.8vw,92px) !important;
  line-height: .88 !important;
  letter-spacing: -.085em !important;
}

.pk-station-hero__headline .pk-hero-condition{
  margin-top: 18px !important;
  max-width: 660px !important;
  font-size: clamp(17px,1.35vw,24px) !important;
  color: rgba(241,247,255,.82) !important;
}

.pk-station-hero__temperature .pk-temp{
  font-size: clamp(92px,11vw,176px) !important;
  line-height: .84 !important;
  letter-spacing: -.105em !important;
  background: linear-gradient(180deg,#fff 0%,#dff5ff 24%,#7dd3fc 58%,#38bdf8 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  text-shadow: 0 28px 100px rgba(56,189,248,.25) !important;
}

.pk-station-hero__temperature .pk-temp-meta{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px !important;
}

.pk-station-hero__temperature .pk-temp-meta span{
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(255,255,255,.09);
  border: 1px solid rgba(255,255,255,.12);
  color: rgba(241,247,255,.84);
  font-size: 13px;
  font-weight: 900;
  backdrop-filter: blur(16px);
}

.pk-station-hero__today{
  position: relative;
  z-index: 4;
  grid-column: 2;
  grid-row: 1;
  margin: clamp(22px,2.6vw,36px) clamp(22px,2.6vw,36px) clamp(22px,2.6vw,36px) 0;
  padding: 24px;
  border-radius: 30px;
  align-self: center;
  background: linear-gradient(180deg, rgba(255,255,255,.105), rgba(255,255,255,.045));
  border: 1px solid rgba(255,255,255,.15);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.13), 0 22px 70px rgba(0,0,0,.26);
  backdrop-filter: blur(24px);
}

.pk-station-hero__today-head{
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 18px;
}

.pk-station-hero__today-head .pk-kicker{
  margin: 0 0 4px;
}

.pk-station-hero__today-head strong{
  font-size: 22px;
  letter-spacing: -.04em;
}

.pk-hero-nowline{
  display: grid;
  gap: 12px;
}

.pk-hero-nowline div{
  padding: 16px 17px;
  border-radius: 22px;
  background: rgba(0,0,0,.18);
  border: 1px solid rgba(255,255,255,.10);
}

.pk-hero-nowline span{
  display: block;
  color: var(--faint);
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .13em;
  font-weight: 950;
}

.pk-hero-nowline strong{
  display: block;
  margin-top: 7px;
  font-size: clamp(23px,2vw,34px);
  line-height: .95;
  letter-spacing: -.06em;
}

.pk-hero-nowline small{
  display: block;
  color: var(--muted);
  font-size: 12px;
  text-transform: none;
  letter-spacing: 0;
  font-weight: 950;
  margin-top: 5px;
}

.pk-station-hero__metrics{
  position: relative !important;
  z-index: 4 !important;
  grid-column: 1 / -1 !important;
  grid-row: 2 !important;
  display: grid !important;
  grid-template-columns: repeat(6,minmax(0,1fr)) !important;
  gap: 12px !important;
  padding: 0 clamp(22px,2.6vw,36px) clamp(22px,2.6vw,36px) !important;
}

.pk-station-hero__metrics .pk-live-metric{
  min-height: 104px;
  border-radius: 24px;
  background: rgba(2,6,23,.30);
  border-color: rgba(255,255,255,.12);
}

.pk-station-hero .pk-scene-icon{
  right: 23%;
  top: 8%;
  width: 380px;
  height: 380px;
  opacity: .075;
}

.pk-station-hero .pk-scene-sun{
  right: -5%;
  bottom: 18%;
  width: 410px;
  height: 410px;
  opacity: .52;
}

.pk-station-hero .pk-scene-grid{
  opacity: .38;
  mask-image: radial-gradient(circle at 54% 45%,black 0 45%,transparent 78%);
}

.pk-time-day .pk-station-hero{
  background: linear-gradient(135deg,#061426 0%,#0b3b66 56%,#38bdf8 150%) !important;
}

.pk-time-sunset .pk-station-hero{
  background: linear-gradient(135deg,#111827 0%,#3b1d4a 58%,#fb923c 155%) !important;
}

.pk-time-night .pk-station-hero{
  background: linear-gradient(135deg,#020617 0%,#071326 60%,#111827 100%) !important;
}

.pk-sky-rain .pk-station-hero{
  background: linear-gradient(135deg,#020617 0%,#0f263c 58%,#164e63 140%) !important;
}

.pk-sky-storm .pk-station-hero{
  background: linear-gradient(135deg,#020617 0%,#111827 58%,#312e81 150%) !important;
}

.pk-sky-fog .pk-station-hero{
  background: linear-gradient(135deg,#111827 0%,#334155 66%,#64748b 150%) !important;
}

@media (max-width:760px){
.pk-forecast-strip{
  grid-template-columns: 1fr;
}
.pk-advice-grid{
  grid-template-columns: 1fr;
}
.pk-rain-stats{
  grid-template-columns: 1fr;
}
.pk-chart-card--main .pk-chart-placeholder{
  min-height: 320px;
}
.pk-ai footer{
  display: block;
  line-height: 1.8;
}
.pk-top-actions{
  justify-content: center;
}
.pk-chart-summary{
  grid-template-columns: 1fr;
}
.pk-public-beta-note h2{
  font-size: 23px;
}
.pk-hour-card{
  min-height: 132px;
}
.pk-comfort-facts{
  grid-template-columns: 1fr;
}
.pk-factor{
  grid-template-columns: 1fr;
}
.pk-factor b{
  text-align: left;
}
.pk-factor meter{
  height: 12px;
}
.pk-hourly-strip{
  grid-template-columns: repeat(12,96px);
}
.pk-chart-command__lead h3{
  font-size: 20px;
  line-height: 1.15;
}
.pk-chart-pills{
  overflow-x: auto;
  flex-wrap: nowrap;
  width: 100%;
  padding-bottom: 4px;
}
.pk-chart-pills button{
  white-space: nowrap;
}
.pk-public-beta-note{
  padding: 22px;
  display: none;
}
.pk-chart-command--real{
  margin-top: 8px;
}
.pk-chart-card{
  padding: 22px 14px 18px;
  border-radius: 30px;
}
.pk-chart-panel .pk-card__top{
  margin-bottom: 8px;
}
.pk-chart-panel .pk-card__top h2{
  font-size: 34px;
  letter-spacing: -.07em;
  line-height: .92;
}
.pk-chart-panel .pk-card__top .pk-kicker{
  font-size: 11px;
  letter-spacing: .22em;
  opacity: .72;
}
.pk-highchart{
  min-height: 430px;
  margin-left: -6px;
  margin-right: -6px;
}
.pk-chart-card--main .pk-highchart{
  min-height: 430px;
  margin-left: -6px;
  margin-right: -6px;
}
.pk-chart-split .pk-highchart{
  min-height: 430px;
  margin-left: -6px;
  margin-right: -6px;
}
.pk-chart-split{
  gap: 18px;
}
.pk-empty-chart{
  min-height: 300px;
  border-radius: 24px;
}
.pk-temp-meta{
  display: grid !important;
  grid-template-columns: 1fr;
  align-items: start;
  width: max-content;
  max-width: 100%;
  gap: 8px !important;
  margin-top: 16px !important;
}
.pk-temp-meta span{
  font-size: 13px !important;
  padding: 8px 11px !important;
}
.pk-hero-condition{
  font-size: 18px !important;
  max-width: 100% !important;
  margin-top: 20px !important;
}
.pk-live-stage{
  margin-top: 18px !important;
  gap: 18px !important;
}
.pk-live-canvas__temperature .pk-temp{
  font-size: 112px !important;
}
.pk-live-canvas__metrics{
  grid-column: 1;
  grid-row: 3;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.pk-live-metric{
  min-height: 86px;
  padding: 14px;
}
.pk-live-metric--extra{
  display: none;
}
.pk-live-side{
  grid-template-columns: 1fr !important;
  gap: 18px !important;
}
.pk-live-canvas .pk-hero-condition{
  font-size: 18px !important;
  max-width: 320px !important;
}
.pk-live-canvas .pk-temp{
  line-height: .94 !important;
  padding-top: .08em !important;
  padding-right: .10em !important;
  letter-spacing: -.085em !important;
}
.pk-temp{
  font-size: clamp(92px,26vw,138px) !important;
  line-height: .94 !important;
  padding-top: .08em !important;
  padding-right: .10em !important;
  letter-spacing: -.085em !important;
}
.pk-live-canvas{
  padding: 24px 22px 22px !important;
  grid-template-columns: 1fr !important;
  grid-template-rows: auto auto auto !important;
  gap: 20px !important;
  border-radius: 32px !important;
  min-height: 430px !important;
}
.pk-scene-icon{
  width: 260px !important;
  height: 260px !important;
  right: -18% !important;
  top: 8% !important;
  opacity: .045 !important;
}
.pk-scene-sun{
  width: 290px !important;
  height: 290px !important;
  right: -115px !important;
  bottom: 20%;
  top: -105px !important;
}
.pk-atmo-layer--clouds{
  inset: -10% -55%;
}
.pk-atmo-layer--wind{
  inset: 22% -60% 18% 10%;
}
.pk-station-hero{
  grid-template-columns: 1fr !important;
  grid-template-rows: auto auto auto !important;
  min-height: auto !important;
  border-radius: 30px !important;
}
.pk-station-hero__content{
  grid-column: 1;
  grid-row: 1;
  padding: 24px 22px 8px;
  gap: 18px;
}
.pk-station-hero__headline h1{
  font-size: 46px !important;
  line-height: .92 !important;
}
.pk-station-hero__temperature .pk-temp{
  font-size: 108px !important;
}
.pk-station-hero__today{
  grid-column: 1;
  grid-row: 2;
  margin: 10px 18px 18px;
  padding: 18px;
  border-radius: 24px;
}
.pk-station-hero__metrics{
  grid-column: 1;
  grid-row: 3;
  grid-template-columns: 1fr 1fr !important;
  padding: 0 18px 18px !important;
  gap: 10px !important;
}
.pk-station-hero__metrics .pk-live-metric{
  min-height: 88px;
  border-radius: 20px;
  padding: 14px;
}
.pk-station-hero .pk-scene-icon{
  width: 220px;
  height: 220px;
  right: -8%;
  top: 2%;
}
.pk-station-hero .pk-scene-sun{
  width: 250px;
  height: 250px;
  right: -28%;
  bottom: 36%;
}
}

@media (max-width:980px){
.pk-chart-command{
  align-items: flex-start;
  flex-direction: column;
}
.pk-chart-pills{
  justify-content: flex-start;
}
}

@media (max-width:1180px){
.pk-public-beta-note{
  grid-template-columns: 1fr;
}
.pk-hourly-strip{
  grid-template-columns: repeat(3,1fr);
}
.pk-comfort-card{
  grid-template-columns: 1fr !important;
}
.pk-comfort-explain{
  grid-template-columns: 1fr !important;
}
.pk-comfort-facts{
  grid-template-columns: 1fr 1fr;
}
.pk-live-stage{
  grid-template-columns: 1fr !important;
}
.pk-live-side{
  grid-template-columns: 1fr 1fr !important;
  grid-template-rows: auto !important;
}
.pk-live-canvas{
  grid-template-columns: 1fr minmax(260px,.55fr) !important;
}
.pk-live-canvas__metrics{
  grid-template-columns: repeat(3,1fr);
}
.pk-hero-station{
  grid-template-columns: 1fr !important;
}
.pk-station-hero{
  grid-template-columns: 1fr minmax(270px,.42fr) !important;
}
.pk-station-hero__metrics{
  grid-template-columns: repeat(3,1fr) !important;
}
}

@media (max-width:900px){
.pk-chart-split{
  grid-template-columns: 1fr;
}
.pk-chart-command--real{
  position: static;
}
.pk-chart-panel{
  min-height: auto;
}
.pk-highchart{
  min-height: 320px;
}
.pk-chart-card--main .pk-highchart{
  min-height: 320px;
}
}

@media (max-width:1100px){
.pk-comfort-card{
  grid-template-columns: 1fr;
}
}

@media (max-width:1280px){
.pk-hourly-strip{
  grid-template-columns: repeat(6,minmax(96px,1fr));
}
}

@media (hover:hover){
.pk-card:hover{
  transform: translateY(-2px);
  border-color: rgba(255,255,255,.18);
}
}

@media (max-width:560px){
.pk-insight{
  grid-template-columns: 28px minmax(0,1fr);
}
}

@media (max-width:430px){
.pk-temp{
  font-size: 104px !important;
}
}

@media (max-width:420px){
.pk-temp{
  font-size: 108px !important;
}
}

@media (min-width:1181px){
.pk-ai h3{
  font-size: 25px !important;
  margin: 18px 0 12px !important;
  max-width: 92%;
}
.pk-ai p{
  font-size: 15px !important;
  line-height: 1.55 !important;
}
.pk-ai footer{
  margin-top: 18px !important;
}
.pk-pogodynek__face{
  width: 62px !important;
  height: 62px !important;
  border-radius: 22px !important;
  font-size: 32px !important;
  margin-bottom: 14px !important;
}
.pk-pogodynek h2{
  font-size: 28px !important;
  margin-bottom: 10px !important;
}
.pk-pogodynek__speech{
  font-size: 16px !important;
  line-height: 1.42 !important;
  margin-bottom: 14px !important;
}
.pk-advice-grid{
  grid-template-columns: 1fr 1fr !important;
  gap: 8px !important;
}
.pk-advice-grid div{
  padding: 12px !important;
  border-radius: 18px !important;
}
.pk-advice-grid span{
  font-size: 10px !important;
}
.pk-advice-grid strong{
  font-size: 14px !important;
  margin-top: 6px !important;
}
.pk-temp{
  font-size: clamp(132px,9.2vw,190px) !important;
}
.pk-ai{
  min-height: 270px !important;
  padding: 24px !important;
  overflow: hidden !important;
}
.pk-pogodynek{
  min-height: 270px !important;
  padding: 24px !important;
  overflow: hidden !important;
}
}

@media (min-width: 981px){
.pk-temp{
  font-size: clamp(112px, 9.3vw, 176px) !important;
  line-height: .76 !important;
  letter-spacing: -.105em !important;
  margin: 6px 0 18px !important;
  max-width: max-content !important;
}
.pk-temp-meta{
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin: 0 0 18px !important;
}
.pk-temp-meta span{
  padding: 9px 14px !important;
  border-radius: 999px !important;
  font-size: 14px !important;
  line-height: 1 !important;
}
.pk-hero-condition{
  max-width: 520px !important;
  font-size: clamp(18px, 1.35vw, 24px) !important;
  line-height: 1.12 !important;
  margin: 0 !important;
  text-wrap: balance;
}
}

@media (max-width: 980px){
.pk-temp{
  font-size: clamp(100px, 28vw, 150px) !important;
  line-height: .78 !important;
  margin: 10px 0 16px !important;
}
.pk-hero-condition{
  font-size: 18px !important;
  max-width: 100% !important;
}
}

@keyframes pk-cloud-move{from{transform:translateX(0)}to{transform:translateX(calc(100vw + 650px))}}

@keyframes pk-rain-fall{from{background-position:0 0}to{background-position:0 34px}}

@keyframes pk-pulse-soft{0%,100%{opacity:.35;transform:scale(.96)}50%{opacity:.95;transform:scale(1.05)}}

@keyframes pkHeroStormGlow{0%,86%,100%{box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.10)}
  88%,90%{box-shadow:0 0 120px rgba(129,140,248,.16),var(--shadow),inset 0 1px 0 rgba(255,255,255,.18)}}

@keyframes pkWindMove{from{transform:translateX(0)}to{transform:translateX(-120px)}}

@keyframes pkRainFall{from{transform:translate3d(0,-30px,0)}to{transform:translate3d(-45px,60px,0)}}

@keyframes pkFog{0%,100%{transform:translateX(-30%);opacity:.24}50%{transform:translateX(30%);opacity:.38}}

@keyframes pkLightning{0%,86%,100%{opacity:0}88%{opacity:.42}89%{opacity:0}91%{opacity:.26}92%{opacity:0}}

@keyframes pkAtmoClouds{from{transform:translateX(0)}to{transform:translateX(-18%)}}

@keyframes pkAtmoRain{from{transform:translate3d(0,-6%,0)}to{transform:translate3d(-6%,8%,0)}}

@keyframes pkAtmoSnow{from{background-position:0 0,0 0,0 0}to{background-position:60px 220px,-90px 280px,120px 340px}}

@keyframes pkAtmoFog{0%,100%{transform:translateX(-8%);opacity:.30}50%{transform:translateX(8%);opacity:.62}}

@keyframes pkAtmoWind{from{transform:translateX(0)}to{transform:translateX(-18%)}}

@keyframes pkAtmoLightning{0%,91%,95%,100%{opacity:0}92%{opacity:.0}92.5%{opacity:.55}93%{opacity:0}94%{opacity:.25}94.4%{opacity:0}}

@keyframes pkAtmoSunBreath{0%,100%{transform:scale(1);opacity:.38}50%{transform:scale(1.07);opacity:.52}}

@keyframes pkAtmoIcon{0%,100%{transform:translateY(0) rotate(-7deg) scale(1)}50%{transform:translateY(-14px) rotate(-4deg) scale(1.03)}}

@keyframes pkAtmoLight{0%,100%{transform:translateX(-2%);opacity:.22}50%{transform:translateX(4%);opacity:.48}}

.pk-five-day-strip{scrollbar-width:thin;}
.pk-trend{white-space:nowrap;}

/* Hero — air quality card */
.pk-air-hero__body{
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:18px;
}
.pk-air-aqi{
  width:112px;
  height:112px;
  border-radius:999px;
  display:grid;
  place-items:center;
  align-content:center;
  gap:2px;
  background:rgba(148,163,184,.22);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16), 0 16px 36px rgba(0,0,0,.25);
}
.pk-air-aqi span{
  font-size:11px;
  font-weight:950;
  letter-spacing:.16em;
  color:rgba(241,247,255,.72);
}
.pk-air-aqi strong{
  font-size:36px;
  line-height:.95;
  letter-spacing:-.06em;
}
.pk-air-aqi[data-quality="good"]{ background:linear-gradient(145deg, rgba(34,197,94,.95), rgba(20,83,45,.72)); }
.pk-air-aqi[data-quality="moderate"]{ background:linear-gradient(145deg, rgba(234,179,8,.95), rgba(113,63,18,.72)); }
.pk-air-aqi[data-quality="sensitive"]{ background:linear-gradient(145deg, rgba(249,115,22,.95), rgba(124,45,18,.74)); }
.pk-air-aqi[data-quality="unhealthy"]{ background:linear-gradient(145deg, rgba(239,68,68,.95), rgba(127,29,29,.75)); }
.pk-air-aqi[data-quality="very-unhealthy"]{ background:linear-gradient(145deg, rgba(168,85,247,.95), rgba(88,28,135,.78)); }
.pk-air-aqi[data-quality="hazardous"]{ background:linear-gradient(145deg, rgba(127,29,29,.98), rgba(69,10,10,.84)); }
.pk-air-hero__details{
  display:grid;
  gap:10px;
}
.pk-air-hero__details div{
  padding:14px 15px;
  border-radius:20px;
  background:rgba(0,0,0,.18);
  border:1px solid rgba(255,255,255,.10);
}
.pk-air-hero__details span{
  display:block;
  color:var(--faint);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.13em;
  font-weight:950;
}
.pk-air-hero__details strong{
  display:block;
  margin-top:6px;
  font-size:18px;
  letter-spacing:-.03em;
}

@media (max-width: 720px){
  .pk-air-hero__body{ grid-template-columns:1fr; }
  .pk-air-aqi{ width:104px; height:104px; }
}

.weather-condition,.current-weather-condition{display:flex;align-items:center;gap:10px}
#weatherIcon{width:22px;height:22px;flex-shrink:0}

/* Widoczna ikona aktualnych warunków obok opisu w hero */
.pk-hero-condition-row{
  display:flex;
  align-items:center;
  gap:12px;
  margin-top:10px;
  max-width:760px;
}

.pk-hero-condition-icon{
  width:38px;
  height:38px;
  flex:0 0 38px;
  object-fit:contain;
  filter:drop-shadow(0 10px 22px rgba(20,160,255,.28));
}

.pk-hero-condition-row .pk-hero-condition{
  margin:0;
}

@media (max-width:640px){
  .pk-hero-condition-row{
    align-items:flex-start;
    gap:10px;
  }
  .pk-hero-condition-icon{
    width:32px;
    height:32px;
    flex-basis:32px;
  }
}

/* Hero temperature layout v1.34 — duża ikona obok temperatury */
.pk-hero-temp-row{
  display:flex;
  align-items:center;
  gap:clamp(18px,2.4vw,34px);
}

#weatherIcon.pk-hero-main-icon,
.pk-hero-main-icon{
  width:clamp(104px,10vw,170px) !important;
  height:clamp(104px,10vw,170px) !important;
  flex:0 0 auto;
  object-fit:contain;
  filter:drop-shadow(0 22px 45px rgba(56,189,248,.30));
}

.pk-station-hero__temperature .pk-temp{
  display:inline-flex;
  align-items:flex-start;
  font-weight:650 !important;
  letter-spacing:-.085em !important;
  white-space:nowrap;
}

.pk-temp-int{
  display:inline-block;
  line-height:.84;
}

.pk-temp-decimal,
.pk-temp-unit{
  display:inline-block;
  line-height:1;
  letter-spacing:-.045em;
}

.pk-temp-decimal{
  font-size:.75em;
  margin-top:.075em;
}

.pk-temp-unit{
  font-size:.54em;
  margin-top:.12em;
  margin-left:.05em;
  letter-spacing:-.02em;
}

.pk-hero-condition-row{
  margin-top:14px;
}

.pk-hero-condition-row .pk-hero-condition{
  margin:0 !important;
}

@media (max-width:760px){
  .pk-hero-temp-row{
    gap:14px;
  }
  #weatherIcon.pk-hero-main-icon,
  .pk-hero-main-icon{
    width:86px !important;
    height:86px !important;
  }
}

@media (max-width:520px){
  .pk-hero-temp-row{
    align-items:flex-start;
  }
  #weatherIcon.pk-hero-main-icon,
  .pk-hero-main-icon{
    width:72px !important;
    height:72px !important;
  }
}


/* v1.37 — kolor aktualnej temperatury zgodny ze skalą archiwum.
   JavaScript ustawia trzy bardzo zbliżone odcienie na podstawie dokładnej
   wartości temperatury, dzięki czemu zostaje delikatny gradient. */
.pk-station-hero__temperature #outside_temperature8.pk-temp{
  --temp-color-light:#fff8d6;
  --temp-color:#f97316;
  --temp-color-dark:#d95f0e;
  --temp-glow:rgba(249,115,22,.28);
  background:linear-gradient(0deg,
    var(--temp-color-light) 0%,
    var(--temp-color) 48%,
    var(--temp-color-dark) 100%
  ) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  color:transparent !important;
  text-shadow:0 18px 44px var(--temp-glow) !important;
}

.pk-station-hero__temperature #outside_temperature8.pk-temp .pk-temp-int,
.pk-station-hero__temperature #outside_temperature8.pk-temp .pk-temp-decimal,
.pk-station-hero__temperature #outside_temperature8.pk-temp .pk-temp-unit{
  background:inherit !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  color:transparent !important;
}

.pk-station-hero__temperature #outside_temperature8.pk-temp .pk-temp-decimal{
  font-size:.75em !important;
  margin-top:.055em !important;
}

.pk-station-hero__temperature #outside_temperature8.pk-temp .pk-temp-unit{
  font-size:.56em !important;
  margin-top:.105em !important;
}

.pk-hour-card img,
.forecast-day img,
.pk-brand__logo,
.pk-hero-main-icon,
.pk-scene-icon img{
  content-visibility:auto;
}

.pk-hour-card img,
.forecast-day img{
  min-height:32px;
}

/* v1.36 — miękkie ujawnianie sekcji, bez psucia layoutu */
.pk-lazy-section{
  content-visibility:auto;
  contain-intrinsic-size:260px;
}

/* v1.39 — Radar RainViewer zbudowany od zera, bez starej białej warstwy */
.pk-rainviewer-section{
  margin-top:22px;
}

.pk-rainviewer-card{
  overflow:hidden;
}

.pk-rainviewer-shell{
  position:relative;
  margin:18px auto 0;
  border-radius:26px;
  overflow:hidden;
  border:1px solid rgba(148,163,184,.22);
  background:#08111f;
  box-shadow:0 22px 65px rgba(2,6,23,.32);
  min-height:520px;
  isolation:isolate;
}

.pk-rainviewer-map{
  position:relative;
  z-index:1;
  width:100%;
  height:clamp(380px, 58vw, 620px);
  min-height:380px;
  background:#08111f;
}

.pk-rainviewer-shell .leaflet-container{
  font-family:inherit;
  background:#08111f !important;
}

.pk-rainviewer-shell .leaflet-tile-pane{
  filter:saturate(.85) contrast(.95) brightness(.72);
}

.pk-rainviewer-shell .leaflet-overlay-pane,
.pk-rainviewer-shell .leaflet-tile-pane .pk-rainviewer-radar-layer{
  filter:none !important;
}

.pk-rainviewer-shell .pk-rainviewer-radar-layer img,
.pk-rainviewer-shell .leaflet-tile.pk-rainviewer-radar-layer{
  background:transparent !important;
  mix-blend-mode:normal !important;
}

.pk-rainviewer-shell .leaflet-control-attribution{
  background:rgba(2,6,23,.68);
  color:rgba(226,232,240,.78);
  backdrop-filter:blur(10px);
}

.pk-rainviewer-shell .leaflet-control-attribution a{
  color:#bfdbfe;
}

.pk-rainviewer-status{
  position:absolute;
  left:18px;
  top:18px;
  z-index:500;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(15,23,42,.66);
  color:#e5eefb;
  font-size:.82rem;
  font-weight:800;
  letter-spacing:.02em;
  box-shadow:0 14px 36px rgba(2,6,23,.28);
  backdrop-filter:blur(16px);
}

.pk-rainviewer-controls{
  position:absolute;
  left:50%;
  bottom:18px;
  z-index:500;
  transform:translateX(-50%);
  display:flex;
  align-items:center;
  gap:8px;
  padding:9px 11px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(15,23,42,.72);
  box-shadow:0 18px 48px rgba(2,6,23,.34);
  backdrop-filter:blur(18px);
}

.pk-rainviewer-controls button{
  width:38px;
  height:38px;
  border:0;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  color:#f8fafc;
  font-size:1.15rem;
  font-weight:900;
  line-height:1;
  cursor:pointer;
  transition:transform .18s ease, background .18s ease;
}

.pk-rainviewer-controls button:hover{
  transform:translateY(-1px);
  background:rgba(255,255,255,.2);
}

.pk-rainviewer-controls span{
  min-width:112px;
  padding:0 8px;
  color:#e2e8f0;
  font-size:.86rem;
  font-weight:800;
  white-space:nowrap;
}

.pk-rainviewer-credit{
  position:absolute;
  right:12px;
  bottom:10px;
  z-index:501;
  color:rgba(226,232,240,.72);
  font-size:.72rem;
  font-weight:700;
  text-decoration:none;
  background:rgba(15,23,42,.55);
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  padding:5px 9px;
  backdrop-filter:blur(12px);
}

.pk-rainviewer-marker{
  position:relative;
}

.pk-rainviewer-marker span{
  position:absolute;
  inset:0;
  display:block;
  border-radius:999px;
  background:#38bdf8;
  border:3px solid rgba(255,255,255,.94);
  box-shadow:0 0 0 7px rgba(56,189,248,.22), 0 0 28px rgba(56,189,248,.85);
}

.pk-rainviewer-marker span::after{
  content:"";
  position:absolute;
  inset:-13px;
  border-radius:inherit;
  border:1px solid rgba(56,189,248,.42);
  animation:pkRadarPulse 1.9s ease-out infinite;
}

@media (max-width: 720px){
  .pk-rainviewer-shell{
    border-radius:18px;
    min-height:390px;
    margin-top:14px;
  }

  .pk-rainviewer-map{
    height:390px;
    min-height:390px;
  }

  .pk-rainviewer-status{
    left:12px;
    top:12px;
    font-size:.76rem;
  }

  .pk-rainviewer-controls{
    width:calc(100% - 24px);
    justify-content:center;
    bottom:12px;
  }

  .pk-rainviewer-controls span{
    min-width:auto;
    font-size:.78rem;
  }
}

/* v1.40 — Radar: CartoDB Dark Matter + płynne przejścia klatek */
.pk-rainviewer-card{
  border-radius:30px;
  overflow:hidden;
}

.pk-rainviewer-shell{
  border-radius:28px;
  border:1px solid rgba(191,219,254,.22);
  background:linear-gradient(180deg, rgba(15,23,42,.98), rgba(3,7,18,.96));
  box-shadow:0 24px 80px rgba(2,6,23,.42), inset 0 1px 0 rgba(255,255,255,.08);
}

.pk-rainviewer-map{
  background:#030712 !important;
}

.pk-rainviewer-shell .leaflet-container{
  background:#030712 !important;
}

.pk-rainviewer-shell .leaflet-tile-pane{
  filter:saturate(.9) contrast(1.05) brightness(.82);
}

.pk-rainviewer-shell .leaflet-overlay-pane .leaflet-layer,
.pk-rainviewer-shell .leaflet-tile-pane .pk-rainviewer-radar-layer{
  transition:opacity .48s ease-in-out;
}

.pk-rainviewer-status[hidden]{
  display:none !important;
}

.pk-rainviewer-controls{
  background:rgba(3,7,18,.72);
  border-color:rgba(191,219,254,.18);
}

.pk-rainviewer-controls button{
  background:rgba(148,163,184,.18);
}

.pk-rainviewer-controls button:hover{
  background:rgba(56,189,248,.22);
}

/* v1.41 — testowy panel najbliższych opadów z RainViewer */
.pk-rainviewer-section{
  display:grid;
  grid-template-columns:minmax(0, 1.75fr) minmax(320px, .75fr);
  gap:18px;
  align-items:stretch;
}

.pk-rainviewer-section .pk-rainviewer-card,
.pk-rainviewer-section .pk-rain-nowcast-card{
  min-width:0;
}

.pk-rainviewer-map{
  height:clamp(430px, 54vw, 690px);
  min-height:430px;
}

.pk-rain-nowcast-card{
  display:flex;
  flex-direction:column;
  gap:18px;
  border-radius:30px;
  overflow:hidden;
  background:
    radial-gradient(circle at 18% 0%, rgba(56,189,248,.18), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(248,250,252,.84));
}

[data-theme="dark"] .pk-rain-nowcast-card,
.theme-dark .pk-rain-nowcast-card{
  background:
    radial-gradient(circle at 18% 0%, rgba(56,189,248,.18), transparent 34%),
    linear-gradient(180deg, rgba(15,23,42,.88), rgba(3,7,18,.82));
}

.pk-rain-arrival{
  padding:18px;
  border-radius:24px;
  border:1px solid rgba(148,163,184,.2);
  background:rgba(255,255,255,.58);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.62);
}

[data-theme="dark"] .pk-rain-arrival,
.theme-dark .pk-rain-arrival{
  background:rgba(15,23,42,.48);
  border-color:rgba(191,219,254,.16);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}

.pk-rain-arrival__label{
  display:block;
  color:var(--muted, #64748b);
  font-size:.9rem;
  font-weight:800;
  line-height:1.35;
}

.pk-rain-arrival strong{
  display:block;
  margin-top:8px;
  font-size:clamp(2.25rem, 5vw, 4.2rem);
  line-height:.95;
  letter-spacing:-.06em;
  color:#1677ff;
}

.pk-rain-arrival small{
  display:block;
  margin-top:12px;
  color:var(--muted, #64748b);
  line-height:1.45;
}

.pk-rain-chart{
  position:relative;
  min-height:190px;
  padding:12px;
  border-radius:24px;
  border:1px solid rgba(148,163,184,.18);
  background:rgba(255,255,255,.44);
  overflow:hidden;
}

[data-theme="dark"] .pk-rain-chart,
.theme-dark .pk-rain-chart{
  background:linear-gradient(180deg, rgba(15,23,42,.58), rgba(15,23,42,.34));
  border-color:rgba(191,219,254,.14);
}

.pk-rain-chart__empty{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:var(--muted, #64748b);
  font-weight:800;
}

.pk-rain-line-chart{
  display:block;
  width:100%;
  height:190px;
  overflow:visible;
}

.pk-rain-grid{
  stroke:rgba(148,163,184,.23);
  stroke-width:1;
  stroke-dasharray:4 7;
}

.pk-rain-area{
  fill:url(#pkRainAreaGradient);
}

.pk-rain-line{
  fill:none;
  stroke:#60a5fa;
  stroke-width:4;
  stroke-linecap:round;
  stroke-linejoin:round;
  filter:drop-shadow(0 10px 18px rgba(37,99,235,.28));
}

.pk-rain-dot{
  fill:rgba(148,163,184,.75);
  stroke:rgba(15,23,42,.55);
  stroke-width:1.5;
}

.pk-rain-dot.is-valid{
  fill:#38bdf8;
  stroke:#bfdbfe;
  filter:drop-shadow(0 0 9px rgba(56,189,248,.55));
}

.pk-rain-y-label,
.pk-rain-x-label{
  fill:var(--muted, #64748b);
  font-size:.7rem;
  font-weight:800;
}

.pk-rain-x-label{
  text-anchor:middle;
}

.pk-rain-nowcast-stats{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
}

.pk-rain-nowcast-stats div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:13px 15px;
  border-radius:18px;
  background:rgba(255,255,255,.5);
  border:1px solid rgba(148,163,184,.16);
}

[data-theme="dark"] .pk-rain-nowcast-stats div,
.theme-dark .pk-rain-nowcast-stats div{
  background:rgba(15,23,42,.42);
  border-color:rgba(191,219,254,.12);
}

.pk-rain-nowcast-stats span{
  color:var(--muted, #64748b);
  font-size:.84rem;
  font-weight:800;
}

.pk-rain-nowcast-stats strong{
  color:var(--text, #0f172a);
  font-size:1.05rem;
  font-weight:900;
  white-space:nowrap;
}

.pk-rain-nowcast-note{
  margin-top:auto;
  color:var(--muted, #64748b);
  font-size:.78rem;
  line-height:1.5;
}

@media (max-width: 1020px){
  .pk-rainviewer-section{
    grid-template-columns:1fr;
  }

  .pk-rain-nowcast-card{
    order:2;
  }
}

@media (max-width: 720px){
  .pk-rainviewer-map{
    height:420px;
    min-height:420px;
  }

  .pk-rain-chart{
    min-height:155px;
  }

  .pk-rain-bar span{
    display:none;
  }
}


/* Radar + nowcasting final placement/readability tweaks */
.pk-rainviewer-section{
  margin-top:18px;
}
.pk-rainviewer-card,
.pk-rain-nowcast-card{
  background:
    radial-gradient(circle at 12% 0%, rgba(56,189,248,.14), transparent 34%),
    linear-gradient(180deg, rgba(15,23,42,.84), rgba(2,6,23,.78)) !important;
  border:1px solid rgba(148,163,184,.18) !important;
  box-shadow:0 24px 70px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.08) !important;
  color:#e5eefc !important;
}
.pk-rain-nowcast-card .pk-kicker,
.pk-rain-nowcast-card .pk-hourly-lead,
.pk-rain-nowcast-note,
.pk-rain-arrival small,
.pk-rain-arrival__label,
.pk-rain-nowcast-stats span{
  color:rgba(203,213,225,.82) !important;
}
.pk-rain-nowcast-card h2,
.pk-rain-nowcast-stats strong{
  color:#f8fafc !important;
}
.pk-rain-arrival{
  background:linear-gradient(180deg, rgba(30,41,59,.72), rgba(15,23,42,.58)) !important;
  border-color:rgba(125,211,252,.18) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 16px 34px rgba(0,0,0,.18) !important;
}
.pk-rain-arrival strong{
  color:#60a5fa !important;
  text-shadow:0 12px 34px rgba(37,99,235,.35);
}
.pk-rain-chart{
  background:
    repeating-linear-gradient(to top, rgba(148,163,184,.12) 0 1px, transparent 1px 34px),
    linear-gradient(180deg, rgba(15,23,42,.62), rgba(2,6,23,.42)) !important;
  border-color:rgba(125,211,252,.16) !important;
}
.pk-rain-nowcast-stats div{
  background:rgba(15,23,42,.5) !important;
  border-color:rgba(125,211,252,.14) !important;
}
.pk-rain-bar i{
  background:linear-gradient(180deg, rgba(147,197,253,.82), rgba(59,130,246,.72)) !important;
}
.pk-rain-bar.is-rain i{
  background:linear-gradient(180deg, #7dd3fc, #2563eb) !important;
}
.pk-rain-bar span{
  color:rgba(203,213,225,.72) !important;
}
.pk-rainviewer-map{
  height:clamp(390px, 48vw, 620px);
  min-height:390px;
}
@media (max-width:720px){
  .pk-rainviewer-map{height:360px;min-height:360px;}
}

/* radar compact */
.pk-card__top.pk-card__top--compact{display:none;}
.pk-rainviewer-card,.pk-rain-nowcast-card{height:auto;}
.pk-rainviewer-shell{margin-top:0}
#rainviewer-map{height:330px!important;}
.pk-rainviewer-section{grid-template-columns:minmax(0,1fr) 260px!important;align-items:stretch;}
.pk-rain-nowcast-card{padding-top:12px!important}
.leaflet-marker-icon{transform:scale(1.2);transform-origin:bottom center;}

/* Radar Engine v2 — układ 3/4 mapa + 1/4 panel, bez pustej przestrzeni */
.pk-rainviewer-section{
  display:grid !important;
  grid-template-columns:minmax(0, 3fr) minmax(300px, 1fr) !important;
  gap:16px !important;
  align-items:stretch !important;
  margin-top:18px !important;
}
.pk-rainviewer-card,
.pk-rain-nowcast-card{
  min-width:0 !important;
  height:400px !important;
  min-height:0 !important;
  border-radius:26px !important;
  overflow:hidden !important;
}
.pk-rainviewer-card{
  padding:0 !important;
}
.pk-rainviewer-shell,
.pk-rainviewer-map,
#rainviewer-map{
  height:400px !important;
  min-height:0 !important;
  width:100% !important;
  margin:0 !important;
  border-radius:26px !important;
  overflow:hidden !important;
  background:#030712 !important;
}
.pk-rainviewer-shell{
  position:relative !important;
}
.pk-rain-nowcast-card{
  display:flex !important;
  flex-direction:column !important;
  gap:10px !important;
  padding:14px !important;
  background:
    radial-gradient(circle at 15% 0%, rgba(96,165,250,.16), transparent 34%),
    linear-gradient(180deg, rgba(15,23,42,.88), rgba(2,6,23,.82)) !important;
  border:1px solid rgba(148,163,184,.18) !important;
  box-shadow:0 22px 65px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.08) !important;
}
.pk-rain-arrival{
  padding:14px !important;
  border-radius:20px !important;
  background:linear-gradient(180deg, rgba(30,41,59,.72), rgba(15,23,42,.56)) !important;
  border:1px solid rgba(125,211,252,.16) !important;
}
.pk-rain-arrival__label{
  font-size:.72rem !important;
  line-height:1.2 !important;
}
.pk-rain-arrival strong{
  margin-top:4px !important;
  font-size:clamp(2.15rem, 3.2vw, 3.3rem) !important;
  line-height:.88 !important;
  color:#60a5fa !important;
  text-shadow:0 12px 34px rgba(37,99,235,.35) !important;
}
.pk-rain-arrival small{
  margin-top:8px !important;
  font-size:.72rem !important;
  line-height:1.35 !important;
}
.pk-rain-chart{
  height:138px !important;
  min-height:138px !important;
  flex:0 0 138px !important;
  padding:6px 8px !important;
  border-radius:18px !important;
  background:
    repeating-linear-gradient(to top, rgba(148,163,184,.11) 0 1px, transparent 1px 34px),
    linear-gradient(180deg, rgba(15,23,42,.62), rgba(2,6,23,.42)) !important;
  border:1px solid rgba(125,211,252,.16) !important;
}
.pk-rain-column-chart{
  display:block !important;
  width:100% !important;
  height:138px !important;
  overflow:visible !important;
}
.pk-rain-column{
  fill:rgba(30,41,59,.46) !important;
  opacity:.92 !important;
}
.pk-rain-column.is-rain{
  fill:url(#pkRainBarGradient) !important;
  filter:drop-shadow(0 0 8px rgba(59,130,246,.45));
}
.pk-rain-column.is-clutter{
  fill:url(#pkRainClutterGradient) !important;
  opacity:.30 !important;
}
.pk-rain-grid{
  stroke:rgba(148,163,184,.20) !important;
  stroke-width:1 !important;
  stroke-dasharray:3 6 !important;
}
.pk-rain-y-label,
.pk-rain-x-label{
  fill:rgba(203,213,225,.68) !important;
  font-size:9px !important;
  font-weight:800 !important;
}
.pk-rain-x-label{text-anchor:middle;}
.pk-rain-nowcast-stats{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:7px !important;
  margin-top:auto !important;
}
.pk-rain-nowcast-stats div{
  padding:8px 10px !important;
  border-radius:14px !important;
  background:rgba(15,23,42,.56) !important;
  border:1px solid rgba(125,211,252,.12) !important;
}
.pk-rain-nowcast-stats span{font-size:.68rem !important;}
.pk-rain-nowcast-stats strong{font-size:.88rem !important;}
.pk-rain-nowcast-note{display:none !important;}
.pk-rainviewer-status[hidden]{display:none !important;}
.pk-rainviewer-controls{
  left:50% !important;
  bottom:18px !important;
  transform:translateX(-50%) !important;
  padding:8px 11px !important;
  background:rgba(3,7,18,.58) !important;
  border:1px solid rgba(226,232,240,.18) !important;
  box-shadow:0 16px 42px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.08) !important;
  backdrop-filter:blur(18px) saturate(1.2) !important;
  z-index:1100 !important;
}
.pk-rainviewer-controls button{
  width:32px !important;
  height:32px !important;
  background:rgba(148,163,184,.20) !important;
  color:#f8fafc !important;
}
.pk-rainviewer-controls span{
  min-width:100px !important;
  font-size:.78rem !important;
}
.pk-rainviewer-shell .leaflet-pane.pkStationPane,
.pk-rainviewer-shell .leaflet-pane.leaflet-pk-station-pane{
  z-index:980 !important;
}
.pk-rainviewer-shell .leaflet-marker-pane{z-index:900 !important;}
.pk-rainviewer-shell .leaflet-overlay-pane{z-index:450 !important;}
.pk-rainviewer-marker{
  display:block !important;
  width:22px !important;
  height:22px !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  z-index:1200 !important;
}
.pk-rainviewer-marker span{
  width:22px !important;
  height:22px !important;
  transform:none !important;
  box-shadow:0 0 0 6px rgba(56,189,248,.22), 0 0 22px rgba(56,189,248,.80) !important;
}
/* Leaflet sam ustawia transform markera zgodnie ze współrzędnymi. Nie nadpisywać. */
.pk-rainviewer-station-dot{filter:drop-shadow(0 0 10px rgba(56,189,248,.85));}
.pk-rainviewer-station-ring{animation:pkRadarPulse 1.9s ease-out infinite;transform-origin:center;}
@media (max-width:1020px){
  .pk-rainviewer-section{grid-template-columns:1fr !important;}
  .pk-rainviewer-shell,.pk-rainviewer-map,#rainviewer-map,.pk-rainviewer-card,.pk-rain-nowcast-card{height:380px !important;}
}
@media (max-width:720px){
  .pk-rainviewer-shell,.pk-rainviewer-map,#rainviewer-map,.pk-rainviewer-card{height:350px !important;}
  .pk-rain-nowcast-card{height:auto !important;min-height:330px !important;}
}


/* Radar sizing override */
.radar-layout{align-items:stretch!important;}
.radar-card,.radar-engine-card,.radar-engine-panel{
  min-height:540px!important;
}
#radarMap,.radar-map,#radar{
  height:430px!important;
}
.radar-chart{
  height:130px!important;
}
.radar-engine-footer{
  margin-top:auto!important;
  padding-top:14px!important;
}


/* Mobile Radar Engine */
@media (max-width:760px){
  .rain-radar-grid,.radar-layout{
    grid-template-columns:1fr !important;
  }
  .rain-radar-map,#radarMap,.radar-map{
    height:300px !important;
  }
  .rain-engine-panel,.radar-engine-panel,.radar-engine-card{
    min-height:auto !important;
    margin-top:16px;
  }
  .rain-engine-chart,.radar-chart{
    height:120px !important;
  }
  .radar-controls{
    transform:scale(.9);
    transform-origin:center bottom;
    bottom:12px !important;
  }
}


/* === FIX v2.2: mobile hero + radar height/readability === */

/* Radar desktop/tablet: keep both cards equal and tall enough for end-time row */
.pk-rainviewer-section{
  grid-template-columns:minmax(0, 3fr) minmax(330px, 1fr) !important;
  align-items:stretch !important;
  gap:18px !important;
}
.pk-rainviewer-card,
.pk-rain-nowcast-card{
  height:520px !important;
  min-height:520px !important;
  max-height:none !important;
}
.pk-rainviewer-shell,
.pk-rainviewer-map,
#rainviewer-map{
  height:520px !important;
  min-height:520px !important;
  max-height:none !important;
}
.pk-rain-nowcast-card{
  overflow:visible !important;
  padding:16px !important;
  gap:12px !important;
}
.pk-rain-arrival{
  flex:0 0 auto !important;
}
.pk-rain-chart{
  flex:1 1 auto !important;
  min-height:170px !important;
  height:auto !important;
}
.pk-rain-column-chart{
  height:100% !important;
  min-height:170px !important;
}
.pk-rain-nowcast-stats{
  flex:0 0 auto !important;
  margin-top:0 !important;
}
.pk-rain-nowcast-stats div{
  min-height:42px !important;
}
.pk-rainviewer-controls{
  bottom:20px !important;
}

/* Mobile radar: stacked layout, taller nowcast card, no clipping */
@media (max-width:1020px){
  .pk-rainviewer-section{
    grid-template-columns:1fr !important;
  }
  .pk-rainviewer-card,
  .pk-rainviewer-shell,
  .pk-rainviewer-map,
  #rainviewer-map{
    height:390px !important;
    min-height:390px !important;
  }
  .pk-rain-nowcast-card{
    height:auto !important;
    min-height:520px !important;
    overflow:visible !important;
  }
}

@media (max-width:720px){
  .pk-rainviewer-section{
    gap:14px !important;
  }
  .pk-rainviewer-card,
  .pk-rainviewer-shell,
  .pk-rainviewer-map,
  #rainviewer-map{
    height:345px !important;
    min-height:345px !important;
    border-radius:24px !important;
  }
  .pk-rainviewer-controls{
    bottom:12px !important;
    max-width:calc(100% - 26px) !important;
    padding:7px 10px !important;
  }
  .pk-rainviewer-controls button{
    width:30px !important;
    height:30px !important;
  }
  .pk-rainviewer-controls span{
    min-width:84px !important;
    font-size:.72rem !important;
  }
  .pk-rain-nowcast-card{
    min-height:540px !important;
    padding:14px !important;
    border-radius:24px !important;
  }
  .pk-rain-arrival{
    padding:14px !important;
  }
  .pk-rain-arrival strong{
    font-size:clamp(2.55rem, 13vw, 4.25rem) !important;
  }
  .pk-rain-chart{
    min-height:175px !important;
    flex-basis:175px !important;
  }
  .pk-rain-column-chart{
    min-height:175px !important;
  }
  .pk-rain-nowcast-stats div{
    padding:11px 12px !important;
    min-height:46px !important;
  }
}

/* Mobile hero: rebuild layout so air card and metric tiles never overlap */
@media (max-width:720px){
  .pk-hero-station{
    display:block !important;
  }

  .pk-station-hero{
    display:grid !important;
    grid-template-columns:1fr !important;
    grid-template-rows:auto auto auto !important;
    gap:14px !important;
    min-height:auto !important;
    height:auto !important;
    overflow:hidden !important;
    padding:0 !important;
    border-radius:30px !important;
  }

  .pk-station-hero__content{
    grid-column:1 !important;
    grid-row:1 !important;
    padding:28px 20px 4px !important;
    gap:18px !important;
    min-width:0 !important;
  }

  .pk-station-hero__headline h1{
    font-size:clamp(38px, 11vw, 54px) !important;
    line-height:.94 !important;
    letter-spacing:-.075em !important;
  }

  .pk-live-canvas .pk-hero-condition,
  .pk-hero-condition{
    max-width:100% !important;
    font-size:clamp(16px, 4.2vw, 20px) !important;
    line-height:1.28 !important;
    margin-top:10px !important;
  }

  .pk-hero-temp-row{
    align-items:center !important;
    gap:16px !important;
    flex-wrap:nowrap !important;
  }

  #weatherIcon.pk-hero-main-icon,
  .pk-hero-main-icon{
    width:74px !important;
    height:74px !important;
    flex:0 0 74px !important;
  }

  .pk-station-hero__temperature .pk-temp,
  .pk-station-hero__temperature #outside_temperature8.pk-temp{
    font-size:clamp(76px, 23vw, 112px) !important;
    line-height:.84 !important;
    letter-spacing:-.09em !important;
    white-space:nowrap !important;
  }

  .pk-station-hero__temperature .pk-temp-meta{
    gap:8px !important;
    margin-top:12px !important;
  }

  .pk-station-hero__temperature .pk-temp-meta span{
    font-size:12px !important;
    padding:8px 11px !important;
  }

  .pk-station-hero__today,
  .pk-air-hero{
    grid-column:1 !important;
    grid-row:2 !important;
    align-self:stretch !important;
    width:auto !important;
    max-width:none !important;
    margin:0 18px !important;
    padding:16px !important;
    border-radius:24px !important;
    position:relative !important;
    z-index:5 !important;
  }

  .pk-station-hero__today-head{
    margin-bottom:12px !important;
  }

  .pk-station-hero__today-head strong{
    font-size:20px !important;
  }

  .pk-air-hero__body{
    grid-template-columns:auto 1fr !important;
    gap:14px !important;
    align-items:center !important;
  }

  .pk-air-aqi{
    width:86px !important;
    height:86px !important;
  }

  .pk-air-aqi strong{
    font-size:30px !important;
  }

  .pk-air-hero__details{
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
  }

  .pk-air-hero__details div{
    padding:10px 11px !important;
    border-radius:16px !important;
  }

  .pk-air-hero__details span{
    font-size:10px !important;
  }

  .pk-air-hero__details strong{
    font-size:15px !important;
  }

  .pk-station-hero__metrics{
    grid-column:1 !important;
    grid-row:3 !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;
    padding:0 18px 18px !important;
    position:relative !important;
    z-index:5 !important;
  }

  .pk-station-hero__metrics .pk-live-metric{
    min-height:78px !important;
    padding:12px !important;
    border-radius:18px !important;
  }

  .pk-station-hero__metrics .pk-live-metric span{
    font-size:10px !important;
    letter-spacing:.13em !important;
  }

  .pk-station-hero__metrics .pk-live-metric strong{
    font-size:clamp(18px, 5vw, 24px) !important;
    line-height:1 !important;
  }

  .pk-station-hero__metrics .pk-live-metric small{
    font-size:11px !important;
    line-height:1.25 !important;
  }

  .pk-station-hero .pk-scene-icon{
    width:210px !important;
    height:210px !important;
    right:-12% !important;
    top:2% !important;
    opacity:.05 !important;
  }

  .pk-station-hero .pk-scene-sun{
    width:240px !important;
    height:240px !important;
    right:-30% !important;
    bottom:22% !important;
    opacity:.42 !important;
  }
}

@media (max-width:420px){
  .pk-air-hero__body{
    grid-template-columns:1fr !important;
  }
  .pk-air-aqi{
    width:92px !important;
    height:92px !important;
  }
  .pk-station-hero__metrics{
    grid-template-columns:1fr !important;
  }
}

/* Mobile hero alignment: center main icon/temp and badges inside hero */
@media (max-width:720px){
  .pk-station-hero__temperature{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    width:100% !important;
  }

  .pk-station-hero__temperature .pk-hero-temp-row,
  .pk-hero-temp-row{
    width:100% !important;
    justify-content:center !important;
    align-items:center !important;
    text-align:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  .pk-station-hero__temperature .pk-temp-meta,
  .pk-temp-meta{
    width:100% !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    text-align:center !important;
    flex-wrap:wrap !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  .pk-station-hero__temperature .pk-temp-meta span,
  .pk-temp-meta span{
    text-align:center !important;
    justify-content:center !important;
  }
}

/* Hero atmosphere card v1 — replaces separate air-quality widget */
.pk-atmo-hero{
  display:flex !important;
  flex-direction:column !important;
  gap:18px !important;
  min-width:0 !important;
}
.pk-atmo-hero__header .pk-kicker{
  margin:0 !important;
}
.pk-atmo-hero__list{
  display:grid !important;
  gap:0 !important;
  border-radius:26px !important;
  overflow:hidden !important;
  border:1px solid rgba(255,255,255,.08) !important;
  background:linear-gradient(180deg, rgba(15,33,60,.30), rgba(7,18,36,.18)) !important;
}
.pk-atmo-hero__item{
  display:grid !important;
  grid-template-columns:54px minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:14px !important;
  padding:17px 18px !important;
  min-height:92px !important;
  border-bottom:1px solid rgba(255,255,255,.10) !important;
  position:relative !important;
}
.pk-atmo-hero__item:last-child{
  border-bottom:0 !important;
}
.pk-atmo-hero__item:before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.28;
  pointer-events:none;
}
.pk-atmo-hero__item--air:before{background:radial-gradient(circle at 10% 50%, rgba(74,222,128,.24), transparent 42%)}
.pk-atmo-hero__item--uv:before{background:radial-gradient(circle at 10% 50%, rgba(250,204,21,.22), transparent 42%)}
.pk-atmo-hero__item--clouds:before{background:radial-gradient(circle at 10% 50%, rgba(147,197,253,.20), transparent 42%)}
.pk-atmo-hero__item--humidity:before{background:radial-gradient(circle at 10% 50%, rgba(56,189,248,.22), transparent 42%)}
.pk-atmo-hero__icon{
  position:relative;
  z-index:1;
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:18px;
  background:rgba(255,255,255,.085);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12);
  font-size:27px;
}
.pk-atmo-hero__copy,
.pk-atmo-hero__value,
.pk-atmo-hero__side{
  position:relative;
  z-index:1;
}
.pk-atmo-hero__copy span,
.pk-atmo-hero__value span,
.pk-atmo-hero__side span{
  display:block;
  color:rgba(201,216,238,.62);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.18em;
  font-weight:950;
  line-height:1.15;
}
.pk-atmo-hero__copy strong{
  display:block;
  margin-top:7px;
  font-size:clamp(21px,1.7vw,30px);
  line-height:1;
  letter-spacing:-.055em;
  color:#f8fbff;
}
.pk-atmo-hero__copy small{
  display:block;
  margin-top:5px;
  color:rgba(226,238,255,.74);
  font-weight:900;
}
.pk-atmo-hero__copy small span{
  display:inline;
  font-size:10px;
  letter-spacing:.13em;
}
.pk-atmo-hero__copy small b{
  font-size:18px;
  color:#fff;
}
.pk-atmo-hero__value{
  min-width:82px;
  text-align:left;
}
.pk-atmo-hero__value strong{
  display:block;
  margin-top:7px;
  font-size:clamp(24px,2vw,34px);
  line-height:1;
  letter-spacing:-.06em;
  color:#fff;
}
.pk-atmo-hero__side{
  display:grid;
  grid-template-columns:auto auto;
  column-gap:10px;
  row-gap:4px;
  align-items:baseline;
  min-width:116px;
  padding-left:14px;
  border-left:1px solid rgba(255,255,255,.10);
}
.pk-atmo-hero__side span{
  font-size:10px;
  letter-spacing:.12em;
}
.pk-atmo-hero__side strong{
  color:#fff;
  font-size:14px;
  white-space:nowrap;
}
.pk-atmo-hero[data-quality="good"],
.pk-atmo-hero .pk-atmo-hero__item--air[data-quality="good"]{--atmo-quality:#22c55e;}
.pk-atmo-hero .pk-atmo-hero__item--air[data-quality="moderate"]{--atmo-quality:#eab308;}
.pk-atmo-hero .pk-atmo-hero__item--air[data-quality="sensitive"]{--atmo-quality:#f97316;}
.pk-atmo-hero .pk-atmo-hero__item--air[data-quality="unhealthy"]{--atmo-quality:#ef4444;}
.pk-atmo-hero .pk-atmo-hero__item--air[data-quality="very-unhealthy"]{--atmo-quality:#a855f7;}
.pk-atmo-hero .pk-atmo-hero__item--air[data-quality="hazardous"]{--atmo-quality:#7f1d1d;}
.pk-atmo-hero__item--air .pk-atmo-hero__icon{
  background:color-mix(in srgb, var(--atmo-quality, #94a3b8) 28%, rgba(255,255,255,.08));
  box-shadow:0 0 34px color-mix(in srgb, var(--atmo-quality, #94a3b8) 34%, transparent), inset 0 1px 0 rgba(255,255,255,.14);
}
.pk-atmo-hero__item--air{
  border-top:3px solid color-mix(in srgb, var(--atmo-quality, #94a3b8) 72%, transparent) !important;
}

@media (max-width:980px){
  .pk-station-hero{
    grid-template-columns:1fr !important;
  }
  .pk-atmo-hero{
    grid-column:1 !important;
    grid-row:2 !important;
    margin:0 22px 20px !important;
    align-self:stretch !important;
  }
}

@media (max-width:720px){
  .pk-atmo-hero{
    margin:0 18px !important;
    padding:16px !important;
    border-radius:24px !important;
  }
  .pk-atmo-hero__list{
    border-radius:20px !important;
  }
  .pk-atmo-hero__item{
    grid-template-columns:44px minmax(0,1fr) auto !important;
    min-height:74px !important;
    padding:13px 12px !important;
    gap:10px !important;
  }
  .pk-atmo-hero__icon{
    width:44px !important;
    height:44px !important;
    border-radius:15px !important;
    font-size:22px !important;
  }
  .pk-atmo-hero__copy span,
  .pk-atmo-hero__value span,
  .pk-atmo-hero__side span{
    font-size:9px !important;
    letter-spacing:.14em !important;
  }
  .pk-atmo-hero__copy strong{
    font-size:20px !important;
  }
  .pk-atmo-hero__value{
    min-width:58px !important;
  }
  .pk-atmo-hero__value strong{
    font-size:23px !important;
  }
  .pk-atmo-hero__side{
    grid-template-columns:1fr !important;
    min-width:72px !important;
    row-gap:2px !important;
    padding-left:10px !important;
  }
  .pk-atmo-hero__side strong{
    font-size:12px !important;
  }
}

@media (max-width:420px){
  .pk-atmo-hero__item{
    grid-template-columns:40px minmax(0,1fr) !important;
  }
  .pk-atmo-hero__value,
  .pk-atmo-hero__side{
    grid-column:2 !important;
    min-width:0 !important;
    padding-left:0 !important;
    border-left:0 !important;
    display:flex !important;
    align-items:baseline !important;
    gap:8px !important;
    margin-top:4px !important;
  }
}

/* Atmosphere card v2 — single clean list, no cramped nested mini-cards */
.pk-station-hero{
  grid-template-columns:minmax(0,1fr) minmax(340px,.52fr) !important;
}

.pk-atmo-hero{
  padding:clamp(18px,2vw,24px) !important;
  border-radius:30px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  gap:16px !important;
  overflow:hidden !important;
}

.pk-atmo-hero__header .pk-kicker{
  margin:0 !important;
  color:rgba(201,216,238,.66) !important;
  font-size:12px !important;
  letter-spacing:.22em !important;
}

.pk-atmo-hero__list{
  display:block !important;
  border:0 !important;
  border-radius:0 !important;
  overflow:visible !important;
  background:transparent !important;
}

.pk-atmo-hero__item{
  display:grid !important;
  grid-template-columns:46px minmax(0,1fr) minmax(64px,auto) !important;
  align-items:center !important;
  column-gap:14px !important;
  row-gap:4px !important;
  min-height:68px !important;
  padding:12px 0 !important;
  border:0 !important;
  border-bottom:1px solid rgba(255,255,255,.12) !important;
  background:transparent !important;
}

.pk-atmo-hero__item:last-child{
  border-bottom:0 !important;
}

.pk-atmo-hero__item:before{
  display:none !important;
}

.pk-atmo-hero__icon{
  width:46px !important;
  height:46px !important;
  border-radius:17px !important;
  font-size:24px !important;
  background:rgba(255,255,255,.085) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14), 0 14px 34px rgba(0,0,0,.18) !important;
}

.pk-atmo-hero__item--air .pk-atmo-hero__icon{
  background:color-mix(in srgb, var(--atmo-quality, #94a3b8) 24%, rgba(255,255,255,.08)) !important;
  box-shadow:0 0 28px color-mix(in srgb, var(--atmo-quality, #94a3b8) 26%, transparent), inset 0 1px 0 rgba(255,255,255,.14) !important;
}

.pk-atmo-hero__item--air{
  border-top:0 !important;
}

.pk-atmo-hero__copy span,
.pk-atmo-hero__value span,
.pk-atmo-hero__side span{
  font-size:10px !important;
  letter-spacing:.17em !important;
  color:rgba(201,216,238,.62) !important;
  line-height:1.15 !important;
  white-space:normal !important;
}

.pk-atmo-hero__copy strong{
  margin-top:5px !important;
  font-size:clamp(18px,1.35vw,24px) !important;
  line-height:1.05 !important;
  letter-spacing:-.035em !important;
  white-space:normal !important;
  overflow-wrap:normal !important;
}

.pk-atmo-hero__copy small{
  display:none !important;
}

.pk-atmo-hero__value{
  min-width:64px !important;
  text-align:right !important;
}

.pk-atmo-hero__value strong{
  margin-top:4px !important;
  font-size:clamp(22px,1.8vw,30px) !important;
  line-height:1 !important;
  letter-spacing:-.045em !important;
}

.pk-atmo-hero__side{
  min-width:76px !important;
  padding-left:12px !important;
  border-left:1px solid rgba(255,255,255,.10) !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:2px !important;
  text-align:right !important;
}

.pk-atmo-hero__side span{
  font-size:9px !important;
  letter-spacing:.11em !important;
}

.pk-atmo-hero__side strong{
  font-size:13px !important;
  line-height:1.05 !important;
  color:#fff !important;
  white-space:nowrap !important;
}

@media (max-width:1180px){
  .pk-station-hero{
    grid-template-columns:minmax(0,1fr) minmax(315px,.5fr) !important;
  }
  .pk-atmo-hero__item{
    grid-template-columns:42px minmax(0,1fr) minmax(58px,auto) !important;
    column-gap:11px !important;
  }
  .pk-atmo-hero__icon{
    width:42px !important;
    height:42px !important;
    font-size:21px !important;
  }
}

@media (max-width:980px){
  .pk-station-hero{
    grid-template-columns:1fr !important;
  }
  .pk-atmo-hero{
    grid-column:1 !important;
    grid-row:2 !important;
    margin:0 22px 20px !important;
    align-self:stretch !important;
  }
}

@media (max-width:720px){
  .pk-atmo-hero{
    margin:0 18px 18px !important;
    padding:16px !important;
    border-radius:24px !important;
  }
  .pk-atmo-hero__item{
    grid-template-columns:42px minmax(0,1fr) minmax(54px,auto) !important;
    min-height:62px !important;
    padding:10px 0 !important;
  }
  .pk-atmo-hero__copy strong{
    font-size:18px !important;
  }
  .pk-atmo-hero__value strong{
    font-size:22px !important;
  }
}

@media (max-width:420px){
  .pk-atmo-hero__item{
    grid-template-columns:40px minmax(0,1fr) !important;
  }
  .pk-atmo-hero__value,
  .pk-atmo-hero__side{
    grid-column:2 !important;
    min-width:0 !important;
    padding-left:0 !important;
    border-left:0 !important;
    text-align:left !important;
    display:flex !important;
    align-items:baseline !important;
    gap:8px !important;
    margin-top:2px !important;
  }
}

/* =========================================================
   Layout test: AI full-width above hero, Pogodynek lower
   ========================================================= */
.pk-ai-top-section{
  margin-top:24px !important;
}

.pk-ai-top-section .pk-ai{
  width:100% !important;
  min-height:0 !important;
  padding:24px 28px !important;
  display:grid !important;
  grid-template-columns:minmax(260px,.42fr) minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:22px !important;
  border-radius:28px !important;
  background:
    radial-gradient(circle at 92% 12%, rgba(168,85,247,.22), transparent 30%),
    linear-gradient(135deg, rgba(255,255,255,.105), rgba(255,255,255,.045)) !important;
}

.pk-ai-top-section .pk-ai .pk-card__top{
  margin:0 !important;
}

.pk-ai-top-section .pk-ai h3{
  margin:0 !important;
  font-size:clamp(22px,2vw,34px) !important;
  line-height:1.02 !important;
  letter-spacing:-.045em !important;
}

.pk-ai-top-section .pk-ai p{
  margin:0 !important;
  max-width:760px !important;
}

.pk-ai-top-section .pk-ai footer{
  grid-column:2 / 4 !important;
  margin:0 !important;
  padding-top:10px !important;
  border-top:1px solid rgba(255,255,255,.10) !important;
}

.pk-live-stage.pk-hero-station{
  grid-template-columns:1fr !important;
  margin-top:20px !important;
}

.pk-live-stage.pk-hero-station > .pk-station-hero{
  width:100% !important;
}

.pk-pogodynek-lower-section{
  margin-top:24px !important;
}

.pk-pogodynek-lower-section .pk-pogodynek{
  display:grid !important;
  grid-template-columns:auto minmax(220px,.45fr) minmax(0,1fr) !important;
  align-items:center !important;
  gap:20px !important;
  padding:24px 28px !important;
}

.pk-pogodynek-lower-section .pk-pogodynek__mascot{
  margin:0 !important;
}

.pk-pogodynek-lower-section .pk-pogodynek .pk-kicker,
.pk-pogodynek-lower-section .pk-pogodynek h2,
.pk-pogodynek-lower-section .pk-pogodynek__speech{
  grid-column:2 !important;
}

.pk-pogodynek-lower-section .pk-pogodynek h2{
  margin:2px 0 8px !important;
  font-size:clamp(24px,2vw,34px) !important;
}

.pk-pogodynek-lower-section .pk-advice-grid{
  grid-column:3 !important;
  margin:0 !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}

@media (max-width:980px){
  .pk-ai-top-section .pk-ai{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }
  .pk-ai-top-section .pk-ai footer{
    grid-column:1 !important;
  }
  .pk-pogodynek-lower-section .pk-pogodynek{
    grid-template-columns:auto minmax(0,1fr) !important;
  }
  .pk-pogodynek-lower-section .pk-advice-grid{
    grid-column:1 / -1 !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media (max-width:640px){
  .pk-ai-top-section{
    margin-top:18px !important;
  }
  .pk-ai-top-section .pk-ai,
  .pk-pogodynek-lower-section .pk-pogodynek{
    padding:20px !important;
    border-radius:24px !important;
  }
  .pk-pogodynek-lower-section .pk-pogodynek{
    grid-template-columns:1fr !important;
    text-align:left !important;
  }
  .pk-pogodynek-lower-section .pk-pogodynek .pk-kicker,
  .pk-pogodynek-lower-section .pk-pogodynek h2,
  .pk-pogodynek-lower-section .pk-pogodynek__speech,
  .pk-pogodynek-lower-section .pk-advice-grid{
    grid-column:1 !important;
  }
}

/* =========================================================
   Hero layout v3 — AI top, hero left, atmosphere card right
   ========================================================= */
.pk-live-stage.pk-hero-station{
  display:grid !important;
  grid-template-columns:minmax(0,2.35fr) minmax(320px,.82fr) !important;
  gap:24px !important;
  align-items:stretch !important;
  margin-top:20px !important;
}

.pk-live-stage.pk-hero-station > .pk-station-hero{
  width:100% !important;
  min-height:560px !important;
  grid-template-columns:1fr !important;
  grid-template-rows:minmax(0,1fr) auto !important;
}

.pk-live-stage.pk-hero-station > .pk-station-hero .pk-station-hero__content{
  grid-column:1 !important;
  grid-row:1 !important;
  max-width:980px !important;
}

.pk-live-stage.pk-hero-station > .pk-station-hero .pk-station-hero__metrics{
  grid-column:1 !important;
  grid-row:2 !important;
}

.pk-live-stage.pk-hero-station > .pk-atmo-hero{
  position:relative !important;
  z-index:4 !important;
  margin:0 !important;
  padding:clamp(20px,2.1vw,28px) !important;
  width:100% !important;
  height:100% !important;
  min-height:560px !important;
  align-self:stretch !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  border-radius:38px !important;
  background:
    radial-gradient(circle at 82% 8%, rgba(56,189,248,.18), transparent 30%),
    radial-gradient(circle at 10% 92%, rgba(34,197,94,.13), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.105), rgba(255,255,255,.045)) !important;
  border:1px solid rgba(255,255,255,.14) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.13), 0 22px 70px rgba(0,0,0,.24) !important;
  backdrop-filter:blur(24px) !important;
  overflow:hidden !important;
}

.pk-live-stage.pk-hero-station > .pk-atmo-hero .pk-atmo-hero__header{
  margin-bottom:12px !important;
}

.pk-live-stage.pk-hero-station > .pk-atmo-hero .pk-atmo-hero__list{
  display:block !important;
  background:transparent !important;
  border:0 !important;
  overflow:visible !important;
}

.pk-live-stage.pk-hero-station > .pk-atmo-hero .pk-atmo-hero__item{
  min-height:78px !important;
  padding:14px 0 !important;
}

.pk-live-stage.pk-hero-station > .pk-atmo-hero .pk-atmo-hero__copy strong{
  font-size:clamp(19px,1.45vw,26px) !important;
}

.pk-live-stage.pk-hero-station > .pk-atmo-hero .pk-atmo-hero__value strong{
  font-size:clamp(24px,1.9vw,32px) !important;
}

@media (max-width:1180px){
  .pk-live-stage.pk-hero-station{
    grid-template-columns:minmax(0,1.85fr) minmax(300px,.9fr) !important;
    gap:20px !important;
  }
  .pk-live-stage.pk-hero-station > .pk-station-hero,
  .pk-live-stage.pk-hero-station > .pk-atmo-hero{
    min-height:540px !important;
  }
}

@media (max-width:940px){
  .pk-live-stage.pk-hero-station{
    grid-template-columns:1fr !important;
  }
  .pk-live-stage.pk-hero-station > .pk-station-hero{
    min-height:auto !important;
  }
  .pk-live-stage.pk-hero-station > .pk-atmo-hero{
    min-height:auto !important;
    height:auto !important;
    border-radius:28px !important;
  }
}

@media (max-width:720px){
  .pk-live-stage.pk-hero-station{
    gap:16px !important;
  }
  .pk-live-stage.pk-hero-station > .pk-atmo-hero{
    padding:18px !important;
    border-radius:26px !important;
  }
  .pk-live-stage.pk-hero-station > .pk-atmo-hero .pk-atmo-hero__item{
    min-height:64px !important;
    padding:11px 0 !important;
  }
}

/* Atmosphere card v3 — larger AQI with compact PM2.5 mini chart */
.pk-atmo-hero__air-dashboard{
  display:flex !important;
  flex-direction:column !important;
  gap:14px !important;
  min-height:240px !important;
  padding:22px !important;
  overflow:hidden !important;
}
.pk-atmo-hero__air-dashboard:before{
  background:
    radial-gradient(circle at 18% 12%, color-mix(in srgb, var(--atmo-quality, #22c55e) 36%, transparent), transparent 42%),
    linear-gradient(135deg, color-mix(in srgb, var(--atmo-quality, #22c55e) 16%, transparent), transparent 54%) !important;
  opacity:.48 !important;
}
.pk-atmo-air__top,
.pk-atmo-air__advice,
.pk-atmo-air__mini-chart,
.pk-atmo-air__pollutants{
  position:relative;
  z-index:1;
}
.pk-atmo-air__top{
  display:grid;
  grid-template-columns:58px minmax(0,1fr);
  gap:16px;
  align-items:start;
}
.pk-atmo-air__badge{
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  border-radius:20px;
  background:color-mix(in srgb, var(--atmo-quality, #22c55e) 24%, rgba(255,255,255,.08));
  border:1px solid rgba(255,255,255,.13);
  box-shadow:0 0 38px color-mix(in srgb, var(--atmo-quality, #22c55e) 28%, transparent), inset 0 1px 0 rgba(255,255,255,.16);
  font-size:30px;
}
.pk-atmo-air__label{
  display:block;
  color:rgba(201,216,238,.62);
  font-size:11px;
  line-height:1.15;
  text-transform:uppercase;
  letter-spacing:.18em;
  font-weight:950;
}
.pk-atmo-air__aqi{
  display:flex;
  align-items:flex-end;
  gap:9px;
  margin-top:3px;
  color:#fff;
  line-height:.9;
}
.pk-atmo-air__aqi > span{
  font-size:clamp(54px,4.4vw,76px);
  font-weight:900;
  letter-spacing:-.075em;
  text-shadow:0 20px 55px color-mix(in srgb, var(--atmo-quality, #22c55e) 28%, transparent);
}
.pk-atmo-air__aqi small{
  margin-bottom:9px;
  color:rgba(226,238,255,.68);
  font-size:12px;
  font-weight:950;
  letter-spacing:.17em;
}
.pk-atmo-air__main > strong{
  display:block;
  margin-top:9px;
  color:color-mix(in srgb, var(--atmo-quality, #22c55e) 74%, #fff);
  font-size:18px;
  font-weight:950;
  line-height:1.05;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.pk-atmo-air__advice{
  margin:0;
  padding:12px 14px;
  border-radius:18px;
  background:rgba(255,255,255,.065);
  border:1px solid rgba(255,255,255,.09);
  color:rgba(239,246,255,.90);
  font-size:14px;
  line-height:1.35;
  font-weight:750;
}
.pk-atmo-air__mini-chart{
  height:82px;
  display:flex;
  align-items:flex-end;
  gap:3px;
  padding:10px 10px 8px;
  border-radius:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.070), rgba(255,255,255,.030));
  border:1px solid rgba(255,255,255,.085);
  overflow:hidden;
}
.pk-atmo-air__mini-chart svg{
  display:block;
  width:100%;
  height:100%;
}
.pk-atmo-air__mini-empty{
  align-self:center;
  width:100%;
  text-align:center;
  color:rgba(226,238,255,.50);
  font-size:12px;
  font-weight:850;
}
.pk-atmo-air__pollutants{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.pk-atmo-air__pollutants > div{
  padding:12px 13px;
  border-radius:17px;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.085);
}
.pk-atmo-air__pollutants span{
  display:block;
  color:rgba(201,216,238,.58);
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.16em;
  font-weight:950;
}
.pk-atmo-air__pollutants strong{
  display:block;
  margin-top:5px;
  color:#fff;
  font-size:16px;
  line-height:1;
  white-space:nowrap;
}

@media (max-width:720px){
  .pk-atmo-hero__air-dashboard{
    min-height:0 !important;
    padding:17px !important;
    gap:12px !important;
  }
  .pk-atmo-air__top{
    grid-template-columns:50px minmax(0,1fr);
    gap:12px;
  }
  .pk-atmo-air__badge{
    width:50px;
    height:50px;
    border-radius:17px;
    font-size:25px;
  }
  .pk-atmo-air__aqi > span{
    font-size:52px;
  }
  .pk-atmo-air__main > strong{
    font-size:15px;
  }
  .pk-atmo-air__mini-chart{
    height:72px;
  }
  .pk-atmo-air__advice{
    font-size:13px;
    padding:11px 12px;
  }
  .pk-atmo-air__pollutants strong{
    font-size:14px;
  }
}

/* Atmosphere card v4 — clean semicircle AQI gauge, no leaf badge */
.pk-atmo-hero__air-dashboard{
  gap:15px !important;
  padding:22px !important;
}
.pk-atmo-air__top{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:10px !important;
  text-align:center !important;
}
.pk-atmo-air__badge{
  display:none !important;
}
.pk-atmo-air__label{
  display:block !important;
  margin:0 0 2px !important;
  color:rgba(201,216,238,.68) !important;
  font-size:11px !important;
  line-height:1.1 !important;
  text-transform:uppercase !important;
  letter-spacing:.19em !important;
  font-weight:950 !important;
}
.pk-atmo-air__gauge{
  --gauge-w: clamp(176px, 15vw, 218px);
  --gauge-border: 9px;
  position:relative;
  width:var(--gauge-w);
  height:calc(var(--gauge-w) * .56);
  margin:0 auto 2px;
  display:grid;
  place-items:center;
}
.pk-atmo-air__semiring{
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:calc(var(--gauge-w) * .50);
  border:var(--gauge-border) solid var(--atmo-quality, #22c55e);
  border-bottom:0;
  border-radius:999px 999px 0 0;
  box-shadow:
    0 0 26px color-mix(in srgb, var(--atmo-quality, #22c55e) 34%, transparent),
    inset 0 1px 0 rgba(255,255,255,.16);
  background:transparent;
}
.pk-atmo-air__semiring:after{
  content:"";
  position:absolute;
  inset:10px 16px -8px;
  border-radius:999px 999px 0 0;
  border-top:1px solid rgba(255,255,255,.10);
  pointer-events:none;
}
.pk-atmo-air__gauge-content{
  position:relative;
  z-index:1;
  min-height:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding-top:12px;
}
.pk-atmo-air__aqi{
  display:flex !important;
  align-items:flex-end !important;
  justify-content:center !important;
  gap:8px !important;
  margin:0 !important;
  color:#fff !important;
  line-height:.84 !important;
}
.pk-atmo-air__aqi > span{
  font-size:clamp(58px,5vw,82px) !important;
  font-weight:900 !important;
  letter-spacing:-.075em !important;
  text-shadow:0 20px 55px color-mix(in srgb, var(--atmo-quality, #22c55e) 35%, transparent) !important;
}
.pk-atmo-air__aqi small{
  margin-bottom:9px !important;
  color:rgba(226,238,255,.70) !important;
  font-size:12px !important;
  font-weight:950 !important;
  letter-spacing:.18em !important;
}
.pk-atmo-air__gauge-content > strong,
.pk-atmo-air__main > strong{
  display:block !important;
  margin-top:11px !important;
  color:color-mix(in srgb, var(--atmo-quality, #22c55e) 78%, #fff) !important;
  font-size:13px !important;
  font-weight:950 !important;
  line-height:1.05 !important;
  text-transform:uppercase !important;
  letter-spacing:.12em !important;
  max-width:calc(var(--gauge-w) - 24px);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.pk-atmo-air__advice{
  margin-top:0 !important;
}

@media (max-width:720px){
  .pk-atmo-air__gauge{
    --gauge-w: min(210px, 76vw);
    --gauge-border:8px;
    height:calc(var(--gauge-w) * .57);
  }
  .pk-atmo-air__aqi > span{
    font-size:clamp(54px,18vw,74px) !important;
  }
  .pk-atmo-air__gauge-content > strong{
    font-size:12px !important;
    letter-spacing:.10em !important;
  }
}

/* Rain Predictor v3 — cleaner forecast columns */
.pk-rain-column.is-forecast{
  fill:url(#pkRainPredictedGradient) !important;
  opacity:.9 !important;
  filter:drop-shadow(0 0 8px rgba(249,115,22,.34));
}
.pk-rain-chart{
  min-height:190px !important;
}
.pk-rain-column-chart{
  min-height:190px !important;
}

/* AQI semiring v5 — safer for 3-digit values */
.pk-atmo-air__gauge{
  --gauge-w: clamp(205px, 18vw, 260px) !important;
  --gauge-border: 10px !important;
  height: calc(var(--gauge-w) * .58) !important;
  margin-bottom: 6px !important;
}
.pk-atmo-air__semiring{
  height: calc(var(--gauge-w) * .52) !important;
}
.pk-atmo-air__gauge-content{
  padding-top: 16px !important;
}
.pk-atmo-air__aqi{
  gap: 7px !important;
  line-height: .9 !important;
}
.pk-atmo-air__aqi > span{
  font-size: clamp(42px, 3.8vw, 58px) !important;
  letter-spacing: -.045em !important;
  font-variant-numeric: tabular-nums !important;
  max-width: calc(var(--gauge-w) - 64px) !important;
  white-space: nowrap !important;
}
.pk-atmo-air__aqi small{
  margin-bottom: 7px !important;
  font-size: 11px !important;
}
.pk-atmo-air__gauge-content > strong,
.pk-atmo-air__main > strong{
  margin-top: 9px !important;
  font-size: 12px !important;
  max-width: calc(var(--gauge-w) - 36px) !important;
}
@media (max-width:720px){
  .pk-atmo-air__gauge{
    --gauge-w: min(235px, 78vw) !important;
    --gauge-border: 9px !important;
    height: calc(var(--gauge-w) * .58) !important;
  }
  .pk-atmo-air__aqi > span{
    font-size: clamp(42px, 14vw, 56px) !important;
    max-width: calc(var(--gauge-w) - 62px) !important;
  }
}


/* === Rain Predictor Premium v3.5 === */
.pk-rain-nowcast-card{
  position:relative !important;
  overflow:hidden !important;
  isolation:isolate !important;
  background:
    radial-gradient(circle at 18% 0%, rgba(56,189,248,.22), transparent 30%),
    radial-gradient(circle at 100% 100%, rgba(37,99,235,.16), transparent 34%),
    linear-gradient(180deg, rgba(15,23,42,.92), rgba(2,6,23,.88)) !important;
  border:1px solid rgba(125,211,252,.16) !important;
}

.pk-rain-nowcast-card:before{
  content:"";
  position:absolute;
  inset:-1px;
  z-index:-1;
  opacity:.22;
  background:radial-gradient(circle at 50% 20%, rgba(56,189,248,.42), transparent 40%);
  transition:opacity .35s ease, background .35s ease;
}

.pk-rain-nowcast-card[data-rain-risk="none"]:before{opacity:.12;}
.pk-rain-nowcast-card[data-rain-risk="low"]:before{
  opacity:.20;
  background:radial-gradient(circle at 50% 20%, rgba(34,197,94,.38), transparent 42%);
}
.pk-rain-nowcast-card[data-rain-risk="medium"]:before{
  opacity:.26;
  background:radial-gradient(circle at 50% 20%, rgba(250,204,21,.34), transparent 42%);
}
.pk-rain-nowcast-card[data-rain-risk="high"]:before{
  opacity:.32;
  background:radial-gradient(circle at 50% 20%, rgba(249,115,22,.44), transparent 42%);
}

.pk-rain-arrival{
  background:
    linear-gradient(180deg, rgba(15,23,42,.72), rgba(15,23,42,.44)) !important;
  border-color:rgba(125,211,252,.18) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 18px 45px rgba(2,6,23,.24) !important;
}

.pk-rain-arrival__label{
  color:rgba(226,232,240,.80) !important;
  font-size:.82rem !important;
  text-transform:uppercase !important;
  letter-spacing:.10em !important;
}

.pk-rain-arrival strong{
  background:linear-gradient(180deg, #e0f2fe 0%, #60a5fa 52%, #38bdf8 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  text-shadow:none !important;
}

.pk-rain-arrival small{
  color:rgba(203,213,225,.82) !important;
}

.pk-rain-chart{
  min-height:205px !important;
  flex:1 1 205px !important;
  border-radius:22px !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(14,165,233,.18), transparent 42%),
    repeating-linear-gradient(to top, rgba(148,163,184,.10) 0 1px, transparent 1px 38px),
    linear-gradient(180deg, rgba(15,23,42,.72), rgba(2,6,23,.48)) !important;
  border-color:rgba(125,211,252,.18) !important;
}

.pk-rain-column-chart--premium,
.pk-rain-column-chart{
  height:205px !important;
  min-height:205px !important;
}

.pk-rain-plot-bg{
  fill:rgba(15,23,42,.18);
}

.pk-rain-column.is-empty{
  fill:rgba(71,85,105,.28) !important;
  opacity:.58 !important;
}

.pk-rain-column.is-forecast{
  fill:url(#pkRainForecastGradient) !important;
  filter:drop-shadow(0 0 9px rgba(249,115,22,.28));
}

.pk-rain-unit-label{
  fill:rgba(203,213,225,.68);
  font-size:10px;
  font-weight:900;
  text-anchor:end;
}

.pk-rain-nowcast-stats{
  grid-template-columns:1fr !important;
  gap:9px !important;
}

.pk-rain-nowcast-stats div{
  display:grid !important;
  grid-template-columns:1fr auto !important;
  align-items:center !important;
  gap:12px !important;
  padding:11px 13px !important;
  border-radius:16px !important;
  background:linear-gradient(180deg, rgba(15,23,42,.68), rgba(15,23,42,.44)) !important;
  border-color:rgba(125,211,252,.14) !important;
}

.pk-rain-nowcast-stats span{
  color:rgba(203,213,225,.70) !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
  font-weight:900 !important;
}

.pk-rain-nowcast-stats strong{
  color:#e0f2fe !important;
  font-size:1rem !important;
  text-align:right !important;
}

@media (max-width:1020px){
  .pk-rain-chart{
    min-height:220px !important;
    flex-basis:220px !important;
  }
  .pk-rain-column-chart--premium,
  .pk-rain-column-chart{
    height:220px !important;
    min-height:220px !important;
  }
}

@media (max-width:720px){
  .pk-rain-nowcast-card{
    min-height:590px !important;
  }
  .pk-rain-chart{
    min-height:210px !important;
    flex-basis:210px !important;
  }
  .pk-rain-column-chart--premium,
  .pk-rain-column-chart{
    height:210px !important;
    min-height:210px !important;
  }
}


/* Atmosphere card v6 — technical dashboard, no advice/progress chart, animated AQI semiring */
.pk-atmo-air__advice,
.pk-atmo-air__mini-chart{
  display:none !important;
}
.pk-atmo-hero__air-dashboard{
  gap:16px !important;
  background:
    radial-gradient(circle at 50% 8%, color-mix(in srgb, var(--atmo-quality, #22c55e) 14%, transparent), transparent 38%),
    linear-gradient(180deg, rgba(15,23,42,.84), rgba(2,6,23,.70)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    0 22px 60px rgba(2,6,23,.18),
    0 0 38px color-mix(in srgb, var(--atmo-quality, #22c55e) 10%, transparent) !important;
}
.pk-atmo-air__semiring{
  transform-origin:50% 100%;
  animation:pkAqiSemiringIn .85s cubic-bezier(.22,1,.36,1) both;
}
@keyframes pkAqiSemiringIn{
  from{transform:scaleX(.08); opacity:.25; filter:blur(.3px);}
  to{transform:scaleX(1); opacity:1; filter:blur(0);}
}
.pk-atmo-air__aqi small{
  display:none !important;
}
.pk-atmo-air__aqi > span{
  transition:color .25s ease, text-shadow .25s ease, transform .22s ease;
}
.pk-atmo-air__aqi > span.is-counting{
  transform:translateY(-1px) scale(1.025);
}
.pk-atmo-air__gauge-content > strong,
.pk-atmo-air__main > strong{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  width:auto !important;
  max-width:calc(var(--gauge-w) - 34px) !important;
  padding:6px 11px !important;
  border-radius:999px !important;
  background:color-mix(in srgb, var(--atmo-quality, #22c55e) 16%, rgba(255,255,255,.045)) !important;
  border:1px solid color-mix(in srgb, var(--atmo-quality, #22c55e) 26%, rgba(255,255,255,.10)) !important;
  box-shadow:0 0 22px color-mix(in srgb, var(--atmo-quality, #22c55e) 14%, transparent) !important;
  color:color-mix(in srgb, var(--atmo-quality, #22c55e) 70%, #ffffff) !important;
}
.pk-atmo-air__gauge-content > strong:before,
.pk-atmo-air__main > strong:before{
  content:"";
  width:7px;
  height:7px;
  border-radius:999px;
  background:var(--atmo-quality, #22c55e);
  box-shadow:0 0 12px var(--atmo-quality, #22c55e);
  flex:0 0 auto;
}
.pk-atmo-air__pollutants{
  margin-top:2px !important;
}
.pk-atmo-air__pollutants > div{
  background:rgba(255,255,255,.048) !important;
}

/* Hero v4 — desktop mini temperature chart on the right, hidden on mobile */
.pk-live-stage.pk-hero-station > .pk-station-hero{
  position:relative !important;
  overflow:hidden !important;
}

.pk-live-stage.pk-hero-station > .pk-station-hero .pk-station-hero__content{
  max-width:min(62%, 660px) !important;
  position:relative !important;
  z-index:4 !important;
}

.pk-hero-side-chart{
  position:absolute;
  z-index:5;
  right:clamp(26px,3.2vw,48px);
  top:clamp(120px,12vw,165px);
  width:min(35%, 360px);
  min-width:280px;
  padding:18px 18px 15px;
  border-radius:26px;
  border:1px solid rgba(255,255,255,.13);
  background:
    radial-gradient(circle at 86% 10%, rgba(251,146,60,.16), transparent 38%),
    linear-gradient(180deg, rgba(15,23,42,.44), rgba(15,23,42,.20));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.11), 0 22px 70px rgba(0,0,0,.16);
  backdrop-filter:blur(18px);
}

.pk-hero-side-chart__head,
.pk-hero-side-chart__meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.pk-hero-side-chart__head span,
.pk-hero-side-chart__meta span{
  color:rgba(220,232,252,.66);
  font-size:11px;
  line-height:1;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-weight:950;
}

.pk-hero-side-chart__head strong{
  color:#fff7ed;
  font-size:20px;
  line-height:1;
  font-weight:950;
  letter-spacing:-.04em;
  text-shadow:0 12px 34px rgba(251,146,60,.24);
}

.pk-hero-side-chart__plot{
  height:122px;
  margin-top:12px;
  border-radius:18px;
  overflow:hidden;
  background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.018));
  border:1px solid rgba(255,255,255,.075);
}

.pk-hero-side-chart__plot > span{
  display:grid;
  height:100%;
  place-items:center;
  color:rgba(226,238,255,.52);
  font-size:12px;
  font-weight:850;
}

.pk-hero-mini-chart-svg{
  display:block;
  width:100%;
  height:100%;
}

.pk-hero-mini-chart-grid{
  stroke:rgba(255,255,255,.10);
  stroke-width:1;
  stroke-dasharray:4 8;
}

.pk-hero-side-chart__meta{
  margin-top:10px;
}

/* Atmosphere v6 — content higher + irradiance row */
.pk-live-stage.pk-hero-station > .pk-atmo-hero{
  justify-content:flex-start !important;
  padding-top:clamp(24px,2vw,32px) !important;
}

.pk-live-stage.pk-hero-station > .pk-atmo-hero .pk-atmo-hero__list{
  margin-top:4px !important;
}

.pk-atmo-hero__item--irradiance:before{
  background:radial-gradient(circle at 10% 50%, rgba(251,191,36,.22), transparent 42%) !important;
}

@media (max-width:1180px){
  .pk-live-stage.pk-hero-station > .pk-station-hero .pk-station-hero__content{
    max-width:64% !important;
  }
  .pk-hero-side-chart{
    width:min(34%, 330px);
    min-width:260px;
    right:24px;
  }
}

@media (max-width:940px){
  .pk-live-stage.pk-hero-station > .pk-station-hero .pk-station-hero__content{
    max-width:100% !important;
  }
  .pk-hero-side-chart{
    display:none !important;
  }
}


/* Hero mini temperature chart v2 — larger and actually usable */
.pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart{
  width:min(38%, 430px) !important;
  min-width:340px !important;
  top:clamp(112px,10.5vw,148px) !important;
  right:clamp(28px,3.4vw,56px) !important;
  padding:20px 20px 17px !important;
  border-radius:28px !important;
}
.pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart__plot{
  height:156px !important;
  margin-top:14px !important;
  border-radius:20px !important;
}
.pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart__head strong{
  font-size:24px !important;
}
.pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart__head span,
.pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart__meta span{
  font-size:12px !important;
}
@media (max-width:1180px){
  .pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart{
    width:min(36%, 390px) !important;
    min-width:310px !important;
    right:24px !important;
  }
}
@media (max-width:940px){
  .pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart{
    display:none !important;
  }
}

/* Hero mini temperature chart v3 — cleaner header + daily min/max below */
.pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart__head{
  justify-content:flex-start !important;
}
.pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart__head strong{
  display:none !important;
}
.pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart__meta--daily{
  display:grid !important;
  grid-template-columns:1fr 1fr;
  gap:10px !important;
  margin-top:12px !important;
}
.pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart__meta--daily span{
  display:block;
  padding:9px 10px;
  border-radius:14px;
  background:rgba(15,23,42,.35);
  border:1px solid rgba(255,255,255,.075);
  color:rgba(240,247,255,.82) !important;
  font-size:11px !important;
  line-height:1.2 !important;
  letter-spacing:.05em !important;
  text-transform:none !important;
  white-space:nowrap;
}
@media (max-width:1180px){
  .pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart__meta--daily{
    grid-template-columns:1fr;
  }
}


/* Hero mini temperature chart v4 — bigger chart, min/max below plot */
.pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart{
  width:min(40%, 470px) !important;
  min-width:360px !important;
  padding:20px 20px 18px !important;
}
.pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart__head{
  display:none !important;
}
.pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart__plot{
  height:180px !important;
  margin-top:0 !important;
}
.pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart__meta--daily{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:14px !important;
  margin-top:14px !important;
}
.pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart__meta--daily > span{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:center !important;
  gap:3px !important;
  min-height:72px !important;
  padding:12px 14px !important;
  border-radius:18px !important;
  background:linear-gradient(180deg, rgba(15,23,42,.48), rgba(15,23,42,.28)) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08) !important;
  white-space:normal !important;
}
.pk-mini-extreme__label{
  color:rgba(220,232,252,.58) !important;
  font-size:10px !important;
  line-height:1 !important;
  letter-spacing:.13em !important;
  text-transform:uppercase !important;
  font-weight:950 !important;
}
.pk-hero-side-chart__meta--daily strong{
  display:block;
  color:#fff7ed;
  font-size:25px;
  line-height:1;
  font-weight:950;
  letter-spacing:-.04em;
}
.pk-hero-side-chart__meta--daily small{
  display:block;
  color:rgba(220,232,252,.62);
  font-size:12px;
  line-height:1;
  font-weight:850;
}
.pk-hero-side-chart__meta--daily > span:last-child{
  align-items:flex-end !important;
  text-align:right !important;
}
@media (max-width:1180px){
  .pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart{
    width:min(37%, 410px) !important;
    min-width:320px !important;
  }
  .pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart__plot{
    height:160px !important;
  }
  .pk-hero-side-chart__meta--daily strong{
    font-size:22px;
  }
}
@media (max-width:940px){
  .pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart{
    display:none !important;
  }
}


/* Hero mini temperature chart v5 — LIVE label + no large "Pogoda teraz" title */
.pk-live-stage.pk-hero-station > .pk-station-hero .pk-station-hero__headline{
  margin-bottom:clamp(4px, .8vw, 10px) !important;
}

.pk-live-stage.pk-hero-station > .pk-station-hero .pk-station-hero__headline .pk-kicker{
  margin-bottom:8px !important;
}

.pk-live-stage.pk-hero-station > .pk-station-hero .pk-station-hero__headline .pk-hero-condition{
  margin-top:0 !important;
}

.pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart__head--live{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  margin-bottom:10px !important;
}

.pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart__head--live .pk-hero-live-label{
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  color:rgba(226,238,255,.78) !important;
  font-size:11px !important;
  line-height:1 !important;
  letter-spacing:.10em !important;
  text-transform:uppercase !important;
  font-weight:900 !important;
}

.pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-live-label i{
  width:7px !important;
  height:7px !important;
  border-radius:999px !important;
  background:#22c55e !important;
  box-shadow:0 0 0 0 rgba(34,197,94,.42), 0 0 16px rgba(34,197,94,.55) !important;
  animation:pkHeroLivePulse 1.55s ease-out infinite !important;
  flex:0 0 auto !important;
}

.pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-live-label strong{
  color:#dcfce7 !important;
  font:inherit !important;
}

.pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-live-label em{
  color:rgba(220,232,252,.62) !important;
  font-style:normal !important;
  font-weight:850 !important;
  letter-spacing:.08em !important;
}

.pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart__plot{
  margin-top:0 !important;
}

@keyframes pkHeroLivePulse{
  0%{ box-shadow:0 0 0 0 rgba(34,197,94,.42), 0 0 16px rgba(34,197,94,.55); transform:scale(1); }
  72%{ box-shadow:0 0 0 9px rgba(34,197,94,0), 0 0 18px rgba(34,197,94,.44); transform:scale(1.08); }
  100%{ box-shadow:0 0 0 0 rgba(34,197,94,0), 0 0 16px rgba(34,197,94,.50); transform:scale(1); }
}

@media (max-width:940px){
  .pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart{
    display:none !important;
  }
}


/* =========================================================
   AI top card — Pan Pogodynek avatar
   ========================================================= */
.pk-ai-head{
  align-items:center !important;
}

.pk-ai-head__main{
  display:flex;
  align-items:center;
  gap:16px;
  min-width:0;
}

.pk-ai-avatar{
  width:78px;
  height:78px;
  flex:0 0 78px;
  border-radius:22px;
  padding:6px;
  overflow:hidden;
  background:
    radial-gradient(circle at 30% 20%, rgba(255,255,255,.45), transparent 36%),
    linear-gradient(145deg, rgba(168,85,247,.42), rgba(56,189,248,.16));
  border:1px solid rgba(255,255,255,.18);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.20),
    0 18px 38px rgba(30,64,175,.18),
    0 0 34px rgba(168,85,247,.12);
}

.pk-ai-avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:17px;
  background:#fff;
}

@media(max-width:860px){
  .pk-ai-top-section .pk-ai{
    grid-template-columns:1fr !important;
    align-items:start !important;
  }

  .pk-ai-top-section .pk-ai footer{
    grid-column:auto !important;
  }
}

@media(max-width:640px){
  .pk-ai-head{
    align-items:flex-start !important;
    gap:12px !important;
  }

  .pk-ai-head__main{
    gap:12px;
  }

  .pk-ai-avatar{
    width:58px;
    height:58px;
    flex-basis:58px;
    border-radius:18px;
    padding:5px;
  }

  .pk-ai-avatar img{
    border-radius:14px;
  }
}

/* =========================================================
   AI top card — Pan Pogodynek enlarged layout
   ========================================================= */
.pk-ai--pogodynek{
  display:grid;
  grid-template-columns:1fr;
  gap:16px;
  overflow:hidden;
}

.pk-ai--pogodynek .pk-ai-head{
  display:flex;
  align-items:flex-start !important;
  justify-content:space-between;
  gap:16px;
  margin-bottom:0;
}

.pk-ai--pogodynek .pk-ai-head h2{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.pk-ai-beta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:5px 9px;
  border-radius:999px;
  font-size:10px;
  line-height:1;
  letter-spacing:.08em;
  font-weight:800;
  color:#f4eaff;
  background:rgba(168,85,247,.24);
  border:1px solid rgba(216,180,254,.34);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16);
}

.pk-ai-body{
  display:grid;
  grid-template-columns:minmax(130px, 180px) minmax(0, 1fr);
  align-items:center;
  gap:22px;
}

.pk-ai-avatar--large{
  width:clamp(132px, 12vw, 184px);
  height:clamp(132px, 12vw, 184px);
  flex-basis:auto;
  border-radius:34px;
  padding:8px;
  justify-self:start;
}

.pk-ai-avatar--large img{
  border-radius:26px;
}

.pk-ai-copy{
  min-width:0;
}

.pk-ai-copy #ai-text,
.pk-ai--pogodynek #ai-text{
  margin:0;
  font-size:clamp(15px, 1.05vw, 18px);
  line-height:1.55;
  color:rgba(245,248,255,.88);
  max-width:78ch;
}

.pk-ai--pogodynek footer{
  margin-top:0;
}

@media(max-width:860px){
  .pk-ai-body{
    grid-template-columns:112px minmax(0,1fr);
    gap:16px;
  }

  .pk-ai-avatar--large{
    width:112px;
    height:112px;
    border-radius:28px;
  }

  .pk-ai-avatar--large img{
    border-radius:21px;
  }
}

@media(max-width:640px){
  .pk-ai--pogodynek{
    gap:14px;
  }

  .pk-ai-body{
    grid-template-columns:88px minmax(0,1fr);
    align-items:start;
    gap:14px;
  }

  .pk-ai-avatar--large{
    width:88px;
    height:88px;
    border-radius:24px;
    padding:6px;
  }

  .pk-ai-avatar--large img{
    border-radius:18px;
  }

  .pk-ai-copy #ai-text,
  .pk-ai--pogodynek #ai-text{
    font-size:14px;
    line-height:1.45;
  }
}

@media(max-width:420px){
  .pk-ai-body{
    grid-template-columns:1fr;
  }

  .pk-ai-avatar--large{
    width:116px;
    height:116px;
    justify-self:center;
  }

  .pk-ai--pogodynek .pk-ai-head{
    text-align:center;
    justify-content:center;
  }

  .pk-ai-copy #ai-text,
  .pk-ai--pogodynek #ai-text{
    text-align:center;
  }
}

/* =========================================================
   Pan Pogodynek — final compact premium AI card
   ========================================================= */
.pk-ai-top-section .pk-ai.pk-ai--pogodynek{
  display:flex !important;
  flex-direction:column !important;
  grid-template-columns:none !important;
  gap:18px !important;
  min-height:0 !important;
  padding:24px 30px !important;
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-head{
  width:100% !important;
  margin:0 !important;
  padding:0 0 12px !important;
  border-bottom:1px solid rgba(255,255,255,.11) !important;
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-titleline{
  width:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px !important;
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-titleline h2{
  margin:0 !important;
  display:flex !important;
  align-items:center !important;
  gap:9px !important;
  font-size:clamp(22px, 1.35vw, 28px) !important;
  line-height:1.05 !important;
  letter-spacing:-.055em !important;
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-beta{
  flex:0 0 auto !important;
  padding:6px 10px !important;
  font-size:10px !important;
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-body{
  width:100% !important;
  display:grid !important;
  grid-template-columns:150px minmax(0,1fr) !important;
  align-items:center !important;
  gap:28px !important;
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large{
  position:relative !important;
  width:150px !important;
  height:150px !important;
  justify-self:start !important;
  border-radius:32px !important;
  padding:8px !important;
  background:linear-gradient(145deg, rgba(255,255,255,.20), rgba(124,58,237,.16)) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  box-shadow:0 20px 52px rgba(2,6,23,.30), inset 0 1px 0 rgba(255,255,255,.18) !important;
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  border-radius:24px !important;
  display:block !important;
}

.pk-ai-top-section .pk-ai-online-dot{
  position:absolute;
  right:10px;
  bottom:10px;
  width:18px;
  height:18px;
  border-radius:999px;
  background:#22c55e;
  border:4px solid rgba(15,23,42,.92);
  box-shadow:0 0 0 4px rgba(34,197,94,.14), 0 0 18px rgba(34,197,94,.55);
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-copy{
  min-width:0 !important;
  align-self:center !important;
  padding-right:clamp(0px,2vw,28px) !important;
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-copy #ai-text,
.pk-ai-top-section .pk-ai.pk-ai--pogodynek #ai-text{
  margin:0 !important;
  max-width:82ch !important;
  font-size:clamp(15px, .92vw, 17px) !important;
  line-height:1.58 !important;
  color:rgba(246,249,255,.88) !important;
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-footer{
  width:100% !important;
  display:flex !important;
  justify-content:flex-end !important;
  margin:0 !important;
  padding-top:12px !important;
  border-top:1px solid rgba(255,255,255,.08) !important;
  color:rgba(226,232,240,.62) !important;
}

@media(max-width:860px){
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek{
    padding:22px !important;
  }
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-body{
    grid-template-columns:118px minmax(0,1fr) !important;
    gap:18px !important;
  }
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large{
    width:118px !important;
    height:118px !important;
    border-radius:28px !important;
  }
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large img{
    border-radius:20px !important;
  }
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-copy #ai-text,
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek #ai-text{
    font-size:14px !important;
    line-height:1.5 !important;
  }
}

@media(max-width:540px){
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-titleline h2{
    font-size:21px !important;
  }
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-body{
    grid-template-columns:92px minmax(0,1fr) !important;
    gap:14px !important;
    text-align:left !important;
  }
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large{
    width:92px !important;
    height:92px !important;
    border-radius:24px !important;
    justify-self:start !important;
    padding:6px !important;
  }
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large img{
    border-radius:17px !important;
  }
  .pk-ai-top-section .pk-ai-online-dot{
    right:6px;
    bottom:6px;
    width:14px;
    height:14px;
    border-width:3px;
  }
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-copy{
    padding-right:0 !important;
  }
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-copy #ai-text,
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek #ai-text{
    text-align:left !important;
    font-size:13.5px !important;
  }
}

/* =========================================================
   Pan Pogodynek — header aligned with avatar, no emoji
   ========================================================= */
.pk-ai-top-section .pk-ai.pk-ai--pogodynek{
  padding:24px 30px !important;
  gap:14px !important;
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-head{
  display:none !important;
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-body{
  width:100% !important;
  display:grid !important;
  grid-template-columns:clamp(150px, 13vw, 190px) minmax(0,1fr) !important;
  align-items:start !important;
  gap:26px !important;
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large{
  align-self:start !important;
  justify-self:start !important;
  width:clamp(150px, 13vw, 190px) !important;
  height:clamp(150px, 13vw, 190px) !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:30px !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  border-radius:26px !important;
  display:block !important;
  background:transparent !important;
  filter:drop-shadow(0 22px 34px rgba(2,6,23,.34));
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-copy{
  align-self:start !important;
  padding-right:clamp(0px, 2vw, 26px) !important;
}

.pk-ai-copy-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:0 0 10px;
  padding:0 0 10px;
  border-bottom:1px solid rgba(255,255,255,.10);
}

.pk-ai-copy-head h2{
  margin:0 !important;
  font-size:clamp(20px, 1.22vw, 25px) !important;
  line-height:1.05 !important;
  letter-spacing:-.045em !important;
  color:rgba(248,250,252,.96) !important;
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-copy #ai-text,
.pk-ai-top-section .pk-ai.pk-ai--pogodynek #ai-text{
  font-size:clamp(14.5px, .88vw, 16px) !important;
  line-height:1.58 !important;
  color:rgba(246,249,255,.86) !important;
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-footer{
  padding-top:8px !important;
}

@media(max-width:860px){
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek{
    padding:22px !important;
  }
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-body{
    grid-template-columns:120px minmax(0,1fr) !important;
    gap:18px !important;
  }
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large{
    width:120px !important;
    height:120px !important;
  }
  .pk-ai-copy-head h2{
    font-size:20px !important;
  }
}

@media(max-width:540px){
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek{
    padding:18px !important;
  }
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-body{
    grid-template-columns:88px minmax(0,1fr) !important;
    gap:13px !important;
  }
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large{
    width:88px !important;
    height:88px !important;
  }
  .pk-ai-copy-head{
    margin-bottom:8px;
    padding-bottom:8px;
    gap:10px;
  }
  .pk-ai-copy-head h2{
    font-size:18px !important;
  }
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-beta{
    padding:5px 8px !important;
    font-size:9px !important;
  }
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-copy #ai-text,
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek #ai-text{
    font-size:13.25px !important;
    line-height:1.45 !important;
  }
}


/* =========================================================
   Pan Pogodynek v2.0 — mini glassmorphism + AI typing
   ========================================================= */
.pk-ai-top-section .pk-ai.pk-ai--pogodynek{
  padding:22px 28px !important;
  gap:0 !important;
  background:
    radial-gradient(circle at 9% 22%, rgba(56,189,248,.10), transparent 34%),
    radial-gradient(circle at 96% 15%, rgba(168,85,247,.08), transparent 32%),
    rgba(15,23,42,.58) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 22px 58px rgba(2,6,23,.28) !important;
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-body{
  grid-template-columns:clamp(132px, 11vw, 162px) minmax(0,1fr) !important;
  align-items:start !important;
  gap:24px !important;
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large{
  width:clamp(132px, 11vw, 162px) !important;
  height:clamp(132px, 11vw, 162px) !important;
  padding:0 !important;
  border-radius:30px !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 50% 42%,
      rgba(255,255,255,.075) 0%,
      rgba(255,255,255,.035) 58%,
      rgba(255,255,255,.012) 100%) !important;
  border:1px solid rgba(255,255,255,.085) !important;
  backdrop-filter:blur(16px) saturate(126%) !important;
  -webkit-backdrop-filter:blur(16px) saturate(126%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.09),
    0 12px 26px rgba(2,6,23,.18) !important;
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large::after{
  content:"";
  position:absolute;
  left:18%;
  right:18%;
  bottom:7px;
  height:16px;
  border-radius:999px;
  background:radial-gradient(ellipse at center, rgba(2,6,23,.34), transparent 72%);
  filter:blur(5px);
  pointer-events:none;
  z-index:0;
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large img{
  position:relative;
  z-index:1;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center 18% !important;
  transform:scale(1.16) translateY(2px) !important;
  border-radius:0 !important;
  background:transparent !important;
  filter:drop-shadow(0 17px 24px rgba(2,6,23,.28)) !important;
}

.pk-ai-top-section .pk-ai-online-dot{
  right:11px !important;
  bottom:11px !important;
  width:11px !important;
  height:11px !important;
  border:2px solid rgba(15,23,42,.92) !important;
  box-shadow:
    0 0 0 3px rgba(34,197,94,.14),
    0 0 12px rgba(34,197,94,.55) !important;
  z-index:3 !important;
}

.pk-ai-copy-head{
  margin:0 0 9px !important;
  padding:0 0 9px !important;
  border-bottom:1px solid rgba(255,255,255,.085) !important;
}

.pk-ai-copy-head h2{
  font-size:.96rem !important;
  line-height:1.2 !important;
  letter-spacing:.015em !important;
  font-weight:800 !important;
  color:rgba(241,245,249,.92) !important;
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-beta{
  padding:3px 8px !important;
  font-size:.66rem !important;
  letter-spacing:.075em !important;
  background:rgba(59,130,246,.16) !important;
  border-color:rgba(147,197,253,.24) !important;
  color:rgba(219,234,254,.92) !important;
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-copy{
  align-self:start !important;
  padding-right:clamp(0px,1.5vw,22px) !important;
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek #ai-text{
  min-height:calc(1.62em * 2);
  font-size:clamp(14.5px, .86vw, 15.5px) !important;
  line-height:1.62 !important;
  color:rgba(241,245,249,.86) !important;
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek #ai-text.is-typing::after{
  content:"";
  display:inline-block;
  width:2px;
  height:1em;
  margin-left:3px;
  transform:translateY(2px);
  border-radius:2px;
  background:rgba(125,211,252,.90);
  animation:pk-ai-caret-blink .76s steps(1,end) infinite;
}

@keyframes pk-ai-caret-blink{
  0%,45%{opacity:1}
  46%,100%{opacity:0}
}

@media(max-width:860px){
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek{
    padding:20px !important;
  }

  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-body{
    grid-template-columns:112px minmax(0,1fr) !important;
    gap:17px !important;
  }

  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large{
    width:112px !important;
    height:112px !important;
    border-radius:26px !important;
  }

  .pk-ai-copy-head h2{
    font-size:.94rem !important;
  }
}

@media(max-width:540px){
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek{
    padding:17px !important;
  }

  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-body{
    grid-template-columns:82px minmax(0,1fr) !important;
    gap:13px !important;
  }

  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large{
    width:82px !important;
    height:82px !important;
    border-radius:22px !important;
  }

  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large img{
    transform:scale(1.18) translateY(2px) !important;
  }

  .pk-ai-copy-head{
    margin-bottom:7px !important;
    padding-bottom:7px !important;
  }

  .pk-ai-copy-head h2{
    font-size:.9rem !important;
  }

  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-beta{
    padding:3px 7px !important;
    font-size:.58rem !important;
  }

  .pk-ai-top-section .pk-ai.pk-ai--pogodynek #ai-text{
    font-size:13px !important;
    line-height:1.46 !important;
  }

  .pk-ai-top-section .pk-ai-online-dot{
    right:7px !important;
    bottom:7px !important;
    width:9px !important;
    height:9px !important;
    border-width:2px !important;
  }
}

/* =========================================================
   Pan Pogodynek v2.2 — wyraźne mruganie + emocje CSS
   ========================================================= */
.pk-ai-top-section .pk-ai.pk-ai--pogodynek{
  --pk-pogodynek-accent: rgba(125,211,252,.95);
}
.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large{
  position:relative !important;
  animation: pk-pogodynek-breathe 5.8s ease-in-out infinite;
  transform-origin: 50% 78%;
}
/*
  Widoczne mruganie robimy jako osobną warstwę nad oczami.
  Poprzednia wersja przyciemniała cały pasek twarzy, więc na PNG było to prawie niewidoczne.
*/
.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:4;
  pointer-events:none;
  border-radius:inherit;
  opacity:0;
  background:
    radial-gradient(ellipse 9.5% 6.8% at 39.7% 40.3%, rgba(4,8,30,.96) 0 58%, rgba(19,28,75,.88) 64%, transparent 70%),
    radial-gradient(ellipse 9.5% 6.8% at 60.1% 40.3%, rgba(4,8,30,.96) 0 58%, rgba(19,28,75,.88) 64%, transparent 70%);
  filter:drop-shadow(0 0 5px rgba(6,10,30,.55));
  animation: pk-pogodynek-blink 5.9s infinite;
}
.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-online-dot{
  animation: pk-pogodynek-online-pulse 2.4s ease-in-out infinite;
}
.pk-ai-top-section .pk-ai.pk-ai--pogodynek.pk-ai-is-typing .pk-ai-avatar--large{
  animation: pk-pogodynek-thinking 1.05s ease-in-out infinite;
}
.pk-ai-top-section .pk-ai.pk-ai--pogodynek.pk-ai-is-typing .pk-ai-avatar--large::before{
  animation: pk-pogodynek-blink-typing 2.35s infinite;
}
.pk-ai-top-section .pk-ai.pk-ai--pogodynek.pk-ai-emotion-happy .pk-ai-avatar--large{
  animation: pk-pogodynek-happy 3.6s ease-in-out infinite;
}
.pk-ai-top-section .pk-ai.pk-ai--pogodynek.pk-ai-emotion-record .pk-ai-avatar--large{
  animation: pk-pogodynek-record 1.45s cubic-bezier(.2,.85,.24,1) 0s 2, pk-pogodynek-breathe 5.8s ease-in-out 3s infinite;
}
.pk-ai-top-section .pk-ai.pk-ai--pogodynek.pk-ai-emotion-hot .pk-ai-avatar--large{
  animation: pk-pogodynek-hot 2.4s ease-in-out infinite;
}
.pk-ai-top-section .pk-ai.pk-ai--pogodynek.pk-ai-emotion-cold .pk-ai-avatar--large{
  animation: pk-pogodynek-cold .52s ease-in-out infinite;
}
.pk-ai-top-section .pk-ai.pk-ai--pogodynek.pk-ai-emotion-rain .pk-ai-avatar--large{
  animation: pk-pogodynek-rain 3.2s ease-in-out infinite;
}
.pk-ai-top-section .pk-ai.pk-ai--pogodynek.pk-ai-emotion-wind .pk-ai-avatar--large{
  animation: pk-pogodynek-wind 1.8s ease-in-out infinite;
}
.pk-ai-top-section .pk-ai.pk-ai--pogodynek.pk-ai-emotion-hot{
  --pk-pogodynek-accent: rgba(251,146,60,.95);
}
.pk-ai-top-section .pk-ai.pk-ai--pogodynek.pk-ai-emotion-rain{
  --pk-pogodynek-accent: rgba(96,165,250,.95);
}
.pk-ai-top-section .pk-ai.pk-ai--pogodynek.pk-ai-emotion-wind{
  --pk-pogodynek-accent: rgba(148,163,184,.95);
}
.pk-ai-top-section .pk-ai.pk-ai--pogodynek.pk-ai-emotion-record{
  --pk-pogodynek-accent: rgba(250,204,21,.95);
}
.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large{
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.09),
    0 12px 26px rgba(2,6,23,.18),
    0 0 0 1px color-mix(in srgb, var(--pk-pogodynek-accent) 18%, transparent),
    0 0 28px color-mix(in srgb, var(--pk-pogodynek-accent) 11%, transparent) !important;
}

@keyframes pk-pogodynek-breathe{
  0%,100%{ transform:translateY(0) scale(1); }
  50%{ transform:translateY(-2px) scale(1.012); }
}
@keyframes pk-pogodynek-blink{
  0%, 6%, 7.8%, 38%, 39.8%, 100%{ opacity:0; transform:scaleY(.18); }
  6.55%, 7.05%, 38.55%, 39.05%{ opacity:1; transform:scaleY(1); }
}
@keyframes pk-pogodynek-blink-typing{
  0%, 15%, 18%, 55%, 58%, 100%{ opacity:0; transform:scaleY(.18); }
  16%, 16.9%, 56%, 56.9%{ opacity:1; transform:scaleY(1); }
}
@keyframes pk-pogodynek-online-pulse{
  0%,100%{ transform:scale(1); box-shadow:0 0 0 3px rgba(34,197,94,.14),0 0 12px rgba(34,197,94,.55); }
  50%{ transform:scale(1.08); box-shadow:0 0 0 6px rgba(34,197,94,.08),0 0 18px rgba(34,197,94,.72); }
}
@keyframes pk-pogodynek-thinking{
  0%,100%{ transform:translateY(0) rotate(0deg) scale(1.005); }
  25%{ transform:translateY(-2px) rotate(.65deg) scale(1.014); }
  75%{ transform:translateY(-1px) rotate(-.65deg) scale(1.014); }
}
@keyframes pk-pogodynek-happy{
  0%,100%{ transform:translateY(0) scale(1); }
  35%{ transform:translateY(-4px) scale(1.018); }
  55%{ transform:translateY(-2px) scale(1.012); }
}
@keyframes pk-pogodynek-record{
  0%{ transform:translateY(0) scale(1) rotate(0deg); }
  35%{ transform:translateY(-8px) scale(1.045) rotate(-1.2deg); }
  65%{ transform:translateY(-2px) scale(1.018) rotate(1deg); }
  100%{ transform:translateY(0) scale(1) rotate(0deg); }
}
@keyframes pk-pogodynek-hot{
  0%,100%{ transform:translateX(0) rotate(0deg) scale(1.008); }
  25%{ transform:translateX(-1px) rotate(-.6deg) scale(1.012); }
  75%{ transform:translateX(1px) rotate(.6deg) scale(1.012); }
}
@keyframes pk-pogodynek-cold{
  0%,100%{ transform:translateX(0) translateY(0) scale(1); }
  35%{ transform:translateX(-1px) translateY(-1px) scale(1.004); }
  70%{ transform:translateX(1px) translateY(1px) scale(1.004); }
}
@keyframes pk-pogodynek-rain{
  0%,100%{ transform:translateY(0) rotate(0deg) scale(1); }
  45%{ transform:translateY(-2px) rotate(-1.1deg) scale(1.01); }
}
@keyframes pk-pogodynek-wind{
  0%,100%{ transform:translateX(0) rotate(0deg) scale(1); }
  30%{ transform:translateX(-3px) rotate(-.9deg) scale(1.006); }
  65%{ transform:translateX(3px) rotate(.9deg) scale(1.006); }
}

@media (prefers-reduced-motion: reduce){
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large,
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large::before,
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-online-dot{
    animation:none !important;
  }
}

/* =========================================================
   Pan Pogodynek v2.3 — wyraźniejszy ruch avatara + nieprzeskakujący tekst
   ========================================================= */
.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large{
  will-change:transform !important;
  transform-origin:50% 78% !important;
}
.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large img{
  animation:pk-pogodynek-img-life 4.6s ease-in-out infinite !important;
  transform-origin:50% 58% !important;
  will-change:transform, filter !important;
}
.pk-ai-top-section .pk-ai.pk-ai--pogodynek.pk-ai-is-typing .pk-ai-avatar--large img{
  animation:pk-pogodynek-img-talk 1.15s ease-in-out infinite !important;
}

@keyframes pk-pogodynek-img-life{
  0%,100%{ transform:scale(1.16) translateY(2px) rotate(0deg); }
  35%{ transform:scale(1.185) translateY(-2px) rotate(.45deg); }
  70%{ transform:scale(1.172) translateY(0) rotate(-.35deg); }
}
@keyframes pk-pogodynek-img-talk{
  0%,100%{ transform:scale(1.17) translateY(1px) rotate(0deg); }
  25%{ transform:scale(1.19) translateY(-3px) rotate(.75deg); }
  55%{ transform:scale(1.18) translateY(-1px) rotate(-.65deg); }
  78%{ transform:scale(1.195) translateY(-2px) rotate(.45deg); }
}

/* Nadpisujemy subtelne animacje z v2.2, żeby ruch był widoczny, ale nadal elegancki. */
@keyframes pk-pogodynek-breathe{
  0%,100%{ transform:translateY(0) rotate(0deg) scale(1); }
  45%{ transform:translateY(-5px) rotate(.65deg) scale(1.018); }
  72%{ transform:translateY(-2px) rotate(-.35deg) scale(1.01); }
}
@keyframes pk-pogodynek-thinking{
  0%,100%{ transform:translateY(0) rotate(0deg) scale(1.006); }
  25%{ transform:translateY(-5px) rotate(1deg) scale(1.022); }
  58%{ transform:translateY(-2px) rotate(-1deg) scale(1.018); }
  80%{ transform:translateY(-4px) rotate(.55deg) scale(1.02); }
}
@keyframes pk-pogodynek-happy{
  0%,100%{ transform:translateY(0) scale(1) rotate(0deg); }
  30%{ transform:translateY(-7px) scale(1.024) rotate(.7deg); }
  55%{ transform:translateY(-3px) scale(1.014) rotate(-.45deg); }
}
@keyframes pk-pogodynek-rain{
  0%,100%{ transform:translateY(0) rotate(0deg) scale(1); }
  40%{ transform:translateY(-5px) rotate(-1.6deg) scale(1.016); }
  70%{ transform:translateY(-2px) rotate(.7deg) scale(1.008); }
}
@keyframes pk-pogodynek-hot{
  0%,100%{ transform:translateX(0) translateY(0) rotate(0deg) scale(1.01); }
  25%{ transform:translateX(-3px) translateY(-2px) rotate(-1deg) scale(1.016); }
  75%{ transform:translateX(3px) translateY(-1px) rotate(1deg) scale(1.016); }
}
@keyframes pk-pogodynek-wind{
  0%,100%{ transform:translateX(0) rotate(0deg) scale(1); }
  30%{ transform:translateX(-6px) rotate(-1.4deg) scale(1.012); }
  65%{ transform:translateX(6px) rotate(1.4deg) scale(1.012); }
}

@media (prefers-reduced-motion: reduce){
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large img{
    animation:none !important;
  }
}


/* =========================================================
   Pan Pogodynek v2.4 — transparent avatar, no online dot
   ========================================================= */
.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  overflow:visible !important;
  border-radius:0 !important;
  padding:0 !important;
}
.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large::after,
.pk-ai-top-section .pk-ai-online-dot{
  display:none !important;
}
.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large img{
  object-fit:contain !important;
  object-position:center center !important;
  background:transparent !important;
  border-radius:0 !important;
  filter:drop-shadow(0 18px 26px rgba(2,6,23,.30)) !important;
}
.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large::before{
  border-radius:0 !important;
}
@keyframes pk-pogodynek-img-life{
  0%,100%{ transform:scale(1.22) translateY(0) rotate(0deg); }
  35%{ transform:scale(1.245) translateY(-4px) rotate(.55deg); }
  70%{ transform:scale(1.232) translateY(-1px) rotate(-.38deg); }
}
@keyframes pk-pogodynek-img-talk{
  0%,100%{ transform:scale(1.225) translateY(0) rotate(0deg); }
  25%{ transform:scale(1.255) translateY(-5px) rotate(.9deg); }
  55%{ transform:scale(1.242) translateY(-2px) rotate(-.75deg); }
  78%{ transform:scale(1.258) translateY(-4px) rotate(.55deg); }
}
@media(max-width:540px){
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-avatar--large img{
    transform:scale(1.20) translateY(0) !important;
  }
}


/* === Pan Pogodynek LIVE + Intelligent Radar v1 === */
.pk-ai--pogodynek[data-pogodynek-mood="hot"] .pk-ai-avatar--large img{animation:pkPogodynekHeat 1.1s ease-in-out infinite;filter:drop-shadow(0 0 24px rgba(251,113,133,.35));}
.pk-ai--pogodynek[data-pogodynek-mood="cold"] .pk-ai-avatar--large img{animation:pkPogodynekShiver .16s linear infinite;filter:drop-shadow(0 0 22px rgba(125,211,252,.35));}
.pk-ai--pogodynek[data-pogodynek-mood="storm"] .pk-ai-avatar--large img{animation:pkPogodynekStorm .42s steps(2,end) infinite;filter:drop-shadow(0 0 26px rgba(250,204,21,.45));}
.pk-ai--pogodynek[data-pogodynek-mood="rain"] .pk-ai-avatar--large img{animation:pkPogodynekLook 2.8s ease-in-out infinite;filter:drop-shadow(0 0 22px rgba(56,189,248,.35));}
.pk-ai--pogodynek[data-pogodynek-mood="sleepy"] .pk-ai-avatar--large img{animation:pkPogodynekSleep 4.4s ease-in-out infinite;opacity:.92;}
.pk-ai--pogodynek[data-pogodynek-mood="records"] .pk-ai-avatar--large img{animation:pkPogodynekWin 1.8s ease-in-out infinite;filter:drop-shadow(0 0 26px rgba(251,191,36,.4));}
.pk-ai--pogodynek[data-pogodynek-mood="watching"] .pk-ai-avatar--large img{animation:pkPogodynekLook 3.2s ease-in-out infinite;}
.pk-pogodynek-live-status{display:inline-flex;align-items:center;gap:9px;margin:4px 0 10px;padding:8px 12px;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:rgba(15,23,42,.38);box-shadow:inset 0 1px 0 rgba(255,255,255,.08);font-size:.9rem;color:rgba(255,255,255,.86)}
.pk-pogodynek-live-status__dot{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 14px rgba(34,197,94,.9);animation:pkLivePulse 1.7s ease-in-out infinite;}
.pk-pogodynek-live-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;}
.pk-pogodynek-live-chips span{padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);font-size:.78rem;color:rgba(255,255,255,.76);}
.pk-ai--pogodynek[data-pogodynek-alert="true"]{box-shadow:0 24px 80px rgba(250,204,21,.18), inset 0 1px 0 rgba(255,255,255,.08);}
.pk-radar-intel-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0 10px;}
.pk-radar-intel-grid div{padding:10px;border-radius:16px;background:rgba(15,23,42,.42);border:1px solid rgba(255,255,255,.1);}
.pk-radar-intel-grid span{display:block;font-size:.72rem;color:rgba(255,255,255,.58);margin-bottom:4px;}
.pk-radar-intel-grid strong{font-size:.95rem;color:#fff;}
.pk-radar-pogodynek-comment{margin-top:10px;padding:12px 14px;border-radius:18px;background:linear-gradient(135deg,rgba(56,189,248,.13),rgba(168,85,247,.12));border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.84);font-size:.9rem;line-height:1.45;}
@keyframes pkLivePulse{0%,100%{transform:scale(.9);opacity:.65}50%{transform:scale(1.25);opacity:1}}
@keyframes pkPogodynekHeat{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-3px) rotate(1.5deg)}}
@keyframes pkPogodynekShiver{0%,100%{transform:translateX(0)}25%{transform:translateX(-1.5px)}75%{transform:translateX(1.5px)}}
@keyframes pkPogodynekStorm{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(2px,-1px) scale(1.015)}}
@keyframes pkPogodynekSleep{0%,100%{transform:translateY(0) rotate(0);filter:saturate(.75)}50%{transform:translateY(5px) rotate(-1.5deg);filter:saturate(.65)}}
@keyframes pkPogodynekWin{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-5px) scale(1.025)}}
@keyframes pkPogodynekLook{0%,100%{transform:translateX(0)}40%{transform:translateX(4px)}70%{transform:translateX(-3px)}}
@media (max-width:760px){.pk-radar-intel-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.pk-pogodynek-live-status{border-radius:18px;align-items:flex-start}.pk-pogodynek-live-chips span{font-size:.72rem}}

/* =========================================================
   Pan Pogodynek LIVE — prawa kolumna AI Insights, bez badge statusów
   ========================================================= */
.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-body{
  grid-template-columns:clamp(145px, 11vw, 185px) minmax(360px, 1.35fr) minmax(360px, .95fr) !important;
  align-items:start !important;
  gap:30px !important;
}

.pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-copy{
  padding-right:0 !important;
}

.pk-pogodynek-live-status,
.pk-pogodynek-live-chips{
  display:none !important;
}

.pk-pogodynek-insights{
  position:relative;
  min-width:0;
  align-self:stretch;
  padding-left:28px;
  border-left:1px solid rgba(148,163,184,.18);
}

.pk-pogodynek-insights::before{
  content:"";
  position:absolute;
  inset:0 0 auto 28px;
  height:92px;
  pointer-events:none;
  background:radial-gradient(circle at 85% 0%, rgba(168,85,247,.18), transparent 60%);
}

.pk-pogodynek-insights__head{
  position:relative;
  z-index:1;
  margin-bottom:16px;
}

.pk-pogodynek-insights__head span{
  display:block;
  margin-bottom:4px;
  font-size:13px;
  line-height:1;
  letter-spacing:.42em;
  text-transform:uppercase;
  font-weight:900;
  color:rgba(226,232,240,.48);
}

.pk-pogodynek-insights__head strong{
  display:block;
  font-size:clamp(24px, 1.9vw, 38px);
  line-height:1.02;
  letter-spacing:-.055em;
  color:rgba(248,250,252,.98);
}

.pk-pogodynek-insights__list{
  position:relative;
  z-index:1;
  display:grid;
  gap:12px;
}

.pk-pogodynek-insight{
  display:grid;
  grid-template-columns:44px minmax(0,1fr);
  align-items:center;
  gap:14px;
  min-height:64px;
  padding:13px 16px;
  border-radius:24px;
  background:linear-gradient(135deg, rgba(255,255,255,.095), rgba(255,255,255,.045));
  border:1px solid rgba(255,255,255,.105);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 14px 34px rgba(2,6,23,.18);
}

.pk-pogodynek-insight__icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:38px;
  height:38px;
  border-radius:14px;
  font-size:24px;
  background:rgba(15,23,42,.34);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10);
}

.pk-pogodynek-insight p{
  margin:0;
  font-size:clamp(13px, .86vw, 15.5px);
  line-height:1.38;
  color:rgba(241,245,249,.84);
}

@media(max-width:1180px){
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-body{
    grid-template-columns:120px minmax(0,1fr) !important;
  }
  .pk-pogodynek-insights{
    grid-column:1 / -1;
    padding-left:0;
    padding-top:18px;
    border-left:0;
    border-top:1px solid rgba(148,163,184,.18);
  }
  .pk-pogodynek-insights::before{
    inset:18px 0 auto 0;
  }
  .pk-pogodynek-insights__list{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }
}

@media(max-width:640px){
  .pk-ai-top-section .pk-ai.pk-ai--pogodynek .pk-ai-body{
    grid-template-columns:82px minmax(0,1fr) !important;
    gap:13px !important;
  }
  .pk-pogodynek-insights__head span{
    font-size:11px;
    letter-spacing:.32em;
  }
  .pk-pogodynek-insights__head strong{
    font-size:24px;
  }
  .pk-pogodynek-insights__list{
    grid-template-columns:1fr;
    gap:10px;
  }
  .pk-pogodynek-insight{
    grid-template-columns:38px minmax(0,1fr);
    border-radius:20px;
    padding:12px 13px;
  }
  .pk-pogodynek-insight__icon{
    width:34px;
    height:34px;
    font-size:21px;
  }
}

/* =========================================================
   HERO overlap guard v1 — tekst i wykres nigdy się nie nakładają
   ========================================================= */
@media (min-width:1181px){
  .pk-live-stage.pk-hero-station > .pk-station-hero{
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) minmax(360px, 42%) !important;
    grid-template-rows:minmax(0, 1fr) auto !important;
    column-gap:clamp(22px, 2.4vw, 38px) !important;
    row-gap:18px !important;
    align-items:center !important;
    height:auto !important;
    min-height:560px !important;
  }

  .pk-live-stage.pk-hero-station > .pk-station-hero .pk-station-hero__content{
    grid-column:1 !important;
    grid-row:1 !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    padding-right:0 !important;
  }

  .pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart{
    position:relative !important;
    inset:auto !important;
    grid-column:2 !important;
    grid-row:1 !important;
    justify-self:stretch !important;
    align-self:center !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 clamp(26px, 2.4vw, 40px) 0 0 !important;
  }

  .pk-live-stage.pk-hero-station > .pk-station-hero .pk-station-hero__metrics{
    grid-column:1 / -1 !important;
    grid-row:2 !important;
  }
}

/* Przy średniej szerokości wykres schodzi pod dane zamiast je przykrywać. */
@media (min-width:941px) and (max-width:1180px){
  .pk-live-stage.pk-hero-station > .pk-station-hero{
    display:grid !important;
    grid-template-columns:1fr !important;
    grid-template-rows:auto auto auto !important;
    height:auto !important;
    min-height:540px !important;
  }

  .pk-live-stage.pk-hero-station > .pk-station-hero .pk-station-hero__content{
    grid-column:1 !important;
    grid-row:1 !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    padding-bottom:12px !important;
  }

  .pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-side-chart{
    display:block !important;
    position:relative !important;
    inset:auto !important;
    grid-column:1 !important;
    grid-row:2 !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 24px 18px !important;
  }

  .pk-live-stage.pk-hero-station > .pk-station-hero .pk-station-hero__metrics{
    grid-column:1 !important;
    grid-row:3 !important;
  }
}

.pk-live-stage.pk-hero-station > .pk-station-hero .pk-hero-condition{
  max-width:100% !important;
  overflow-wrap:anywhere;
  text-wrap:balance;
}

/* FIX 2026-07-17 — pełny status jakości powietrza bez ucinania tekstu */
.pk-atmo-air__gauge-content > strong,
.pk-atmo-air__main > strong{
  width:min(100%, calc(var(--gauge-w) - 24px)) !important;
  max-width:calc(var(--gauge-w) - 24px) !important;
  min-height:30px !important;
  box-sizing:border-box !important;
  padding:6px 10px !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
  overflow-wrap:anywhere !important;
  word-break:normal !important;
  text-align:center !important;
  line-height:1.12 !important;
  letter-spacing:.075em !important;
  font-size:clamp(9px, .72vw, 12px) !important;
}

.pk-atmo-air__gauge-content > strong:before,
.pk-atmo-air__main > strong:before{
  display:none !important;
}

.pk-atmo-air__gauge{
  height:calc(var(--gauge-w) * .63) !important;
}

@media (max-width:720px){
  .pk-atmo-air__gauge-content > strong,
  .pk-atmo-air__main > strong{
    width:min(100%, calc(var(--gauge-w) - 18px)) !important;
    max-width:calc(var(--gauge-w) - 18px) !important;
    font-size:10px !important;
    letter-spacing:.065em !important;
    line-height:1.15 !important;
    padding:6px 8px !important;
  }

  .pk-atmo-air__gauge{
    height:calc(var(--gauge-w) * .65) !important;
  }
}


/* =========================================================
   Pan Pogodynek — lokalna prognoza krótkoterminowa ze stacji
   ========================================================= */
.pk-station-nowcast{
  margin-top:32px;
  padding-top:26px;
  border-top:1px solid rgba(255,255,255,.13);
  max-width:860px;
}
.pk-station-nowcast__title{
  display:block;
  margin:0 0 10px;
  color:#fff;
  font-size:clamp(16px,1.25vw,19px);
  font-weight:900;
  letter-spacing:-.015em;
}
.pk-station-nowcast #station-nowcast-text{
  margin:0;
  color:rgba(244,249,255,.92);
  font-size:clamp(15px,1.15vw,18px);
  line-height:1.65;
  font-weight:650;
  text-wrap:pretty;
}
.pk-station-nowcast__source{
  display:block;
  margin-top:10px;
  color:rgba(205,222,241,.58);
  font-size:11px;
  line-height:1.45;
}
@media (max-width:760px){
  .pk-station-nowcast{margin-top:26px;padding-top:22px}
  .pk-station-nowcast #station-nowcast-text{line-height:1.58}
}

/* v1.43 — radarowa oś czasu zamiast mało użytecznego wykresu */
.pk-rain-timeline-panel{
  position:relative;
  min-height:250px;
  padding:16px;
  border-radius:24px;
  border:1px solid rgba(148,163,184,.18);
  background:rgba(255,255,255,.44);
  overflow:hidden;
}
[data-theme="dark"] .pk-rain-timeline-panel,
.theme-dark .pk-rain-timeline-panel{
  background:linear-gradient(180deg,rgba(15,23,42,.62),rgba(15,23,42,.34));
  border-color:rgba(191,219,254,.14);
}
.pk-rain-timeline__header span,
.pk-rain-zone-summary span{
  display:block;
  color:var(--muted,#64748b);
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.04em;
}
.pk-rain-timeline__header strong{
  display:block;
  margin-top:4px;
  font-size:1rem;
}
.pk-rain-timeline{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
  margin-top:14px;
}
.pk-rain-timeline__item{
  min-width:0;
  padding:11px 9px;
  border-radius:16px;
  border:1px solid rgba(148,163,184,.16);
  background:rgba(255,255,255,.42);
  text-align:center;
}
[data-theme="dark"] .pk-rain-timeline__item,
.theme-dark .pk-rain-timeline__item{background:rgba(2,6,23,.34)}
.pk-rain-timeline__time{
  display:block;
  color:var(--muted,#64748b);
  font-size:.7rem;
  font-weight:900;
}
.pk-rain-timeline__icon{display:block;margin:6px 0 4px;font-size:1.2rem}
.pk-rain-timeline__item strong{display:block;font-size:.78rem;line-height:1.25}
.pk-rain-timeline__item small{display:block;margin-top:4px;color:var(--muted,#64748b);font-size:.66rem}
.pk-rain-timeline__item.is-high{border-color:rgba(239,68,68,.38);background:rgba(239,68,68,.09)}
.pk-rain-timeline__item.is-medium{border-color:rgba(249,115,22,.34);background:rgba(249,115,22,.08)}
.pk-rain-timeline__item.is-low{border-color:rgba(56,189,248,.32);background:rgba(56,189,248,.07)}
.pk-rain-zone-summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:12px;
  padding:12px 13px;
  border-radius:17px;
  border:1px solid rgba(148,163,184,.16);
  background:rgba(255,255,255,.36);
}
[data-theme="dark"] .pk-rain-zone-summary,
.theme-dark .pk-rain-zone-summary{background:rgba(2,6,23,.3)}
.pk-rain-zone-summary strong{display:block;margin-top:3px;font-size:.86rem;line-height:1.25}
.pk-rain-zone-summary__meta{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px 10px;text-align:right}
.pk-rain-zone-summary__meta span{font-size:.68rem;letter-spacing:0}
.pk-rain-zone-summary.is-approaching{border-color:rgba(249,115,22,.35)}
.pk-rain-zone-summary.is-away{border-color:rgba(34,197,94,.28)}
.pk-rain-zone-summary.is-passing{border-color:rgba(56,189,248,.3)}
@media (max-width:1180px){
  .pk-rain-timeline{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pk-rain-zone-summary{align-items:flex-start;flex-direction:column}
  .pk-rain-zone-summary__meta{justify-content:flex-start;text-align:left}
}
@media (max-width:720px){
  .pk-rain-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:460px){
  .pk-rain-timeline{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* v1.44 — dynamiczna oś radaru bez pustych kafelków */
.pk-rain-timeline-panel{
  min-height:0;
  background:linear-gradient(180deg,rgba(8,18,37,.94),rgba(6,15,32,.86));
  border-color:rgba(96,165,250,.2);
}
.pk-rain-timeline{
  grid-template-columns:repeat(var(--timeline-count,3),minmax(0,1fr));
}
.pk-rain-timeline__item{
  background:linear-gradient(180deg,rgba(30,49,78,.88),rgba(18,34,59,.82));
  border-color:rgba(147,197,253,.16);
  color:#eef6ff;
}
[data-theme="dark"] .pk-rain-timeline__item,
.theme-dark .pk-rain-timeline__item{
  background:linear-gradient(180deg,rgba(30,49,78,.88),rgba(18,34,59,.82));
}
.pk-rain-timeline__time,
.pk-rain-timeline__item small,
.pk-rain-timeline__header span,
.pk-rain-zone-summary span{color:rgba(218,232,249,.68)}
.pk-rain-timeline__item strong,.pk-rain-timeline__header strong,.pk-rain-zone-summary strong{color:#f5f9ff}
.pk-rain-timeline__single,
.pk-rain-timeline__notice{
  display:flex;
  align-items:center;
  gap:14px;
  margin-top:14px;
  padding:18px;
  border-radius:18px;
  border:1px solid rgba(147,197,253,.16);
  background:linear-gradient(180deg,rgba(30,49,78,.82),rgba(18,34,59,.76));
}
.pk-rain-timeline__single-icon{font-size:1.65rem}
.pk-rain-timeline__single strong,.pk-rain-timeline__notice strong{display:block;color:#f5f9ff;font-size:.92rem}
.pk-rain-timeline__single span:not(.pk-rain-timeline__single-icon),.pk-rain-timeline__notice span{display:block;margin-top:4px;color:rgba(218,232,249,.68);font-size:.74rem;line-height:1.45}
.pk-rain-zone-summary{background:rgba(10,25,48,.76);border-color:rgba(147,197,253,.16)}
[data-theme="dark"] .pk-rain-zone-summary,.theme-dark .pk-rain-zone-summary{background:rgba(10,25,48,.76)}
@media (max-width:1180px){
  .pk-rain-timeline{grid-template-columns:repeat(min(var(--timeline-count,3),3),minmax(0,1fr))}
}
@media (max-width:760px){
  .pk-rain-timeline{grid-template-columns:repeat(2,minmax(0,1fr))}
}


/* === Radar panel premium v4 — auto height, czytelne dane, bez ucinania === */
.pk-rainviewer-section{
  align-items:start !important;
}
.pk-rainviewer-section .pk-rain-nowcast-card{
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  align-self:start !important;
  padding:clamp(18px,2vw,26px) !important;
  display:flex !important;
  flex-direction:column !important;
  gap:16px !important;
}
.pk-rain-nowcast-card::before{
  border-radius:inherit;
  pointer-events:none;
}
.pk-rain-arrival{
  min-width:0;
  padding:18px 20px !important;
  border-radius:22px !important;
}
.pk-rain-arrival__label,
.pk-rain-arrival strong,
.pk-rain-arrival small{
  max-width:100%;
  overflow:visible !important;
  white-space:normal !important;
  text-overflow:clip !important;
  overflow-wrap:anywhere;
}
.pk-rain-arrival strong{
  display:block;
  margin:6px 0 5px;
  font-size:clamp(1.7rem,2.4vw,2.35rem) !important;
  line-height:1.05 !important;
  letter-spacing:-.04em;
}
.pk-rain-arrival small{
  display:block;
  font-size:.82rem !important;
  line-height:1.5 !important;
}
.pk-rain-timeline-panel{
  width:100%;
  min-width:0;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  padding:15px !important;
  border-radius:22px !important;
}
.pk-rain-timeline__header,
.pk-rain-timeline__single,
.pk-rain-timeline__notice,
.pk-rain-zone-summary{
  min-width:0;
}
.pk-rain-timeline__single span,
.pk-rain-timeline__notice span,
.pk-rain-zone-summary span,
.pk-rain-zone-summary strong{
  white-space:normal !important;
  overflow-wrap:anywhere;
}
.pk-radar-intel-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
  margin:0 !important;
}
.pk-radar-intel-grid .pk-radar-intel-item{
  min-width:0;
  display:grid !important;
  grid-template-columns:38px minmax(0,1fr) !important;
  align-items:center !important;
  gap:11px !important;
  padding:13px !important;
  border-radius:18px !important;
  background:linear-gradient(145deg,rgba(30,58,92,.72),rgba(12,28,52,.72)) !important;
  border:1px solid rgba(147,197,253,.16) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 12px 28px rgba(2,6,23,.13);
}
.pk-radar-intel-item__icon{
  width:38px;
  height:38px;
  display:grid !important;
  place-items:center;
  margin:0 !important;
  border-radius:13px;
  color:#7dd3fc !important;
  font-size:1.15rem !important;
  font-weight:800;
  background:rgba(56,189,248,.10);
  border:1px solid rgba(125,211,252,.15);
}
.pk-radar-intel-item__copy{
  min-width:0;
  display:block !important;
  margin:0 !important;
}
.pk-radar-intel-item__copy small{
  display:block;
  margin:0 0 4px;
  color:rgba(203,213,225,.64);
  font-size:.68rem;
  line-height:1.2;
  font-weight:850;
  letter-spacing:.07em;
  text-transform:uppercase;
  white-space:normal;
}
.pk-radar-intel-grid .pk-radar-intel-item strong{
  display:block;
  min-width:0;
  color:#f8fbff !important;
  font-size:clamp(.95rem,1.25vw,1.08rem) !important;
  line-height:1.2;
  white-space:normal !important;
  overflow-wrap:anywhere;
}
.pk-radar-intel-item--eta{
  grid-column:1/-1;
}
.pk-radar-intel-item--eta strong{
  color:#7dd3fc !important;
}
@media (max-width:1180px){
  .pk-rainviewer-section .pk-rain-nowcast-card{align-self:stretch !important;}
}
@media (max-width:720px){
  .pk-rainviewer-section .pk-rain-nowcast-card{
    height:auto !important;
    min-height:0 !important;
    padding:16px !important;
  }
  .pk-radar-intel-grid{
    grid-template-columns:1fr !important;
  }
  .pk-radar-intel-item--eta{grid-column:auto;}
  .pk-rain-timeline-panel{padding:13px !important;}
}

/* Radar premium: pasek prawdopodobieństwa i czyste stany bez opadu */
.pk-rain-probability{
  padding:14px 16px;
  border-radius:18px;
  background:linear-gradient(145deg,rgba(30,58,92,.62),rgba(12,28,52,.72));
  border:1px solid rgba(147,197,253,.16);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.pk-rain-probability[hidden],
.pk-rain-timeline-panel[hidden],
.pk-radar-intel-grid[hidden]{display:none !important;}
.pk-rain-probability__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:10px;
}
.pk-rain-probability__head span{
  color:rgba(226,232,240,.72);
  font-size:.72rem;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.pk-rain-probability__head strong{
  color:#f8fbff;
  font-size:1rem;
}
.pk-rain-probability__track{
  height:9px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(148,163,184,.18);
  box-shadow:inset 0 1px 3px rgba(2,6,23,.45);
}
.pk-rain-probability__track span{
  display:block;
  width:0;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#38bdf8,#facc15);
  box-shadow:0 0 14px rgba(56,189,248,.35);
  transition:width .55s ease;
}
.pk-rain-probability[data-level="high"] .pk-rain-probability__track span{
  background:linear-gradient(90deg,#facc15,#fb7185);
}

/* Climate promo + premium footer */
.pk-climate-promo{
  position:relative;
  isolation:isolate;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:38px;
  margin:34px 0 44px;
  padding:42px 46px;
  border:1px solid rgba(125,211,252,.19);
  border-radius:32px;
  overflow:hidden;
  background:
    radial-gradient(circle at 85% 10%,rgba(251,146,60,.20),transparent 31%),
    radial-gradient(circle at 12% 0%,rgba(96,165,250,.23),transparent 34%),
    linear-gradient(135deg,rgba(17,35,65,.92),rgba(10,22,42,.88));
  box-shadow:0 28px 80px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.08);
}
.pk-climate-promo:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(120deg,rgba(255,255,255,.09),transparent 30%,transparent 72%,rgba(56,232,255,.05));
}
.pk-climate-promo__glow{
  position:absolute;
  right:-70px;
  bottom:-120px;
  width:310px;
  height:310px;
  border-radius:50%;
  background:rgba(56,232,255,.11);
  filter:blur(28px);
  pointer-events:none;
}
.pk-climate-promo__content{display:flex;align-items:flex-start;gap:24px;max-width:900px}
.pk-climate-promo__icon{
  flex:0 0 auto;
  display:grid;
  place-items:center;
  width:68px;
  height:68px;
  border-radius:22px;
  font-size:31px;
  background:linear-gradient(145deg,rgba(96,165,250,.23),rgba(56,232,255,.11));
  border:1px solid rgba(125,211,252,.22);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 14px 30px rgba(0,0,0,.22);
}
.pk-climate-promo h2{margin:0;font-size:clamp(28px,3vw,42px);letter-spacing:-.055em;line-height:1.05}
.pk-climate-promo p:not(.pk-kicker){max-width:760px;margin:14px 0 0;color:var(--muted);font-size:16px;line-height:1.7}
.pk-climate-promo__tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}
.pk-climate-promo__tags span{
  padding:7px 11px;
  border-radius:999px;
  color:#dbeafe;
  font-size:12px;
  font-weight:800;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.09);
}
.pk-climate-promo__button{
  position:relative;
  z-index:1;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  min-height:54px;
  padding:0 22px;
  border-radius:17px;
  color:#06111f;
  font-weight:950;
  white-space:nowrap;
  background:linear-gradient(135deg,#f8fbff,#bfe8ff);
  box-shadow:0 15px 38px rgba(56,189,248,.18),inset 0 1px 0 #fff;
  transition:transform .22s ease,box-shadow .22s ease;
}
.pk-climate-promo__button:hover{transform:translateY(-3px);box-shadow:0 22px 46px rgba(56,189,248,.27),inset 0 1px 0 #fff}
.pk-climate-promo__button span:last-child{font-size:22px;transition:transform .22s ease}
.pk-climate-promo__button:hover span:last-child{transform:translateX(4px)}

.pk-footer-wrap{
  position:relative;
  margin-top:8px;
  border-top:1px solid rgba(148,163,184,.10);
  background:
    radial-gradient(circle at 15% 0%,rgba(59,130,246,.10),transparent 35%),
    linear-gradient(180deg,rgba(2,8,20,.24),rgba(2,6,16,.72));
}
.pk-footer{
  display:block;
  padding:46px 0 28px;
  color:var(--faint);
  font-size:14px;
}
.pk-footer__main{
  display:grid;
  grid-template-columns:minmax(280px,1.25fr) minmax(380px,1fr);
  gap:80px;
  align-items:start;
}
.pk-footer__brand{max-width:430px}
.pk-footer__logo-link{display:inline-block;border-radius:18px;transition:transform .22s ease,filter .22s ease}
.pk-footer__logo-link:hover{transform:translateY(-2px) scale(1.025);filter:drop-shadow(0 10px 22px rgba(56,189,248,.22)) brightness(1.08)}
.pk-footer__logo{height:64px;width:auto;margin:0 0 18px}
.pk-footer__brand p{margin:0;color:var(--muted);font-size:15px;line-height:1.7}
.pk-footer__nav{display:grid;grid-template-columns:repeat(2,minmax(150px,1fr));gap:48px}
.pk-footer__column{display:flex;flex-direction:column;align-items:flex-start;gap:11px}
.pk-footer__column h3{margin:0 0 6px;color:#f8fbff;font-size:14px;letter-spacing:.08em;text-transform:uppercase}
.pk-footer__column a{position:relative;color:var(--muted);line-height:1.45;transition:color .2s ease,transform .2s ease}
.pk-footer__column a:before{content:"";position:absolute;left:0;bottom:-3px;width:0;height:1px;background:#7dd3fc;transition:width .2s ease}
.pk-footer__column a:hover{color:#fff;transform:translateX(3px)}
.pk-footer__column a:hover:before{width:100%}
.pk-footer__bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-top:42px;
  padding-top:22px;
  border-top:1px solid rgba(148,163,184,.11);
  color:rgba(203,213,225,.60);
  font-size:12px;
}
.pk-footer__made{
  color:rgba(241,245,249,.88);
  font-size:15px;
  font-weight:750;
  letter-spacing:.01em;
}
.pk-footer__heart{
  display:inline-block;
  margin:0 3px;
  transform-origin:center;
  filter:drop-shadow(0 0 8px rgba(248,113,113,.55));
  animation:pk-heartbeat 1.75s ease-in-out infinite,pk-heart-glow 3.5s ease-in-out infinite;
}
@keyframes pk-heartbeat{
  0%,38%,100%{transform:scale(1) rotate(0deg)}
  10%{transform:scale(1.20) rotate(-3deg)}
  19%{transform:scale(.98) rotate(2deg)}
  28%{transform:scale(1.13) rotate(-1deg)}
}
@keyframes pk-heart-glow{
  0%,100%{filter:drop-shadow(0 0 7px rgba(248,113,113,.42))}
  50%{filter:drop-shadow(0 0 15px rgba(251,113,133,.82))}
}
@media (prefers-reduced-motion:reduce){
  .pk-footer__heart{animation:none}
}

@media(max-width:900px){
  .pk-climate-promo{grid-template-columns:1fr;padding:34px;gap:28px}
  .pk-climate-promo__button{justify-self:start}
  .pk-footer__main{grid-template-columns:1fr;gap:38px}
  .pk-footer__brand{max-width:620px}
}
@media(max-width:620px){
  .pk-climate-promo{padding:27px 22px;border-radius:25px;margin-bottom:30px}
  .pk-climate-promo__content{display:block}
  .pk-climate-promo__icon{width:56px;height:56px;margin-bottom:18px;border-radius:18px;font-size:26px}
  .pk-climate-promo__button{width:100%;white-space:normal;text-align:center}
  .pk-footer{padding:38px 0 24px}
  .pk-footer__nav{grid-template-columns:1fr;gap:32px}
  .pk-footer__bottom{align-items:flex-start;flex-direction:column;margin-top:34px}
  .pk-footer__logo{height:57px}
}


/* Połączona prognoza godzinowa + 5-dniowa */
.pk-forecast-layout--combined{
  align-items:stretch;
}

.pk-forecast-card--combined{
  padding:30px;
  overflow:hidden;
}

.pk-forecast-block__head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
}

.pk-forecast-block__head h2{
  margin:4px 0 0;
  font-size:clamp(25px,2.4vw,36px);
  letter-spacing:-.055em;
}

.pk-forecast-block__hint{
  color:var(--faint);
  font-size:12px;
  font-weight:850;
  white-space:nowrap;
}

.pk-forecast-card--combined .pk-hourly-strip{
  margin-top:18px;
}

.pk-forecast-card--combined .pk-hour-card{
  min-height:142px;
}

.pk-forecast-divider{
  height:1px;
  margin:28px 0 26px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.16) 12%,rgba(255,255,255,.16) 88%,transparent);
}

.pk-forecast-card--combined .pk-forecast-strip{
  margin-top:18px;
}

.pk-forecast-card--combined .forecast-day{
  min-height:154px;
  background:linear-gradient(180deg,rgba(255,255,255,.085),rgba(255,255,255,.04));
  transition:transform .18s ease,border-color .18s ease,background .18s ease;
}

.pk-forecast-card--combined .forecast-day:hover{
  transform:translateY(-2px);
  border-color:rgba(255,255,255,.17);
  background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.055));
}

@media(max-width:760px){
  .pk-forecast-card--combined{padding:22px 16px}
  .pk-forecast-block__head{align-items:flex-start}
  .pk-forecast-block__hint{display:none}
  .pk-forecast-divider{margin:24px 0 22px}
  .pk-forecast-card--combined .pk-forecast-strip{
    grid-template-columns:repeat(5,minmax(150px,1fr));
    overflow-x:auto;
    padding-bottom:8px;
    scrollbar-width:thin;
  }
}

/* === Korekta układu: pełny radar i prognoza bez przewijania === */
/* Radar nie może być ograniczany przez wcześniejsze wysokości ani content-visibility */
.pk-rainviewer-section.pk-lazy-section{
  content-visibility:visible !important;
  contain:none !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  align-items:stretch !important;
  grid-auto-rows:auto !important;
}
.pk-rainviewer-section .pk-rainviewer-card,
.pk-rainviewer-section .pk-rain-nowcast-card{
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  align-self:stretch !important;
}
.pk-rainviewer-section .pk-rainviewer-card{
  display:flex !important;
  padding:0 !important;
}
.pk-rainviewer-section .pk-rainviewer-shell{
  flex:1 1 auto;
  width:100%;
  height:auto !important;
  min-height:520px !important;
  margin:0 !important;
}
.pk-rainviewer-section .pk-rainviewer-map,
.pk-rainviewer-section #rainviewer-map{
  width:100%;
  height:100% !important;
  min-height:520px !important;
}
.pk-rainviewer-section + .pk-comfort-board{
  position:relative;
  z-index:1;
  clear:both;
  margin-top:22px;
}

/* Prognoza godzinowa i pięciodniowa korzystają z całej szerokości */
.pk-forecast-layout--combined{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:16px !important;
  align-items:start !important;
}
.pk-forecast-card--combined,
.pk-forecast-layout--combined .pk-rain-context{
  width:100%;
  min-width:0;
}
.pk-forecast-card--combined{
  overflow:visible !important;
}

/* 12 godzin w dwóch czytelnych rzędach — bez poziomego przewijania */
.pk-forecast-card--combined .pk-hourly-strip{
  display:grid !important;
  grid-template-columns:repeat(6,minmax(0,1fr)) !important;
  gap:10px !important;
  width:100%;
  max-width:none;
  overflow:visible !important;
  padding:0 !important;
  scroll-snap-type:none !important;
}
.pk-forecast-card--combined .pk-hour-card{
  width:auto !important;
  min-width:0 !important;
  min-height:136px !important;
  padding:13px 8px !important;
}
.pk-forecast-card--combined .pk-hour-card strong{
  font-size:clamp(20px,1.8vw,25px) !important;
}

/* Pięć dni w jednym pełnym rzędzie */
.pk-forecast-card--combined .pk-forecast-strip{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:10px !important;
  width:100%;
  overflow:visible !important;
  padding:0 !important;
}
.pk-forecast-card--combined .forecast-day{
  min-width:0 !important;
}

/* Sytuacja opadowa jako niski panel pod prognozą, a nie wąska kolumna */
.pk-forecast-layout--combined .pk-rain-context{
  display:grid !important;
  grid-template-columns:minmax(230px,1.2fr) minmax(300px,2fr) auto !important;
  align-items:center !important;
  gap:24px !important;
  min-height:0 !important;
  padding:20px 24px !important;
}
.pk-forecast-layout--combined .pk-rain-context .pk-kicker{
  grid-column:1;
  margin:0 0 4px;
}
.pk-forecast-layout--combined .pk-rain-context h2{
  grid-column:1;
  margin:0;
}
.pk-forecast-layout--combined .pk-rain-context > p:not(.pk-kicker){
  grid-column:2;
  grid-row:1 / span 2;
  margin:0;
  align-self:center;
}
.pk-forecast-layout--combined .pk-rain-stats{
  grid-column:3;
  grid-row:1 / span 2;
  display:grid !important;
  grid-template-columns:repeat(3,minmax(92px,1fr)) !important;
  gap:9px !important;
  margin:0 !important;
}

@media(max-width:1050px){
  .pk-forecast-card--combined .pk-hourly-strip{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  }
  .pk-forecast-layout--combined .pk-rain-context{
    grid-template-columns:1fr auto !important;
  }
  .pk-forecast-layout--combined .pk-rain-context > p:not(.pk-kicker){
    grid-column:1;
    grid-row:auto;
  }
  .pk-forecast-layout--combined .pk-rain-stats{
    grid-column:2;
    grid-row:1 / span 3;
  }
}

@media(max-width:760px){
  .pk-rainviewer-section .pk-rainviewer-shell,
  .pk-rainviewer-section .pk-rainviewer-map,
  .pk-rainviewer-section #rainviewer-map{
    min-height:350px !important;
    height:350px !important;
  }
  .pk-forecast-card--combined .pk-hourly-strip{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:8px !important;
  }
  .pk-forecast-card--combined .pk-hour-card{
    min-height:128px !important;
  }
  .pk-forecast-card--combined .pk-forecast-strip{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    overflow:visible !important;
  }
  .pk-forecast-card--combined .forecast-day:last-child{
    grid-column:1 / -1;
  }
  .pk-forecast-layout--combined .pk-rain-context{
    display:block !important;
  }
  .pk-forecast-layout--combined .pk-rain-context > p:not(.pk-kicker){
    margin:8px 0 16px;
  }
  .pk-forecast-layout--combined .pk-rain-stats{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

@media(max-width:480px){
  .pk-forecast-card--combined .pk-hourly-strip{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .pk-forecast-card--combined .pk-forecast-strip{
    grid-template-columns:1fr !important;
  }
  .pk-forecast-card--combined .forecast-day:last-child{
    grid-column:auto;
  }
  .pk-forecast-layout--combined .pk-rain-stats{
    grid-template-columns:1fr !important;
  }
}

/* === Finalna korekta 20.07: radar bez ucinania + zwarta wspólna prognoza === */
/* Radar: wysokość całego wiersza wyznacza pełna zawartość panelu po prawej,
   a mapa rozciąga się do tej samej wysokości. */
.pk-rainviewer-section.pk-lazy-section{
  display:grid !important;
  grid-template-columns:minmax(0,3fr) minmax(310px,1fr) !important;
  gap:16px !important;
  align-items:stretch !important;
  height:auto !important;
  max-height:none !important;
  overflow:visible !important;
  contain:none !important;
  content-visibility:visible !important;
}
.pk-rainviewer-section .pk-rainviewer-card{
  display:flex !important;
  align-self:stretch !important;
  height:auto !important;
  min-height:420px !important;
  max-height:none !important;
  padding:0 !important;
  overflow:hidden !important;
}
.pk-rainviewer-section .pk-rainviewer-shell{
  display:flex !important;
  flex:1 1 auto !important;
  width:100% !important;
  height:auto !important;
  min-height:420px !important;
  margin:0 !important;
  overflow:hidden !important;
}
.pk-rainviewer-section .pk-rainviewer-map,
.pk-rainviewer-section #rainviewer-map{
  flex:1 1 auto !important;
  width:100% !important;
  height:auto !important;
  min-height:420px !important;
}
.pk-rainviewer-section .pk-rain-nowcast-card{
  align-self:stretch !important;
  height:auto !important;
  min-height:420px !important;
  max-height:none !important;
  overflow:visible !important;
  padding:16px !important;
  gap:12px !important;
}

/* Prognoza: jeden spójny moduł, ale bez wielkich kafli i bez dwóch pustych rzędów. */
.pk-forecast-layout--combined{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 300px !important;
  gap:16px !important;
  align-items:stretch !important;
}
.pk-forecast-card--combined{
  min-width:0 !important;
  padding:24px !important;
  overflow:hidden !important;
}
.pk-forecast-card--combined .pk-forecast-block__head{
  align-items:center !important;
}
.pk-forecast-card--combined .pk-forecast-block__head h2{
  font-size:clamp(21px,1.8vw,29px) !important;
}
.pk-forecast-card--combined .pk-forecast-block__hint{
  font-size:11px !important;
}
.pk-forecast-card--combined .pk-hourly-strip{
  display:grid !important;
  grid-template-columns:repeat(8,minmax(0,1fr)) !important;
  gap:8px !important;
  width:100% !important;
  margin-top:15px !important;
  padding:0 !important;
  overflow:visible !important;
}
.pk-forecast-card--combined .pk-hour-card{
  width:auto !important;
  min-width:0 !important;
  min-height:122px !important;
  padding:11px 7px !important;
  border-radius:16px !important;
}
.pk-forecast-card--combined .pk-hour-card:nth-child(n+9){
  display:none !important;
}
.pk-forecast-card--combined .pk-hour-card time{font-size:10px !important}
.pk-forecast-card--combined .pk-hour-card img{width:31px !important;height:31px !important}
.pk-forecast-card--combined .pk-hour-card strong{font-size:20px !important}
.pk-forecast-card--combined .pk-hour-card span,
.pk-forecast-card--combined .pk-hour-card small{font-size:10px !important}
.pk-forecast-divider{
  margin:22px 0 20px !important;
}
.pk-forecast-card--combined .pk-forecast-strip{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:9px !important;
  width:100% !important;
  margin-top:14px !important;
  padding:0 !important;
  overflow:visible !important;
}
.pk-forecast-card--combined .forecast-day{
  min-width:0 !important;
  min-height:128px !important;
  padding:14px 12px !important;
  border-radius:17px !important;
}

/* Sytuacja opadowa wraca jako schludny panel boczny, równy wysokością prognozie. */
.pk-forecast-layout--combined .pk-rain-context{
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  width:auto !important;
  min-width:0 !important;
  height:auto !important;
  padding:22px !important;
  gap:0 !important;
}
.pk-forecast-layout--combined .pk-rain-context .pk-kicker,
.pk-forecast-layout--combined .pk-rain-context h2,
.pk-forecast-layout--combined .pk-rain-context > p:not(.pk-kicker),
.pk-forecast-layout--combined .pk-rain-stats{
  grid-column:auto !important;
  grid-row:auto !important;
}
.pk-forecast-layout--combined .pk-rain-context h2{margin:8px 0 0 !important}
.pk-forecast-layout--combined .pk-rain-context > p:not(.pk-kicker){
  margin:12px 0 18px !important;
  line-height:1.55 !important;
}
.pk-forecast-layout--combined .pk-rain-stats{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:9px !important;
  margin-top:auto !important;
}

@media(max-width:1120px){
  .pk-rainviewer-section.pk-lazy-section{
    grid-template-columns:minmax(0,2fr) minmax(290px,1fr) !important;
  }
  .pk-forecast-layout--combined{
    grid-template-columns:1fr !important;
  }
  .pk-forecast-layout--combined .pk-rain-context{
    display:grid !important;
    grid-template-columns:minmax(180px,.8fr) minmax(250px,1.6fr) auto !important;
    align-items:center !important;
    gap:18px !important;
  }
  .pk-forecast-layout--combined .pk-rain-context > p:not(.pk-kicker){margin:0 !important}
  .pk-forecast-layout--combined .pk-rain-stats{
    grid-template-columns:repeat(3,minmax(80px,1fr)) !important;
    margin-top:0 !important;
  }
}
@media(max-width:900px){
  .pk-rainviewer-section.pk-lazy-section{
    grid-template-columns:1fr !important;
  }
  .pk-rainviewer-section .pk-rainviewer-card,
  .pk-rainviewer-section .pk-rainviewer-shell,
  .pk-rainviewer-section .pk-rainviewer-map,
  .pk-rainviewer-section #rainviewer-map{
    min-height:380px !important;
    height:380px !important;
  }
  .pk-rainviewer-section .pk-rain-nowcast-card{min-height:0 !important}
  .pk-forecast-card--combined .pk-hourly-strip{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  }
}
@media(max-width:680px){
  .pk-forecast-card--combined{padding:19px 14px !important}
  .pk-forecast-card--combined .pk-hourly-strip{
    display:flex !important;
    overflow-x:auto !important;
    gap:8px !important;
    padding-bottom:8px !important;
    scrollbar-width:thin;
  }
  .pk-forecast-card--combined .pk-hour-card{
    display:flex !important;
    flex:0 0 112px !important;
  }
  .pk-forecast-card--combined .pk-hour-card:nth-child(n+9){display:flex !important}
  .pk-forecast-card--combined .pk-forecast-strip{
    display:flex !important;
    overflow-x:auto !important;
    padding-bottom:8px !important;
  }
  .pk-forecast-card--combined .forecast-day{flex:0 0 150px !important}
  .pk-forecast-layout--combined .pk-rain-context{display:block !important}
  .pk-forecast-layout--combined .pk-rain-context > p:not(.pk-kicker){margin:10px 0 16px !important}
  .pk-forecast-layout--combined .pk-rain-stats{grid-template-columns:repeat(3,minmax(0,1fr)) !important}
}

/* Dzień w liczbach ------------------------------------------------------- */
.pk-day-summary-head{align-items:end}
.pk-day-summary-head .pk-kicker{margin:0 0 7px}
.pk-day-summary{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:18px}
.pk-day-summary__temperature{grid-row:span 2;position:relative;overflow:hidden;min-height:420px;padding:32px;background:radial-gradient(circle at 18% 5%,rgba(251,113,133,.2),transparent 34%),radial-gradient(circle at 88% 92%,rgba(56,189,248,.17),transparent 35%),linear-gradient(145deg,rgba(26,35,59,.94),rgba(7,18,35,.9))}
.pk-day-summary__temperature:before{content:"";position:absolute;inset:auto -70px -100px auto;width:280px;height:280px;border-radius:50%;background:rgba(59,130,246,.1);filter:blur(20px)}
.pk-day-summary__eyebrow{position:relative;z-index:1;display:flex;align-items:center;gap:10px;color:#dbeafe;font-size:13px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.pk-day-summary__temperature-main{position:relative;z-index:1;display:grid;grid-template-columns:1.25fr .75fr;gap:22px;align-items:end;margin-top:36px}
.pk-day-summary__temperature-main>div{min-width:0}
.pk-day-summary__label{display:block;color:var(--muted);font-size:13px;font-weight:800}
.pk-day-summary__temperature-main strong{display:block;margin:7px 0 3px;font-size:clamp(42px,5vw,72px);line-height:.95;letter-spacing:-.07em}
.pk-day-summary__temperature-min strong{font-size:clamp(30px,3vw,44px);color:#dbeafe}
.pk-day-summary__temperature-main small{color:var(--muted-2);font-weight:700}
.pk-day-summary__amplitude{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:30px;padding:15px 17px;border:1px solid rgba(255,255,255,.09);border-radius:18px;background:rgba(3,10,22,.34)}
.pk-day-summary__amplitude span{color:var(--muted);font-weight:800}
.pk-day-summary__amplitude strong{font-size:22px}
.pk-day-summary__comment{position:relative;z-index:1;max-width:600px;margin:22px 0 0;color:#d9e7f8;font-size:16px;line-height:1.6}
.pk-day-summary__thermometer{position:absolute;left:32px;right:32px;bottom:30px;height:7px;border-radius:999px;background:linear-gradient(90deg,#38bdf8,#60a5fa 28%,#facc15 62%,#fb7185);box-shadow:0 0 25px rgba(56,189,248,.18);overflow:hidden}
.pk-day-summary__thermometer span{display:block;height:100%;width:65%;border-radius:inherit;background:rgba(255,255,255,.7);mix-blend-mode:overlay;transition:width .45s ease}
.pk-day-summary__metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.pk-day-metric{position:relative;min-height:200px;padding:24px;overflow:hidden;background:linear-gradient(145deg,rgba(22,32,53,.9),rgba(8,18,34,.9))}
.pk-day-metric:after{content:"";position:absolute;right:-35px;bottom:-55px;width:130px;height:130px;border-radius:50%;background:var(--metric-glow,rgba(59,130,246,.18));filter:blur(5px)}
.pk-day-metric--rain{--metric-glow:rgba(56,189,248,.22)}.pk-day-metric--wind{--metric-glow:rgba(167,139,250,.2)}.pk-day-metric--pressure{--metric-glow:rgba(34,197,94,.16)}.pk-day-metric--sun{--metric-glow:rgba(250,204,21,.19)}
.pk-day-metric__icon{position:absolute;right:18px;top:17px;font-size:24px;filter:drop-shadow(0 8px 16px rgba(0,0,0,.25))}
.pk-day-metric>div:nth-child(2){position:relative;z-index:1}
.pk-day-metric span{display:block;color:var(--muted);font-size:12px;font-weight:800}
.pk-day-metric strong{display:block;margin:9px 0 3px;font-size:clamp(25px,2.5vw,37px);letter-spacing:-.045em}
.pk-day-metric small{color:var(--muted-2);font-weight:700}
.pk-day-metric p{position:relative;z-index:1;margin:22px 0 0;padding-top:14px;border-top:1px solid rgba(255,255,255,.08);color:var(--muted);font-size:13px;line-height:1.5}
.pk-day-metric p b{color:#f8fbff}.pk-day-metric p span{display:inline;font-size:inherit}
.pk-day-summary__classification{grid-column:1/-1;padding:28px 30px;background:linear-gradient(135deg,rgba(15,32,56,.92),rgba(7,18,34,.92))}
.pk-day-summary__classification-head{display:flex;align-items:end;justify-content:space-between;gap:20px;padding-bottom:22px;border-bottom:1px solid rgba(255,255,255,.08)}
.pk-day-summary__classification-head .pk-kicker{margin:0 0 7px}.pk-day-summary__classification-head h3{margin:0;font-size:26px;letter-spacing:-.04em}
.pk-day-summary__month{color:var(--muted);font-size:13px}.pk-day-summary__month b{color:#fff}
.pk-day-summary__classification-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:20px}
.pk-day-classification-item{display:grid;grid-template-columns:auto 1fr;gap:15px;align-items:start;padding:20px;border-radius:20px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.045)}
.pk-day-classification-item__icon{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:rgba(255,255,255,.07);font-size:20px}
.pk-day-classification-item small{display:block;color:var(--muted);font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.pk-day-classification-item .pk-class-pill{display:inline-flex;margin:8px 0 6px;padding:7px 11px;font-size:13px}
.pk-day-classification-item p{margin:0;color:var(--muted-2);font-size:12px;line-height:1.45}
@media(max-width:980px){.pk-day-summary{grid-template-columns:1fr}.pk-day-summary__temperature{grid-row:auto;min-height:390px}.pk-day-summary__classification{grid-column:auto}}
@media(max-width:700px){.pk-day-summary-head>p{display:none}.pk-day-summary__temperature{min-height:410px;padding:24px}.pk-day-summary__temperature-main{grid-template-columns:1fr 1fr;gap:14px}.pk-day-summary__temperature-main strong{font-size:46px}.pk-day-summary__temperature-min strong{font-size:34px}.pk-day-summary__thermometer{left:24px;right:24px;bottom:24px}.pk-day-summary__metrics{grid-template-columns:1fr}.pk-day-metric{min-height:165px}.pk-day-summary__classification{padding:24px 20px}.pk-day-summary__classification-head{align-items:flex-start;flex-direction:column}.pk-day-summary__classification-grid{grid-template-columns:1fr}}

/* Klasyfikacja wyłącznie dla bieżącego dnia */
.pk-day-summary__today-classification{grid-column:1/-1;padding:28px 30px;background:linear-gradient(135deg,rgba(20,39,65,.94),rgba(8,20,39,.94));border-color:rgba(96,165,250,.18)}
.pk-day-summary__today-classification .pk-day-summary__classification-head{border-bottom-color:rgba(147,197,253,.12)}
.pk-day-summary__today-classification .pk-day-classification-item{background:rgba(3,12,25,.34)}
.pk-day-summary__today-classification .pk-class-pill{display:inline-flex;align-items:center;min-height:30px;padding:6px 11px;border-radius:999px;background:rgba(148,163,184,.14);color:#e5edf8}
@media(max-width:980px){.pk-day-summary__today-classification{grid-column:auto}}
@media(max-width:700px){.pk-day-summary__today-classification{padding:24px 20px}}

/* Dzienny kontekst klimatyczny */
.pk-day-summary__today-classification .pk-class-pill{max-width:100%;white-space:normal;line-height:1.2;text-align:center}
.pk-day-summary__today-classification .pk-day-classification-item p{line-height:1.5}

/* Dzień na tle klimatu v2 */
.pk-climate-today{overflow:hidden}
.pk-climate-today__layout{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:16px;margin-top:20px}
.pk-climate-today__cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.pk-climate-card{position:relative;min-width:0;padding:20px;border:1px solid rgba(148,163,184,.13);border-radius:22px;background:linear-gradient(145deg,rgba(8,24,45,.82),rgba(4,15,31,.76));color:inherit;text-align:left;box-shadow:inset 0 1px 0 rgba(255,255,255,.04);overflow:hidden}
button.pk-climate-card{appearance:none;font:inherit;cursor:pointer}
.pk-climate-card:before{content:"";position:absolute;width:120px;height:120px;right:-55px;top:-60px;border-radius:50%;background:var(--climate-glow,rgba(96,165,250,.14));filter:blur(12px)}
.pk-climate-card--temperature{--climate-glow:rgba(96,165,250,.22)}.pk-climate-card--rain{--climate-glow:rgba(56,189,248,.2)}.pk-climate-card--sun{--climate-glow:rgba(250,204,21,.17)}
.pk-climate-card__icon{position:relative;z-index:1;display:grid;place-items:center;width:42px;height:42px;margin-bottom:14px;border-radius:14px;background:rgba(255,255,255,.06);font-size:20px}
.pk-climate-card__body{position:relative;z-index:1;display:block}
.pk-climate-card__body>small{display:block;color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.pk-climate-card .pk-class-pill{display:inline-flex;margin:8px 0 9px;max-width:100%;padding:7px 11px;border-radius:999px;font-size:12px;font-weight:900;line-height:1.2;text-align:center;text-transform:uppercase}
.pk-climate-card__numbers{display:block;min-height:34px;color:rgba(220,232,246,.72);font-size:11px;line-height:1.5}
.pk-anomaly-scale{display:block;margin-top:18px}.pk-anomaly-scale__labels{display:flex;justify-content:space-between;margin-bottom:7px}.pk-anomaly-scale__labels i{color:rgba(203,213,225,.54);font-size:9px;font-style:normal;font-weight:800}.pk-anomaly-scale__track{position:relative;display:block;height:8px;border-radius:999px;background:linear-gradient(90deg,#174b9a,#60a5fa 28%,#f8fafc 50%,#fb923c 72%,#b91c1c);box-shadow:inset 0 1px 3px rgba(2,6,23,.48)}.pk-anomaly-scale__track i{position:absolute;top:50%;left:50%;width:16px;height:16px;border:3px solid #fff;border-radius:50%;background:#0f172a;box-shadow:0 4px 14px rgba(0,0,0,.45);transform:translate(-50%,-50%);transition:left .45s ease}.pk-anomaly-scale>b{display:block;margin-top:8px;color:#f8fafc;font-size:14px}
.pk-climate-progress{display:block;height:8px;margin-top:18px;overflow:hidden;border-radius:999px;background:rgba(148,163,184,.16)}.pk-climate-progress i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#38bdf8,#2563eb);transition:width .45s ease}.pk-climate-card--sun .pk-climate-progress i{background:linear-gradient(90deg,#fde047,#f59e0b)}.pk-climate-progress__label{display:block;margin-top:8px;color:#f8fafc;font-size:13px}
.pk-climate-card__expand{position:relative;z-index:1;display:flex;justify-content:space-between;margin-top:16px;padding-top:12px;border-top:1px solid rgba(255,255,255,.07);color:#93c5fd;font-size:11px;font-weight:800}.pk-climate-card__expand i{font-style:normal;transition:transform .25s ease}button.pk-climate-card[aria-expanded="true"] .pk-climate-card__expand i{transform:rotate(180deg)}
.pk-climate-context{padding:22px;border:1px solid rgba(96,165,250,.16);border-radius:22px;background:radial-gradient(circle at 100% 0,rgba(59,130,246,.18),transparent 44%),rgba(3,13,29,.6)}.pk-climate-context>small{color:#93c5fd;font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.pk-climate-context h4{margin:8px 0 18px;font-size:17px}.pk-climate-context__rank{display:flex;align-items:end;gap:8px;padding-bottom:17px;border-bottom:1px solid rgba(255,255,255,.08)}.pk-climate-context__rank strong{font-size:38px;line-height:.9;letter-spacing:-.06em}.pk-climate-context__rank span{max-width:95px;color:var(--muted);font-size:11px;line-height:1.25}.pk-climate-context__counts{display:grid;gap:9px;margin-top:16px}.pk-climate-context__counts span{display:flex;align-items:center;gap:8px;color:rgba(220,232,246,.7);font-size:11px}.pk-climate-context__counts i{width:8px;height:8px;border-radius:50%}.pk-climate-context__counts .is-cold{background:#60a5fa}.pk-climate-context__counts .is-similar{background:#f8fafc}.pk-climate-context__counts .is-warm{background:#fb7185}.pk-climate-context__counts b{color:#fff}.pk-climate-context>p{margin:16px 0 0;padding-top:14px;border-top:1px solid rgba(255,255,255,.08);color:#dbeafe;font-size:11px;line-height:1.5}
.pk-climate-history{margin-top:16px;padding:20px;border:1px solid rgba(96,165,250,.14);border-radius:22px;background:rgba(3,13,29,.42)}.pk-climate-history__head{display:flex;justify-content:space-between;gap:15px;margin-bottom:16px}.pk-climate-history__head strong{font-size:14px}.pk-climate-history__head span{color:var(--muted);font-size:11px}.pk-climate-history__chart{display:grid;grid-template-columns:repeat(auto-fit,minmax(46px,1fr));gap:9px;align-items:end;min-height:155px}.pk-climate-history__bar{display:flex;flex-direction:column;justify-content:end;align-items:center;gap:6px;height:155px}.pk-climate-history__bar b{font-size:10px}.pk-climate-history__bar i{display:block;width:min(28px,75%);min-height:6px;border-radius:8px 8px 3px 3px;background:linear-gradient(180deg,#60a5fa,#1d4ed8);box-shadow:0 8px 18px rgba(37,99,235,.2)}.pk-climate-history__bar.is-current i{background:linear-gradient(180deg,#fb7185,#e11d48);box-shadow:0 8px 18px rgba(225,29,72,.25)}.pk-climate-history__bar span{color:var(--muted);font-size:9px;font-weight:800}
.pk-climate-chronicle{display:grid;grid-template-columns:auto 1fr;gap:14px;margin-top:16px;padding:19px 20px;border:1px solid rgba(167,139,250,.16);border-radius:22px;background:linear-gradient(135deg,rgba(76,29,149,.12),rgba(3,13,29,.42))}.pk-climate-chronicle__icon{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:rgba(167,139,250,.1);font-size:20px}.pk-climate-chronicle small{display:block;color:#c4b5fd;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.pk-climate-chronicle__content{min-width:0}.pk-climate-chronicle strong{display:block;margin-top:6px;color:#f5f3ff;font-size:14px;line-height:1.5}.pk-climate-chronicle p{margin:7px 0 0;color:#dbeafe;font-size:12px;line-height:1.65}
@media(max-width:1100px){.pk-climate-today__layout{grid-template-columns:1fr}.pk-climate-context{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px 22px}.pk-climate-context h4{margin:6px 0}.pk-climate-context__rank{grid-row:1/3;grid-column:2;padding:0 0 0 20px;border:0;border-left:1px solid rgba(255,255,255,.08)}.pk-climate-context__counts{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}.pk-climate-context>p{grid-column:1/-1}}
@media(max-width:820px){.pk-climate-today__cards{grid-template-columns:1fr}.pk-climate-card__numbers{min-height:0}.pk-climate-context{display:block}.pk-climate-context__rank{display:flex;margin-top:14px;padding:0 0 16px;border-left:0;border-bottom:1px solid rgba(255,255,255,.08)}.pk-climate-context__counts{grid-template-columns:1fr}.pk-climate-history__chart{overflow-x:auto;grid-template-columns:repeat(10,minmax(42px,1fr))}}

.pk-day-capsule__item:last-child{grid-column:auto}.pk-day-capsule__badge{margin-top:.65rem}}

/* Dashboard 2.0 — bieżący miesiąc w stylistyce analizy dobowej */
.pk-month-climate{overflow:hidden}
.pk-month-climate__badge{display:inline-flex;align-items:center;gap:5px;padding:9px 13px;border:1px solid rgba(96,165,250,.18);border-radius:999px;background:rgba(30,64,175,.13);color:#bfdbfe;font-size:12px;font-weight:800;white-space:nowrap}
.pk-month-climate__badge b{color:#fff;text-transform:capitalize}
.pk-month-climate__cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:20px}
.pk-month-climate__card{min-height:220px;animation:pkMonthCardIn .42s ease both}
.pk-month-climate__card:nth-child(2){animation-delay:.05s}.pk-month-climate__card:nth-child(3){animation-delay:.1s}
.pk-month-climate__card .pk-climate-card__numbers{min-height:36px}
.pk-month-climate__card .pk-anomaly-scale,.pk-month-climate__card .pk-climate-progress{margin-top:20px}
@keyframes pkMonthCardIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.pk-month-climate__card{animation:none}.pk-anomaly-scale__track i,.pk-climate-progress i{transition:none}}
@media(max-width:820px){.pk-month-climate__cards{grid-template-columns:1fr}.pk-month-climate__card{min-height:0}.pk-month-climate__badge{align-self:flex-start}}

/* Dashboard 2.0 – płynne animacje skal i pasków */
.pk-climate-progress i{will-change:width;transition:width .85s cubic-bezier(.22,1,.36,1)!important}
.pk-anomaly-scale__track i{will-change:left;transition:left .85s cubic-bezier(.22,1,.36,1)!important}

/* Meteocons Fill — animowane SVG dla bieżących warunków i prognoz. */
.pk-meteocon{
  display:block;
  object-fit:contain;
  transform-origin:center;
  filter:drop-shadow(0 10px 22px rgba(0,0,0,.18));
  animation:pkMeteoconEnter .55s cubic-bezier(.2,.8,.2,1) both;
}
.pk-meteocon--hourly{
  transition:transform .24s ease,filter .24s ease;
}
.pk-hour-card:hover .pk-meteocon--hourly{
  transform:translateY(-3px) scale(1.08);
  filter:drop-shadow(0 14px 25px rgba(0,0,0,.24));
}
.pk-meteocon--daily{
  transition:transform .24s ease,filter .24s ease;
}
.forecast-day:hover .pk-meteocon--daily{
  transform:translateY(-3px) scale(1.07);
  filter:drop-shadow(0 14px 25px rgba(0,0,0,.24));
}
@keyframes pkMeteoconEnter{
  from{opacity:0;transform:translateY(8px) scale(.9)}
  to{opacity:1;transform:translateY(0) scale(1)}
}
@media (prefers-reduced-motion:reduce){
  .pk-meteocon{animation:none!important;transition:none!important}
}

/* Forecast 2.1 — lokalne Meteocons, pełna szerokość i większa czytelność */
.pk-forecast-layout--combined{
  display:block!important;
  grid-template-columns:1fr!important;
}
.pk-forecast-card--combined{
  width:100%!important;
  max-width:none!important;
}
.pk-forecast-layout--combined .pk-rain-context{
  display:none!important;
}
.pk-forecast-card--combined .pk-hour-card img,
.pk-meteocon--hourly{
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
}
.pk-forecast-card--combined .pk-hour-card{
  min-height:150px!important;
  padding:14px 10px!important;
  gap:4px!important;
}
.pk-forecast-card--combined .pk-hour-card strong{
  font-size:24px!important;
  line-height:1!important;
}
.pk-forecast-card--combined .pk-hour-card span,
.pk-forecast-card--combined .pk-hour-card small{
  font-size:11px!important;
  line-height:1.35!important;
}
.forecast-day .pk-meteocon--daily,
.pk-meteocon--daily{
  width:62px!important;
  height:62px!important;
  min-width:62px!important;
  margin:4px 0 2px!important;
}
.forecast-day{
  min-height:176px!important;
  padding:14px 16px!important;
}
.forecast-day .temperature-values{
  font-size:23px!important;
  font-weight:850!important;
}
.pk-scene-icon .pk-meteocon,
#main-weather-icon{
  width:86px!important;
  height:86px!important;
}
.pk-hero-main-icon.pk-meteocon,
#weatherIcon{
  width:104px!important;
  height:104px!important;
}
@media(max-width:820px){
  .pk-forecast-card--combined .pk-hour-card img,
  .pk-meteocon--hourly{width:44px!important;height:44px!important;min-width:44px!important}
  .forecast-day .pk-meteocon--daily,
  .pk-meteocon--daily{width:56px!important;height:56px!important;min-width:56px!important}
  .pk-scene-icon .pk-meteocon,#main-weather-icon{width:72px!important;height:72px!important}
  .pk-hero-main-icon.pk-meteocon,#weatherIcon{width:88px!important;height:88px!important}
}


/* ===== Radar: autorska paleta zielony → czerwony → fiolet ===== */
.pk-radar-palette {
  position: absolute;
  z-index: 760;
  right: 16px;
  bottom: 18px;
  width: min(330px, calc(100% - 32px));
  padding: 10px 12px 9px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 14px;
  background: rgba(5, 15, 34, .76);
  box-shadow: 0 12px 30px rgba(0,0,0,.24);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  pointer-events: none;
}
.pk-radar-palette__title {
  display: block;
  margin-bottom: 6px;
  color: rgba(255,255,255,.82);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.pk-radar-palette__bar {
  display: block;
  height: 10px;
  border-radius: 999px;
  background: linear-gradient(90deg, #22c55e 0%, #84cc16 20%, #facc15 40%, #f97316 58%, #ef4444 73%, #db2777 87%, #7e22ce 100%);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.16), 0 3px 12px rgba(0,0,0,.2);
}
.pk-radar-palette__labels {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  margin-top: 5px;
  color: rgba(224,231,255,.68);
  font-size: 9px;
  font-weight: 700;
}
.pk-rainviewer-recolored-tile { image-rendering: auto; }
@media (max-width: 680px) {
  .pk-radar-palette { right: 10px; bottom: 62px; width: min(270px, calc(100% - 20px)); padding: 8px 10px; }
  .pk-radar-palette__labels small:nth-child(2) { display: none; }
}


/* Forecast 3.0 — czytelny, premium panel godzinowy i 5-dniowy */
.pk-forecast-card--combined{
  padding:28px!important;
  border:1px solid rgba(148,163,184,.20)!important;
  background:
    radial-gradient(circle at 9% 0%,rgba(59,130,246,.13),transparent 34%),
    radial-gradient(circle at 90% 105%,rgba(124,58,237,.10),transparent 36%),
    linear-gradient(145deg,rgba(24,38,64,.93),rgba(9,20,39,.94))!important;
  box-shadow:0 28px 80px rgba(2,6,23,.38),inset 0 1px 0 rgba(255,255,255,.05)!important;
}
.pk-forecast-block__head h2{font-size:clamp(25px,2vw,34px)!important;letter-spacing:-.045em}
.pk-forecast-divider{margin:28px 0!important;background:linear-gradient(90deg,transparent,rgba(148,163,184,.28),transparent)!important}
.pk-forecast-card--combined .pk-hourly-strip{
  display:grid!important;
  grid-template-columns:repeat(8,minmax(0,1fr))!important;
  gap:12px!important;
  overflow:visible!important;
}
.pk-forecast-card--combined .pk-hour-card{
  position:relative;
  min-width:0!important;
  min-height:214px!important;
  padding:16px 12px 14px!important;
  border:1px solid rgba(148,163,184,.20)!important;
  border-radius:22px!important;
  background:linear-gradient(160deg,rgba(255,255,255,.095),rgba(255,255,255,.025))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 12px 28px rgba(2,6,23,.16)!important;
  gap:7px!important;
  overflow:hidden;
}
.pk-forecast-card--combined .pk-hour-card:first-child{
  border-color:rgba(96,165,250,.48)!important;
  background:linear-gradient(160deg,rgba(59,130,246,.20),rgba(255,255,255,.035))!important;
  box-shadow:0 16px 38px rgba(37,99,235,.16),inset 0 1px 0 rgba(255,255,255,.08)!important;
}
.pk-forecast-card--combined .pk-hour-card:first-child:after{
  content:'TERAZ';position:absolute;top:10px;right:10px;padding:3px 6px;border-radius:999px;
  background:rgba(59,130,246,.24);color:#bfdbfe;font-size:8px;font-weight:900;letter-spacing:.12em
}
.pk-hour-card__top{display:flex;flex-direction:column;align-items:center;gap:4px;min-height:34px}
.pk-hour-card__top time{font-size:12px!important;color:#e2e8f0!important;font-weight:900!important;letter-spacing:.08em}
.pk-hour-card__top>span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#94a3b8!important;font-size:9px!important;font-weight:700}
.pk-forecast-card--combined .pk-hour-card .pk-meteocon--hourly{
  width:64px!important;height:64px!important;min-width:64px!important;margin:0 auto!important
}
.pk-hour-card__temp{font-size:30px!important;letter-spacing:-.055em!important;color:#fff!important}
.pk-hour-card__meta{display:grid;grid-template-columns:1fr;gap:3px;width:100%;margin-top:3px;padding-top:8px;border-top:1px solid rgba(148,163,184,.13)}
.pk-hour-card__meta span{display:flex!important;justify-content:space-between;gap:5px;color:#dbeafe!important;font-size:9.5px!important;font-weight:800!important}
.pk-hour-card__meta b{color:#718096;font-size:8px;letter-spacing:.08em;text-transform:uppercase}
.pk-forecast-card--combined .pk-forecast-strip{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:14px!important}
.pk-forecast-card--combined .forecast-day{
  min-height:230px!important;padding:18px!important;border-radius:24px!important;
  border:1px solid rgba(148,163,184,.20)!important;
  background:linear-gradient(160deg,rgba(255,255,255,.09),rgba(255,255,255,.02))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 12px 30px rgba(2,6,23,.15)!important
}
.forecast-day__head{display:flex;justify-content:space-between;align-items:center;gap:10px}
.forecast-day__head .day-name{font-size:16px!important;color:#f8fafc!important}
.forecast-day__head>span{padding:5px 8px;border-radius:999px;background:rgba(56,189,248,.10);color:#bae6fd;font-size:9px;font-weight:900;white-space:nowrap}
.forecast-day__visual{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:13px 0 8px}
.forecast-day .pk-meteocon--daily{width:86px!important;height:86px!important;min-width:86px!important;margin:0!important}
.forecast-day__temps{display:flex;flex-direction:column;align-items:flex-end;line-height:.95}
.forecast-day__temps strong{font-size:38px;letter-spacing:-.07em}
.forecast-day__temps span{margin-top:8px;font-size:21px;font-weight:900}
.pk-forecast-card--combined .forecast-day .temperature-bar-container{height:9px!important;margin:16px 0 6px!important;background:rgba(148,163,184,.15)!important}
.forecast-day__legend{display:flex;justify-content:space-between;color:#64748b;font-size:8px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
@media(max-width:1250px){
  .pk-forecast-card--combined .pk-hourly-strip{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .pk-forecast-card--combined .pk-forecast-strip{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:820px){
  .pk-forecast-card--combined{padding:19px 14px!important}
  .pk-forecast-card--combined .pk-hourly-strip{display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory;padding-bottom:5px}
  .pk-forecast-card--combined .pk-hour-card{flex:0 0 164px!important;scroll-snap-align:start;min-height:206px!important}
  .pk-forecast-card--combined .pk-forecast-strip{display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory;padding-bottom:5px}
  .pk-forecast-card--combined .forecast-day{flex:0 0 245px!important;scroll-snap-align:start}
}

/* Cloud AI — aktualny procent zachmurzenia */
.pk-cloud-cover-badge{display:inline-flex;align-items:center;gap:7px;width:max-content;margin:10px 0 7px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);box-shadow:0 8px 24px rgba(13,34,62,.12);font-size:14px;line-height:1;color:inherit;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.pk-cloud-cover-badge[hidden]{display:none!important}
.pk-cloud-cover-badge strong{font-size:16px;font-weight:900}
.pk-cloud-cover-badge__icon{font-size:16px}
@media(max-width:640px){.pk-cloud-cover-badge{margin-top:8px;padding:7px 10px;font-size:13px}.pk-cloud-cover-badge strong{font-size:15px}}
