@media print {
  /* Hide non-printable elements */
  .tab-bar,
  .fixed-cta,
  .scroll-progress,
  .skip-link,
  body::after {
    display: none !important;
  }

  /* Force light, print-friendly colors */
  :root {
    --base: #fff;
    --mantle: #fff;
    --crust: #f5f5f5;
    --surface0: #e0e0e0;
    --surface1: #ccc;
    --surface2: #aaa;
    --overlay0: #666;
    --overlay1: #555;
    --text: #111;
    --subtext0: #333;
    --subtext1: #222;
    --pink: #c0392b;
    --mauve: #6c3483;
    --green: #1e8449;
    --blue: #1a5276;
    --yellow: #b7950b;
    --peach: #d35400;
    --red: #c0392b;
    --teal: #148f77;
    --lavender: #5b5ea6;
  }

  /* Remove body top padding (tab bar hidden) */
  body {
    padding-top: 0;
    background: #fff;
    color: #111;
  }

  /* Kill all animations and transitions */
  *, *::before, *::after {
    animation: none !important;
    transition: none !important;
  }

  /* Show all sections */
  .section {
    opacity: 1 !important;
    transform: none !important;
  }

  .section .stagger {
    opacity: 1 !important;
    transform: none !important;
  }

  /* Expand project groups */
  .project-group {
    grid-template-rows: 1fr !important;
  }

  .project-group-header .hint {
    display: none;
  }

  .project-group-header .chevron {
    transform: rotate(90deg);
  }

  /* Show link URLs */
  a[href^="http"]::after {
    content: " (" attr(href) ")";
    font-size: 0.75em;
    color: #555;
    word-break: break-all;
  }

  /* Avoid cutting entries across pages */
  .card,
  .edu-entry,
  .history-entry,
  .cert-entry,
  .project-entry,
  .review-comment {
    break-inside: avoid;
  }

  .section {
    break-inside: avoid;
  }

  /* Card hover effects off */
  .card:hover {
    transform: none;
    box-shadow: none;
  }
}
