/* Jahr in Zahlen: Eingabe, Vorschau, Text */
.jz-sec{padding:56px 0 72px;}
.jz-grid{display:grid;grid-template-columns:minmax(0,460px) minmax(0,1fr);gap:40px;align-items:start;}
.jz-box{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px;margin:0 0 18px;}
.jz-box h2{font-size:1.15rem;color:var(--dark);margin:0 0 12px;}
.jz-box .hilfe{color:var(--grey);font-size:.88rem;line-height:1.5;margin:-4px 0 12px;}
.jz-feld{display:block;margin:0 0 12px;}
.jz-feld > span,.jz-label{display:block;font-weight:700;color:var(--dark);font-size:.9rem;margin:0 0 5px;}
.jz-feld small,.jz-label small{font-weight:400;color:var(--grey);}
.jz-sec input[type=text],.jz-sec select,.jz-sec textarea{width:100%;padding:9px 10px;font:inherit;font-size:.93rem;border:1.5px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);box-sizing:border-box;}
.jz-sec input:focus,.jz-sec select:focus,.jz-sec textarea:focus{outline:3px solid var(--red);outline-offset:1px;border-color:var(--red);}
.jz-sec input[aria-invalid="true"]{border-color:var(--red);background:#fff4f4;}
.jz-zwei{display:grid;grid-template-columns:110px 1fr;gap:10px;}
.jz-zeilen{list-style:none;margin:0;padding:0;display:grid;gap:10px;}
.jz-zeile{display:grid;grid-template-columns:96px minmax(0,1fr) 120px 32px;gap:6px;align-items:end;padding-bottom:10px;border-bottom:1px dashed var(--line);}
.jz-zeile label > span{display:block;font-size:.75rem;font-weight:700;color:var(--grey);margin-bottom:4px;}
.jz-zeile .z input{font-weight:700;}
.jz-zeile select{padding:9px 6px;}
.jz-zeile .x{width:32px;height:40px;display:inline-flex;align-items:center;justify-content:center;padding:0;background:transparent;border:1.5px solid var(--line);border-radius:8px;color:var(--grey);cursor:pointer;}
.jz-zeile .x:hover{color:var(--red);border-color:var(--red);}
.jz-zeile .x svg{width:15px;height:15px;}
.jz-zeile .x[hidden]{display:inline-flex;visibility:hidden;}
.jz-link{background:none;border:0;padding:4px 0;margin-top:10px;font:inherit;font-size:.9rem;font-weight:700;color:var(--red);cursor:pointer;}
.jz-datei{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0 0 6px;}
.jz-datei input[type=file]{font:inherit;font-size:.88rem;max-width:100%;}
.jz-datei button{background:none;border:0;padding:4px 0;font:inherit;font-size:.88rem;font-weight:700;color:var(--red);cursor:pointer;}
.jz-meldung{color:var(--red);font-size:.85rem;font-weight:700;margin:0 0 8px;}
.jz-paar{display:flex;gap:4px;}
.jz-paar input[type=color]{flex:0 0 40px;width:40px;height:40px;padding:2px;border:1.5px solid var(--line);border-radius:8px;background:#fff;cursor:pointer;}
.jz-sec .jz-paar input[type=text]{width:100px;font-family:ui-monospace,Consolas,monospace;text-transform:uppercase;padding:9px 8px;}
.jz-reihe{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 12px;}
.jz-reihe .jz-label{margin:0;}
.jz-stil{border:0;margin:0 0 14px;padding:0;display:flex;gap:18px;align-items:center;flex-wrap:wrap;}
.jz-stil legend{float:left;font-weight:700;color:var(--dark);font-size:.9rem;margin-right:6px;padding:0;}
.jz-stil label{display:inline-flex;gap:6px;align-items:center;cursor:pointer;font-size:.93rem;}
.jz-stil input{accent-color:var(--red);width:17px;height:17px;}

/* Ausgabe */
.jz-ausgabe{position:sticky;top:96px;}
.jz-kopfzeile{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap;margin:0 0 12px;}
.jz-kopfzeile h2{font-size:1.2rem;color:var(--dark);margin:0;}
.jz-kopfzeile .btn{border:0;cursor:pointer;font:inherit;font-weight:700;}
.jz-kopfzeile .btn-ghost{border:1.5px solid var(--line);}
.jz-format{display:flex;gap:8px;align-items:center;font-weight:700;font-size:.9rem;color:var(--dark);}
.jz-format select{width:auto !important;}
.jz-buehne{background:#ece7e2;border-radius:12px;padding:14px;text-align:center;line-height:0;}
#jz-vorschau{max-width:100%;max-height:62vh;width:auto;height:auto;border-radius:6px;box-shadow:0 6px 20px -10px rgba(34,31,29,.4);}
.jz-text{min-height:170px;font-family:inherit;line-height:1.5;resize:vertical;}
.jz-hinweis{margin:14px 0 0;color:var(--grey);font-size:.88rem;line-height:1.55;}

@media (max-width:1060px){ .jz-grid{grid-template-columns:1fr;} .jz-ausgabe{position:static;} }
@media (max-width:600px){
  .jz-box{padding:18px;}
  .jz-zeile{grid-template-columns:90px minmax(0,1fr) 32px;}
  .jz-zeile .s{grid-column:1 / 3;grid-row:2;}
}
