/* „Mitmachen"-Popup — Auswahl + nachgeladenes Formular. Layout-Farbe #1b5163. */
.nz-mm{display:inline-block}
.nz-mm-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:flex-start;justify-content:center;padding:24px 16px;overflow:auto}
.nz-mm-modal[hidden]{display:none}
.nz-mm-backdrop{position:fixed;inset:0;background:rgba(12,42,51,.55);backdrop-filter:saturate(120%) blur(2px)}
.nz-mm-dialog{position:relative;background:#fff;border-radius:16px;max-width:760px;width:100%;margin:auto;box-shadow:0 18px 60px rgba(0,0,0,.3);padding:26px 26px 30px;animation:nzmm-in .18s ease}
@keyframes nzmm-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.nz-mm-dialog{animation:none}}
.nz-mm-x{position:absolute;top:10px;right:12px;border:0;background:none;font-size:30px;line-height:1;color:#7a9098;cursor:pointer;padding:4px 8px;border-radius:8px}
.nz-mm-x:hover{background:#eef3f4;color:#1b5163}
.nz-mm-h{margin:0 0 4px;color:#0c2a33;font-size:22px}
.nz-mm-sub{margin:0 0 18px;color:#5a666c;font-size:14px}

.nz-mm-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.nz-mm-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;
  background:#f7fafb;border:1px solid #dce6e9;border-radius:12px;padding:18px 14px 16px;cursor:pointer;color:#0c2a33;
  font:inherit;transition:border-color .15s,background .15s,transform .05s}
.nz-mm-card:hover,.nz-mm-card:focus-visible{border-color:#1b5163;background:#eef5f7;outline:none}
.nz-mm-card:focus-visible{box-shadow:0 0 0 3px rgba(27,81,99,.35)}
.nz-mm-card:active{transform:translateY(1px)}
.nz-mm-ic{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;background:#1b5163;color:#fff}
.nz-mm-ic svg{width:24px;height:24px}
.nz-mm-label{font-weight:600;font-size:15px;line-height:1.25}

/* Info: erscheint beim Hover/Fokus über der Kachel. */
.nz-mm-info{position:absolute;left:8px;right:8px;bottom:calc(100% + 8px);z-index:2;
  background:#0c2a33;color:#fff;font-size:12.5px;line-height:1.45;text-align:left;
  padding:10px 12px;border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.25);
  opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .15s,transform .15s,visibility .15s;pointer-events:none}
.nz-mm-info::after{content:"";position:absolute;top:100%;left:24px;border:7px solid transparent;border-top-color:#0c2a33}
.nz-mm-card:hover .nz-mm-info,.nz-mm-card:focus-visible .nz-mm-info{opacity:1;visibility:visible;transform:none}

.nz-mm-back{border:0;background:none;color:#1b5163;font:inherit;font-weight:600;cursor:pointer;padding:4px 0;margin:0 0 8px}
.nz-mm-back:hover{text-decoration:underline}
.nz-mm-formtitle{font-size:20px;margin:0 0 14px}
.nz-mm-formhost{max-height:70vh;overflow:auto;padding-right:4px}
.nz-mm-loading,.nz-mm-formhost p.nz-mm-loading{color:#5a666c}

/* Basis-Styling für nachgeladene Formulare (falls Seiten-CSS fehlt). */
.nz-mm-formhost .field{margin:0 0 12px}
.nz-mm-formhost label{display:block;font-weight:600;margin:0 0 4px;color:#0c2a33}
.nz-mm-formhost input[type=text],.nz-mm-formhost input[type=email],.nz-mm-formhost input[type=url],
.nz-mm-formhost input[type=date],.nz-mm-formhost input[type=time],.nz-mm-formhost select,.nz-mm-formhost textarea{
  width:100%;padding:9px 11px;border:1px solid #cdd9dd;border-radius:8px;font:inherit;box-sizing:border-box}
.nz-mm-formhost .form-row{display:flex;gap:12px;flex-wrap:wrap}
.nz-mm-formhost .form-row>.field{flex:1 1 200px}
.nz-mm-formhost .form-note{font-size:12px;color:#6a7c84;margin:4px 0 0}
.nz-mm-formhost .sp-hp{position:absolute;left:-9999px}

@media (max-width:560px){
  .nz-mm-dialog{padding:20px 16px 24px;border-radius:14px}
  .nz-mm-info{position:static;opacity:1;visibility:visible;transform:none;margin-top:8px;box-shadow:none}
  .nz-mm-info::after{display:none}
  .nz-mm-card{align-items:flex-start;text-align:left}
}
