:root{
  --dwzas-bg: #ffffff; --dwzas-fg: #111827; --dwzas-muted: #6b7280; --dwzas-border: #e5e7eb;
  --dwzas-ring: #2563eb; --dwzas-danger: #b91c1c; --dwzas-radius: 14px; --dwzas-shadow: 0 10px 25px rgba(0,0,0,.08);
}
@media (prefers-color-scheme: dark){
  :root{
    --dwzas-bg:#707b87;
    --dwzas-fg:#f8fafc;
    --dwzas-muted:#e2e8f0;
    --dwzas-border:#94a3b8;
    --dwzas-ring:#60a5fa;
    --dwzas-danger:#fecaca;
    --dwzas-shadow:0 10px 30px rgba(0,0,0,.24);
  }

  .dwzas-card{
    background-color:#707b87;
    color:#f8fafc;
  }

  .dwzas-label,
  .dwzas-note,
  .dwzas-check{
    color:#f8fafc;
  }

  .dwzas-input,
  .dwzas-input:focus{
    background-color:#f1f5f9 !important;
    color:#111827 !important;
    -webkit-text-fill-color:#111827 !important;
    border-color:#cbd5e1;
    caret-color:#111827;
  }

  .dwzas-input::placeholder{
    color:#64748b;
    opacity:1;
  }

  .dwzas-input:disabled{
    background-color:#dbe2ea !important;
    color:#334155 !important;
    -webkit-text-fill-color:#334155 !important;
    opacity:1;
  }

  .dwzas-input:-webkit-autofill,
  .dwzas-input:-webkit-autofill:hover,
  .dwzas-input:-webkit-autofill:focus,
  .dwzas-input:-webkit-autofill:active{
    -webkit-text-fill-color:#111827 !important;
    color:#111827 !important;
    caret-color:#111827 !important;
    -webkit-box-shadow:0 0 0 1000px #f1f5f9 inset !important;
    box-shadow:0 0 0 1000px #f1f5f9 inset !important;
    -webkit-background-clip:content-box;
    transition:background-color 9999s ease-out 0s;
  }

  .dwzas-suggestions{
    background-color:#ffffff;
    color:#111827;
    border-color:#94a3b8;
  }

  .dwzas-suggestion{
    background-color:#ffffff;
    color:#111827;
    border-bottom-color:#cbd5e1;
  }

  .dwzas-suggestion:hover,
  .dwzas-suggestion.is-active{
    background:#dbeafe;
  }
}

.dwzas-card{ max-width:760px; margin:0 auto; background:var(--dwzas-bg); color:var(--dwzas-fg); border:1px solid var(--dwzas-border);
  border-radius:18px; box-shadow:var(--dwzas-shadow); padding:clamp(12px,3vw,24px); }
.dwzas-form{ position:relative; }
.dwzas-grid{ display:grid; gap:14px; grid-template-columns:1fr; }
@media (min-width: 720px){ .dwzas-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 18px; align-items:start; } .dwzas-field-name{ grid-column:span 2; } }
.dwzas-label{ display:block; font-size:.9rem; font-weight:600; margin:2px 0 6px; color:var(--dwzas-muted); }
.dwzas-input{ width:100%; padding:12px 14px; border:1px solid var(--dwzas-border); border-radius:var(--dwzas-radius); background:var(--dwzas-bg); color:var(--dwzas-fg);
  line-height:1.3; box-shadow:0 1px 0 rgba(0,0,0,.02) inset; transition:border-color .15s, box-shadow .15s; }
.dwzas-input:focus{ outline:none; border-color:var(--dwzas-ring); box-shadow:0 0 0 3px color-mix(in srgb, var(--dwzas-ring) 20%, transparent); }
.dwzas-note{ margin-top:6px; font-size:.85rem; color:var(--dwzas-muted); }
.dwzas-search-help{ margin:-1px 0 7px; font-size:.84rem; line-height:1.35; color:var(--dwzas-muted); }
.dwzas-hint{ font-size:.8rem; color:var(--dwzas-muted); margin-top:6px; }
.dwzas-hint.is-info{ color:var(--dwzas-muted); }
.dwzas-hint.is-success{ color:#15803d; }
.dwzas-hint.is-warning{ color:#a16207; }
.dwzas-hint.is-error{ color:var(--dwzas-danger); }
.dwzas-field-name{ position:relative; }
.dwzas-suggestions{ display:none; position:absolute; top:calc(100% + 6px); left:0; right:0; z-index:9999; border:1px solid var(--dwzas-border); border-radius:var(--dwzas-radius);
  background:var(--dwzas-bg); box-shadow:var(--dwzas-shadow); max-height:min(50vh,320px); overflow:auto; -webkit-overflow-scrolling:touch; }
.dwzas-suggestions.dwzas-up{ top:auto; bottom:calc(100% + 6px); }
.dwzas-suggestion{ padding:12px 14px; cursor:pointer; line-height:1.35; border-bottom:1px solid var(--dwzas-border); min-height:44px; display:flex; align-items:center; }
.dwzas-suggestion:last-child{ border-bottom:0; }
.dwzas-suggestion:hover, .dwzas-suggestion.is-active{ background: color-mix(in srgb, var(--dwzas-ring) 12%, transparent); }
@media (hover:none){ .dwzas-suggestion:hover{ background:inherit; } .dwzas-suggestion.is-active{ background: color-mix(in srgb, var(--dwzas-ring) 12%, transparent); } }
@media (max-width:719px){ #dwz_name{ scroll-margin-top:10px; } }

/* Action item when no results */
.dwzas-suggestion.dwzas-action{
  font-weight: 600;
}
.dwzas-suggestion.dwzas-action::before{
  content: '↩︎ ';
  opacity: .6;
  margin-right: 6px;
}

.dwzas-toprow{ display:flex; align-items:center; justify-content:flex-start; margin-bottom:10px; }
.dwzas-check{ display:inline-flex; align-items:center; gap:8px; font-size:.95rem; color:var(--dwzas-fg); }
.dwzas-check input{ transform: translateY(1px); }

/* Honeypot Autofill Decoys */
.dwzas-decoy{ position:absolute; left:-9999rem; top:auto; width:1px; height:1px; overflow:hidden; pointer-events:none; opacity:0; }
.dwzas-decoy input{ width:1px; height:1px; border:0; padding:0; margin:0; }
/* --- Fix: Header dürfen NICHT mitten im Wort umbrechen --- */
body[class*="_page_dwzas_payments"] table.widefat th {
  white-space: nowrap !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}

/* --- Zellen dürfen umbrechen, aber nicht Buchstabe-für-Buchstabe --- */
body[class*="_page_dwzas_payments"] table.widefat td {
  white-space: normal !important;
  word-break: normal !important;     /* kein aggressives break-word */
  overflow-wrap: anywhere !important;/* lange E-Mails/URLs dürfen umbrechen */
  hyphens: auto;
}

/* --- Wrapper: wirklich nur der Wrapper scrollt horizontal --- */
.dwzas-scrollwrap {
  display: block;
  width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch; /* smooth auf iOS */
}

/* --- Tabelle: darf breiter als der Wrapper werden => horizontaler Scroll --- */
.dwzas-scrollwrap .widefat {
  width: max-content; /* nimmt die benötigte Breite der Spalten an */
  min-width: 100%;    /* mindestens so breit wie der Wrapper */
  table-layout: auto; /* natürliche Spaltenbreiten, keine erzwungene Quetschung */
}

/* Optional: etwas Luft in TH für Lesbarkeit */
body[class*="_page_dwzas_payments"] table.widefat th {
  padding-right: 10px;
}



/* Pflichtzustimmung zu Ausschreibung und Datenschutz */
.dwzas-consent {
  margin-top: 1rem;
  padding-top: .9rem;
  border-top: 1px solid var(--dwzas-border, #d1d5db);
}
.dwzas-consent-label {
  display: flex;
  align-items: flex-start;
  gap: .65rem;
  font-size: .95rem;
  line-height: 1.45;
  color: var(--dwzas-fg, #111827);
  cursor: pointer;
}
.dwzas-consent-label input[type="checkbox"] {
  flex: 0 0 auto;
  width: 1.15rem;
  height: 1.15rem;
  margin: .12rem 0 0;
}
.dwzas-consent-label a {
  color: #1d4ed8;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.dwzas-consent-label a:hover,
.dwzas-consent-label a:focus {
  text-decoration-thickness: 2px;
}
.dwzas-consent input.dwzas-invalid {
  outline: 2px solid #b91c1c;
  outline-offset: 2px;
}
@media (prefers-color-scheme: dark) {
  .dwzas-consent-label a { color: #bfdbfe; }
}
