/* Departure countdown */
.travel-countdown {
  padding:clamp(24px,6vw,42px) 20px;
  background:var(--ink);
  color:var(--paper);
}
.travel-countdown[hidden] { display:none; }
.travel-countdown-heading {
  display:grid;
  justify-items:center;
  gap:4px;
  text-align:center;
}
.travel-countdown h2 {
  margin:0;
  color:var(--paper);
  font-size:clamp(2rem,7vw,2.75rem);
  line-height:1.05;
  letter-spacing:-.055em;
}
.travel-countdown-heading time {
  color:var(--muted-light,#a9b1c0);
  font:500 .625rem/1.4 'DM Mono',monospace;
  text-align:center;
}
.countdown-clock {
  display:flex;
  width:100%;
  align-items:baseline;
  justify-content:center;
  gap:clamp(7px,2.4vw,16px);
  margin-top:12px;
  color:var(--yellow);
  white-space:nowrap;
  text-align:center;
}
.countdown-part {
  display:inline-flex;
  align-items:baseline;
  gap:3px;
}
.countdown-part strong {
  font:500 clamp(2.1rem,9.2vw,4rem)/.95 'DM Mono',monospace;
  letter-spacing:-.075em;
  font-variant-numeric:tabular-nums;
}
.countdown-part small {
  color:#d0d5dd;
  font:500 clamp(.5625rem,1.8vw,.6875rem)/1 'DM Mono',monospace;
  letter-spacing:0;
}

/* Home weather information hierarchy */
.osaka-now-static .action-dashboard-grid { grid-template-columns:minmax(0,1fr); }
.osaka-now-static .action-weather { padding:14px 12px; }
.osaka-now-static .weather-current-row {
  display:flex;
  align-items:center;
  gap:var(--space-sm);
  min-width:0;
  margin-top:var(--space-sm);
}
.osaka-now-static .weather-reading { flex:0 0 auto; margin:0; }
.osaka-now-static .weather-label {
  flex:0 0 auto;
  color:#e4e7ec;
  font-size:.8125rem;
  white-space:nowrap;
}
.osaka-now-static .weather-meta {
  display:flex;
  flex:1 1 auto;
  justify-content:flex-end;
  gap:0;
  margin:0 0 0 auto;
  border:0;
  color:var(--paper);
  font:600 .75rem/1.4 'DM Mono',monospace;
}
.osaka-now-static .weather-meta span {
  display:flex;
  min-height:0;
  align-items:center;
  padding:0 var(--space-sm);
  white-space:nowrap;
}
.osaka-now-static .weather-meta span:first-child { padding-left:0; }
.osaka-now-static .weather-meta span + span { border-left:1px solid rgba(245,243,238,.18); }
.weather-tomorrow {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--space-md);
  min-height:48px;
  margin-top:1px;
  padding:8px 12px;
  border-top:1px solid rgba(245,243,238,.24);
  border-bottom:1px solid rgba(245,243,238,.24);
}
.weather-tomorrow-reading {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  min-width:0;
  gap:var(--space-sm);
  color:#e4e7ec;
}
.weather-tomorrow .weather-symbol { width:20px; height:20px; font-size:17px; }
.weather-tomorrow strong { font-size:.8125rem; white-space:nowrap; }
.weather-tomorrow-reading > span:last-child {
  color:var(--blue);
  font:500 .8125rem/1 'DM Mono',monospace;
  white-space:nowrap;
}
.osaka-now-static .dashboard-status {
  min-height:0;
  margin:var(--space-sm) 0 0;
  color:#d0d5dd;
  font:500 8px/1.4 'DM Mono',monospace;
  opacity:.5;
  text-align:right;
}
.osaka-now-static .dashboard-status[data-state="error"] {
  color:var(--yellow);
  font-size:10px;
  opacity:1;
}
@media (max-width:380px) {
  .osaka-now-static .weather-current-row { flex-wrap:wrap; row-gap:4px; }
  .osaka-now-static .weather-meta { flex-basis:100%; justify-content:flex-start; margin-left:0; font-size:.6875rem; }
  .weather-tomorrow { gap:var(--space-sm); }
  .weather-tomorrow strong { font-size:.75rem; }
}

