/* Moved from an inline <style> block (strict CSP). */
.schritt { display:grid; grid-template-columns:2.1rem 1fr; gap:0 14px; margin:26px 0; }
  .schritt > b { font-family:var(--schreib,"Courier Prime",monospace); font-size:.82rem;
                 color:var(--durchschlag); border:1px solid var(--linie); border-radius:50%;
                 width:2.1rem; height:2.1rem; display:grid; place-items:center; align-self:start; }
  .schritt h3 { margin:.15rem 0 .35rem; }
  .schritt p  { margin:.35rem 0; }
  .vorlage { border:1px solid var(--linie); background:var(--blatt); padding:16px 18px; margin:16px 0; }
  .vorlage header { display:flex; justify-content:space-between; align-items:baseline; gap:12px;
                    margin-bottom:10px; border-bottom:1px solid var(--linie); padding-bottom:7px; }
  .vorlage h3 { margin:0; font-size:.95rem; }
  .vorlage pre { white-space:pre-wrap; font-family:inherit; margin:0; font-size:.94rem; line-height:1.62; }
  .kopier { font:inherit; font-size:.78rem; letter-spacing:.06em; text-transform:uppercase;
            background:none; border:1px solid var(--linie); color:var(--durchschlag);
            padding:5px 11px; cursor:pointer; white-space:nowrap; }
  .kopier:hover { border-color:var(--tinte); color:var(--tinte); }
  .kopier[data-fertig] { border-color:var(--stempel); color:var(--stempel); }
  .plan { width:100%; border-collapse:collapse; margin:14px 0 6px; }
  .plan td { border-bottom:1px solid var(--linie); padding:9px 8px 9px 0; vertical-align:top; }
  .plan td:first-child { font-family:var(--schreib,"Courier Prime",monospace); font-size:.84rem;
                         color:var(--durchschlag); white-space:nowrap; width:6.6rem; }
  @media print {
    .kopier, .fuss, .drucknein { display:none !important; }
    body { background:#fff; }
    .blatt { max-width:none; padding:0; }
    .vorlage, .plan td { page-break-inside:avoid; }
  }
