/* ============================================================
   EU CRA Compliance — Workbench print stylesheet.
   Strips the entire IDE shell and prints only the active surface
   (a full document, or the active assessment step) as clean A4
   pages. Loaded with media="print" so it overrides wb.css.
   ============================================================ */

@page { size: A4; margin: 18mm 16mm; }

/* hide every piece of IDE chrome */
.ide-titlebar,
.ide-activitybar,
.ide-sidebar,
.ide-tabs,
.ide-statusbar,
.ide-right,
.ide-dock,
.doc-toolbar,
.doc-roadmap,
.eb-tools,
.dtb-hint,
.step-nav,
.assemble-bar,
.presenter-cue,
.tweaks-panel,
.tweaks-fab,
.palette-scrim,
.wb-topbar,
.wb-footer,
.modal-actions,
.modal-scrim {
  display: none !important;
}

/* flatten the flex/grid shell so content flows as normal pages */
html, body { background: #fff !important; }
#root {
  display: block !important;
  background: #fff !important;
  color: #000 !important;
  min-height: 0 !important;
}
.ide,
.ide-body,
.ide-editor,
.doc-view,
.doc-scroll,
.editor-scroll,
.editor-pane,
.editor-pane .content {
  display: block !important;
  height: auto !important;
  max-width: none !important;
  width: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
  background: #fff !important;
  padding: 0 !important;
  margin: 0 !important;
  gap: 0 !important;
}

/* the document page: drop the screen "paper" shadow, let it fill the sheet */
.doc-page {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  color: #000 !important;
}

/* keep section blocks from being split awkwardly */
.doc-h1, .doc-h2 { break-after: avoid; page-break-after: avoid; }
.doc-control, .doc-revtable, .doc-fields, .doc-source-note,
.card, .panel, .file-row, .tpl-item { break-inside: avoid; page-break-inside: avoid; }

/* assessment-step cards print on white */
.card, .panel { box-shadow: none !important; border: 1px solid #d7dce6 !important; background: #fff !important; }

/* reveal animation must not hide content in print */
.reveal { opacity: 1 !important; transform: none !important; }

/* firmware version pin must stay legible on white */
.fw-pin { background: #fff !important; border: 1px solid #d7dce6 !important; border-left: 4px solid #1d4ed8 !important; color: #000 !important; break-inside: avoid; page-break-inside: avoid; }
.fw-pin.uncovered { border-left-color: #b40000 !important; }
.fw-pin-fam, .fw-pin-warn, .fw-pin-line .mono-label, .fw-file-pin, .fw-file-pin b { color: #000 !important; }
.fw-pin-warn strong { color: #b40000 !important; }

/* editable blocks print as plain document text */
.editable { background: transparent !important; margin: 0 0 12px !important; padding: 0 !important; }
.editable::after { display: none !important; }
.df-input { border: none !important; box-shadow: none !important; padding: 0 !important; background: transparent !important; color: #000 !important; }
