/* =========================================================
   BROWSER PRINT STYLESHEET (@media print)
   Generates a clean, printer-friendly 1-page ATS resume layout
   directly from the browser without headers, dock, or dark fills.
   ========================================================= */

/* Hidden on screen */
.print-resume-sheet {
  display: none !important;
}

@media print {
  @page {
    size: A4 portrait;
    margin: 8mm 12mm 8mm 12mm;
  }

  *,
  *::before,
  *::after {
    background: transparent !important;
    color: #0f172a !important;
    box-shadow: none !important;
    text-shadow: none !important;
    filter: none !important;
    backdrop-filter: none !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  html, body {
    width: 100% !important;
    height: auto !important;
    min-height: auto !important;
    background: #ffffff !important;
    color: #0f172a !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
    font-size: 8pt !important;
    line-height: 1.25 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  /* Completely hide all screen chrome, docks, navigation, interactive overlays */
  .navbar-parent-container,
  #dock-container,
  .overflow-blur,
  .btn-resume-download,
  .page-header-parent-container,
  .site-footer,
  .search-container,
  .archive-filter-bar,
  .card-actions-row,
  .visual-hover-overlay,
  .hover-launch-pill,
  .modal-backdrop,
  .skill-tooltip,
  .audio-element,
  button,
  .dock-item,
  .theme-toggle,
  .action-btn {
    display: none !important;
    visibility: hidden !important;
  }

  /* On index.html: Hide interactive screen page stack and show dedicated 1-page resume */
  .page > .stack.stagger-group {
    display: none !important;
  }

  .print-resume-sheet {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    page-break-after: avoid !important;
    page-break-inside: avoid !important;
  }

  /* ===== PRINT RESUME HEADER ===== */
  .p-header {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    border-bottom: 2pt solid #0f172a !important;
    padding-bottom: 6pt !important;
    margin-bottom: 7pt !important;
  }
  .p-header-left {
    flex: 1 !important;
  }
  .p-name {
    font-size: 19pt !important;
    font-weight: 800 !important;
    letter-spacing: -0.5px !important;
    color: #0f172a !important;
    line-height: 1.1 !important;
    margin: 0 0 2pt 0 !important;
  }
  .p-headline {
    font-size: 8.8pt !important;
    font-weight: 700 !important;
    color: #1d4ed8 !important;
    margin-bottom: 3pt !important;
  }
  .p-contact-row {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 4pt 12pt !important;
    font-size: 7.6pt !important;
    color: #475569 !important;
  }
  .p-contact-item {
    display: inline-flex !important;
    align-items: center !important;
    text-decoration: none !important;
    color: #334155 !important;
  }
  .p-contact-item strong {
    color: #0f172a !important;
    font-weight: 700 !important;
  }

  /* ===== TWO-COLUMN RESUME BODY ===== */
  .p-grid {
    display: grid !important;
    grid-template-columns: 1fr 205pt !important;
    gap: 0 14pt !important;
  }
  .p-main-col {
    min-width: 0 !important;
  }
  .p-side-col {
    border-left: 1pt solid #cbd5e1 !important;
    padding-left: 12pt !important;
    min-width: 0 !important;
  }

  /* Section Titles */
  .p-section {
    margin-bottom: 6pt !important;
    page-break-inside: avoid !important;
  }
  .p-section:last-child {
    margin-bottom: 0 !important;
  }
  .p-sec-title {
    font-size: 8.2pt !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    color: #0f172a !important;
    border-bottom: 1pt solid #94a3b8 !important;
    padding-bottom: 1.5pt !important;
    margin-bottom: 4pt !important;
  }

  /* Summary */
  .p-summary {
    font-size: 7.8pt !important;
    line-height: 1.3 !important;
    color: #334155 !important;
    text-align: justify !important;
    margin-bottom: 6pt !important;
  }

  /* Experience Entries */
  .p-exp-entry {
    margin-bottom: 5pt !important;
    page-break-inside: avoid !important;
  }
  .p-exp-entry:last-child {
    margin-bottom: 0 !important;
  }
  .p-exp-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: baseline !important;
    font-size: 8.2pt !important;
  }
  .p-exp-role {
    font-weight: 700 !important;
    color: #0f172a !important;
  }
  .p-exp-co {
    color: #1d4ed8 !important;
    font-weight: 700 !important;
  }
  .p-exp-date {
    font-size: 7.5pt !important;
    font-weight: 600 !important;
    color: #64748b !important;
    white-space: nowrap !important;
  }
  .p-exp-sub {
    font-size: 7.2pt !important;
    color: #64748b !important;
    margin-bottom: 2pt !important;
  }
  .p-bullets {
    padding-left: 10pt !important;
    margin: 0 !important;
    list-style: disc !important;
  }
  .p-bullets li {
    font-size: 7.6pt !important;
    line-height: 1.25 !important;
    color: #334155 !important;
    margin-bottom: 1.5pt !important;
  }
  .p-bullets li strong {
    color: #0f172a !important;
    font-weight: 700 !important;
  }

  /* Projects */
  .p-proj-entry {
    margin-bottom: 4.5pt !important;
    background: #f8fafc !important;
    border: 0.8pt solid #e2e8f0 !important;
    border-left: 2.5pt solid #1d4ed8 !important;
    padding: 3pt 6pt !important;
    border-radius: 2pt !important;
    page-break-inside: avoid !important;
  }
  .p-proj-top {
    display: flex !important;
    justify-content: space-between !important;
    align-items: baseline !important;
  }
  .p-proj-title {
    font-size: 7.9pt !important;
    font-weight: 800 !important;
    color: #0f172a !important;
  }
  .p-proj-link {
    font-size: 7pt !important;
    font-weight: 700 !important;
    color: #1d4ed8 !important;
  }
  .p-proj-tech {
    font-size: 6.9pt !important;
    font-weight: 600 !important;
    color: #475569 !important;
  }
  .p-proj-desc {
    font-size: 7.3pt !important;
    line-height: 1.25 !important;
    color: #334155 !important;
    margin-top: 1pt !important;
  }

  /* Sidebar: Education */
  .p-edu-item {
    margin-bottom: 5pt !important;
    page-break-inside: avoid !important;
  }
  .p-edu-item:last-child {
    margin-bottom: 0 !important;
  }
  .p-edu-degree {
    font-size: 8pt !important;
    font-weight: 700 !important;
    color: #0f172a !important;
  }
  .p-edu-school {
    font-size: 7.6pt !important;
    color: #1d4ed8 !important;
    font-weight: 600 !important;
  }
  .p-edu-row {
    display: flex !important;
    justify-content: space-between !important;
    font-size: 7.2pt !important;
    color: #64748b !important;
  }
  .p-edu-gpa {
    font-weight: 700 !important;
    color: #0f172a !important;
  }

  /* Sidebar: Skills */
  .p-skill-cat {
    font-size: 7.2pt !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    text-transform: uppercase !important;
    margin-top: 3pt !important;
    margin-bottom: 1.5pt !important;
  }
  .p-skill-list {
    font-size: 7.2pt !important;
    line-height: 1.25 !important;
    color: #334155 !important;
  }

  /* General Print Fallback for Subpages (/experience, /education, /projects) */
  .narrow-frame,
  .wide-frame,
  .main,
  main {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  .experience-company-card,
  .featured-experience,
  .project-archive-card {
    background: #ffffff !important;
    border: 1pt solid #cbd5e1 !important;
    box-shadow: none !important;
    page-break-inside: avoid !important;
    margin-bottom: 12pt !important;
    padding: 10pt !important;
  }
  .experience-company-logo,
  .featured-experience-logo {
    filter: none !important;
  }
}
