/* Zucker & Zeste – Newsletter-Formular und Popup. Nutzt die Farben und Schriften des Themes, mit Ersatzwerten. */

.zuz-sr,.zuz-nlf-hp{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;margin:-1px;padding:0;border:0}

/* Formular */
.zuz-nlf{margin:0}
.zuz-nlf-zeile{display:flex;flex-wrap:wrap;gap:8px}
.zuz-nlf input[type="email"]{flex:1 1 220px;min-width:0;height:50px;margin:0;padding:0 14px;border:1px solid var(--ink,#121110);border-radius:0;background:#fff;color:var(--ink,#121110);font:400 16px/1.2 var(--f-text,Georgia,serif);-webkit-appearance:none;appearance:none}
.zuz-nlf input[type="email"]::placeholder{color:var(--muted,#5C574E);opacity:.8}
.zuz-nlf input[type="email"]:focus{outline:2px solid var(--zest,#F5E07D);outline-offset:0;border-color:var(--ink,#121110)}
.zuz-nlf button{flex:0 0 auto;height:50px;margin:0;padding:0 22px;border:1px solid var(--ink,#121110);border-radius:0;background:var(--ink,#121110);color:var(--paper,#FBFAF7);font:600 12px/1 var(--f-ui,'Jost',system-ui,sans-serif);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:background .2s,color .2s}
.zuz-nlf button:hover,.zuz-nlf button:focus-visible{background:var(--zest,#F5E07D);color:var(--ink,#121110)}
.zuz-nlf button[disabled]{opacity:.6;cursor:wait}
.zuz-nlf-msg{margin:10px 0 0;font:400 15px/1.45 var(--f-text,Georgia,serif)}
.zuz-nlf-msg:empty{display:none}
.zuz-nlf-msg.is-fehler{color:var(--red,#B4412E)}
.zuz-nlf.is-ok .zuz-nlf-zeile,.zuz-nlf.is-ok .zuz-nlf-hinweis{display:none}
.zuz-nlf .zuz-nlf-hinweis{margin:10px 0 0;max-width:62ch;font:400 12.5px/1.5 var(--f-ui,'Jost',system-ui,sans-serif);color:inherit;opacity:.8}
.zuz-nlf .zuz-nlf-hinweis a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.zuz-nlf.is-ok .zuz-nlf-msg{margin:0;padding:14px 16px;background:var(--zest-wash,#FBF3CF);font-size:17px;color:var(--ink,#121110)}

/* Popup */
html.zuz-nlp-auf{overflow:hidden}
.zuz-nlp{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:24px}
.zuz-nlp[hidden]{display:none}
.zuz-nlp-hg{position:absolute;inset:0;background:rgba(18,17,16,.5);opacity:0;transition:opacity .3s ease}
.zuz-nlp-box{position:relative;display:grid;grid-template-columns:minmax(0,1fr);width:min(520px,100%);max-height:calc(100vh - 48px);overflow:auto;overscroll-behavior:contain;background:var(--paper,#FBFAF7);color:var(--ink,#121110);box-shadow:0 24px 80px rgba(18,17,16,.3);opacity:0;transform:translateY(14px);transition:opacity .3s ease,transform .3s ease}
.zuz-nlp-box:focus{outline:none}
.zuz-nlp-box--bild{grid-template-columns:minmax(0,40fr) minmax(0,60fr);width:min(820px,100%)}
.zuz-nlp-bild{position:relative;min-height:100%;background:#e9e4d8;overflow:hidden}
.zuz-nlp-bild[hidden]{display:none}
.zuz-nlp-bild img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.zuz-nlp-in{display:flex;flex-direction:column;padding:46px 44px 26px}
.zuz-nlp-k{display:flex;align-items:center;gap:10px;margin:0 0 14px;font:600 11px/1 var(--f-ui,'Jost',system-ui,sans-serif);letter-spacing:.16em;text-transform:uppercase}
.zuz-nlp-k[hidden]{display:none}
.zuz-nlp-k::before{content:"";flex:none;width:10px;height:10px;border:1px solid currentColor;border-radius:50%;background:var(--zest,#F5E07D)}
.zuz-nlp-t{margin:0 0 12px;font-family:var(--f-display,Georgia,serif);font-weight:var(--w-display,600);font-size:clamp(26px,2.6vw,32px);line-height:1.12;letter-spacing:-.01em;text-wrap:balance;color:inherit}
.zuz-nlp-tx{font:400 17px/1.55 var(--f-text,Georgia,serif)}
.zuz-nlp-tx p,.zuz-nlp-klein p{margin:0 0 .55em}
.zuz-nlp-tx p:last-child,.zuz-nlp-klein p:last-child{margin-bottom:0}
.zuz-nlp-tx a,.zuz-nlp-klein a{color:inherit;text-decoration:none;box-shadow:inset 0 -.38em 0 var(--zest,#F5E07D)}
.zuz-nlp-f{margin:18px 0 0}
.zuz-nlp .zuz-nlf-zeile{flex-direction:column;gap:10px}
.zuz-nlp .zuz-nlf input[type="email"],.zuz-nlp .zuz-nlf button{flex:0 0 auto;width:100%}
.zuz-nlp-klein{margin-top:14px;font:400 12.5px/1.5 var(--f-ui,'Jost',system-ui,sans-serif);color:var(--muted,#5C574E)}
.zuz-nlp-nein{align-self:center;margin:10px 0 0;padding:10px 12px;border:0;background:none;color:var(--muted,#5C574E);font:500 11.5px/1 var(--f-ui,'Jost',system-ui,sans-serif);letter-spacing:.12em;text-transform:uppercase;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.zuz-nlp-nein[hidden]{display:none}
.zuz-nlp-nein:hover{color:var(--ink,#121110)}
.zuz-nlp-x{position:absolute;top:8px;right:8px;z-index:2;display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;background:rgba(251,250,247,.92);color:var(--ink,#121110);cursor:pointer}
.zuz-nlp-x:hover{background:var(--zest,#F5E07D)}
.zuz-nlp-box.is-danke .zuz-nlp-nein{display:none}
.zuz-nlp.is-offen .zuz-nlp-hg{opacity:1}
.zuz-nlp.is-offen .zuz-nlp-box{opacity:1;transform:none}

/* Handy: Leiste von unten */
@media (max-width:600px){
  .zuz-nlp{place-items:end stretch;padding:0}
  .zuz-nlp-hg{background:rgba(18,17,16,.38)}
  .zuz-nlp-box,.zuz-nlp-box--bild{grid-template-columns:minmax(0,1fr);width:100%;max-height:88vh;transform:translateY(100%);box-shadow:0 -12px 40px rgba(18,17,16,.22)}
  .zuz-nlp-bild{display:none}
  .zuz-nlp-box--bild-handy .zuz-nlp-bild{display:block;height:140px;min-height:0}
  .zuz-nlp-in{padding:32px 22px calc(14px + env(safe-area-inset-bottom,0px))}
  .zuz-nlp-t{font-size:25px}
  .zuz-nlp-tx{font-size:16px}
}
@media (prefers-reduced-motion:reduce){
  .zuz-nlp-hg,.zuz-nlp-box{transition:none}
}

/* Vorschau in der Verwaltung */
.zuz-nlp.zuz-nlp--admin{position:static;display:block;padding:0;z-index:auto}
.zuz-nlp--admin .zuz-nlp-buehne{display:grid;place-items:center;padding:28px 16px;background:#d9d6cf}
.zuz-nlp--admin .zuz-nlp-box{opacity:1;transform:none;max-height:none}
.zuz-nlp--admin .zuz-nlp-x{pointer-events:none}
#poststuff .zuz-nlp--admin .zuz-nlp-t{margin:0 0 12px;padding:0;font-family:var(--f-display,Georgia,serif);font-size:30px;font-weight:600;line-height:1.12}
#poststuff .zuz-nlp--admin .zuz-nlp-tx p,#poststuff .zuz-nlp--admin .zuz-nlp-klein p{font-size:inherit;line-height:inherit}
#poststuff .zuz-nlp--admin .zuz-nlp-tx{font-size:17px;line-height:1.55}
#poststuff .zuz-nlp--admin .zuz-nlp-klein{font-size:12.5px;line-height:1.5}
