/* ═══════════════════════════════════════════════
   Resume Portal — Print Styles
   High-fidelity letter-page 2-column layout
   ═══════════════════════════════════════════════ */

@media print {
  /* Hide interactive elements */
  .gate,
  .no-print,
  .resume-toolbar,
  .theme-toggle-btn,
  .gate-theme-toggle,
  .chat-fab,
  .chat-drawer,
  .admin-container,
  #blazor-error-ui {
    display: none !important;
  }

  /* Force resume visible */
  .resume-container {
    display: block !important;
    opacity: 1 !important;
  }

  html { font-size: 13.2px; }
  body, .page {
    background: white !important;
    color: #1a1a2e !important;
    box-shadow: none !important;
  }

  .header-left h1, .job-company, .cert-name, .edu-school {
    color: #1a1a2e !important;
  }

  .header-left .title, .section-title, .job-role {
    color: #1e40af !important;
  }

  .summary, .header-right, .job-location, .job-dates, .job-bullets li, .cert-date, .edu-degree, .edu-details, .sidebar-list li {
    color: #3d3d5c !important;
  }

  .page {
    padding: 0.4in 0.5in 0.3in;
    max-width: none;
  }

  a { color: inherit !important; }

  /* Prevent page breaks inside key layout elements */
  .header,
  .summary {
    break-after: avoid;
    page-break-after: avoid;
  }

  .content {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 0.3in;
  }

  .main-content {
    flex: 1 1 auto;
    min-width: 0;
  }

  .sidebar {
    flex: 0 0 2.3in;
    width: 2.3in;
  }

  .project,
  .edu-entry,
  .cert-entry {
    break-inside: avoid;
    page-break-inside: avoid;
  }

  .job-header, .job-role-line {
    break-after: avoid;
    page-break-after: avoid;
  }

  .job {
    break-before: auto;
    page-break-before: auto;
  }
}

@page {
  size: letter;
  margin: 0;
}
