/* Stempelkarten-Generator (LeZo, B14). Kartenmasse in cqw (Breite 85 mm = 100 cqw), damit Vorschau und Druck gleich aussehen. */
.st-hero{background:var(--flaeche);border-bottom:1px solid var(--linie)}
.st-hero .in{max-width:62rem;margin:0 auto;padding:var(--a10) var(--a5) var(--a8)}
.st-hero h1{margin:0 0 var(--a3)}
.st-hero p{margin:0;color:var(--text-2);font-size:var(--fs-l);max-width:46rem}
.st-seite{max-width:62rem;margin:0 auto;padding:var(--a8) var(--a5) 0}
.st-seite h2{margin-top:var(--a10)}
html{scroll-padding-top:120px}
.st-werk{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--a6);align-items:start}
.st-werk>.card{margin:0}
.st-werk .feld{margin:0 0 var(--a4)}
.st-werk select.eingabe,.st-werk textarea.eingabe{width:100%;font-family:inherit;box-sizing:border-box}
.st-werk textarea.eingabe{min-height:5.5rem;resize:vertical}
.st-vorschau{position:sticky;top:calc(var(--kopf-h) + var(--a3))}
.st-buehne{background:var(--bg);border:1px solid var(--linie);border-radius:var(--r-m);padding:var(--a4);display:flex;flex-direction:column;gap:var(--a3)}
.st-buehne figure{margin:0}
.st-buehne figcaption{font-size:var(--fs-xs);color:var(--text-3);margin:0 0 4px}
.st-karte{box-shadow:0 2px 10px rgba(0,0,0,.18);background:#fff}
.st-gruppe{margin:0 0 var(--a4);padding:0;border:0;min-width:0}
.st-gruppe legend{font-size:var(--fs-s);font-weight:600;padding:0;margin:0 0 6px}
.st-chk{display:flex;align-items:flex-start;gap:var(--a3);min-height:var(--tipp);padding:6px 0;cursor:pointer;font-size:var(--fs-s)}
.st-chk input{flex:none;width:22px;height:22px;margin:0;margin-top:1px}
.st-chk span{line-height:1.35}
.st-formate{display:flex;flex-wrap:wrap;gap:var(--a2)}
.st-opt{position:relative;display:block}
.st-opt input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.st-opt span{display:inline-flex;align-items:center;gap:8px;min-height:var(--tipp);padding:8px 16px;border:1px solid var(--feldrand);border-radius:var(--r-pill);background:var(--flaeche);font-size:var(--fs-s);font-weight:600}
.st-opt input:checked+span{background:var(--akzent-weich);border-color:var(--akzent);color:var(--akzent-text)}
.st-opt input:focus-visible+span{outline:3px solid var(--akzent);outline-offset:2px}
.st-opt input:disabled+span{opacity:.5;cursor:not-allowed}
.st-designs{display:grid;grid-template-columns:repeat(auto-fill,minmax(7.5rem,1fr));gap:var(--a2)}
.st-designs .st-opt span{display:flex;width:100%;border-radius:var(--r-m);padding:8px 12px}
.st-designs i{display:inline-block;width:18px;height:18px;border-radius:50%;border:1px solid var(--linie-stark);flex:none}
.st-knoepfe{display:flex;flex-wrap:wrap;gap:var(--a2);margin-top:var(--a4)}
.st-status{margin:var(--a3) 0 0}
.st-liste{padding-left:1.3em;margin:var(--a2) 0}
.st-liste li{margin:0 0 var(--a2)}
.st-seite .card h3{margin-top:0}
.st-seite .meldung{margin:var(--a4) 0}
.st-seite .faq{margin-bottom:var(--a6)}
.st-seite .faq summary{min-height:var(--tipp);display:flex;align-items:center;cursor:pointer;font-weight:600}
.sprungzeile a{display:inline-flex;align-items:center;min-height:var(--tipp);padding:0 var(--a1)}
#weitere-rechner + p + ul li a{display:inline-flex;align-items:center;min-height:var(--tipp)}
.st-logozeile{display:flex;flex-wrap:wrap;gap:var(--a2);align-items:center}
.st-logozeile input[type=file]{max-width:100%;font-size:var(--fs-s)}
.st-seite .preisbox .btn{max-width:100%;white-space:normal;text-align:center}
[hidden]{display:none!important}

/* ---------- Karte (85 x 55 mm) ---------- */
.st-box{container-type:inline-size;width:100%;aspect-ratio:85/55;position:relative;overflow:hidden;background:var(--g-bg);color:var(--g-fg);font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.st-deko{position:absolute;pointer-events:none}
.st-kern{position:absolute;inset:0;display:flex;flex-direction:column;gap:calc(2cqw*var(--s,1));overflow:hidden;box-sizing:border-box;padding:calc(5.5cqw*var(--s,1)) 6.5cqw calc(5cqw*var(--s,1))}
.st-kern p{margin:0}
.st-kopf{display:flex;justify-content:space-between;align-items:flex-start;gap:3cqw;flex:none}
.st-kopftext{min-width:0;display:flex;flex-direction:column;gap:calc(.6cqw*var(--s,1))}
.st-titel{color:var(--g-akz);font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:calc(3cqw*var(--s,1));line-height:1.2}
.st-name{font-weight:800;font-size:calc(6.4cqw*var(--s,1));line-height:1.12;overflow-wrap:anywhere}
.st-logo{flex:none;width:22cqw;height:calc(11cqw*var(--s,1));display:flex;justify-content:flex-end}
.st-logo img{max-width:100%;max-height:100%;object-fit:contain;display:block}
.st-praemie{flex:none;font-weight:700;color:var(--g-akz);font-size:calc(4.4cqw*var(--s,1));line-height:1.2;overflow-wrap:anywhere}
.st-regel{flex:none;color:var(--g-fg2);font-size:calc(2.9cqw*var(--s,1));line-height:1.25;overflow-wrap:anywhere;margin-top:calc(-1cqw*var(--s,1))!important}
.st-felder{flex:1 1 auto;min-height:27cqw;display:grid;grid-template-rows:repeat(2,minmax(0,1fr));gap:2.4cqw 2.4cqw;align-items:stretch}
.st-feld{min-width:0;min-height:0;display:flex;align-items:center;justify-content:center;border:.45cqw solid var(--g-fg);border-radius:50%;aspect-ratio:1;height:100%;justify-self:center;box-sizing:border-box;color:var(--g-fg3);font-weight:700;font-size:3.4cqw}
.form-quadrat .st-feld{border-radius:2cqw}
.st-nr{opacity:.45;line-height:1}
.st-letztes{border-color:var(--g-akz);border-width:.8cqw;color:var(--g-akz);font-size:5.2cqw}
.st-letztes .st-nr{opacity:1}

/* Rückseite */
.st-rname{color:var(--g-akz);text-transform:uppercase;letter-spacing:.04em;font-size:calc(4.2cqw*var(--s,1));flex:none}
.st-rinhalt{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:calc(2.6cqw*var(--s,1))}
.st-bl{font-weight:800;font-size:calc(2.5cqw*var(--s,1));text-transform:uppercase;letter-spacing:.07em;color:var(--g-fg2);margin-bottom:calc(.6cqw*var(--s,1))!important}
.st-bz{font-size:calc(3.3cqw*var(--s,1));line-height:1.3;overflow-wrap:anywhere}
.st-leer{opacity:.55;font-style:italic}
.st-rhinweis{flex:none;font-size:calc(2.8cqw*var(--s,1));line-height:1.3;color:var(--g-fg2);overflow-wrap:anywhere;border-top:.25cqw solid var(--g-fg2);padding-top:calc(1.4cqw*var(--s,1))}

/* Designs: d0 «Klar», d1 «Natur», d2 «Warm» */
.d0{--g-bg:#fff;--g-fg:#0d1b3d;--g-fg2:#475069;--g-fg3:#0d1b3d;--g-akz:#4527d6}
.d0 .st-deko{inset:2.2cqw;border:.4cqw solid #0d1b3d;border-radius:2cqw}
.d1{--g-bg:#f3f8f1;--g-fg:#173b2c;--g-fg2:#4a5f54;--g-fg3:#173b2c;--g-akz:#1f6b4a}
.d1 .st-deko{inset:2.2cqw;border:.5cqw double #1f6b4a;border-radius:1.6cqw}
.d2{--g-bg:#fff4e8;--g-fg:#3a2415;--g-fg2:#6a5242;--g-fg3:#3a2415;--g-akz:#b4531c}
.d2 .st-deko{left:0;top:0;bottom:0;width:3.2cqw;background:#e08a3c}
.d2 .st-kern{padding-left:8cqw}

/* ---------- Druckbogen ---------- */
.st-druck{display:none}
.st-bogen{position:relative;width:210mm;height:296mm;overflow:hidden;background:#fff}
.st-pos{position:absolute;width:85mm;height:55mm}
.st-pos .st-box{width:85mm;height:55mm;aspect-ratio:auto}
.st-marke{position:absolute;display:block;background:#000}
.st-marke.v{width:.2mm;margin-left:-.1mm}
.st-marke.h{height:.2mm;margin-top:-.1mm}

.st-h2w{margin-top:var(--a6)}
@media (max-width:820px){
  .st-werk{grid-template-columns:minmax(0,1fr)}
  .st-vorschau{position:static}
  .st-hero .in{padding:var(--a6) var(--a4) var(--a5)}
  .st-seite{padding:var(--a4) var(--a4) 0}
  .st-hero .in{padding:var(--a4) var(--a4) var(--a3)}
  .st-hero h1{font-size:1.5rem;margin-bottom:var(--a2)}
  .st-hero p{font-size:var(--fs-m,1rem)}
  .st-h2w{margin:0 0 var(--a3);font-size:1.25rem}
}

@media print{
  html,body{background:#fff!important;margin:0!important;padding:0!important}
  body>*:not(.st-druck){display:none!important}
  .st-druck{display:block!important}
  .st-druck .st-bogen{break-after:page;page-break-after:always}
  .st-druck .st-bogen:last-child{break-after:auto;page-break-after:auto}
  .st-druck .st-box{-webkit-print-color-adjust:exact;print-color-adjust:exact;break-inside:avoid}
  .st-druck .st-marke{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
.tipp44{display:inline-flex;align-items:center;min-height:44px}
.st-cqw-hinweis{display:none}
@supports not (width:1cqw){.st-cqw-hinweis{display:block;font-weight:700}}
