:root{--cmp-bg:#20b66a;--cmp-fg:#fff;--cmp-radius:999px}.cmp-floating,.cmp-inline,.cmp-submit{background:var(--cmp-bg)!important;background-color:var(--cmp-bg)!important;color:var(--cmp-fg)!important;border:0!important;cursor:pointer;font-weight:700}.cmp-floating{position:fixed;bottom:22px;z-index:99998;display:flex;align-items:center;gap:8px;padding:13px 17px;border-radius:var(--cmp-radius);box-shadow:0 8px 24px rgba(0,0,0,.22)}.cmp-right{right:22px}.cmp-left{left:22px}.cmp-inline{display:inline-flex;align-items:center;gap:8px;padding:12px 18px;border-radius:var(--cmp-radius)}.cmp-icon{font-size:18px}.cmp-modal{position:fixed;inset:0;z-index:99999;display:none}.cmp-modal.is-open{display:block}.cmp-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.55)}.cmp-dialog{position:relative;background:#fff;color:#222;width:min(92vw,var(--cmp-modal-width,560px));max-height:90vh;overflow:auto;margin:5vh auto;padding:26px;border-radius:16px;box-shadow:0 20px 70px rgba(0,0,0,.3)}.cmp-close{position:absolute;right:12px;top:8px;border:0;background:transparent;font-size:30px;cursor:pointer}.cmp-form{display:grid;gap:14px}.cmp-form label{display:grid;gap:6px;font-weight:600}.cmp-form input,.cmp-form select,.cmp-form textarea{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid #ccd0d4;border-radius:7px;font:inherit}.cmp-form textarea{min-height:110px}.cmp-submit{padding:12px 18px;border-radius:8px}.cmp-submit:disabled{opacity:.6}.cmp-privacy{display:flex!important;grid-template-columns:auto 1fr!important;align-items:flex-start;font-weight:400!important}.cmp-privacy input{width:auto;margin-top:3px}.cmp-hp{position:absolute!important;left:-9999px!important;opacity:0!important}.cmp-afterhours{background:#fff8e5;border-left:4px solid #dba617;padding:10px;margin-bottom:14px}.cmp-form-message{font-weight:600}.cmp-brand-logo{max-height:60px;max-width:220px;margin-bottom:10px}@media(max-width:767px){.cmp-hide-mobile{display:none!important}.cmp-dialog{margin:2vh auto;max-height:96vh;padding:22px}}@media(min-width:768px){.cmp-hide-desktop{display:none!important}}

.cmp-hours{max-width:520px;background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:14px 16px;box-shadow:0 8px 24px rgba(15,23,42,.06)}.cmp-hours-status{margin-bottom:10px;padding:8px 10px;border-radius:8px;font-weight:700}.cmp-hours-status.is-open{background:#ecfdf3;color:#087a3d}.cmp-hours-status.is-closed{background:#fff1f2;color:#b42318}.cmp-hours-row{display:flex;justify-content:space-between;gap:20px;padding:8px 2px;border-top:1px solid #eef2f6}.cmp-hours-row span{color:#475569}.cmp-hours-row strong{color:#0f172a;text-align:right}

/* Mobile Step Wizard - Chat Manager Pro 2.1.3 */
.cmp-mobile-progress,.cmp-mobile-only,.cmp-step-heading{display:none}.cmp-step{display:contents}.cmp-final-actions{display:flex;gap:10px;align-items:center}.cmp-final-actions .cmp-submit{flex:1}.cmp-summary{border:1px solid #e5e7eb;border-radius:12px;background:#f8fafc;overflow:hidden}.cmp-summary-row{display:grid;grid-template-columns:minmax(90px,38%) 1fr;gap:12px;padding:10px 12px;border-bottom:1px solid #e5e7eb}.cmp-summary-row:last-child{border-bottom:0}.cmp-summary-row span{color:#64748b}.cmp-summary-row strong{color:#0f172a;overflow-wrap:anywhere}.cmp-summary-empty{padding:12px;color:#64748b}

@media(max-width:767px){
  .cmp-dialog{width:calc(100vw - 24px);margin:12px auto;max-height:calc(100vh - 24px);padding:18px 16px 16px;border-radius:18px;overflow-y:auto;overscroll-behavior:contain}
  .cmp-dialog h3{font-size:20px;margin:4px 36px 14px 0}
  .cmp-form{display:block}
  .cmp-mobile-only{display:flex}
  .cmp-mobile-progress{display:flex;align-items:flex-start;justify-content:center;margin:0 0 18px;padding:0 2px}
  .cmp-progress-item{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:52px;color:#94a3b8;text-align:center;font-size:11px;font-weight:700}
  .cmp-progress-item span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#e2e8f0;color:#64748b;font-size:13px;transition:.2s ease}
  .cmp-progress-item.is-active{color:#0f172a}.cmp-progress-item.is-active span{background:var(--cmp-bg);color:var(--cmp-fg);box-shadow:0 0 0 4px rgba(32,182,106,.13)}
  .cmp-progress-item.is-done span{background:#d9f6e6;color:#087a3d}
  .cmp-progress-line{height:2px;flex:1;max-width:42px;background:#e2e8f0;margin-top:14px}
  .cmp-step{display:none}.cmp-step.is-active{display:grid;gap:13px;animation:cmpStepIn .18s ease-out}
  .cmp-step-heading{display:flex;flex-direction:column;gap:2px;padding:0 1px 2px}.cmp-step-heading strong{font-size:20px;line-height:1.2;color:#111827}.cmp-step-heading span{font-size:13px;color:#64748b;font-weight:400}
  .cmp-form label{gap:5px;font-size:16px}
  .cmp-form input,.cmp-form select,.cmp-form textarea{min-height:48px;padding:10px 12px;font-size:16px;border-radius:9px}
  .cmp-form textarea{min-height:118px;resize:vertical}
  .cmp-step-actions{display:flex;gap:10px;margin-top:4px;position:sticky;bottom:0;padding-top:10px;background:linear-gradient(to bottom,rgba(255,255,255,0),#fff 24%)}
  .cmp-step-actions button{min-height:50px;border-radius:10px;font-size:16px;font-weight:800;cursor:pointer}
  .cmp-next,.cmp-submit{flex:1;background:var(--cmp-bg)!important;color:var(--cmp-fg)!important;border:0!important;box-shadow:0 7px 18px rgba(0,0,0,.14)}
  .cmp-prev{background:#eef2f6;border:1px solid #d8dee6;color:#243447;padding:0 18px}
  .cmp-final-actions{position:sticky;bottom:0;z-index:3;margin-top:2px;padding-top:12px;background:linear-gradient(to bottom,rgba(255,255,255,0),#fff 26%)}
  .cmp-final-actions .cmp-submit{min-height:56px;font-size:17px;text-transform:none;letter-spacing:.1px}
  .cmp-privacy{display:grid!important;grid-template-columns:26px 1fr!important;gap:8px!important;align-items:start;font-size:14px!important;line-height:1.38!important;font-weight:400!important}
  .cmp-privacy input{width:22px!important;height:22px!important;min-height:22px!important;margin:1px 0 0!important;padding:0!important}
  .cmp-summary{font-size:13px}.cmp-summary-row{grid-template-columns:34% 1fr;padding:9px 10px;gap:8px}
  .cmp-afterhours{font-size:13px}
  @keyframes cmpStepIn{from{opacity:.35;transform:translateX(8px)}to{opacity:1;transform:none}}
}

/* 2.1.3 - Mobile Wizard Stabilität und Abschlussansicht */
@media(max-width:767px){
  /* .cmp-mobile-only setzt display:flex; die Zusammenfassung muss jedoch blockweise laufen. */
  .cmp-summary.cmp-mobile-only{display:block;width:100%;box-sizing:border-box;overflow:hidden}
  .cmp-summary-row{display:block;padding:11px 12px}
  .cmp-summary-row span{display:block;margin-bottom:3px;font-size:12px;line-height:1.25;font-weight:700;color:#64748b}
  .cmp-summary-row strong{display:block;font-size:15px;line-height:1.35;color:#0f172a;white-space:normal;word-break:break-word;overflow-wrap:anywhere}

  /* Der letzte Schritt bleibt vollständig innerhalb des Modals. */
  .cmp-step[data-cmp-step="4"]{min-width:0;overflow:hidden}
  .cmp-step[data-cmp-step="4"] .cmp-privacy{width:100%;box-sizing:border-box;min-width:0}
  .cmp-step[data-cmp-step="4"] .cmp-privacy span{min-width:0;white-space:normal;overflow-wrap:anywhere}
  .cmp-step[data-cmp-step="4"] .cmp-final-actions{display:flex;flex-direction:column;align-items:stretch;gap:9px;width:100%;box-sizing:border-box}
  .cmp-step[data-cmp-step="4"] .cmp-final-actions .cmp-submit,
  .cmp-step[data-cmp-step="4"] .cmp-final-actions .cmp-prev{width:100%;max-width:100%;min-width:0;flex:none;box-sizing:border-box;white-space:normal;text-align:center;padding:13px 14px}
  .cmp-step[data-cmp-step="4"] .cmp-final-actions .cmp-submit{order:1}
  .cmp-step[data-cmp-step="4"] .cmp-final-actions .cmp-prev{order:2;background:#eef2f6!important;color:#243447!important;border:1px solid #d8dee6!important;box-shadow:none!important}
}

