/* PLAIT.tech — print stylesheet for the content surface (DESIGN_CONTRACT.md §2.5; RESOURCE_MODEL.md §7 Print).
   No chrome, the document at full measure, one ink, page breaks at headings, the version footer kept. Loaded with media="print". */
@page { margin: 18mm 16mm; }
html, body { background: #fff !important; color: #111 !important; }
.shell-header, .context-bar, .title-bar, .surface-aside, .surface-actions, .stage-foot, .viewer-bar, .viewer-progress, .doc-related, .doc-comments, .doc-steps, .prompt-copy, #plait-drawer, .toast, .skip-link, .doc-body .btn { display: none !important; }
body:has(.viewer) main.stage { display: none !important; }
.viewer, .viewer.viewer-page { position: static !important; display: block !important; padding: 0 !important; background: none !important; }
.viewer-panel { display: block !important; border: 0 !important; box-shadow: none !important; border-radius: 0 !important; overflow: visible !important; min-height: 0 !important; }
.viewer-body { overflow: visible !important; padding: 0 !important; display: block !important; }
.surface, .stage, .surface-page { display: block !important; min-height: 0 !important; max-width: none !important; padding: 0 !important; height: auto !important; overflow: visible !important; }
.surface-grid { display: block !important; }
.surface-main { overflow: visible !important; padding: 0 !important; background: none !important; }
.surface-document { padding: 0 !important; max-width: none !important; margin: 0 !important; }
.sheet-frame { box-shadow: none !important; padding: 0 !important; }
.print-head { display: flex !important; align-items: center; gap: 10px; padding-bottom: 10px; margin-bottom: 18px; border-bottom: 1px solid #111; font: 600 11px/1 Inter, system-ui, sans-serif; letter-spacing: .14em; text-transform: uppercase; color: #111; }
.print-head img { height: 12px; width: auto; }
.print-head .url { margin-left: auto; letter-spacing: 0; text-transform: none; font-weight: 500; color: #555; }
.doc-head { border-bottom-color: #ccc; }
.kicker { color: #555 !important; }
.doc-title { font-size: 24pt; color: #111 !important; }
.deck { font-size: 12.5pt; color: #333 !important; }
.doc-body { font-size: 11pt; line-height: 1.55; max-width: none; color: #111 !important; }
.doc-body h2 { break-after: avoid; page-break-after: avoid; font-size: 15pt; margin-top: 16pt; color: #111 !important; }
.doc-body h3 { break-after: avoid; page-break-after: avoid; font-size: 12.5pt; color: #111 !important; }
.doc-body blockquote, .doc-body table, .doc-body pre, .doc-body ul, .doc-body ol, .doc-section { break-inside: avoid; page-break-inside: avoid; }
.doc-body pre { background: #f3f3f3 !important; color: #111 !important; border: 1px solid #bbb; padding-top: 12pt !important; }
.doc-body blockquote { background: #f6f6f6 !important; border-left-color: #111 !important; color: #111 !important; }
.doc-body th { background: #eee !important; color: #111 !important; }
.doc-body th, .doc-body td { border-color: #999 !important; }
.doc-body td:empty { height: 26pt; }
.doc-body a { color: inherit; text-decoration: underline; }
.doc-meta { display: flex !important; margin-top: 16pt; font-size: 8.5pt; color: #555 !important; border-top-color: #ccc; }
.doc-meta a { color: inherit; }
