/* Soften the glare: warm putty page background, cream card instead of
   stark white-on-white. Text color unchanged. */
body {
  background-color: #e9e4da;
}

.resume-wrapper.theme-bg-light {
  background-color: #faf7f0;
}

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

  body {
    font-size: 8.5pt;
    line-height: 1.3;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .main-wrapper {
    padding: 0 !important;
    margin: 0 !important;
  }

  .container {
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .resume-wrapper {
    padding: 8px 12px !important;
    margin: 0 !important;
    box-shadow: none !important;
    border: none !important;
  }

  /* Force 2-column layout in print (override Bootstrap responsive collapse) */
  .resume-body > .row {
    display: flex !important;
    flex-wrap: nowrap !important;
  }

  .resume-main {
    flex: 0 0 66% !important;
    max-width: 66% !important;
    width: 66% !important;
  }

  .resume-aside {
    flex: 0 0 34% !important;
    max-width: 34% !important;
    width: 34% !important;
    padding-left: 16px !important;
    padding-right: 0 !important;
  }

  /* Force header columns side-by-side */
  .resume-header .row {
    display: flex !important;
    flex-wrap: nowrap !important;
  }

  .resume-title {
    flex: 0 0 58% !important;
    max-width: 58% !important;
  }

  .resume-contact {
    flex: 0 0 42% !important;
    max-width: 42% !important;
    font-size: 8pt !important;
  }

  .resume-contact .mb-2 {
    margin-bottom: 1px !important;
  }

  /* Force work item heading columns side-by-side */
  .item-heading {
    display: flex !important;
    flex-wrap: nowrap !important;
    margin-bottom: 2px !important;
  }

  .item-heading .item-title {
    flex: 0 0 auto !important;
    max-width: none !important;
    white-space: nowrap !important;
  }

  .item-heading .item-meta {
    flex: 1 1 auto !important;
    max-width: none !important;
    text-align: right !important;
  }

  .resume-header {
    margin-bottom: 0 !important;
  }

  .resume-name {
    font-size: 15pt !important;
    margin-bottom: 0 !important;
  }

  .resume-tagline {
    font-size: 9.5pt !important;
    margin-bottom: 0 !important;
  }

  .resume-intro {
    padding-top: 3px !important;
    padding-bottom: 3px !important;
  }

  .resume-intro p {
    font-size: 8.5pt !important;
    line-height: 1.3 !important;
  }

  hr {
    margin-top: 4px !important;
    margin-bottom: 4px !important;
  }

  .resume-section-heading {
    font-size: 10.5pt !important;
    margin-bottom: 5px !important;
  }

  .work-section, .project-section, .skills-section, .education-section {
    padding-top: 3px !important;
    padding-bottom: 3px !important;
  }

  .item {
    margin-bottom: 4px !important;
  }

  .item-title {
    font-size: 9.5pt !important;
  }

  .item-meta {
    font-size: 8pt !important;
  }

  .resume-list {
    padding-left: 16px !important;
    margin-bottom: 0 !important;
  }

  .resume-list li {
    font-size: 8pt !important;
    line-height: 1.3 !important;
    margin-bottom: 1px !important;
  }

  .resume-skills-list li {
    font-size: 8pt !important;
    margin-bottom: 1px !important;
  }

  .resume-aside .item-title {
    font-size: 9pt !important;
    margin-bottom: 2px !important;
  }

  .resume-aside .item {
    margin-bottom: 3px !important;
  }

  .resume-degree, .font-weight-bold {
    font-size: 8.5pt !important;
  }

  .resume-degree-org, .resume-degree-time {
    font-size: 7.5pt !important;
  }

  .resume-education-list .mb-3,
  .resume-awards-list .mb-3 {
    margin-bottom: 3px !important;
  }

  .resume-lang-list, .resume-interests-list {
    margin-bottom: 0 !important;
  }

  .resume-aside section {
    padding-top: 2px !important;
    padding-bottom: 2px !important;
  }

  .resume-footer {
    display: none !important;
  }

  footer.footer {
    display: none !important;
  }

  .py-3 {
    padding-top: 3px !important;
    padding-bottom: 3px !important;
  }

  .mb-3 {
    margin-bottom: 4px !important;
  }

  .mb-4 {
    margin-bottom: 6px !important;
  }

  .pe-lg-5 {
    padding-right: 16px !important;
  }

  /* Prevent page breaks inside items */
  .item {
    break-inside: avoid;
  }

  /* Hide download link in print */
  .resume-contact li:has(a[download]) {
    display: none !important;
  }

  /* Hide NRIC project in print to fit on one page */
  .project-section > .item:last-child {
    display: none !important;
  }
}
