/* ============================================================
   CityScope — print / "Save as PDF" report. Loaded with media="print".
   Strips the app chrome and glass effects, keeps the data, and adds a
   header with the place, print time and the snapshot's own link.
   ============================================================ */

@page { margin: 14mm 12mm; }

:root, :root[data-theme="dark"] {
  color-scheme: light;
  --background: #ffffff;
  --surface: #ffffff;
  --text: #111111;
  --muted: #555555;
  --hairline: #d9d9d9;
  --glass-bg: #ffffff;
  --glass-bg-strong: #ffffff;
  --glass-border: #d9d9d9;
  --glass-shadow: none;
  --primary: #2a5fc0;
  --accent-text: #2a5fc0;
  --series-1: #2a78d6;
  --series-2: #eb6834;
  --series-3: #1baf7a;
  --series-4: #eda100;
}

html, body { background: #fff !important; color: #111 !important; height: auto; overflow: visible !important; }
body { font-size: 10.5pt; }

.atmosphere, .navbar, .app-footer, .toast-container, .skip-link, .modal-overlay,
.dashboard-search, .search-suggestions, .search-box, .snapshot-actions, .my-cities-card,
.converter, .converter-result, #compare-quick-add, .compare-remove, .cmp-open,
.hourly-scroll, .leaflet-control-zoom, .landing, #home-loading, #home-error,
.chart-tooltip, .compare-hint, #compare-empty { display: none !important; }

.app-shell { max-width: none; padding: 0; }
.view { animation: none !important; }

*, *::before, *::after {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: none !important;
  animation: none !important;
  transition: none !important;
}

.print-header {
  display: block !important;
  border-bottom: 2px solid #111;
  padding-bottom: 6pt;
  margin-bottom: 10pt;
}
.print-brand { font-weight: 700; font-size: 9pt; text-transform: uppercase; letter-spacing: 0.08em; }
.print-header p:last-child { font-size: 8.5pt; color: #555; word-break: break-all; margin-top: 2pt; }

.glass-card, .metric-card {
  background: #fff !important;
  border: 1px solid #d9d9d9 !important;
  border-radius: 6pt !important;
  padding: 8pt 10pt !important;
  break-inside: avoid;
}
.dashboard { gap: 8pt; }
.hero-main { padding: 4pt 0 8pt; }
.hero-temp { font-size: 40pt; font-weight: 300; }
.weather-visual { width: 48pt; height: 48pt; }
.metrics-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 5pt; }
.dashboard > *, .two-col > * { min-width: 0; }
.hero-top { flex-wrap: nowrap; }
.hero-time { flex-shrink: 0; }
.metric-card .metric-value { font-size: 12pt; }
.two-col { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 8pt; }
.analytics-grid { grid-template-columns: 1fr 1fr; }
.data-notice { border: 1px solid #b8860b; background: #fff8e6 !important; }
.mini-map { height: 150pt; }
.compare-table-wrap { overflow: visible !important; }
.compare-table { min-width: 0 !important; font-size: 9pt; }
.compare-table th, .compare-table td { padding: 4pt 6pt; white-space: normal; }
.compare-charts { grid-template-columns: 1fr 1fr; }
a { color: #111; text-decoration: none; }
.card-source, .compare-source { font-size: 8pt; }
