* { box-sizing: border-box; }

:root {
  --bg: #07100c;
  --panel: rgba(255,255,255,0.065);
  --panel2: rgba(255,255,255,0.04);
  --line: rgba(255,255,255,0.10);
  --green: #00c853;
  --green2: #00a846;
  --text: #f5f5f5;
  --muted: #b8b8b8;
}

body {
  margin: 0;
  min-height: 100vh;
  color: var(--text);
  font-family: Arial, sans-serif;
  background:
    radial-gradient(circle at top left, rgba(0, 200, 83, 0.18), transparent 30%),
    radial-gradient(circle at bottom right, rgba(0, 150, 136, 0.10), transparent 28%),
    #080d0b;
}

.app-shell {
  width: min(1600px, 100%);
  margin: 0 auto;
  padding: 16px;
}

.top {
  display: grid;
  grid-template-columns: 1fr minmax(520px, 0.95fr);
  gap: 18px;
  align-items: stretch;
  margin-bottom: 14px;
}

.brand,
.condition-panel,
.chart-box,
.card,
.settings-card,
.table-wrap,
.footer {
  background: linear-gradient(145deg, rgba(255,255,255,0.075), rgba(255,255,255,0.035));
  border: 1px solid var(--line);
  box-shadow: 0 15px 35px rgba(0,0,0,0.28);
  backdrop-filter: blur(12px);
}

.brand {
  border-radius: 22px;
  padding: 24px;
  display: flex;
  gap: 20px;
  align-items: center;
}

.brand-icon {
  width: 96px;
  height: 96px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-size: 60px;
  color: #ffd54f;
  background: rgba(0,200,83,0.10);
  border: 2px solid rgba(0,200,83,0.35);
}

.brand h1 {
  margin: 0 0 10px;
  font-size: clamp(30px, 4vw, 44px);
}

.brand h1 span { color: var(--green); }
.brand p { margin: 5px 0; color: var(--muted); font-size: 18px; }
.brand b { color: var(--green); }

.condition-panel {
  border-radius: 22px;
  padding: 18px 24px;
  display: grid;
  grid-template-columns: 86px minmax(220px, 1fr) minmax(260px, 1.15fr);
  gap: 18px;
  align-items: center;
}

.condition-icon { font-size: 64px; text-align: center; }
.condition-main h2 { margin: 0 0 10px; font-size: clamp(22px, 2.4vw, 30px); }
.condition-main b { font-size: 22px; display: block; }
.condition-main span, .condition-item span { display: block; color: var(--muted); margin-top: 6px; }
.condition-item { border-left: 1px solid var(--line); padding-left: 16px; font-size: 20px; }
.condition-item b { display: block; font-size: 20px; }

.alarm {
  padding: 10px 16px;
  border-radius: 12px;
  margin-bottom: 14px;
  font-weight: bold;
  text-align: center;
}

.alarm.ok { color: var(--green); background: rgba(0,200,83,0.08); border: 1px solid var(--green); }
.alarm.active { color: #ffd180; background: #4a2600; border: 2px solid #ff9800; animation: blink .8s infinite; }
@keyframes blink { 0%,100% { opacity:1; } 50% { opacity:.55; } }

.toolbar {
  display: grid;
  grid-template-columns: repeat(7, minmax(130px, 1fr));
  gap: 10px;
  margin-bottom: 22px;
}

.toolbar.small {
  display: flex;
  flex-wrap: wrap;
}

button {
  padding: 14px 16px;
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 12px;
  background: rgba(255,255,255,0.055);
  color: white;
  font-weight: bold;
  cursor: pointer;
  font-size: 15px;
}

button:hover {
  background: var(--green2);
}

button.danger {
  color: #ff6b6b;
  background: rgba(120, 30, 30, 0.2);
  border-color: rgba(255, 80, 80, 0.35);
}

.page { display: none; }
.page.active { display: block; }

.cards {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 14px;
  margin-bottom: 18px;
}

.card {
  border-radius: 14px;
  padding: 20px;
  border-left: 4px solid var(--green);
  min-height: 160px;
}

.card span { color: #ddd; font-size: 18px; }
.card strong { display: block; margin-top: 18px; font-size: 30px; }
.card small { display: block; margin-top: 14px; color: var(--muted); font-size: 16px; }
.red { border-left-color: #ff4b4b; }
.blue { border-left-color: #1e88e5; }
.green { border-left-color: #73d64b; }
.cyan { border-left-color: #00bcd4; }
.yellow { border-left-color: #ffc107; }
.violet { border-left-color: #8e57ff; }

.dashboard-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.chart-box {
  border-radius: 18px;
  padding: 22px;
  min-height: 460px;
}

.chart-box.wide {
  height: 620px;
}

.chart-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 16px;
}

.chart-head h2 { margin: 0; color: #ff4b4b; }
.chart-box:first-child .chart-head h2 { color: #2196f3; }

select {
  background: rgba(255,255,255,0.06);
  color: white;
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 10px 14px;
}

canvas {
  width: 100% !important;
  height: 280px !important;
}

.stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-top: 16px;
}

.stats div {
  background: rgba(255,255,255,0.035);
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 14px;
}

.stats span { display: block; color: var(--muted); margin-bottom: 8px; }
.stats b { font-size: 22px; }

.footer {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  border-radius: 14px;
  padding: 18px 22px;
  margin-top: 16px;
  color: #ddd;
}

.footer b { color: var(--green); }

.settings-card, .table-wrap {
  border-radius: 18px;
  padding: 22px;
  max-width: 980px;
}

label { display: block; color: #bbb; margin-top: 14px; }
label.check { display: flex; align-items: center; gap: 10px; }
label.check input { width: auto; margin: 0; }

input {
  width: 100%;
  padding: 12px;
  border-radius: 10px;
  border: 1px solid #444;
  background: #101614;
  color: white;
  font-size: 15px;
  margin-top: 5px;
}

.actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 18px; }
.status { margin-top: 14px; color: #aaa; }

table { width: 100%; border-collapse: collapse; }
th, td { padding: 10px; border-bottom: 1px solid var(--line); text-align: left; }
th { color: var(--green); }

@media (max-width: 1200px) {
  .top { grid-template-columns: 1fr; }
  .cards { grid-template-columns: repeat(3, 1fr); }
  .dashboard-grid { grid-template-columns: 1fr; }
  .toolbar { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 760px) {
  .app-shell { padding: 10px; }
  .condition-panel { grid-template-columns: 1fr; text-align: center; }
  .condition-item { border-left: none; border-top: 1px solid var(--line); padding: 12px 0 0; }
  .cards { grid-template-columns: 1fr; }
  .toolbar { grid-template-columns: 1fr; }
  .footer { flex-direction: column; text-align: center; }
}

#historyControls {
  margin: 12px 0 16px 0;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items: center;
}
#historyPageInfo {
  padding: 10px 14px;
  background: rgba(255,255,255,0.06);
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,0.08);
}


/* Greenlee Meteo v1.8.1 dashboard */
.weather-summary {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 16px;
  margin: 18px 0;
}

.weather-status-card,
.quick-metrics,
.stat-panel {
  background: linear-gradient(145deg, rgba(255,255,255,0.085), rgba(255,255,255,0.035));
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: 18px;
  box-shadow: 0 15px 35px rgba(0,0,0,0.24);
}

.weather-status-card {
  display: flex;
  align-items: center;
  gap: 22px;
  padding: 24px;
}

.summary-icon {
  font-size: 74px;
  line-height: 1;
}

.summary-condition {
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 800;
}

.summary-temp {
  margin-top: 6px;
  color: #00c853;
  font-size: clamp(34px, 5vw, 58px);
  font-weight: 900;
}

.summary-time {
  margin-top: 10px;
  color: #aaa;
  font-size: 15px;
}

.quick-metrics {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  overflow: hidden;
}

.quick-metrics div {
  padding: 22px 16px;
  border-left: 1px solid rgba(255,255,255,0.08);
}

.quick-metrics div:first-child {
  border-left: 0;
}

.quick-metrics span {
  color: #aaa;
  display: block;
  margin-bottom: 10px;
}

.quick-metrics b {
  font-size: 24px;
}

.stat-panels {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin: 18px 0;
}

.stat-panel {
  padding: 22px;
}

.stat-panel h2 {
  margin: 0 0 16px;
  color: #00c853;
}

.stat-row {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 14px 0;
  border-top: 1px solid rgba(255,255,255,0.08);
}

.stat-row span {
  color: #ccc;
}

.stat-row b {
  font-size: 22px;
}

@media (max-width: 950px) {
  .weather-summary,
  .stat-panels {
    grid-template-columns: 1fr;
  }
  .quick-metrics {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 520px) {
  .quick-metrics {
    grid-template-columns: 1fr;
  }
  .weather-status-card {
    flex-direction: column;
    text-align: center;
  }
}


/* Greenlee Meteo 2.0 SAFE cleanup
   Důležité: prvky zůstávají v HTML kvůli script.js, jen jsou vizuálně skryté. */

/* Schovat duplicitní velký blok s teplotou/vlhkostí/tlakem/větrem */
#weatherSummary {
  display: none !important;
}

/* Schovat grafy z hlavní stránky, protože jsou samostatně na stránce Grafy.
   Canvas prvky zůstávají v DOM, takže Chart.js se nerozbije. */
#dashboard .dashboard-grid {
  display: none !important;
}

/* Greenlee Meteo v2.26: kompaktní panel Dnes je... */
/* V horní kartě už nezobrazujeme znovu aktuální počasí.
   Levá část je "Dnes je..." a pravá zůstává Greenlee Intelligence. */
.condition-panel .condition-item:first-of-type {
  display: none !important;
}

.today-card {
  min-width: 0;
}

.today-nameday {
  display: flex;
  align-items: baseline;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 8px;
}

.today-nameday b {
  font-size: clamp(18px, 2vw, 24px);
  color: #fff;
}

.today-nameday span {
  color: var(--muted);
  font-size: 13px;
  margin-top: 0;
}

.today-fact {
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid rgba(255,255,255,.10);
}

.today-fact span {
  color: #ffd54f;
  font-weight: 800;
  font-size: 14px;
}

.today-fact p {
  margin: 4px 0 0;
  color: #cfd8dc;
  font-size: 14px;
  line-height: 1.28;
  max-width: 390px;
}

/* Trochu zvýraznit statistiky, které zůstávají na hlavní stránce */
.stat-panels {
  margin-top: 18px;
}

.footer {
  gap: 14px;
  flex-wrap: wrap;
}


/* Greenlee Meteo v2.0.1 slunce */
.violet small {
  line-height: 1.35;
}


/* Greenlee Meteo v2.0.2 astro */
.gm-astro {
  background: linear-gradient(145deg, rgba(255,255,255,.075), rgba(255,255,255,.035));
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 18px;
  box-shadow: 0 15px 35px rgba(0,0,0,.24);
  margin: 18px 0;
  padding: 24px;
}

.gm-astro h2 {
  margin: 0 0 18px;
  color: #00c853;
}

.gm-astro-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}

.gm-astro-grid div {
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 14px;
  padding: 18px;
}

.gm-astro-grid span {
  color: #aaa;
  display: block;
  margin-bottom: 8px;
}

.gm-astro-grid b {
  font-size: 22px;
}

@media(max-width:900px) {
  .gm-astro-grid { grid-template-columns: repeat(2, 1fr); }
}

@media(max-width:520px) {
  .gm-astro-grid { grid-template-columns: 1fr; }
}


/* Greenlee Meteo v2.0.3 astro meteo */
.gm-astro-wide .gm-astro-grid {
  grid-template-columns: repeat(5, 1fr);
}

@media(max-width:1100px) {
  .gm-astro-wide .gm-astro-grid { grid-template-columns: repeat(3, 1fr); }
}

@media(max-width:650px) {
  .gm-astro-wide .gm-astro-grid { grid-template-columns: 1fr; }
}


/* UV COLOR FIX */
#uvLevel {
  display: block;
  padding-top: 12px;
  margin-top: 12px;
  border-top: 1px solid rgba(255,255,255,0.28);
}


/* Greenlee Meteo v2.0.4 clickable cards */
.clickable-card {
  cursor: pointer;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
  position: relative;
}

.clickable-card::after {
  content: "📈";
  position: absolute;
  right: 14px;
  top: 12px;
  opacity: .45;
  font-size: 18px;
}

.clickable-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 38px rgba(0,0,0,.32);
  border-color: rgba(255,255,255,.22);
}

.clickable-card:active {
  transform: translateY(0);
}


/* Greenlee Meteo v2.0.5 trends */
.trend {
  font-weight: 900;
  margin-left: 6px;
  font-size: 0.85em;
}

.trend-up { color: #00e676; }
.trend-down { color: #ff5252; }
.trend-flat { color: #b0bec5; }


/* Greenlee Meteo v2.0.6 station status */
#onlineDot.online,
.station-age.online {
  color: #00e676;
}

#onlineDot.delay,
.station-age.delay {
  color: #ffd600;
}

#onlineDot.offline,
.station-age.offline {
  color: #ff5252;
}

.station-age {
  display: inline-block;
  margin-left: 8px;
  color: #aaa;
  font-size: 0.95em;
}

#onlineDot.online::first-letter {
  animation: stationPulse 1.4s infinite;
}

@keyframes stationPulse {
  0%, 100% { opacity: 0.55; }
  50% { opacity: 1; }
}


/* Greenlee Meteo v2.0.7 last hour */
.hour-summary {
  background: linear-gradient(145deg, rgba(255,255,255,.075), rgba(255,255,255,.035));
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 18px;
  box-shadow: 0 15px 35px rgba(0,0,0,.24);
  margin: 18px 0;
  padding: 24px;
}

.hour-summary h2 {
  margin: 0 0 18px;
  color: #00c853;
}

.hour-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 12px;
}

.hour-grid div {
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 14px;
  padding: 18px;
}

.hour-grid span {
  color: #aaa;
  display: block;
  margin-bottom: 8px;
}

.hour-grid b {
  font-size: 22px;
}

.hour-up {
  color: #00e676;
}

.hour-down {
  color: #ff5252;
}

.hour-flat {
  color: #b0bec5;
}

@media(max-width:1100px) {
  .hour-grid { grid-template-columns: repeat(3, 1fr); }
}

@media(max-width:650px) {
  .hour-grid { grid-template-columns: 1fr; }
}


/* Greenlee Meteo v2.0.9 hour fix */
.hour-arrow {
  color: #fff !important;
  font-weight: 700;
  display: inline-block;
  min-width: 1.3em;
}

.hour-up, .hour-down, .hour-flat {
  color: inherit !important;
}


/* Greenlee Meteo v2.1.1 intelligence */
.meteo-intelligence {
  margin-top: 8px;
  color: #cfd8dc;
  font-size: 0.95rem;
  line-height: 1.35;
  max-width: 420px;
}

#condition + .meteo-intelligence {
  opacity: 0.92;
}


/* Greenlee Meteo v2.12 intelligence panel */
/* Původní tři mini údaje v horní kartě necháme v DOM kvůli JS, ale skryjeme je. */
.condition-panel .condition-item {
  display: none !important;
}

.condition-advice {
  flex: 1;
  min-width: 260px;
  padding-left: 22px;
  border-left: 1px solid rgba(255,255,255,.12);
}

.advice-title {
  color: #fff;
  font-size: clamp(20px, 2.2vw, 30px);
  font-weight: 800;
  margin-bottom: 8px;
}

.advice-text {
  color: #cfd8dc;
  font-size: 15px;
  line-height: 1.35;
  max-width: 460px;
}

@media(max-width: 760px) {
  .condition-advice {
    border-left: 0;
    padding-left: 0;
    margin-top: 14px;
    text-align: center;
  }
  .today-nameday { justify-content: center; }
  .today-fact p { max-width: none; }
}

/* Greenlee Meteo v2.15 guestbook */
.guestbook-page {
  background: linear-gradient(145deg, rgba(255,255,255,.075), rgba(255,255,255,.035));
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 18px;
  box-shadow: 0 15px 35px rgba(0,0,0,.24);
  margin: 18px 0;
  padding: 24px;
}

.guestbook-page h2 {
  margin: 0 0 8px;
  color: #00c853;
}

.guestbook-subtitle {
  color: #aaa;
  margin: 0 0 18px;
}

.guestbook-list {
  margin-bottom: 18px;
}

.guest-item {
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 14px;
  padding: 14px 16px;
  margin-bottom: 10px;
}

.guest-stars {
  color: #ffd54f;
  margin-bottom: 6px;
}

.guest-message {
  margin: 8px 0;
  color: #e0e0e0;
}

.guest-form {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.guest-form input,
.guest-form textarea,
.guest-form select {
  background: #101515;
  color: #fff;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 10px;
  padding: 12px;
}

.guest-form textarea {
  min-height: 110px;
  resize: vertical;
}

.guest-form button {
  align-self: flex-start;
}


/* Greenlee Meteo v2.26 - čistší horní panel */
.condition-panel {
  grid-template-columns: 72px minmax(250px, 1fr) minmax(260px, 1.15fr);
}
.condition-icon {
  font-size: 52px;
  opacity: .95;
}
.today-nameday {
  display: flex;
  align-items: baseline;
  gap: 7px;
  flex-wrap: nowrap;
  margin-bottom: 7px;
  white-space: nowrap;
}
.today-nameday span {
  order: 1;
  color: #fff;
  font-size: clamp(15px, 1.45vw, 18px);
  font-weight: 800;
  margin-top: 0;
}
.today-nameday b {
  order: 2;
  display: inline;
  color: #fff;
  font-size: clamp(16px, 1.65vw, 20px);
  line-height: 1;
}
.today-fact {
  margin-top: 7px;
  padding-top: 7px;
}
.today-fact span {
  font-size: 13px;
}
.today-fact p {
  max-width: 360px;
  font-size: 13px;
  line-height: 1.22;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.station-age {
  display: none !important;
}

@media(max-width: 760px) {
  .condition-panel { grid-template-columns: 1fr; }
  .today-nameday { justify-content: center; flex-wrap: wrap; white-space: normal; }
}

/* Greenlee Meteo v2.28 - čistá předpověď bez grafů */
.forecast-page {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.forecast-header,
.forecast-top-grid > div,
.forecast-hourly-section,
.forecast-footer {
  background: linear-gradient(145deg, rgba(255,255,255,.07), rgba(255,255,255,.03));
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 16px;
  box-shadow: inset 0 0 25px rgba(0,0,0,.16);
}
.forecast-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 18px;
}
.forecast-header h2 {
  margin: 0 0 4px;
  color: #fff;
}
.forecast-header p {
  margin: 0;
  color: #b9c4bd;
}
.forecast-header button,
.forecast-day-tabs button {
  background: rgba(255,255,255,.06);
  color: #fff;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 10px;
  padding: 10px 14px;
  font-weight: 800;
  cursor: pointer;
}
.forecast-header button:hover,
.forecast-day-tabs button:hover,
.forecast-day-tabs button.active {
  border-color: #00d46a;
  color: #00f27a;
}
.forecast-status {
  color: #00f27a;
  border: 1px solid rgba(0,242,122,.55);
  background: rgba(0,242,122,.07);
  border-radius: 9px;
  padding: 8px 12px;
  font-weight: 800;
}
.forecast-top-grid {
  display: grid;
  grid-template-columns: 1fr 1.35fr;
  gap: 14px;
}
.forecast-today-card,
.forecast-intelligence {
  padding: 18px;
}
.forecast-today-card {
  display: grid;
  grid-template-columns: 72px 1fr;
  align-items: center;
  gap: 15px;
}
.forecast-big-icon {
  font-size: 54px;
  text-align: center;
}
.forecast-today-card h3,
.forecast-intelligence h3,
.forecast-hourly-section h3 {
  margin: 0 0 8px;
  color: #fff;
}
.forecast-today-card strong {
  display: block;
  font-size: clamp(28px, 3vw, 42px);
  color: #fff;
  margin-bottom: 8px;
}
.forecast-today-card p,
.forecast-intelligence p {
  margin: 0;
  color: #d6ded8;
  line-height: 1.45;
}
.forecast-daily-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(120px, 1fr));
  gap: 12px;
}
.forecast-day-card {
  background: linear-gradient(145deg, rgba(255,255,255,.07), rgba(255,255,255,.025));
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 14px;
  color: #fff;
  padding: 14px 10px;
  min-height: 146px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 6px;
  cursor: pointer;
  text-align: center;
}
.forecast-day-card.active {
  border-color: #00d46a;
  box-shadow: 0 0 0 1px rgba(0,212,106,.22), inset 0 0 22px rgba(0,212,106,.08);
}
.forecast-day-card b {
  color: #00f27a;
}
.forecast-day-card .forecast-day-icon {
  font-size: 28px;
  line-height: 1;
}
.forecast-day-card strong {
  font-size: 14px;
}
.forecast-day-card small {
  color: #d6ded8;
  font-weight: 800;
}
.forecast-hourly-section {
  padding: 16px;
}
.forecast-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}
.forecast-day-tabs {
  display: flex;
  gap: 8px;
}
.forecast-hourly-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(74px, 1fr));
  gap: 8px;
}
.forecast-hour-card {
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 11px;
  padding: 10px 8px;
  text-align: center;
  color: #fff;
  min-height: 94px;
  display: flex;
  flex-direction: column;
  gap: 3px;
  align-items: center;
}
.forecast-hour-card b {
  color: #d7ddd9;
  font-size: 12px;
}
.forecast-hour-card span {
  font-size: 22px;
  line-height: 1;
}
.forecast-hour-card strong {
  font-size: 18px;
}
.forecast-hour-card small {
  color: #cbd6cf;
  font-size: 12px;
  font-weight: 800;
}
.forecast-footer {
  padding: 10px 14px;
  color: #aeb9b2;
  text-align: center;
  font-size: 12px;
}
@media(max-width: 1100px) {
  .forecast-daily-grid { grid-template-columns: repeat(4, minmax(120px, 1fr)); }
  .forecast-hourly-grid { grid-template-columns: repeat(6, minmax(74px, 1fr)); }
}
@media(max-width: 760px) {
  .forecast-top-grid { grid-template-columns: 1fr; }
  .forecast-header, .forecast-section-head { flex-direction: column; align-items: stretch; }
  .forecast-daily-grid { grid-template-columns: repeat(2, minmax(120px, 1fr)); }
  .forecast-hourly-grid { grid-template-columns: repeat(3, minmax(74px, 1fr)); }
  .forecast-today-card { grid-template-columns: 1fr; text-align: center; }
}


/* ===== Informace / O projektu ===== */
.info-page{
  display:flex;
  flex-direction:column;
  gap:18px;
}
.info-hero{
  display:grid;
  grid-template-columns:minmax(320px, 0.95fr) minmax(360px, 1.35fr);
  gap:18px;
  align-items:stretch;
}
.info-photo-card,
.info-text-card,
.info-card,
.info-author{
  background:linear-gradient(135deg, rgba(255,255,255,.06), rgba(255,255,255,.025));
  border:1px solid rgba(255,255,255,.13);
  border-radius:18px;
  box-shadow:0 18px 50px rgba(0,0,0,.28);
}
.info-photo-card{
  position:relative;
  overflow:hidden;
  min-height:420px;
}
.info-photo-card img{
  width:100%;
  height:100%;
  min-height:420px;
  object-fit:cover;
  display:block;
  filter:contrast(1.04) brightness(.94);
}
.info-photo-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, transparent 50%, rgba(0,0,0,.82));
  pointer-events:none;
}
.info-photo-caption{
  position:absolute;
  left:22px;
  bottom:20px;
  z-index:1;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.info-photo-caption strong{
  color:#00e676;
  font-size:28px;
  letter-spacing:.3px;
}
.info-photo-caption span{
  color:#cfd8dc;
  font-size:14px;
}
.info-text-card{
  padding:26px 30px;
  line-height:1.58;
}
.info-kicker{
  color:#00e676;
  font-weight:800;
  margin-bottom:8px;
  letter-spacing:.4px;
}
.info-text-card h2{
  margin:0 0 4px;
  font-size:34px;
}
.info-text-card h3,
.info-card h3{
  margin:18px 0 10px;
  color:#00e676;
}
.info-lead{
  margin-top:0;
  color:#d8dde0;
  font-size:18px;
}
.dev-note{
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:14px 16px;
  margin:16px 0 20px;
  border:1px solid rgba(0,230,118,.45);
  background:rgba(0,230,118,.08);
  border-radius:14px;
}
.dev-note strong{color:#00e676;}
.dev-note span{color:#d4d4d4;}
.dev-note-wide{
  border-color:rgba(255,193,7,.55);
  background:linear-gradient(135deg, rgba(255,193,7,.12), rgba(255,193,7,.045));
  margin-top:0;
}
.dev-note-wide strong{color:#ffd54f;}
.dev-note-wide span{color:#f1f1f1;}

.info-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:18px;
}
.info-card{
  padding:22px;
}
.info-row{
  display:flex;
  justify-content:space-between;
  gap:18px;
  padding:10px 0;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.info-row:last-child{border-bottom:0;}
.info-row span{color:#aeb7bd;}
.info-row b{text-align:right;}
.info-list{
  margin:0;
  padding-left:20px;
  line-height:1.9;
}
.info-list li::marker{color:#00e676;}
.feature-list{list-style:none;padding-left:0;}
.info-author{
  padding:16px 20px;
  display:flex;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
  color:#cfd8dc;
}
.info-author strong{color:#fff;}
.info-author span{color:#00e676;}

@media (max-width: 900px){
  .info-hero{grid-template-columns:1fr;}
  .info-grid{grid-template-columns:1fr;}
  .info-photo-card{min-height:320px;}
  .info-photo-card img{min-height:320px;}
  .info-text-card{padding:22px;}
  .info-text-card h2{font-size:28px;}
}

.cache-info{
  padding:14px 16px;
  margin-bottom:16px;
  border:1px solid rgba(0,230,118,.35);
  background:rgba(0,230,118,.08);
  border-radius:14px;
  color:#d8f5e2;
  line-height:1.5;
}

/* Výstrahy ČHMÚ */
.warning-center{margin:18px 0;border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.14);background:rgba(20,27,31,.92);box-shadow:0 10px 28px rgba(0,0,0,.18)}
.warning-summary{width:100%;display:flex;align-items:center;gap:14px;padding:16px 18px;border:0;background:transparent;color:#fff;text-align:left;cursor:pointer;font:inherit}
.warning-summary:focus-visible{outline:2px solid #fff;outline-offset:-3px}
.warning-icon{font-size:28px;line-height:1;flex:0 0 auto}
.warning-heading{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
.warning-heading strong{font-size:17px}.warning-heading small{color:#c7d0d5;font-size:13px;line-height:1.35}
.warning-chevron{font-size:25px;transition:transform .2s ease}.warning-center.open .warning-chevron{transform:rotate(180deg)}
.warning-details{padding:0 18px 17px}.warning-item{padding:14px 0;border-top:1px solid rgba(255,255,255,.13)}
.warning-item-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.warning-item h3{margin:0 0 6px;font-size:17px}.warning-badge{white-space:nowrap;padding:4px 9px;border-radius:999px;background:rgba(255,255,255,.14);font-size:12px;font-weight:700}
.warning-validity{font-size:13px;color:#d5dde1;margin-bottom:8px}.warning-item p{margin:7px 0 0;line-height:1.5;color:#eef2f4}.warning-instruction{font-weight:700}.warning-source{padding-top:10px;border-top:1px solid rgba(255,255,255,.1);font-size:12px;color:#aeb9bf;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.warning-source strong{color:#eef3f5}
.warning-loading{border-color:rgba(144,164,174,.5);background:linear-gradient(135deg,rgba(69,90,100,.28),rgba(20,27,31,.94))}
.warning-ok{border-color:rgba(0,230,118,.48);background:linear-gradient(135deg,rgba(0,200,83,.14),rgba(20,27,31,.94))}
.warning-minor{border-color:rgba(255,214,0,.65);background:linear-gradient(135deg,rgba(255,214,0,.16),rgba(20,27,31,.94))}
.warning-moderate{border-color:rgba(255,152,0,.75);background:linear-gradient(135deg,rgba(255,152,0,.18),rgba(20,27,31,.94))}
.warning-severe,.warning-extreme{border-color:rgba(244,67,54,.8);background:linear-gradient(135deg,rgba(244,67,54,.22),rgba(20,27,31,.94))}
.warning-error{border-color:rgba(144,164,174,.55);background:linear-gradient(135deg,rgba(96,125,139,.2),rgba(20,27,31,.94))}
@media(max-width:600px){.warning-summary{padding:14px}.warning-details{padding:0 14px 14px}.warning-item-head{flex-direction:column}.warning-badge{align-self:flex-start}.warning-source{flex-direction:column;gap:5px}}

/* Greenlee AI Synoptik – samostatná stránka pod tlačítkem */
.synoptik-page{display:grid;gap:18px}
.synoptik-hero{display:grid;grid-template-columns:120px 1fr;gap:24px;align-items:center;padding:28px;border:1px solid rgba(0,230,118,.55);border-radius:20px;background:radial-gradient(circle at 10% 50%,rgba(0,230,118,.14),transparent 28%),linear-gradient(135deg,rgba(7,28,22,.98),rgba(16,24,27,.96));box-shadow:0 0 34px rgba(0,230,118,.10)}
.synoptik-brain{width:100px;height:100px;display:grid;place-items:center;border-radius:28px;font-size:62px;background:rgba(0,230,118,.09);border:1px solid rgba(0,230,118,.35);filter:drop-shadow(0 0 14px rgba(0,230,118,.45))}
.synoptik-title-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.synoptik-title-row h2{margin:0;color:#00e676;font-size:28px}.synoptik-updated{padding:7px 12px;border-radius:9px;background:rgba(0,230,118,.16);color:#a7f5c8;font-weight:700;font-size:13px}.synoptik-copy p{margin:16px 0 0;color:#eef4f1;line-height:1.65;font-size:17px;max-width:1050px}
.synoptik-signals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.synoptik-signal{min-height:160px;padding:22px 16px;border-radius:18px;border:1px solid rgba(255,255,255,.13);background:linear-gradient(145deg,rgba(25,34,38,.98),rgba(12,18,21,.98));display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:9px}.synoptik-signal>span{font-size:42px;line-height:1}.synoptik-signal b{font-size:18px;color:#fff}.synoptik-signal small{font-size:14px;color:#c8d0d4;line-height:1.45}
.synoptik-note{padding:18px 20px;border-radius:16px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.035)}.synoptik-note strong{color:#00e676;font-size:17px}.synoptik-note p{margin:8px 0 0;color:#cbd5d9;line-height:1.55}
@media(max-width:900px){.synoptik-signals{grid-template-columns:repeat(2,1fr)}.synoptik-hero{grid-template-columns:1fr}.synoptik-brain{width:82px;height:82px;font-size:50px}}
@media(max-width:560px){.synoptik-signals{grid-template-columns:1fr}.synoptik-hero{padding:20px}.synoptik-copy p{font-size:15px}.synoptik-title-row h2{font-size:24px}}

/* v2.41 – odpovědi v knize návštěv a informační okno */
.guest-item-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}
.guest-reply-button{border:1px solid rgba(0,230,118,.45);background:rgba(0,230,118,.09);color:#b9f6ca;border-radius:9px;padding:7px 11px;cursor:pointer;font:inherit;font-weight:700}
.guest-reply-button:hover{background:rgba(0,230,118,.18)}
.guest-replies{margin:14px 0 0 18px;padding-left:14px;border-left:3px solid rgba(0,230,118,.45);display:grid;gap:10px}
.guest-reply{padding:12px 14px;border-radius:12px;background:rgba(0,230,118,.07);border:1px solid rgba(0,230,118,.22);line-height:1.5}
.guest-reply-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:6px}.guest-reply-head strong{color:#69f0ae}.guest-reply-head small{color:#aeb7bd}
body.modal-open{overflow:hidden}.greenlee-modal[hidden]{display:none!important}.greenlee-modal{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:18px}.greenlee-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.78);backdrop-filter:blur(4px)}
.greenlee-modal-card{position:relative;z-index:1;width:min(560px,100%);max-height:90vh;overflow:auto;padding:25px;border-radius:20px;border:1px solid rgba(0,230,118,.5);background:linear-gradient(145deg,#162126,#0c1215);box-shadow:0 24px 80px rgba(0,0,0,.55);color:#eef4f1}.greenlee-modal-card h2{margin:0 38px 12px 0;color:#00e676}.greenlee-modal-card h3{color:#69f0ae;margin:20px 0 8px}.greenlee-modal-card textarea,.greenlee-modal-card input{box-sizing:border-box;width:100%;margin-top:12px;padding:13px 14px;border-radius:11px;border:1px solid rgba(255,255,255,.2);background:#0b1114;color:#fff;font:inherit}.greenlee-modal-card textarea{min-height:130px;resize:vertical}.greenlee-modal-close{position:absolute;right:15px;top:13px;border:0;background:transparent;color:#fff;font-size:31px;cursor:pointer}.greenlee-modal-actions,.whats-new-footer{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:18px}.greenlee-modal-actions button,.whats-new-footer button{padding:11px 16px;border:0;border-radius:10px;background:#00c853;color:#06120a;font:inherit;font-weight:800;cursor:pointer}.greenlee-modal-actions .secondary{background:rgba(255,255,255,.12);color:#fff}.guest-reply-to{color:#cbd5d9}.whats-new-card{width:min(760px,100%)}.whats-new-card ul{padding-left:22px;line-height:1.75}.whats-new-warning{margin-top:18px;padding:14px 16px;border-radius:14px;border:1px solid rgba(255,193,7,.5);background:rgba(255,193,7,.08)}.whats-new-warning h3{margin-top:0;color:#ffd54f}.whats-new-footer{justify-content:space-between}.whats-new-footer small{color:#aeb7bd}
@media(max-width:600px){.greenlee-modal{padding:10px}.greenlee-modal-card{padding:20px 16px}.guest-item-footer,.guest-reply-head,.whats-new-footer{align-items:flex-start;flex-direction:column}.guest-reply-button{align-self:flex-end}.whats-new-footer button{width:100%}}


/* v2.41 – odpovědi návštěvníků i správce */
.guest-reply-mode{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0 4px}
.guest-reply-mode-option{display:flex;flex-direction:column;gap:3px;padding:12px 13px;border:1px solid rgba(255,255,255,.18);border-radius:12px;background:rgba(255,255,255,.045);cursor:pointer;transition:.18s ease}
.guest-reply-mode-option input{position:absolute;opacity:0;pointer-events:none}
.guest-reply-mode-option span{font-weight:800;color:#eef4f1}
.guest-reply-mode-option small{color:#aeb7bd}
.guest-reply-mode-option:hover{background:rgba(255,255,255,.08)}
.guest-reply-mode-option.active{border-color:rgba(0,230,118,.7);background:rgba(0,230,118,.11);box-shadow:0 0 0 2px rgba(0,230,118,.08) inset}
.guest-reply.visitor-reply{background:rgba(66,165,245,.075);border-color:rgba(66,165,245,.28)}
.guest-reply.visitor-reply .guest-reply-head strong{color:#90caf9}
.guest-reply.admin-reply{background:rgba(0,230,118,.07);border-color:rgba(0,230,118,.28)}
.guest-admin-badge{display:inline-block;margin-left:7px;padding:2px 6px;border-radius:999px;background:rgba(0,230,118,.17);border:1px solid rgba(0,230,118,.45);color:#b9f6ca;font-size:.67em;letter-spacing:.04em;vertical-align:middle}
#guestReplyVisitorFields[hidden],#guestReplyAdminFields[hidden]{display:none!important}
@media(max-width:600px){.guest-reply-mode{grid-template-columns:1fr}}

/* Greenlee AI Synoptik 2.41 – testovací rozšířená verze */
.synoptik-v2{gap:16px}.synoptik-headbar{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding:22px 24px;border:1px solid rgba(0,230,118,.35);border-radius:18px;background:linear-gradient(135deg,rgba(6,31,23,.98),rgba(12,18,21,.98))}.syn-kicker{font-size:11px;font-weight:800;letter-spacing:.14em;color:#69f0ae}.synoptik-headbar h2{margin:5px 0 4px;color:#00e676;font-size:28px}.synoptik-headbar p{margin:0;color:#bdc8cc}.syn-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.syn-head-actions button{border:1px solid rgba(0,230,118,.45);background:rgba(0,230,118,.12);color:#b9f6ca;border-radius:10px;padding:9px 12px;font-weight:800;cursor:pointer}.synoptik-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr);gap:16px}.syn-panel{border:1px solid rgba(255,255,255,.12);border-radius:18px;background:linear-gradient(145deg,rgba(24,33,37,.98),rgba(10,16,19,.98));padding:18px;box-shadow:0 14px 35px rgba(0,0,0,.18)}.syn-panel-title{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.syn-panel-title>div{display:grid;grid-template-columns:auto 1fr;column-gap:9px;align-items:center}.syn-panel-title>div>span{grid-row:1/3;font-size:25px}.syn-panel-title b{color:#fff;font-size:17px}.syn-panel-title small{color:#95a4aa}.syn-badge{padding:6px 9px;border-radius:8px;background:rgba(0,230,118,.13);color:#8df0b7;font-size:12px;font-weight:800;white-space:nowrap}.syn-map-wrap{position:relative;min-height:390px;border-radius:13px;overflow:hidden;background:#e8ecef;display:grid;place-items:center}.syn-map-wrap img{display:block;width:100%;height:100%;max-height:520px;object-fit:contain}.syn-map-fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#263238;padding:25px;gap:8px}.syn-map-legend{display:flex;gap:15px;flex-wrap:wrap;margin-top:12px;color:#b9c3c7;font-size:12px}.front{display:inline-block;width:24px;height:4px;border-radius:5px;vertical-align:middle}.front.warm{background:#ef3340}.front.cold{background:#1976d2}.front.occlusion{background:#8e44ad}.syn-analysis-text{font-size:16px;line-height:1.7;color:#edf4f1;min-height:168px;margin:6px 0 18px}.syn-score-row{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;color:#bac5c9;font-size:13px}.syn-score{height:9px;border-radius:999px;background:rgba(255,255,255,.1);overflow:hidden}.syn-score i{display:block;height:100%;width:0;background:linear-gradient(90deg,#ffca28,#00e676);transition:width .4s ease}.syn-recommendation{display:flex;gap:10px;margin-top:18px;padding:13px;border-radius:12px;background:rgba(0,230,118,.07);border:1px solid rgba(0,230,118,.2)}.syn-recommendation p{margin:0;color:#cfe5d9;line-height:1.5}.synoptik-signals-v2 .synoptik-signal{min-height:135px}.syn-compare-table{display:grid;gap:3px}.syn-compare-table>div{display:grid;grid-template-columns:1.25fr repeat(3,1fr);gap:10px;align-items:center;padding:11px 12px;border-radius:9px;background:rgba(255,255,255,.035)}.syn-compare-head{color:#8ea0a7;font-size:12px;text-transform:uppercase;font-weight:800}.syn-compare-table b{color:#e8eff1}.syn-compare-table strong{color:#69f0ae}.syn-footer-note{padding:12px 16px;border-radius:12px;background:rgba(255,193,7,.07);border:1px solid rgba(255,193,7,.22);color:#d6cfae;font-size:13px}
@media(max-width:1000px){.synoptik-layout{grid-template-columns:1fr}.syn-map-wrap{min-height:300px}}@media(max-width:680px){.synoptik-headbar{align-items:flex-start;flex-direction:column}.syn-head-actions{justify-content:flex-start}.syn-compare-table>div{grid-template-columns:1.25fr repeat(3,.8fr);font-size:12px;padding:9px 6px}.syn-compare-head{font-size:10px}.syn-map-wrap{min-height:230px}}

/* Greenlee AI Synoptik – intelligence layout */
.syn-map-fallback[hidden]{display:none!important}
.syn-intel-block{margin:0 0 12px;padding:12px 14px;border-radius:11px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08)}
.syn-intel-block p{margin:6px 0 0;color:#dce7e2;line-height:1.55;font-size:14px}
.syn-intel-label{font-size:10px;font-weight:900;letter-spacing:.13em;color:#8fa3aa}
.syn-intel-result{background:rgba(0,230,118,.055);border-color:rgba(0,230,118,.18)}
.syn-intel-result .syn-intel-label{color:#69f0ae}
.syn-intel-result .syn-analysis-text{min-height:0;margin:7px 0 0;font-size:16px;line-height:1.62;color:#f1f7f4}

/* Greenlee Meteo 2.5 – radar srážek */
.radar-page{display:grid;gap:16px}
.radar-headbar{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding:22px 24px;border:1px solid rgba(41,182,246,.42);border-radius:18px;background:linear-gradient(135deg,rgba(5,26,39,.98),rgba(10,18,24,.98))}
.radar-kicker{font-size:11px;font-weight:800;letter-spacing:.14em;color:#81d4fa}.radar-headbar h2{margin:5px 0 4px;color:#40c4ff;font-size:28px}.radar-headbar p{margin:0;color:#bdc8cc}
.radar-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.radar-head-actions button{border:1px solid rgba(41,182,246,.48);background:rgba(41,182,246,.12);color:#b3e5fc;border-radius:10px;padding:9px 12px;font-weight:800;cursor:pointer}.radar-head-actions button:hover{background:rgba(41,182,246,.22)}
.radar-status{padding:7px 12px;border-radius:9px;background:rgba(41,182,246,.14);color:#b3e5fc;font-weight:700;font-size:13px}.radar-status.ready{background:rgba(0,230,118,.14);color:#a7f5c8}.radar-status.error{background:rgba(255,82,82,.15);color:#ffb3b3}
.radar-panel{border:1px solid rgba(255,255,255,.12);border-radius:18px;background:linear-gradient(145deg,rgba(24,33,37,.98),rgba(10,16,19,.98));padding:18px;box-shadow:0 14px 35px rgba(0,0,0,.18)}
.radar-panel-title{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.radar-panel-title>div{display:grid;grid-template-columns:auto 1fr;column-gap:9px;align-items:center}.radar-panel-title>div>span{grid-row:1/3;font-size:25px}.radar-panel-title b{color:#fff;font-size:17px}.radar-panel-title small{color:#95a4aa}.radar-live-badge{padding:6px 9px;border-radius:8px;background:rgba(255,82,82,.14);color:#ff8a80;font-size:12px;font-weight:900;white-space:nowrap}
.radar-map-wrap{position:relative;width:100%;height:clamp(430px,68vh,760px);border-radius:14px;overflow:hidden;background:#10191e}.radar-map-wrap iframe{display:block;width:100%;height:100%;border:0;background:#10191e;opacity:0;transition:opacity .35s ease}.radar-map-wrap.loaded iframe{opacity:1}
.radar-loader{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:9px;padding:25px;color:#d9eef7;background:radial-gradient(circle at center,rgba(41,182,246,.12),transparent 45%),#10191e}.radar-loader-icon{font-size:52px;animation:radarPulse 1.2s ease-in-out infinite}.radar-loader span{color:#9fb3bc}.radar-map-wrap.loaded .radar-loader{display:none}@keyframes radarPulse{0%,100%{transform:scale(.92);opacity:.7}50%{transform:scale(1.08);opacity:1}}
.radar-note{display:flex;gap:11px;align-items:flex-start;margin-top:14px;padding:13px 15px;border-radius:12px;background:rgba(41,182,246,.07);border:1px solid rgba(41,182,246,.2)}.radar-note p{margin:0;color:#cfe1e8;line-height:1.55}
@media(max-width:680px){.radar-headbar{align-items:flex-start;flex-direction:column;padding:18px}.radar-head-actions{justify-content:flex-start}.radar-map-wrap{height:64vh;min-height:430px}.radar-panel{padding:10px}.radar-panel-title{align-items:flex-start}.radar-panel-title small{font-size:11px}}
