/* Spexo modern print / Save-as-PDF stylesheet */
#appRoot{display:none!important}
#printableHistory{display:block!important;width:100%;background:#fff;color:#15233b;font-family:Inter,Arial,sans-serif}
@page{size:A4;margin:12mm 11mm 14mm}
*{box-sizing:border-box;-webkit-print-color-adjust:exact;print-color-adjust:exact}

.print-report-shell,.print-result-report{max-width:190mm;margin:0 auto;background:#fff}
.print-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 0 10px;border-bottom:2px solid #2456a4}
.print-brand-block{display:flex;align-items:center;gap:10px;min-width:0}
.print-brand-block img{width:138px;height:auto;display:block}
.print-brand-block div{display:flex;flex-direction:column;gap:2px;border-left:1px solid #d5dfef;padding-left:10px}
.print-brand-block span{font-size:10px;font-weight:800;letter-spacing:.04em;color:#18325d}
.print-brand-block small{font-size:6.5px;letter-spacing:.14em;color:#5f7190;font-weight:700}
.print-meta{text-align:right;display:flex;flex-direction:column;gap:3px;white-space:nowrap}
.print-meta b{font-size:6.5px;letter-spacing:.12em;color:#6b7b94}
.print-meta span{font-size:8px;color:#233a60;font-weight:700}
.print-body{padding:10px 0 0}
.print-hero{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:14px 16px;border:1px solid #d7e3f4;border-radius:14px;background:#f7faff;margin-bottom:10px;break-inside:avoid}
.print-eyebrow{font-size:7px;letter-spacing:.14em;font-weight:800;color:#2a67b7}
.print-hero h1{font-size:20px;line-height:1.1;margin:4px 0 5px;color:#14294d;letter-spacing:-.02em}
.print-hero p{font-size:8.5px;line-height:1.5;margin:0;color:#60718b;max-width:118mm}
.print-hero-badge{width:58px;height:58px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:0 0 58px;background:#1d4f9a;color:#fff;border:3px solid #dbe9ff}
.print-hero-badge b{font-size:17px;line-height:1}.print-hero-badge span{font-size:7px;margin-top:3px;text-transform:uppercase;letter-spacing:.08em}
.print-summary-card,.print-table-card{border:1px solid #d9e3f1;border-radius:13px;overflow:hidden;margin-bottom:10px;break-inside:avoid}
.print-summary-heading,.print-table-title{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid #dce5f1;background:#fbfcff}
.print-summary-heading span,.print-table-title span{font-size:8px;letter-spacing:.08em;font-weight:800;color:#214e94}
.print-summary-heading small,.print-table-title small{font-size:7px;color:#75849a}
.print-summary{display:grid;grid-template-columns:repeat(4,1fr);padding:12px 12px 9px;gap:0}
.print-summary div{padding:0 10px;border-right:1px dashed #c9d6e8}.print-summary div:last-child{border-right:0}
.print-summary b{display:block;font-size:16px;line-height:1.15;color:#193e79;font-weight:800;white-space:nowrap}.print-summary b small{font-size:8px;color:#6a7a91}.print-summary span{display:block;margin-top:4px;font-size:7px;text-transform:uppercase;letter-spacing:.06em;color:#6c7c94}
.print-latest-test{display:flex;align-items:center;gap:8px;padding:8px 12px;border-top:1px solid #e0e8f2;background:#f8fbff;font-size:7.5px;color:#697991}.print-latest-test b{color:#1e3559}.print-latest-test em{font-style:normal;margin-left:auto}
table.print-table{width:100%;border-collapse:collapse;font-size:8px}table.print-table th{padding:8px 7px;text-align:left;background:#eff5ff;color:#274466;font-size:6.8px;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid #cfddf0}table.print-table td{padding:7px;border-bottom:1px solid #e6edf5;color:#32435d;vertical-align:middle}table.print-table tr{break-inside:avoid}table.print-table tbody tr:nth-child(even){background:#fbfcfe}.print-row-number{color:#8493a8;font-weight:700}.print-table small{font-size:6.5px;color:#7a899c}.print-speed-down{color:#1f63bd}.print-speed-up{color:#6649b8}
.print-empty{min-height:95mm;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px dashed #c6d5e9;border-radius:14px;color:#6a7b92;gap:8px}.print-empty b{font-size:16px;color:#234575}.print-empty span{font-size:9px;max-width:100mm;line-height:1.5}
.print-footer{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #dce5f0;margin-top:10px;padding-top:7px;font-size:6.8px;color:#718096}

/* Single-result report */
.print-result-report{padding:0}.prr-header{position:relative;text-align:center;padding:16px;border:1px solid #d7e3f4;border-radius:14px;background:#f7faff}.prr-status-ribbon{position:absolute;right:10px;top:10px;padding:4px 9px;border:1px solid #b9d3f6;border-radius:999px;color:#1e5ba9;font-size:6.5px;font-weight:800;letter-spacing:.08em}.prr-header img{width:165px;height:auto;margin:0 auto 7px}.prr-header h1{margin:0;font-size:19px;color:#152d56;letter-spacing:.02em}.prr-header p{margin:5px 0 0;font-size:8.5px;color:#65758d}.prr-rule{display:flex;align-items:center;gap:7px;width:190px;margin:8px auto;color:#2a67b7}.prr-rule span{height:1px;flex:1;background:#2a67b7}.prr-rule b{font-size:12px}.prr-generated{font-size:7px;color:#78879c;margin-top:6px}
.prr-meta{display:grid;grid-template-columns:repeat(6,1fr);border:1px solid #d9e3f1;border-radius:12px;padding:9px 4px;margin:9px 0;background:#fbfcff}.prr-meta div{padding:0 7px;border-right:1px dashed #cbd8e8}.prr-meta div:last-child{border-right:0}.prr-meta b{display:block;font-size:6.5px;color:#6a7a91;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.prr-meta span{display:block;font-size:7.8px;color:#1e3457;font-weight:700;overflow-wrap:anywhere}
.prr-section{position:relative;border:1px solid #d9e3f1;border-radius:12px;padding:18px 10px 10px;margin:9px 0}.prr-section h2{position:absolute;top:-1px;left:-1px;margin:0;padding:6px 13px;border-radius:12px 0 11px 0;background:#2456a4;color:#fff;font-size:7.5px;letter-spacing:.08em}.prr-results{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.prr-results>div{border:1px solid #e0e8f2;border-radius:10px;background:#fafcff;padding:10px 5px;text-align:center}.prr-results b{display:block;font-size:6.5px;color:#667791;letter-spacing:.05em}.prr-results strong{display:block;font-size:16px;color:#204f98;margin:7px 0 3px}.prr-results strong small{font-size:8px}.prr-results span{font-size:7px;color:#687890}.prr-details{display:grid;grid-template-columns:repeat(4,1fr)}.prr-details div{padding:4px 9px;border-right:1px dashed #cbd8e8}.prr-details div:last-child{border-right:0}.prr-details b{display:block;font-size:6.5px;color:#6b7b92;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.prr-details span{font-size:10px;color:#1c3762;font-weight:800}.prr-grade-bar{display:flex;justify-content:space-between;align-items:center;border:1px solid #dbe5f2;border-radius:10px;padding:9px 13px;margin:9px 0}.prr-grade-bar span{font-size:7px;letter-spacing:.06em;text-transform:uppercase;color:#6a7b92}.prr-grade-bar b{font-size:10px}.prr-grade-a{background:#eef9f3}.prr-grade-a b{color:#10815a}.prr-grade-b{background:#eef5ff}.prr-grade-b b{color:#2456a4}.prr-grade-c{background:#fff8ed}.prr-grade-c b{color:#a56411}.prr-grade-d{background:#fff2f2}.prr-grade-d b{color:#bd3a45}.prr-note{display:grid;grid-template-columns:1.2fr 1fr;gap:10px;border:1px solid #dce5f0;border-radius:10px;background:#fafcff;padding:8px 10px;font-size:7px;line-height:1.45;color:#52627a}.prr-note>div+div{border-left:1px dashed #cbd8e8;padding-left:10px}.prr-note small{font-size:6.5px;color:#77869a}.prr-footer{text-align:center;margin-top:8px;padding-top:6px;border-top:1px solid #dce5f0;font-size:6.5px;color:#77869a}
@media print{html,body{margin:0;padding:0;background:#fff}.print-report-shell,.print-result-report{max-width:none}.print-header,.print-hero,.print-summary-card,.print-table-card,.prr-header,.prr-meta,.prr-section,.prr-grade-bar,.prr-note{break-inside:avoid}.print-table-card{break-inside:auto}.print-footer{break-inside:avoid}table.print-table thead{display:table-header-group}}

/* V21 Server/IP print presentation */
.print-server-cell b{display:block;font-weight:700}.print-server-cell small{display:block;margin-top:2px;color:#65758d;font-size:7px;line-height:1.25}
