/* Station tables: clear section hierarchy, restrained colour, both themes. */
.xionia-home {
  --station-surface: #ffffff;
  --station-stripe: #f1f6fa;
  --station-label: #e8f0f6;
  --station-ink: #16354a;
  --station-muted: #486273;
  --station-border: #c4d4df;
  --station-accent: #075d76;
  --station-heading: #173e5b;
}
.xionia-home.xionia-dark {
  --station-surface: #132b3e;
  --station-stripe: #183347;
  --station-label: #1c3b50;
  --station-ink: #edf6fc;
  --station-muted: #c0d4e2;
  --station-border: #3a5b72;
  --station-accent: #8be0ed;
  --station-heading: #214e6b;
}
.xionia-home .xionia-table-scroll {
  border: 1px solid var(--station-border);
  border-radius: 14px;
  background: var(--station-surface);
}
.xionia-home #station-observations {
  margin: 0;
  border: 0;
  border-collapse: collapse;
  color: var(--station-ink);
  background: var(--station-surface);
  font-size: 15px;
}
.xionia-home #station-observations td,
.xionia-home #station-observations th {
  padding: 13px 15px;
  border-color: var(--station-border);
  line-height: 1.45;
}
.xionia-home #station-observations th[scope="row"] {
  min-width: 190px;
  max-width: 260px;
  text-align: left;
  background: var(--station-label);
  font-weight: 550;
}
.xionia-home #station-observations .station-reading:nth-child(even) > td:not(.station-graphs) {
  background: var(--station-stripe);
}
.xionia-home #station-observations .station-reading > td:not(.station-graphs) {
  min-width: 180px;
  font-variant-numeric: tabular-nums;
  font-weight: 600;
}
.xionia-home #station-observations .station-current > td:not(.station-graphs) {
  color: var(--station-accent);
  font-size: 19px;
  font-weight: 700;
}
.xionia-home #station-observations .station-period > th,
.xionia-home #station-observations .station-period > td:not(.station-graphs) {
  padding: 15px;
  background: var(--station-heading);
  color: #fff;
  font-weight: 700;
  text-align: left;
}
.xionia-home #station-observations .station-graphs {
  background: var(--station-surface);
  padding: 20px;
}
.xionia-home .station-graph-group {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  gap: 18px 20px;
  margin-bottom: 24px;
}
.xionia-home .station-graph-group:last-child { margin-bottom: 0; }
.xionia-home .station-graph-group + br { display: none; }
.xionia-home .station-graph img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}
.xionia-home .station-graph {
  display: inline-block;
  max-width: 100%;
  margin: 0;
  vertical-align: top;
}
.xionia-home .station-graph figcaption {
  max-width: 230px;
  margin: 10px auto 0;
  color: var(--station-muted);
  font-size: 12px;
  line-height: 1.35;
}
.xionia-home .home-rain-chart {
  display: block;
  margin: 24px auto;
}
.xionia-home .home-climate-frame { margin: 24px auto; }
.xionia-home .home-station-equipment,
.xionia-home .home-camera-panel,
.xionia-home .dropdown {
  background: var(--station-surface);
  color: var(--station-ink);
  border-color: var(--station-border);
}
.xionia-home .home-camera-panel {
  padding: 16px;
  border: 1px solid var(--station-border);
  border-radius: 14px;
}
.xionia-home .home-camera-panel .home-live-camera {
  margin-top: 12px;
  border-radius: 9px;
}
.xionia-home #station-live-status {
  display: inline-block;
  margin: 4px auto 14px;
  padding: 7px 13px;
  border: 1px solid var(--station-border);
  border-radius: 20px;
  color: var(--station-accent);
  background: var(--station-surface);
}
.xionia-home #station-live-status[data-stale="true"] {
  color: #703c06;
  background: #fff1d6;
  border-color: #d2a354;
}
.xionia-home.xionia-dark #station-live-status[data-stale="true"] {
  color: #ffe2a6;
  background: #44371e;
}
.xionia-home .home-intro #station-about p {
  max-width: 850px;
  margin-inline: auto;
  color: var(--station-muted);
}
@media (max-width: 800px) {
  .xionia-home .home-camera-panel { padding: 12px; }
}

.xionia-home #station-observations caption {
  padding: 14px 16px;
  text-align: left;
  color: var(--station-muted);
  background: var(--station-surface);
  font-size: 14px;
  font-weight: 600;
}
.xionia-home .home-camera-panel .home-camera-heading {
  margin: 0 0 12px;
  font-size: 16px;
  line-height: 1.5;
}
.xionia-home .skip-link {
  position: absolute;
  left: 16px;
  top: -100px;
  z-index: 1000;
  padding: 10px 14px;
  border-radius: 8px;
  color: #fff;
  background: #173e5b;
}
.xionia-home .skip-link:focus { top: 10px; }
.xionia-home .station-records {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin: 24px auto;
  text-align: left;
}
.xionia-home .station-record {
  padding: 18px 20px;
  border: 1px solid var(--station-border);
  border-top: 4px solid var(--station-accent);
  border-radius: 12px;
  color: var(--station-ink);
  background: var(--station-surface);
}
.xionia-home .station-record h3 { margin: 0 0 10px; font-size: 17px; }
.xionia-home .station-record ul { margin: 0; padding-left: 18px; }
.xionia-home .station-record li { margin: 8px 0; line-height: 1.5; }
.xionia-home .station-archive-links { border-collapse: collapse; background: var(--station-surface); }
.xionia-home .station-archive-links td { border-color: var(--station-border); padding: 14px; }
.xionia-home .station-archive-links tr:nth-child(even) { background: var(--station-stripe); }
.xionia-home .station-archive-links a { font-weight: 600; }
.xionia-home .xionia-year-links {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(80px,1fr));
  gap: 8px;
  margin: 20px auto;
}
.xionia-home .xionia-year-links a {
  padding: 10px;
  border: 1px solid var(--station-border);
  border-radius: 8px;
  background: var(--station-surface);
  font-weight: 600;
}
.xionia-home .archive-breadcrumbs { text-align: left; font-size: 14px; margin: 14px 0; }
@media (max-width: 640px) {
  .xionia-home .station-records { grid-template-columns: minmax(0,1fr); }
  .xionia-home .station-record { padding: 16px; }
}

/* Keep the original WeatherLink overview together and fit its full width. */
.xionia-home .station-zoom {max-width:100%;margin:20px auto;color:var(--station-ink);}
.xionia-home .station-zoom-controls {display:flex;flex-wrap:wrap;align-items:center;gap:7px;padding:10px;background:var(--station-surface);border:1px solid var(--station-border);border-radius:12px 12px 0 0;text-align:left;font:14px/1.4 system-ui,sans-serif;}
.xionia-home .station-zoom-label {flex:1 1 230px;font-weight:650;}
.xionia-home .station-zoom-controls button {min-width:44px;min-height:44px;padding:8px 12px;background:var(--station-label);color:var(--station-ink);border:1px solid var(--station-border);border-radius:8px;font:600 14px system-ui;cursor:pointer;}
.xionia-home .station-zoom-controls button:disabled {opacity:.5;cursor:default;}
.xionia-home .station-zoom-controls a {font-size:13px;padding:8px;}
.xionia-home .station-zoom-value {min-width:44px;}
.xionia-home .station-zoom-viewport {overflow:auto;max-width:100%;background:var(--station-surface);border-radius:0 0 12px 12px;}
.xionia-home .station-zoom-space {position:relative;margin-inline:auto;overflow:hidden;}
.xionia-home .station-zoom-stage {position:absolute;inset:0 auto auto 0;transform-origin:top left;}
.xionia-home .station-zoom-stage>.xionia-table-scroll {overflow:visible;border-radius:0;max-width:none;}
.xionia-home .station-zoom #station-observations {width:1180px;table-layout:fixed;font-size:14px;}
.xionia-home .station-zoom #station-observations th[scope="row"] {width:195px;min-width:0;max-width:none;}
.xionia-home .station-zoom #station-observations td,.xionia-home .station-zoom #station-observations th {padding:5px 9px;min-width:0;line-height:1.3;}
.xionia-home .station-zoom #station-observations .station-current>td:not(.station-graphs) {font-size:16px;}
.xionia-home .station-zoom #station-observations .station-reading>td:not(.station-graphs) {min-width:0;}
.xionia-home .station-zoom #station-observations td[rowspan] {width:770px;min-width:0;padding:10px;}
.xionia-home .station-zoom #station-observations p {margin:2px 0;}
.xionia-home .station-zoom .station-graph-group {flex-wrap:nowrap;gap:10px;margin:0 0 16px;}
.xionia-home .station-zoom .station-graph {flex:0 1 auto;min-width:0;}
.xionia-home .station-zoom .station-graph img {display:block;margin:0 auto;}
.xionia-home .station-zoom .station-graph figcaption {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0;}
.xionia-home .station-chart-zoom {max-width:100%;}
.xionia-home .station-chart-zoom .home-climate-frame {width:644px;max-width:none;height:332px;margin:0;display:block;}
