/* まなび動画ナビ Future UI v240 — print-only rollback-safe layer */

@media print {
  @page {
    margin: 12mm;
  }

  body.mnv-future-ui {
    min-height: auto;
    background: #fff !important;
    color: #111827 !important;
    color-scheme: light;
    print-color-adjust: economy;
    -webkit-print-color-adjust: economy;
  }

  body.mnv-future-ui::before,
  body.mnv-future-ui::after,
  body.mnv-future-ui :where(
    .site-header,
    .admin-topbar,
    .site-footer,
    .admin-footer,
    .admin-sidebar,
    .org-sidebar,
    .dash-nav,
    .mobile-tabbar,
    .future-study-dock,
    .future-utility-dock,
    .pwa-nudge,
    .page-transition-overlay,
    .ai-wait-overlay,
    .nav-scrim,
    .guide-scrim,
    .qr-login-scrim,
    .luxury-command-scrim,
    .mf-horizon-ripple
  ) {
    display: none !important;
  }

  body.mnv-future-ui :where(.container, .admin-container, .shell-container, .admin-main, .org-main, .dash-main) {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.mnv-future-ui :where(
    .panel,
    .card,
    .admin-card,
    .org-card,
    .org-panel,
    .auth-card,
    .result-panel,
    .video-card,
    .route-card-s,
    .next-card,
    .empty-state
  ) {
    break-inside: avoid;
    border: 1px solid #b9c2cf !important;
    background: #fff !important;
    box-shadow: none !important;
    color: #111827 !important;
    transform: none !important;
  }

  body.mnv-future-ui :where(h1, h2, h3, h4, p, li, dd, dt, th, td, strong, small, .muted, .lead) {
    color: #111827 !important;
    text-shadow: none !important;
  }

  body.mnv-future-ui :where(a) {
    color: #111827 !important;
    text-decoration: underline;
  }

  body.mnv-future-ui :where(table, .data-table, .org-table) {
    width: 100% !important;
    border-collapse: collapse;
    background: #fff !important;
    color: #111827 !important;
  }

  body.mnv-future-ui :where(table, .data-table, .org-table) :where(th, td) {
    border: 1px solid #9ca3af !important;
    background: #fff !important;
    color: #111827 !important;
  }

  body.mnv-future-ui :where(.table-scroll, .org-table-wrap, .comparison-table-wrap) {
    overflow: visible !important;
  }

  body.mnv-future-ui :where(.qr-code, .qr-image, [data-qr-code], [data-qr-value], [data-sheet-qr], [data-coupon-qr], .family-qr, .learner-sheet-qr, img[src*="qr" i]) {
    box-sizing: content-box !important;
    border-radius: 0 !important;
    background: #fff !important;
    filter: none !important;
    opacity: 1 !important;
    transform: none !important;
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }

  body.mnv-future-ui :where([data-qr-value], [data-sheet-qr], [data-coupon-qr], .family-qr, .learner-sheet-qr) :where(svg, img, canvas) {
    border-radius: 0 !important;
    background: #fff !important;
    filter: none !important;
    opacity: 1 !important;
    transform: none !important;
  }

  body.mnv-future-ui :where(canvas, iframe, video, img, svg) {
    filter: none !important;
    opacity: 1 !important;
    transform: none !important;
  }

  body.mnv-future-ui :where(.alert, .org-notice, .mode-banner) {
    border: 1px solid #6b7280 !important;
    background: #fff !important;
    box-shadow: none !important;
    color: #111827 !important;
  }
}
