/* Print / PDF stylesheet for all guides. Expands every answer, drops the interactive chrome. */
@page { size: A4; margin: 16mm 14mm 18mm; }

html, body { background: #fff !important; color: #111 !important; }
body { font-size: 10.5pt !important; line-height: 1.5 !important; -webkit-print-color-adjust: economy; print-color-adjust: economy; }

/* hide interactive UI */
header, .portal-link, .dm-btn, .search-bar, .filters, .stats, .toolbar, .count-bar, .chevron,
.fm-bar, .fm-header, .fm-card, .fm-prog, .fm-prog-wrap, .fm-meta, .fm-q, .fm-answer, .fm-ans, .fm-btns,
#fm-bar, #fmBar, .ekn-bar, .sp-btn, .sp-timer, .sp-hint, .sp-dot, .rubric-actions,
button, input, select, textarea { display: none !important; }

/* page frame */
.wrap, main, .container { max-width: none !important; padding: 0 !important; margin: 0 !important; }

/* expand all answers */
.q-body, .q-ans, .q-answer { display: block !important; max-height: none !important; height: auto !important; overflow: visible !important; opacity: 1 !important; visibility: visible !important; }
.q-card { display: block !important; border: 0 !important; border-top: 1px solid #ccc !important; border-radius: 0 !important; box-shadow: none !important; background: #fff !important; margin: 0 0 6mm !important; padding-top: 3mm !important; overflow: visible !important; }
.q-header { padding: 0 0 2mm !important; display: flex !important; gap: 8px; break-after: avoid; page-break-after: avoid; }
.q-title { font-size: 11.5pt !important; font-weight: 700 !important; color: #000 !important; }
.q-num { font-weight: 700; color: #555 !important; }
.badge { border: 1px solid #aaa !important; background: #fff !important; color: #333 !important; font-size: 8pt !important; padding: 1px 6px !important; border-radius: 8px; }
.q-right { margin-left: auto; }

/* body typography */
.q-body { padding: 0 0 0 4mm !important; color: #111 !important; }
.q-body p, .q-body li { orphans: 3; widows: 3; }
.sec { font-weight: 700; font-size: 8.5pt; text-transform: uppercase; letter-spacing: .04em; color: #333 !important; margin: 3mm 0 1mm; break-after: avoid; }
.cmds, .cmd, pre, code { font-family: ui-monospace, Menlo, Consolas, monospace !important; font-size: 8.8pt !important; }
.cmd, pre { background: #f4f4f1 !important; color: #111 !important; border-left: 3px solid #888 !important; padding: 1.5mm 3mm !important; margin: 1mm 0 !important; white-space: pre-wrap !important; word-break: break-word; break-inside: avoid; }
table { border-collapse: collapse; width: 100%; break-inside: avoid; }
th, td { border: 1px solid #bbb !important; padding: 2px 5px !important; font-size: 9pt !important; }
a { color: #111 !important; text-decoration: none !important; }
.q-body a[href^="http"]::after { content: ""; }

/* spoken answer + docs: show the content, not the controls */
.sp-block { display: block !important; border: 1px solid #1D9E75 !important; border-left: 4px solid #1D9E75 !important; background: #f2faf6 !important; color: #111 !important; padding: 2.5mm 3.5mm !important; margin: 0 0 3mm !important; break-inside: avoid; }
.sp-head { display: block !important; }
.sp-title { font-weight: 700; font-size: 9pt; }
.sp-text, .sp-follow, .sp-text[hidden], .sp-follow[hidden] { display: block !important; }
.sp-text { margin-top: 1.5mm; white-space: pre-wrap; }
.sp-follow { font-size: 9.5pt; margin-top: 1.5mm; }
.docs-block { display: block !important; border-top: 1px dashed #aaa; margin-top: 3mm; padding-top: 1.5mm; font-size: 8.8pt; break-inside: avoid; }
.docs-block .docs-title { font-weight: 700; }
.docs-block a { color: #0b4f8a !important; text-decoration: underline !important; }
.docs-block a::after { content: " (" attr(href) ")"; color: #555; font-size: 7.5pt; word-break: break-all; }

/* cover */
.print-cover { display: block !important; text-align: left; padding: 38mm 0 20mm; border-bottom: 3px solid #1D9E75; margin-bottom: 10mm; break-after: page; page-break-after: always; }
.print-cover .pc-brand { font-size: 11pt; letter-spacing: .12em; text-transform: uppercase; color: #0F6E56; font-weight: 700; }
.print-cover h1 { font-size: 27pt; line-height: 1.15; margin: 6mm 0 4mm; color: #000; }
.print-cover .pc-sub { font-size: 12pt; color: #333; margin-bottom: 14mm; }
.print-cover dl { display: grid; grid-template-columns: 38mm 1fr; gap: 2mm 4mm; font-size: 10.5pt; }
.print-cover dt { color: #555; }
.print-cover dd { margin: 0; font-weight: 600; }
.print-cover .pc-note { margin-top: 16mm; font-size: 9pt; color: #555; line-height: 1.5; }

/* Diagonal watermark on every printed / PDF page */
body::after { content: "interviewhub.eknathalabs.com"; position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%) rotate(-35deg); white-space: nowrap; font: 700 46pt Arial, Helvetica, sans-serif; letter-spacing: .04em; color: rgba(15, 110, 86, .13); pointer-events: none; z-index: 2147483647; }
.dg-block { display: block !important; break-inside: avoid; margin-top: 3mm; padding: 1.5mm 2mm; border: 1px solid #999; border-left: 3px solid #7F77DD; background: #fff !important; }
.dg-block .dg-title { font-weight: 700; font-size: 8.8pt; }
.dg-block .dg-scroll { overflow: visible; }
.dg-block .dg-svg { max-width: 100%; height: auto; }
.dg-svg rect.b, .dg-svg rect.h, .dg-svg rect.c { fill: #fff !important; stroke: #444 !important; }
.dg-svg text { fill: #000 !important; }

/* Partially visible watermark peeking from the bottom edge of every printed / PDF page */
html::after { content: "InterviewHub · interviewhub.eknathalabs.com"; position: fixed; left: 0; right: 0; bottom: 0; height: 9mm; overflow: hidden; line-height: 18mm; text-align: center; white-space: nowrap; font: 800 30pt/18mm Arial, Helvetica, sans-serif; letter-spacing: .05em; color: rgba(15, 110, 86, .16); pointer-events: none; z-index: 2147483646; }
