/* Shared Report Mode page controls. */
@media screen {
  html:has(body.report-a4-mode) { background: #e8ecf1; }

  body.report-a4-mode {
    max-width: 210mm;
    margin: 24px auto !important;
    padding: 0 !important;
    background: #fff !important;
    border-radius: 4px;
    box-shadow: 0 2px 24px rgba(0, 0, 0, .12);
  }

  body.report-a4-mode .wrap,
  body.report-a4-mode .report-section,
  body.report-a4-mode main { max-width: 100% !important; }
}

.report-home-button {
  position: fixed;
  top: 8px;
  left: 12px;
  z-index: 60;
  padding: 6px 14px;
  border: 1px solid rgba(255, 255, 255, .15);
  border-radius: 999px;
  background: rgba(17, 17, 17, .85);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
  backdrop-filter: blur(10px);
}

.report-layout-controls { display: flex; align-items: center; flex: 0 0 auto; }
.report-layout-label, .report-view-switcher-inner > .report-view-label { display: none !important; }
.report-layout-buttons, .report-view-switcher-inner > .report-view-buttons {
  display: inline-flex !important; overflow: hidden; width: 184px !important; min-width: 184px; min-height: 42px !important;
  border: 0; border-radius: 13px; background: #e9edf3; box-shadow: inset 0 0 0 1px rgba(60, 60, 67, .08);
}
.report-layout-button, .report-view-switcher-inner > .report-view-buttons .report-view-button {
  display: inline-flex; flex: 1 1 50%; align-items: center; justify-content: center; gap: 5px; min-width: 0; min-height: 42px !important;
  padding: 0 8px !important; border: 0; border-radius: 11px; background: transparent; color: #5f6773;
  font: 800 12px/1 var(--sans, -apple-system, BlinkMacSystemFont, sans-serif); cursor: pointer; transition: color .18s ease, background .18s ease, box-shadow .18s ease;
}
.report-view-switcher-inner > .report-view-buttons::before { content: none !important; }
.report-view-switcher-inner > .report-view-buttons .report-view-button[data-report-view-target="simple"]::before { content: "☷"; font-size: 13px; }
.report-view-switcher-inner > .report-view-buttons .report-view-button[data-report-view-target="detail"]::before { content: "▤"; font-size: 13px; }
.report-layout-button.is-active, .report-layout-button[aria-pressed="true"],
.report-view-switcher-inner > .report-view-buttons .report-view-button.is-active,
.report-view-switcher-inner > .report-view-buttons .report-view-button[aria-pressed="true"] {
  color: #191f28; background: #fff; box-shadow: 0 1px 3px rgba(25,31,40,.18);
}
.report-view-switcher-inner {
  position: relative; display: flex !important; flex-wrap: nowrap; align-items: center !important; justify-content: center !important;
  gap: 12px !important; min-height: 64px !important; padding: 10px 0 !important;
}
.report-view-switcher-inner > .report-utility-controls { position: absolute; right: 0; display: flex; width: auto; margin-left: 0 !important; flex-shrink: 0; }

@media (max-width: 1439px) {
  .floating-menu {
    right: 10px !important;
    bottom: 14px !important;
    left: 10px !important;
    top: auto !important;
    width: auto !important;
    max-width: none !important;
  }
}

@media (max-width: 700px) {
  body.report-a4-mode { max-width: 100%; margin: 0 !important; border-radius: 0; box-shadow: none; }
  .report-layout-buttons, .report-view-switcher-inner > .report-view-buttons { width: 154px !important; min-width: 154px; }
  .report-view-switcher-inner { flex-wrap: wrap; gap: 8px !important; padding: 8px 0 !important; }
  .report-view-switcher-inner > .report-utility-controls { position: static; display: flex; width: 100% !important; order: 3; justify-content: center; gap: 7px; }
  .report-view-switcher-inner > .report-utility-controls > * { display: inline-flex; align-items: center; justify-content: center; min-width: 112px !important; min-height: 36px !important; padding: 0 10px !important; overflow: hidden; white-space: nowrap; }
}

@media print {
  @page { size: A4 portrait; margin: 15mm; }
  .report-home-button, .nav, .floating-menu, .report-view-switcher, .report-share-button, #report-pdf-button { display: none !important; }
  body { background: #fff !important; color: #000 !important; font-size: 11pt !important; }
  .wrap, main { width: 100% !important; max-width: 100% !important; }
  h1 { font-size: 20pt !important; }
  h2 { font-size: 16pt !important; }
  h3 { font-size: 13pt !important; }
  p, li { font-size: 10pt !important; line-height: 1.5 !important; }
  table { font-size: 8pt !important; }
  .report-section, .paper, .callout, figure { break-inside: avoid; }
  img { max-width: 100% !important; }
}
