/* NetzBauTools 5.0 – eigenständige, kompakte Druckvorschau für Grabenprofile.
   Das print-only DOM wird beim Klick auf „Drucken / PDF“ erzeugt. */
#nbt-print-portal{position:fixed;inset:0;z-index:3000;overflow:auto;background:#162d42bc;padding:22px 14px 45px;display:flex;align-items:flex-start;justify-content:center}
#nbt-print-portal .nbt-pr-modal{min-width:0;width:100%;max-width:860px}
#nbt-print-portal .nbt-pr-toolbar{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;gap:14px;align-items:center;padding:13px 17px;background:#103450;color:#fff;border-radius:10px 10px 0 0;box-shadow:0 7px 18px #06263b22}
#nbt-print-portal .nbt-pr-toolbar strong{display:block;font-size:15px}
#nbt-print-portal .nbt-pr-toolbar span{display:block;font-size:11px;color:#c7e1f1;margin-top:4px}
#nbt-print-portal .nbt-pr-controls{display:flex;flex-wrap:wrap;gap:8px}
#nbt-print-portal .nbt-pr-controls button{border:1px solid #74accc;background:white;color:#143e5b;padding:10px 13px;font-weight:700;border-radius:6px;cursor:pointer;font-size:12px}
#nbt-print-portal .nbt-pr-controls button.nbt-pr-print{background:#0d80c1;border-color:#0d80c1;color:white}
#nbt-print-portal .nbt-pr-sheet{width:100%;background:white;color:#173650;min-height:970px;padding:40px 43px 30px;box-shadow:0 10px 32px #082c4242;font-family:Arial,'Segoe UI',sans-serif;font-size:12px;line-height:1.4}
#nbt-print-portal .nbt-pr-head{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:2px solid #104c71;padding-bottom:12px;gap:16px}
#nbt-print-portal .nbt-pr-brand{font-weight:850;font-size:23px;letter-spacing:-.8px;color:#0e304b;line-height:1}
#nbt-print-portal .nbt-pr-brand span{color:#0b75b6}
#nbt-print-portal .nbt-pr-brand i{font-size:13px;font-style:normal;color:#1884c2}
#nbt-print-portal .nbt-pr-eyebrow{letter-spacing:1.6px;font-size:9px;color:#68869a;margin-top:9px;font-weight:700}
#nbt-print-portal .nbt-pr-date{font-size:10px;color:#526f83;text-align:right;line-height:1.5}
#nbt-print-portal .nbt-pr-sheet>h1{font-size:18px;line-height:1.23;font-weight:800;color:#133951;margin:18px 0 14px}
#nbt-print-portal .nbt-pr-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #d6e3eb;border-radius:6px;overflow:hidden;margin-bottom:20px}
#nbt-print-portal .nbt-pr-kpis>div{padding:10px 12px;border-right:1px solid #d6e3eb;background:#f4f9fc;min-width:0}
#nbt-print-portal .nbt-pr-kpis>div:last-child{border-right:0}
#nbt-print-portal .nbt-pr-kpis span{display:block;font-size:10px;color:#58758a}
#nbt-print-portal .nbt-pr-kpis strong{font-size:17px;color:#14496b;display:block;margin-top:4px}
#nbt-print-portal .nbt-pr-figure-head{display:flex;gap:8px;justify-content:space-between;align-items:baseline;border-bottom:1px solid #dfe8ee;margin-bottom:7px}
#nbt-print-portal .nbt-pr-sheet h2{font-size:12px;font-weight:800;margin:0 0 7px;color:#134b70}
#nbt-print-portal .nbt-pr-figure-head>span{font-size:9px;color:#8799a5}
#nbt-print-portal .nbt-pr-svg{margin:auto;max-width:100%;}
#nbt-print-portal .nbt-pr-svg svg{display:block;max-height:365px;max-width:100%;width:100%;height:auto;border:1px solid #e7dfd4;border-radius:4px;}
#nbt-print-portal .nbt-pr-table-wrap{margin-top:18px}
#nbt-print-portal .nbt-pr-table{border-collapse:collapse;width:100%;table-layout:fixed;font-size:10.6px;line-height:1.35}
#nbt-print-portal .nbt-pr-table th{color:#315b74;text-align:left;background:#eaf2f8;font-weight:750;border-bottom:1px solid #a5c1d0;padding:7px 6px}
#nbt-print-portal .nbt-pr-table td{border-bottom:1px solid #e2e9ee;vertical-align:top;padding:8px 6px;overflow-wrap:anywhere}
#nbt-print-portal .nbt-pr-table td:not(:nth-child(2)){white-space:normal}
#nbt-print-portal .nbt-pr-table b{font-weight:760}
#nbt-print-portal .nbt-pr-table small{display:block;font-size:9px;color:#698399}
#nbt-print-portal .nbt-pr-no{font-weight:800;color:#1875af}
#nbt-print-portal .nbt-pr-legend{margin:13px 0 10px;display:grid;gap:3px;color:#526c7d;font-size:10px}
#nbt-print-portal .nbt-pr-results{border-top:1px solid #cbdce8;border-bottom:1px solid #cbdce8;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 0;font-size:10px;color:#29495d}
#nbt-print-portal .nbt-pr-sep{color:#92a6b3}
#nbt-print-portal .nbt-pr-foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:7px;padding:12px 0 0;margin-top:14px;font-size:9px;color:#6b8494;border-top:1px solid #dce6eb}
@media(max-width:650px){#nbt-print-portal{padding:0}#nbt-print-portal .nbt-pr-toolbar{border-radius:0;flex-wrap:wrap}#nbt-print-portal .nbt-pr-sheet{padding:19px 12px;min-height:0}#nbt-print-portal .nbt-pr-kpis>div{padding:6px}#nbt-print-portal .nbt-pr-kpis strong{font-size:12px}#nbt-print-portal .nbt-pr-table{font-size:9px}#nbt-print-portal .nbt-pr-table td,#nbt-print-portal .nbt-pr-table th{padding:4px 3px}}
@page{size:A4 portrait;margin:11mm 12mm}
@media print{
 html,body{background:#fff !important;margin:0!important;padding:0!important;height:auto!important;overflow:visible!important}
 body:has(#nbt-print-portal)>:not(#nbt-print-portal){display:none !important}
 #nbt-print-portal{display:block!important;position:static!important;inset:auto!important;padding:0!important;margin:0!important;width:auto!important;overflow:visible!important;background:white!important}
 #nbt-print-portal .nbt-pr-modal{max-width:none!important;width:100%!important}
 #nbt-print-portal .nbt-pr-toolbar{display:none!important}
 #nbt-print-portal .nbt-pr-sheet{box-shadow:none!important;width:100%!important;min-height:0!important;padding:0!important;margin:0!important;border:0!important;background:#fff!important;font-size:9pt!important;color:#142c3d!important}
 #nbt-print-portal .nbt-pr-head{padding-bottom:2mm!important}
 #nbt-print-portal .nbt-pr-brand{font-size:16pt!important}
 #nbt-print-portal .nbt-pr-eyebrow{font-size:7pt!important;margin-top:1.5mm!important}
 #nbt-print-portal .nbt-pr-date{font-size:7pt!important}
 #nbt-print-portal .nbt-pr-sheet>h1{margin:4mm 0 3mm!important;font-size:13pt!important}
 #nbt-print-portal .nbt-pr-kpis{margin:0 0 4mm!important;break-inside:avoid}
 #nbt-print-portal .nbt-pr-kpis>div{padding:2.3mm 2mm!important}
 #nbt-print-portal .nbt-pr-kpis strong{font-size:11pt!important;margin-top:1mm!important}
 #nbt-print-portal .nbt-pr-kpis span{font-size:7pt!important}
 #nbt-print-portal .nbt-pr-figure-head{margin-bottom:1mm!important}
 #nbt-print-portal .nbt-pr-figure-head h2{font-size:9pt!important;margin:0 0 1.2mm!important}
 #nbt-print-portal .nbt-pr-figure-head>span{font-size:7pt!important}
 #nbt-print-portal .nbt-pr-figure{break-inside:avoid}
 #nbt-print-portal .nbt-pr-svg svg{border:0!important;width:100%!important;max-height:107mm!important;height:auto!important;break-inside:avoid}
 #nbt-print-portal .nbt-pr-table-wrap{margin-top:3mm!important}
 #nbt-print-portal .nbt-pr-table-wrap>h2{font-size:9pt!important;margin:0 0 1.3mm!important}
 #nbt-print-portal .nbt-pr-table{font-size:7.5pt!important;line-height:1.23!important}
 #nbt-print-portal .nbt-pr-table th{padding:1.7mm 1mm!important}
 #nbt-print-portal .nbt-pr-table td{padding:1.9mm 1mm!important}
 #nbt-print-portal .nbt-pr-table small{font-size:6.8pt!important}
 #nbt-print-portal .nbt-pr-table tr{break-inside:avoid}
 #nbt-print-portal .nbt-pr-legend{font-size:7pt!important;margin:2mm 0!important;gap:.4mm!important}
 #nbt-print-portal .nbt-pr-results{font-size:7pt!important;padding:2mm 0!important;gap:1.5mm!important;break-inside:avoid}
 #nbt-print-portal .nbt-pr-foot{font-size:6.8pt!important;padding-top:2mm!important;margin-top:3mm!important;break-inside:avoid}
 #nbt-print-portal .nbt-pr-sheet{print-color-adjust:exact;-webkit-print-color-adjust:exact}
}

/* Warnbandangaben kompakt im selben technischen A4-Blatt */
#nbt-print-portal .nbt-pr-warnbands{margin-top:10px}
#nbt-print-portal .nbt-pr-warnbands .nbt-pr-table td{padding:5px 6px}
@media print{#nbt-print-portal .nbt-pr-warnbands{margin-top:2mm!important}#nbt-print-portal .nbt-pr-warnbands .nbt-pr-table td{padding:1.2mm 1mm!important}}
/* Sandzone bleibt auf dem kompakten A4-Blatt ablesbar. */
#nbt-print-portal .nbt-pr-sand-table{margin-top:10px}
#nbt-print-portal .nbt-pr-sand-table .nbt-pr-table td{padding:4px 6px}
#nbt-print-portal .nbt-pr-sandtotal{font-size:10px;background:#fff8e8;border:1px solid #ead19e;border-radius:4px;margin-top:5px;padding:6px 8px}
@media print{
 #nbt-print-portal .nbt-pr-sand-table{margin-top:2mm!important;break-inside:avoid}
 #nbt-print-portal .nbt-pr-sand-table .nbt-pr-table td{padding:1.1mm 1mm!important}
 #nbt-print-portal .nbt-pr-sandtotal{font-size:7pt!important;margin-top:1mm!important;padding:1mm 1.5mm!important}
}
/* Alte globale Druckregel blendete versehentlich den Kopf/Fuß des Druckblatts aus. */
@media print{
 #nbt-print-portal header.nbt-pr-head{display:flex!important}
 #nbt-print-portal footer.nbt-pr-foot{display:flex!important}
}

/* Alpha 0.3.9: globales Nutzerlogo im kompakten A4-Kopf */
#nbt-print-portal .nbt-pr-logo-wrap{display:flex;align-items:center;gap:15px;min-width:0}
#nbt-print-portal .nbt-pr-user-logo{display:block;max-height:58px;max-width:132px;object-fit:contain;flex-shrink:0}
@media print{#nbt-print-portal .nbt-pr-user-logo{max-height:14mm;max-width:36mm}}
