/* Testicon – Informationsblätter (statisch, ohne JavaScript) */
html,body{margin:0}
body{background:#f5f5f4;font-family:Inter,Helvetica,Arial,sans-serif;color:#16202E}
a{color:#022E5F;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}
a:hover{color:#3F7DBB}
.keep{break-inside:avoid;orphans:3;widows:3}
html,body{-webkit-print-color-adjust:exact;print-color-adjust:exact}
:where(h1,h2,h3,h4,h5,h6){text-wrap:balance}
:where(p,li,blockquote,figcaption){text-wrap:pretty}
doc-page{display:block;font-family:Inter,Helvetica,Arial,sans-serif;color:#16202E}

/* Kopfleiste im Stil der Website */
.ib-kopf{position:sticky;top:0;z-index:50;background:#FFFFFF;border-bottom:1px solid #E4E9F0;font-family:'Archivo',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;-webkit-font-smoothing:antialiased}
.ib-kopf__inner{max-width:1200px;margin:0 auto;padding:14px clamp(20px,4vw,60px);display:flex;align-items:center;justify-content:space-between;gap:16px}
.ib-kopf__logo{display:flex;align-items:center;text-decoration:none}
.ib-kopf__logo img{height:38px;width:auto;display:block}
.ib-kopf__btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;box-sizing:border-box;font-weight:600;font-size:14.5px;line-height:1;border-radius:5px;padding:12px 20px;text-decoration:none;background:#0F2C5C;color:#FFFFFF;white-space:nowrap}
.ib-kopf__btn:hover{background:#0B2247;color:#FFFFFF}
.ib-kopf__btn:focus-visible,.ib-kopf__logo:focus-visible{outline:2px solid #5E93C9;outline-offset:2px}
@media (max-width:420px){
  .ib-kopf__logo img{height:30px}
  .ib-kopf__btn{font-size:13px;padding:12px 14px}
}

/* Fallback ohne Declarative Shadow DOM: Blatt trotzdem lesbar */
doc-page:has(> template){max-width:210mm;margin:24px auto;background:#fff;padding:clamp(18px,5vw,17mm);box-sizing:border-box;box-shadow:0 2px 10px rgba(20,20,19,.12);border-radius:7px;display:flex;flex-direction:column}
doc-page:has(> template) > [slot="footer"]{order:2;margin-top:32px}


/* Handy: Raster einspaltig, keine erzwungenen Zeilen, Tabellen scrollen in sich */
@media screen and (max-width:640px){
  doc-page [style*="repeat(3, 1fr)"],
  doc-page [style*="grid-template-columns: 1fr 1fr"],
  doc-page [style*="grid-template-columns: 132px 1fr"],
  doc-page [style*="grid-template-columns: 128px 1fr"],
  doc-page [style*="grid-template-columns: 78px 1fr"]{grid-template-columns:minmax(0,1fr) !important}
  doc-page [style*="grid-template-columns: 132px 1fr"],
  doc-page [style*="grid-template-columns: 128px 1fr"],
  doc-page [style*="grid-template-columns: 78px 1fr"]{row-gap:4px !important}
  doc-page [style*="white-space: nowrap"]{white-space:normal !important}
  doc-page > [slot="header"],doc-page > [slot="footer"]{flex-wrap:wrap !important;gap:6px 16px !important}
  doc-page table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  doc-page h1{font-size:25px !important}
  doc-page *{overflow-wrap:break-word}
}

@page{margin:0}
@media print{
  .ib-kopf{display:none}
  html,body{margin:0 !important;padding:0 !important;background:none !important;height:auto !important;overflow:visible !important}
  h1,h2,h3,h4,h5,h6{break-after:avoid}
  figure,pre,blockquote,img,svg,tr{break-inside:avoid}
  p,li{orphans:3;widows:3}
  *{-webkit-print-color-adjust:exact !important;print-color-adjust:exact !important}
  doc-page:has(> template){margin:0;box-shadow:none;border-radius:0;max-width:none}
}
