/* ==========================================================================
   Print styles
   (registered with media="print" — no @media wrapper needed)
   ========================================================================== */

/* 0. WordPress theme chrome */
#site-header,
.site-header,
.masthead,
#results-nav,
#mobile-menu,
.mobile-menu,
#menu-button,
.hamburger,
.skip-link {
  display: none !important;
}

/* 1. Global resets */
.page-template-survey-mini-site,
.survey-mini-site-main,
.at-mini-site {
  background: #fff !important;
  color: #000 !important;
}
.at-mini-site * {
  box-shadow: none !important;
  text-shadow: none !important;
}
.at-mini-site a {
  text-decoration: underline;
  color: #000;
}
.at-mini-site {
  overflow: visible !important; /* prevent clipping of wide tables/SVGs */
}

/* 2. Layout: collapse sidebar+main grid to single column */
.survey-mini-site-layout,
.survey-mini-site-layout.survey-mini-site-layout--nav-left,
.survey-mini-site-layout.survey-mini-site-layout--nav-right {
  display: block !important;
}
.survey-mini-site-layout__sidebar {
  display: none !important;
}
.survey-mini-site-layout__main {
  width: 100% !important;
}

/* 3. Hide all interactive / navigation controls */
.at-mini-tabs,
.at-mini-nav--classic,
.at-mini-nav--inline,
.at-mini-nav--navigate-data,
.at-mini-nav-host,
.at-mini-go-to,
.at-mini-go-to-host,
.at-mini-prev-next,
button.at-mini-back-to-top,
.at-mini-view-toggle,
button.at-mini-accordion__bulk-toggle,
.at-mini-header__top {
  display: none !important;
}

/* Accordion toggle: just the heading text, no border or icon */
button.at-mini-item__toggle {
  background: transparent !important;
  border: none !important;
  padding: 4px 0 !important;
  color: #000 !important;
  font-size: 14pt !important;
  gap: 0 !important;
}
.at-mini-item__icon {
  display: none !important;
}
.at-mini-item__body {
  border-top: none !important;
  padding: 2px 0 14px !important;
}

/* 4. Reveal JS-hidden content
      - Show ALL section panels (JS hides all but the active one)
      - Show ALL accordion bodies (JS collapses them)
      - .at-mini-chart[hidden] and .at-mini-table-view[hidden] are intentionally
        NOT overridden — the user's chart vs table selection is preserved */
.at-mini-section-panel[hidden] {
  display: block !important;
}
.at-mini-item__body[hidden] {
  display: block !important;
}

/* 5. Page breaks */
.at-mini-section-panel {
  page-break-before: always;
  break-before: page;
}
.at-mini-section-panel:first-of-type {
  page-break-before: avoid;
  break-before: avoid;
}
.at-mini-accordion,
.at-mini-report-flow,
.at-mini-item__body,
.at-mini-metrics,
.at-mini-metric,
.at-mini-data-block,
.at-mini-overview,
.at-mini-figure {
  page-break-inside: avoid;
  break-inside: avoid;
}
.at-mini-section-title {
  page-break-after: avoid;
  break-after: avoid;
}

/* 6. Images and SVG charts */
.at-mini-figure img,
.at-mini-chart svg,
.at-mini-chart canvas {
  max-width: 100% !important;
  page-break-inside: avoid;
  break-inside: avoid;
}

/* 6b. Chart container overflow (prevents pie/donut label clipping) */
.at-mini-chart,
.at-mini-figure {
  overflow: visible !important;
}
.at-mini-chart svg {
  overflow: visible !important;
}

/* 7. Tables */
.at-mini-table th {
  background: #f0f0f0 !important;
  color: #000 !important;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
}
.at-mini-table td {
  background: #fff !important;
  color: #000 !important;
}

/* 8. Typography and spacing */
.at-mini-section-title {
  font-size: 24pt !important;
  letter-spacing: normal;
}
.at-mini-prose {
  font-size: 11pt !important;
  line-height: 1.5;
  color: #000 !important;
}
.at-mini-content {
  max-width: none !important;
  padding: 0 !important;
}
.at-mini-metrics {
  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)) !important;
  gap: 6px !important;
}
.at-mini-metric {
  background: transparent !important;
  border: 1px solid #ddd !important;
  min-height: 0 !important;
  padding: 6px 8px !important;
}
.at-mini-metric__value {
  font-size: 18pt !important;
  line-height: 1.2 !important;
}
.at-mini-metric__label {
  font-size: 8pt !important;
  color: #444 !important;
}

/* 9. Heatmap: preserve background colours */
.at-mini-heatmap [style*="background"] {
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
}

/* 9b. Stacked bar charts: force segment colours and callout lines to print */
.at-mini-stacked-html__segment {
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
}
.at-mini-stacked-html__lane--top .at-mini-stacked-html__cell--line::before,
.at-mini-stacked-html__lane--bottom .at-mini-stacked-html__cell--line::before {
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
}

/* 10. Feature block cards */
.at-mini-feature-card {
  border: 1px solid #ccc !important;
  background: #fff !important;
}
