/* ---------- Print / PDF ---------- */
.print-only { display:none; }
@media print {
  .no-print, .topnav, .map-frame, footer, .tabs, .subtabs, .day-card .day-node { display:none !important; }
  .print-only { display:block; }
  * { animation:none !important; transition:none !important; box-shadow:none !important; }
  html, body { background:#fff !important; color:#111 !important; background-image:none !important; }
  .view[hidden] { display:block !important; }
  header, #view-overview { background:#fff !important; border-bottom:2px solid #111; padding:6px 0 10px; }
  header::before, header .compass { display:none !important; }
  header h1, header .route-line, header .sub { color:#111 !important; }
  .dashboard { display:block; columns:2; column-gap:20px; }
  .stat-card { break-inside:avoid; border:1px solid #999 !important; background:#fff !important; backdrop-filter:none !important; transform:none !important; margin-bottom:6px; }
  .stat-card:hover { transform:none !important; background:#fff !important; }
  .stat-value, .stat-label, .stat-icon { color:#111 !important; }
  .container { display:block; padding:6px 0; }
  .sidebar { max-height:none; overflow:visible; columns:2; column-gap:20px; padding:0; }
  .day-card { break-inside:avoid; margin-bottom:6px; }
  .day-content { border:1px solid #999 !important; background:#fff !important; padding:8px 10px; transform:none !important; }
  .day-content:hover { transform:none !important; }
  .day-card .route { color:#111 !important; }
  .day-card .top, .day-card .km, .day-card .note { color:#444 !important; }
  section { padding:4px 0; }
  section h2 { color:#111 !important; border-color:#999; }
  .weather-grid { display:block; columns:2; column-gap:20px; }
  .wcard { break-inside:avoid; border:1px solid #999 !important; background:#fff !important; margin-bottom:6px; }
  .wcard h3, .wcard .hist b { color:#111 !important; }
  .paso-alert { background:#fff !important; color:#111 !important; border:2px solid #111 !important; }
  .paso-alert h3, .paso-alert a, .paso-alert .stamp { color:#111 !important; border-color:#111 !important; background:#fff !important; }
  .budget-summary { display:block; columns:2; column-gap:20px; }
  .budget-card { break-inside:avoid; border:1px solid #999 !important; background:#fff !important; transform:none !important; margin-bottom:6px; }
  .budget-card:hover { transform:none !important; }
  .budget-h3 { color:#111 !important; border-color:#999 !important; }
  .budget-table, .budget-row-total, .budget-row-grand { background:#fff !important; border-color:#999 !important; }
  .budget-row { border-color:#999 !important; break-inside:avoid; }
  .budget-label, .budget-value, .budget-sub, .budget-prefix { color:#111 !important; }
  .budget-value input { border:1px solid #999 !important; background:#fff !important; color:#111 !important; }
  a { text-decoration:underline; }
}
