/* Application styles */

/* Print styles */
@media print {
  /* Hide left menu and mobile toggle */
  .left-menu-print {
    display: none !important;
  }

  /* Hide elements with no-print class */
  .no-print {
    display: none !important;
  }

  /* Make main content take full width */
  #flash-messages {
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  /* Adjust body layout for print */
  body {
    display: block !important;
  }

  body > div {
    display: block !important;
  }

  body > div > div {
    width: 100% !important;
  }

  /* Optimize page breaks */
  .inline-flex.flex-col {
    page-break-inside: avoid;
  }

  /* Remove shadows and adjust colors for print */
  * {
    box-shadow: none !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  /* Explore Findings print */
  .explore-findings-page {
    min-height: auto !important;
  }

  .explore-findings-page,
  .explore-findings-page * {
    overflow: visible !important;
  }

  .explore-findings-page details {
    border-radius: 0 !important;
    page-break-inside: auto !important;
  }

  .explore-findings-page details > summary ~ * {
    display: block !important;
  }

  .explore-findings-page details > summary svg {
    display: none !important;
  }

  .explore-findings-page .inline-flex.flex-col {
    page-break-inside: auto !important;
    gap: 0.5rem !important;
  }

  body > div {
    min-height: auto !important;
  }

  turbo-frame {
    overflow: visible !important;
    min-height: auto !important;
  }

  turbo-frame#reports_sub_content {
    padding-top: 0 !important;
  }

  header {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }

  [data-controller="home-tabs"] > div:first-child {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

  [data-controller="reports-sub-nav"] {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }

  @page {
    margin: 1cm;
  }
}
