/* Technical report adapters for the existing calculator report structures.
   Presentation only. Keep calc-report-bw/calc-save's visibility gates and
   record-owned watermarks. Opt in per page; proposals are intentionally separate. */
@media print {
  @page {
    size:A4 portrait; margin:16mm 18.3mm 18mm!important;
    @top-left { font-family:'Amp Report Sans'!important; font-size:6.5pt!important; color:#555!important; letter-spacing:0!important }
    @top-center { font-family:'Amp Report Sans'!important; font-size:6.5pt!important; color:#555!important; letter-spacing:0!important }
    @top-right { font-family:'Amp Report Sans'!important; font-size:6.5pt!important; color:#555!important; letter-spacing:0!important }
    @bottom-left { font-family:'Amp Report Sans'!important; font-size:6.5pt!important; color:#555!important; letter-spacing:0!important }
    @bottom-center { font-family:'Amp Report Sans'!important; font-size:6.5pt!important; color:#555!important; letter-spacing:0!important }
    @bottom-right { font-family:'Amp Report Sans'!important; font-size:6.5pt!important; color:#555!important; letter-spacing:0!important }
  }
  html[data-report-theme="technical"] .cahier-print {
    --ink:#111; --ink2:#333; --ink3:#555; --rule:#ccc; --rule-soft:#ddd;
    --heavy:#111; --fill:#f4f4f4; --fill-soft:#fff; --clay:#111; --clay-large:#111; --fail:#111;
    --serif:'Amp Report Serif','JetBrains Mono',serif;
    --sans:'Amp Report Sans','JetBrains Mono',sans-serif; --mono:var(--sans);
    font:10pt/1.3 var(--serif); color:#111; background:#fff; letter-spacing:normal;
    overflow-wrap:break-word;
  }
  html[data-report-theme="technical"] .cahier-print [style*="color"] {color:#333!important}
  html[data-report-theme="technical"] .cahier-print [style*="background"] {background-color:#fff!important}
  html[data-report-theme="technical"] .cahier-print p {orphans:3;widows:3}
  html[data-report-theme="technical"] .cahier-print .mast {background:none; padding:0 0 3mm;align-items:baseline;gap:7mm;font-family:var(--sans)}
  html[data-report-theme="technical"] .cahier-print .mark {min-width:0;max-width:62%}
  html[data-report-theme="technical"] .cahier-print .mark .wm {font:700 9pt/1.3 var(--sans);letter-spacing:.08em;overflow-wrap:anywhere}
  html[data-report-theme="technical"] .cahier-print .mark .wm small {font:400 6.7pt/1.4 var(--sans);letter-spacing:0;margin-top:1mm}
  html[data-report-theme="technical"] .cahier-print .mast .doc {font:7pt/1.45 var(--sans);letter-spacing:0;overflow-wrap:anywhere;min-width:0}
  html[data-report-theme="technical"] .cahier-print .rule-heavy {border-top:2.2pt solid #111}
  html[data-report-theme="technical"] .cahier-print .doctitle {display:block;text-align:center;border-bottom:.65pt solid #111;padding:4mm 0;margin:0 0 3mm;break-inside:avoid}
  html[data-report-theme="technical"] .cahier-print .doctitle h1 {font:700 24pt/1.08 var(--serif);letter-spacing:-.02em;text-transform:none;color:#111}
  html[data-report-theme="technical"] .cahier-print .doctitle .std {font:7pt/1.4 var(--sans);letter-spacing:.04em;text-align:center;white-space:normal;margin-top:2.5mm;color:#555}
  html[data-report-theme="technical"] .cahier-print .tblock {border:0;background:#fff;margin-bottom:3.5mm;column-gap:4mm}
  html[data-report-theme="technical"] .cahier-print .tblock .c {border:0;border-bottom:.35pt solid #ddd;padding:1.4mm 0;min-width:0;break-inside:avoid}
  html[data-report-theme="technical"] .cahier-print .tblock .lab {font:7pt/1.3 var(--sans);letter-spacing:0;margin-bottom:1mm;color:#555}
  html[data-report-theme="technical"] .cahier-print .tblock .val {font:8.3pt/1.35 var(--sans);overflow-wrap:anywhere;white-space:normal}
  html[data-report-theme="technical"] .cahier-print .result {background:#fff;color:#111;border-top:.65pt solid #111;border-bottom:.65pt solid #111;padding:2.5mm 0;margin:1.5mm 0 3.5mm;break-inside:avoid}
  html[data-report-theme="technical"] .cahier-print .result .top {gap:5mm;align-items:center}
  html[data-report-theme="technical"] .cahier-print .result .lhs {min-width:0}
  html[data-report-theme="technical"] .cahier-print .result .lhs .kk {font:7pt/1.4 var(--sans);letter-spacing:.02em;color:#555;margin-bottom:1.5mm}
  html[data-report-theme="technical"] .cahier-print .result .lhs .vv {font:700 17pt/1.2 var(--serif);letter-spacing:0;overflow-wrap:anywhere}
  html[data-report-theme="technical"] .cahier-print .result .lhs .vv .u {font-size:.8em;color:#333;font-weight:400}
  html[data-report-theme="technical"] .cahier-print .result .stamp {font:700 8pt/1.4 var(--sans);letter-spacing:.04em;border:.65pt solid #555;padding:1.5mm 2mm;color:#111;white-space:normal;text-align:center;max-width:40%;flex-shrink:0}
  html[data-report-theme="technical"] .cahier-print .result .checks {border-top:.35pt solid #ccc;margin-top:2mm;padding-top:2mm;gap:2mm}
  html[data-report-theme="technical"] .cahier-print .result .checks .ck {font:7pt/1.35 var(--sans);letter-spacing:0;color:#333;align-items:flex-start}
  html[data-report-theme="technical"] .cahier-print .result .checks .tick {border:.6pt solid #777;color:#111;flex-shrink:0}
  html[data-report-theme="technical"] .cahier-print .sec {display:block;position:relative;margin-top:3mm;break-inside:auto}
  html[data-report-theme="technical"] .cahier-print .sec .sn {position:absolute;top:0;left:0;font:700 12.2pt/1.2 var(--serif);padding:0;color:#111}
  html[data-report-theme="technical"] .cahier-print .sec .hd {border:0;padding:0 0 0 8mm;gap:4mm;margin-bottom:2mm;break-after:avoid;align-items:baseline}
  html[data-report-theme="technical"] .cahier-print .sec .hd h2 {font:700 12.2pt/1.2 var(--serif);text-transform:none;letter-spacing:0}
  html[data-report-theme="technical"] .cahier-print .sec .hd .ref {font:7pt/1.3 var(--sans);letter-spacing:0;white-space:normal;text-align:right;max-width:45%}
  html[data-report-theme="technical"] .cahier-print .kv {gap:0 7mm}
  html[data-report-theme="technical"] .cahier-print .kv .row {grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2mm;border-bottom:.35pt solid #ddd;padding:1.1mm 0;break-inside:avoid}
  html[data-report-theme="technical"] .cahier-print .kv .row .k {font:7.3pt/1.4 var(--sans);text-transform:none;letter-spacing:0;color:#555}
  html[data-report-theme="technical"] .cahier-print .kv .row .v {font:9pt/1.25 var(--serif);white-space:normal;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
  html[data-report-theme="technical"] .cahier-print .calc {font:10pt/1.35 var(--serif);padding:1.5mm 0;gap:2mm;break-inside:avoid}
  html[data-report-theme="technical"] .cahier-print .calc .ln {line-height:1.5;min-width:0;overflow-wrap:anywhere}
  html[data-report-theme="technical"] .cahier-print .calc .cl {font:7pt/1.35 var(--sans);white-space:normal;letter-spacing:0;max-width:46mm}
  html[data-report-theme="technical"] .cahier-print .calc .res {font-weight:700;border-bottom:.5pt solid #888}
  html[data-report-theme="technical"] .cahier-print :is(table.dt,table.cm,table.rh) {width:100%;border-collapse:collapse;font:9pt/1.25 var(--serif);margin:1.5mm 0 2mm;table-layout:auto}
  html[data-report-theme="technical"] .cahier-print :is(table.dt,table.cm,table.rh) thead {display:table-header-group}
  html[data-report-theme="technical"] .cahier-print :is(table.dt,table.cm,table.rh) tr {break-inside:avoid}
  html[data-report-theme="technical"] .cahier-print :is(table.dt,table.cm,table.rh) th {font:700 7.2pt/1.3 var(--sans);letter-spacing:0;text-transform:none;color:#333;border-top:.65pt solid #111;border-bottom:.5pt solid #888;padding:1.5mm 1.5mm;white-space:normal;vertical-align:bottom}
  html[data-report-theme="technical"] .cahier-print :is(table.dt,table.cm,table.rh) td {padding:1mm 1.5mm;border-bottom:.35pt solid #ccc;vertical-align:top;white-space:normal;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
  html[data-report-theme="technical"] .cahier-print :is(table.dt,table.cm,table.rh) tbody tr:nth-child(even) {background:#fff}
  html[data-report-theme="technical"] .cahier-print :is(table.dt,table.cm,table.rh) :is(th,td):first-child {padding-left:0}
  html[data-report-theme="technical"] .cahier-print :is(table.dt,table.cm,table.rh) :is(th,td):last-child {padding-right:0}
  html[data-report-theme="technical"] .cahier-print table.dt tr.sel td {font-weight:700;border-bottom:.65pt solid #111}
  html[data-report-theme="technical"] .cahier-print table.cm :is(td.nc,td.clc) {font:7.3pt/1.35 var(--sans);white-space:normal}
  html[data-report-theme="technical"] .cahier-print table.cm td.numc {font:9pt/1.25 var(--serif);white-space:normal}
  html[data-report-theme="technical"] .cahier-print .verdict {display:inline-block;font:700 7pt/1.2 var(--sans);letter-spacing:0;padding:.6mm 1mm;background:#fff;color:#111;border:.55pt solid #777;outline:0;white-space:nowrap}
  html[data-report-theme="technical"] .cahier-print .verdict.fail {border:1.1pt solid #111}
  html[data-report-theme="technical"] .cahier-print .verdict.warn {border:.55pt dashed #555}
  html[data-report-theme="technical"] .cahier-print .sign {gap:7mm;margin-top:4mm}
  html[data-report-theme="technical"] .cahier-print .sign :is(.role,.meta) {font:7pt/1.35 var(--sans);letter-spacing:0;text-transform:none;color:#555}
  html[data-report-theme="technical"] .cahier-print .sign .nm {font:10pt/1.3 var(--serif);min-height:6mm;overflow-wrap:anywhere}
  html[data-report-theme="technical"] .cahier-print .sign .sig {border-top:.55pt solid #777;margin-top:4mm}
  html[data-report-theme="technical"] .cahier-print .refs {border-top:.65pt solid #111;padding-top:2mm;margin-top:4mm;break-inside:auto}
  html[data-report-theme="technical"] .cahier-print :is(.refs,.revhist) .h {font:700 8pt/1.3 var(--sans);letter-spacing:0;margin-bottom:2mm;break-after:avoid}
  html[data-report-theme="technical"] .cahier-print .refs .n {font:8.5pt/1.3 var(--serif);break-inside:avoid}
  html[data-report-theme="technical"] .cahier-print .revhist {break-inside:auto;margin-top:4mm}
  html[data-report-theme="technical"] .cahier-print table.rh {font-size:8.2pt;table-layout:fixed}
  html[data-report-theme="technical"] .cahier-print table.rh th:first-child {width:14mm}
  html[data-report-theme="technical"] .cahier-print table.rh th:nth-child(2) {width:29mm}
  html[data-report-theme="technical"] .cahier-print table.rh th:nth-child(4) {width:25mm}
  html[data-report-theme="technical"] .cahier-print table.rh th:nth-child(5) {width:23mm}
  html[data-report-theme="technical"] .cahier-print .endmark {font:6.8pt/1.4 var(--sans);letter-spacing:0;border-top:.6pt solid #999;margin-top:3mm;padding-top:2mm;break-inside:avoid}
  html[data-report-theme="technical"] .cahier-print #amp-docstamp {font:6.8pt/1.55 var(--sans)!important;letter-spacing:0!important;text-transform:none!important;border:0!important;border-bottom:.5pt solid #bbb!important;border-radius:0!important;padding:0 0 2mm!important;margin:0 0 3mm!important;color:#333!important;overflow-wrap:anywhere;break-inside:avoid}
  html[data-report-theme="technical"] .cahier-print #amp-docstamp b {letter-spacing:0!important;border-color:#777!important;font-weight:700}
  html[data-report-theme="technical"] body>.cahier-print::after,
  html[data-report-theme="technical"] .cahier-print :is(.endmark::after,.af-closing,.gn-closing,.ct-closing) {font:7pt/1.35 var(--sans)!important;color:#555!important;letter-spacing:0!important;border-color:#bbb!important;background:#fff!important}
  html[data-report-theme="technical"] :is(body.amp-wm-draft,body.amp-wm-superseded)>.cahier-print::before {font-family:var(--sans);color:#111;letter-spacing:.08em}
  /* Dense schedules still use real type and repeating table headers. */
  html[data-report-theme="technical"] :is(.cahier-arc-flash,.cahier-generator,.cahier-cable-tray,.cahier-gf) table.dt {font-size:8.3pt}
  html[data-report-theme="technical"] .cahier-print svg {max-width:100%;font-family:var(--sans)}
  html[data-report-theme="technical"] .cahier-print .gf-scroll {overflow:visible}
  html[data-report-theme="technical"] .cahier-print .pc-print-chart {break-inside:avoid}
  /* Standalone battery method notebook: retain its synthetic review boundary. */
  html[data-report-layout="notebook"] body {--ink:#111;--muted:#555;--line:#ccc;--accent:#111;--wash:#f4f4f4;font:10pt/1.3 'Amp Report Serif',serif;color:#111}
  html[data-report-layout="notebook"] .notice {border:0;border-left:2pt solid #111;background:#fff;padding:0 0 0 3mm;margin:0 0 4mm;font:8.5pt/1.4 'Amp Report Sans',sans-serif}
  html[data-report-layout="notebook"] .document-head {display:block;text-align:center;border-top:2.2pt solid #111;border-bottom:.65pt solid #111;padding:4mm 0}
  html[data-report-layout="notebook"] .document-head h2 {font:700 24pt/1.08 'Amp Report Serif',serif}
  html[data-report-layout="notebook"] .document-head .eyebrow {font:7pt 'Amp Report Sans',sans-serif;letter-spacing:.04em}
  html[data-report-layout="notebook"] .stamp {display:inline-block;margin-top:2mm;font:700 7.5pt/1.4 'Amp Report Sans',sans-serif;border:.6pt solid #555;transform:none;color:#111}
  html[data-report-layout="notebook"] .metrics {background:#fff;border-bottom:.65pt solid #111;padding:3mm 0}
  html[data-report-layout="notebook"] .metrics strong {font:700 18pt/1.2 'Amp Report Serif',serif}
  html[data-report-layout="notebook"] :is(.metrics span,.metrics small,.section-title span) {font:7pt/1.4 'Amp Report Sans',sans-serif;letter-spacing:0}
  html[data-report-layout="notebook"] .section-title h2 {font:700 12.2pt/1.2 'Amp Report Serif',serif}
  html[data-report-layout="notebook"] .section-title {break-after:avoid}
  html[data-report-layout="notebook"] #report section {break-inside:auto;margin-top:4mm}
  html[data-report-layout="notebook"] table {font:9pt/1.25 'Amp Report Serif',serif}
  html[data-report-layout="notebook"] table th {font:700 7.2pt/1.3 'Amp Report Sans',sans-serif;border-top:.65pt solid #111;border-bottom:.5pt solid #888}
  html[data-report-layout="notebook"] table :is(th,td) {padding:1.4mm 1.5mm;overflow-wrap:anywhere}
  html[data-report-layout="notebook"] #trace-table {font-size:8pt}
  html[data-report-layout="notebook"] .qualification {border-color:#aaa;color:#333;background:#fff}
  html[data-report-layout="notebook"] .integrity {font:8pt/1.4 'Amp Report Sans',sans-serif}
  html[data-report-layout="notebook"] .signoff {break-inside:avoid}
  /* PLC is an editor snapshot, not a calculation/commissioning certificate. */
  html[data-report-layout="snapshot"] .plc-tool {--plc-ink:#111;--plc-ink-soft:#333;--plc-ink-mute:#555;--plc-copper:#111;--plc-copper-sm:#333;--plc-voltage:#111;--plc-ground:#fff;font-family:'Amp Report Serif',serif;color:#111}
  html[data-report-layout="snapshot"] #plc-print-title {font:700 24pt/1.1 'Amp Report Serif',serif;text-align:center;border-top:2.2pt solid #111;border-bottom:.65pt solid #111;padding:4mm 0;margin:3mm 0}
  html[data-report-layout="snapshot"] .plc-limitations {font:9pt/1.4 'Amp Report Serif',serif;border:0;border-top:.65pt solid #111;padding:3mm 0;break-inside:avoid}
  html[data-report-layout="snapshot"] .plc-limitations :is(h2,h3) {font:700 12pt 'Amp Report Serif',serif}
}
@media print {
  /* These diagrams already distinguish series with dashes, labels and badges.
     Change vector paint, never rasterize the SVG or filter the whole document. */
  html[data-report-theme="technical"] .pc-print-chart svg [stroke]:not([stroke="none"]) {stroke:#222!important}
  html[data-report-theme="technical"] .pc-print-chart svg [fill]:not([fill="none"]):not([fill="#fff"]):not([fill="#ffffff"]) {fill:#555!important}
  html[data-report-theme="technical"] .pc-print-chart .pc-gridline {stroke:#ccc!important}
  html[data-report-theme="technical"] .pc-print-chart .pc-axis path.domain {stroke:#999!important}
  html[data-report-theme="technical"] .pc-print-chart .pc-legend-bg {fill:#fff!important;stroke:#ccc!important}
  html[data-report-theme="technical"] .pc-print-chart .pc-fault-band {fill:#888!important}
  html[data-report-theme="technical"] .pc-print-chart svg text {fill:#333!important}
  html[data-report-theme="technical"] .pc-print-chart .pc-annot {stroke:#333!important}
  html[data-report-theme="technical"] .cahier-print .pvfig figcaption {color:#555}
  html[data-report-theme="technical"] .cahier-print .pvfig svg [fill="#f4f2eb"] {fill:#f4f4f4}
  html[data-report-theme="technical"] .cahier-print .pvfig svg :is([fill="#5e5d59"],[fill="#3d3d3a"]) {fill:#555}
  html[data-report-theme="technical"] .cahier-print .pvfig svg :is([stroke="#5e5d59"],[stroke="#d23b2e"]) {stroke:#333}
  html[data-report-layout="notebook"] #trace-table td {font-size:8pt}
  html[data-report-layout="snapshot"] body>*:not(.vd-stage) {display:none!important}
  html[data-report-layout="snapshot"] :is(html,body,.vd-stage,.vd-suite,.plc-tool) {background:#fff!important;color:#111!important;margin:0!important;padding:0!important;box-shadow:none!important;border:0!important;border-radius:0!important;max-width:none!important;min-height:0!important}
  html[data-report-layout="snapshot"] .plc-tool {display:flex!important;flex-direction:column;gap:3mm}
  html[data-report-layout="snapshot"] .plc-tool * {color:#333!important;border-color:#bbb!important;background-color:transparent!important;box-shadow:none!important}
  html[data-report-layout="snapshot"] .plc-head {order:0;border:0!important;padding:0!important}
  html[data-report-layout="snapshot"] .plc-title h1 {font:700 9pt 'Amp Report Sans',sans-serif!important}
  html[data-report-layout="snapshot"] .plc-title h1 em {font:inherit!important;color:#333!important}
  html[data-report-layout="snapshot"] .plc-eyebrow {font:7pt 'Amp Report Sans',sans-serif!important}
  html[data-report-layout="snapshot"] #plc-print-title {order:1}
  html[data-report-layout="snapshot"] #amp-doc-card {order:2;margin:0 0 3mm!important;border-radius:0!important;break-inside:avoid}
  html[data-report-layout="snapshot"] .plc-work {order:3;border:0!important;margin:0;padding:0;display:block}
  html[data-report-layout="snapshot"] .plc-strip {order:4;border:0!important;padding:0;font:8pt 'Amp Report Sans',sans-serif}
  html[data-report-layout="snapshot"] .plc-limitations {order:5}
  html[data-report-layout="snapshot"] .plc-foot:not(.plc-limitations) {order:6;font:8pt/1.4 'Amp Report Sans',sans-serif;margin:0;padding:3mm 0;border-top:.5pt solid #ccc!important}
  html[data-report-layout="snapshot"] :is(.plc-tools,.plc-side,.plc-overlay,.plc-arms,.plc-sim,.plc-a11y,.plc-hint,#amp-dc-actions) {display:none!important}
  html[data-report-layout="snapshot"] .plc-canvas {border:0!important;border-radius:0;padding:0}
  html[data-report-layout="snapshot"] .plc-svg {background:#fff!important}
  html[data-report-layout="snapshot"] .plc-svg .plc-sel {fill:none!important;stroke:none!important}
  html[data-report-layout="snapshot"] .plc-svg text {fill:#111!important}
  html[data-report-layout="snapshot"] .plc-svg [stroke]:not([stroke="none"]) {stroke:#111!important}
}
.amp-technical-field-value {display:none}
@media print {
  @page plc-snapshot {
    @bottom-left {content:'Ampacities · Interlock editor snapshot'}
    @bottom-right {content:counter(page) ' / ' counter(pages)}
  }
  html[data-report-layout="snapshot"] .vd-stage {page:plc-snapshot}
  html[data-report-layout="snapshot"] :is(body,.vd-stage,.vd-suite,.plc-tool)::before,
  html[data-report-layout="snapshot"] :is(body,.vd-stage,.vd-suite,.plc-tool)::after {display:none!important}
  html[data-report-layout="snapshot"] .plc-tool #amp-doc-card {padding:0!important;border:0!important;box-shadow:none!important;filter:none!important;backdrop-filter:none!important}
  html[data-report-layout="snapshot"] #amp-doc-card * {font-family:'Amp Report Sans',sans-serif!important;box-shadow:none!important;letter-spacing:0!important}
  html[data-report-layout="snapshot"] #amp-doc-card :is(.amp-dc-lbl,.amp-dc-brand,.amp-dc-id) {font-size:7pt!important;line-height:1.4}
  html[data-report-layout="snapshot"] #amp-doc-card :is(.amp-dc-val,.amp-dc-rrow) {font-size:8pt!important;line-height:1.4}
  html[data-report-layout="snapshot"] #amp-doc-card .amp-dc-grid {gap:2mm 4mm;margin:2mm 0}
  html[data-report-layout="snapshot"] #amp-doc-card .amp-dc-fld {min-width:0;gap:1mm}
  html[data-report-layout="snapshot"] #amp-doc-card .amp-dc-rule {margin:2mm 0}
  html[data-report-layout="snapshot"] #amp-doc-card .amp-dc-issue {margin:2mm 0}
  html[data-report-layout="snapshot"] #amp-doc-card .amp-dc-rrow {padding:1mm 0;break-inside:avoid}
  html[data-report-layout="snapshot"] #amp-doc-card :is(.amp-dc-revs,.amp-dc-reason) {margin:2mm 0}
  html[data-report-layout="snapshot"] #amp-doc-card .amp-dc-reg {display:none}
  html[data-report-layout="snapshot"] #amp-doc-card[data-print-values="ready"] .amp-dc-fld input {display:none!important}
  html[data-report-layout="snapshot"] .amp-technical-field-value {display:block;font:8.3pt/1.35 'Amp Report Sans',sans-serif;white-space:normal;overflow-wrap:anywhere;min-width:0}
  html[data-report-layout="snapshot"] #plc-print-title {padding:3mm 0;margin:1mm 0;color:#111!important;border-top:2.2pt solid #111!important;border-bottom:.65pt solid #111!important}
}
@media print {
  html[data-report-layout="snapshot"] {background:#fff!important}
  html[data-report-layout="snapshot"] #amp-doc-banner {display:none!important} /* same record status is retained in the card */
  html[data-report-layout="snapshot"] .plc-tool {gap:2mm}
  html[data-report-layout="snapshot"] #amp-doc-card .amp-dc-fld {margin:0!important;padding:0!important;min-height:0!important}
  html[data-report-layout="snapshot"] #amp-doc-card .amp-dc-grid {padding:0!important;gap:1mm 4mm!important;margin:1.5mm 0!important}
  html[data-report-layout="snapshot"] #amp-doc-card .amp-dc-rule {margin:1mm 0!important}
  html[data-report-layout="snapshot"] #amp-doc-card .amp-dc-grid:has(#vd-title) {grid-template-columns:repeat(2,minmax(0,1fr))}
  html[data-report-layout="snapshot"] #amp-doc-card .amp-dc-fld:has(#vd-title) {display:none} /* complete title appears above the card */
  html[data-report-layout="snapshot"] #amp-doc-card .amp-dc-issue {margin:1mm 0!important}
}
@media print {
  html[data-report-theme="technical"] .cahier-print .refs {break-inside:avoid}
  html[data-report-layout="snapshot"] .plc-tool #amp-doc-card {break-inside:auto}
  html[data-report-layout="snapshot"] #amp-doc-card .amp-dc-rrow .rr {overflow:visible;white-space:normal;overflow-wrap:anywhere}
}
@media print {
  /* A report-level title row should use the sheet width, not a quarter-column. */
  html[data-report-theme="technical"] .cahier-print>.kv {grid-template-columns:minmax(0,1fr);margin-bottom:3mm}
  html[data-report-theme="technical"] .cahier-print>.kv>.row {grid-template-columns:17mm minmax(0,1fr)}
  html[data-report-theme="technical"] .cahier-print>.kv>.row>.v {text-align:left}
  /* Reserve closing-note space in the long UPS assumption/revision schedules. */
  html[data-report-theme="technical"] .cahier-ups-sizing :is(table.dt,table.cm,table.rh) td {padding-top:.8mm;padding-bottom:.8mm}
  html[data-report-theme="technical"] .cahier-ups-sizing .refs {margin-top:2.5mm}
  html[data-report-theme="technical"] .cahier-ups-sizing .revhist {margin-top:2mm}
}
@media print {
  html[data-report-theme="technical"] .cahier-ups-sizing .endmark {display:block;break-before:avoid;break-inside:avoid}
  html[data-report-theme="technical"] .cahier-ups-sizing .revhist,
  html[data-report-theme="technical"] .cahier-ups-sizing .revhist table,
  html[data-report-theme="technical"] .cahier-ups-sizing .revhist tbody,
  html[data-report-theme="technical"] .cahier-ups-sizing .revhist tr:last-child {break-after:avoid}
}
@media print {
  html[data-report-theme="technical"] .cahier-ups-sizing table.dt:has(>thead>tr>th:nth-child(4):last-child) {table-layout:fixed}
  html[data-report-theme="technical"] .cahier-ups-sizing table.dt:has(>thead>tr>th:nth-child(4):last-child) th:nth-child(1) {width:24%}
  html[data-report-theme="technical"] .cahier-ups-sizing table.dt:has(>thead>tr>th:nth-child(4):last-child) th:nth-child(2) {width:14%}
  html[data-report-theme="technical"] .cahier-ups-sizing table.dt:has(>thead>tr>th:nth-child(4):last-child) th:nth-child(3) {width:13%}
  html[data-report-theme="technical"] .cahier-ups-sizing table.dt:has(>thead>tr>th:nth-child(4):last-child) th:nth-child(4) {width:49%}
}

@media print {
  /* Preserve the existing high-contrast simulator-scope warning contract. */
  html[data-report-layout="snapshot"] #plc-model-limitations,
  html[data-report-layout="snapshot"] #plc-model-limitations * {color:#111!important;background-color:#fff!important}
}

@media print {
  /* The technical layout gives references and controls their own final sheet
     when needed. Do not strand just the short revision row on that sheet. */
  html[data-report-theme="technical"] .cahier-cable-sizing .refs {break-after:avoid}
}
