/* =========================================================
   Prostyle GoBD – Portal Styles (bereinigt)
   Scope: .psgobd-portal / .psm-gobd-portal + Fallback .psgobd-shell
   ========================================================= */

/* -------- Variablen -------- */
:root{
  --gobd-bg:#ffffff;
  --gobd-border:#e5e7eb;
  --gobd-muted:#6b7280;
  --gobd-muted-2:#9ca3af;
  --gobd-text:#111827;
  --gobd-primary:#111827;
  --gobd-primary-contrast:#ffffff;
  --gobd-accent-bg:#eef2ff;
  --gobd-accent-border:#c7d2fe;
  --gobd-nav-bg:#f9fafb;
  --gobd-soft:#f3f4f6;
  --gobd-soft-2:#f6f8fa;
  --gobd-danger:#ef4444;
  --gobd-danger-hover:#dc2626;
  --gobd-radius:12px;
  --gobd-radius-sm:8px;
  --gobd-shadow:0 1px 2px rgba(0,0,0,.04);
}

/* -------- Reset (scope) -------- */
.psgobd-portal, .psm-gobd-portal { box-sizing:border-box; }
.psgobd-portal *, .psm-gobd-portal * { box-sizing:inherit; }

/* =========================================================
   Layout – Portal (wenn Markup vorhanden)
   ========================================================= */
.psgobd-portal, .psm-gobd-portal{
  width:calc(100% - 110px);
  max-width:1400px;
  margin:2rem auto;
  background:transparent;
  border:1px solid var(--gobd-border);
  border-radius:var(--gobd-radius);
  display:grid;
  grid-template-columns:1fr 2fr;
  overflow:hidden;
  box-shadow:var(--gobd-shadow);
  color:var(--gobd-text);
}

/* Linke Spalte (Navigation) – Portal (kein rechter Trenner; Hintergrund via Multiply-Overlay) */
.psgobd-left, .psm-gobd-left,
.psgobd-portal .psgobd-nav, .psm-gobd-portal .psm-gobd-nav{
  background:transparent;            /* Hintergrund durchsichtig */
  border-right:0;                    /* keine vertikale Linie */
  padding:1rem;
  min-height:70vh;
  position:relative;                 /* für ::before-Overlay */
}

/* Abdunkelungs-Overlay – multipliziert mit dem Seitenhintergrund */
.psgobd-left::before, .psm-gobd-left::before,
.psgobd-portal .psgobd-nav::before, .psm-gobd-portal .psm-gobd-nav::before{
  content:"";
  position:absolute;
  inset:0;
  background:var(--gobd-nav-bg);  /* z.B. #f9fafb – bleibt Grau */
  mix-blend-mode:multiply;        /* abdunkeln via Multiply */
  pointer-events:none;
  z-index:0;                      /* hinter dem Inhalt */
}
/* Inhalt sicher über dem Overlay */
.psgobd-left > *, .psm-gobd-left > *,
.psgobd-portal .psgobd-nav > *, .psm-gobd-portal .psm-gobd-nav > *{
  position:relative;
  z-index:1;
}

.psgobd-left::before, .psm-gobd-left::before,
.psgobd-portal .psgobd-nav::before, .psm-gobd-portal .psm-gobd-nav::before{
  content: "";
  position: absolute;
  inset: 0;
  background: var(--gobd-nav-bg);
  opacity: .2;                    /* ≈ 80% durchsichtig */
  pointer-events: none;
  border-radius: inherit;
}

.psgobd-right, .psm-gobd-right,
.psgobd-portal .psgobd-step, .psm-gobd-portal .psm-gobd-step{
  padding:1.25rem 1.5rem;
  min-height:70vh;
  font-size:16px;
  line-height:1.65;
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  background:var(--gobd-bg); /* rechte Spalte bleibt weiß */
}

/* =========================================================
   Layout – JS-Fallback-Shell (wenn Portal-Markup fehlt)
   ========================================================= */
.psgobd-shell{
  width:calc(100% - 32px);
  max-width:1400px;
  margin:2rem auto;
  background:transparent;
  border:1px solid var(--gobd-border);
  border-radius:var(--gobd-radius);
  display:grid;
  grid-template-columns:260px 1fr;
  gap:24px;
  overflow:hidden;
  box-shadow:var(--gobd-shadow);
  color:var(--gobd-text);
}
/* JS-Fallback: Nav mit Multiply-Overlay, ohne Trenner */
.psgobd-shell .psgobd-nav{
  background:transparent;
  border-right:0;
  padding:1rem;
  min-height:70vh;
  position:relative;
}

.psgobd-shell .psgobd-nav::before{
  content:"";
  position:absolute;
  inset:0;
  background:var(--gobd-nav-bg);
  mix-blend-mode:multiply;
  pointer-events:none;
  z-index:0;
}

.psgobd-shell .psgobd-step{
  padding:1.25rem 1.5rem;
  min-height:70vh;
  font-size:16px;
  line-height:1.65;
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  background:var(--gobd-bg);
}

/* Responsiv */
@media (max-width:900px){
  .psgobd-portal, .psm-gobd-portal{ width:calc(100% - 32px); grid-template-columns:1fr; }
  .psgobd-left, .psm-gobd-left,
  .psgobd-portal .psgobd-nav, .psm-gobd-portal .psm-gobd-nav{ border-right:0; border-bottom:1px solid var(--gobd-border); }
  .psgobd-shell{ grid-template-columns:1fr; }
  .psgobd-shell .psgobd-nav{ border-right:0; border-bottom:1px solid var(--gobd-border); }
}

/* =========================================================
   Navigation
   ========================================================= */
.psgobd-nav a, .psm-gobd-nav a{
  display:block;
  padding:.55rem .75rem;
  margin:.25rem 0;
  border-radius:var(--gobd-radius-sm);
  color:var(--gobd-text);
  text-decoration:none;
  border:1px solid transparent;
  transition:background .15s ease, border-color .15s ease, color .15s ease;
}
.psgobd-nav a:hover, .psm-gobd-nav a:hover{ background:var(--gobd-soft); border-color:var(--gobd-border); }
.psgobd-nav a.active, .psm-gobd-nav a.active{
  background:var(--gobd-accent-bg);
  border-color:var(--gobd-accent-border);
  color:#1f2937;
  font-weight:600;
}
.psgobd-nav-extra{ margin-top:12px; }
.psgobd-nav-spacer{ height:12px; }
.psgobd-sep{ border:0; border-top:1px solid var(--gobd-border); margin:12px 0 20px; }

/* Logout-Button in der Nav */
.psgobd-logout-btn{
  width:100%;
  padding:.6rem 1rem;
  border-radius:10px;
  border:1px solid #d1d5db;
  background:#fff;
  cursor:pointer;
  transition:background .15s ease, border-color .15s ease;
}
.psgobd-logout-btn:hover{ background:var(--gobd-soft); border-color:var(--gobd-border); }

/* Extra-Abstand zwischen Linie (.psgobd-sep) und Logout-Button */
.psgobd-nav .psgobd-sep + .psgobd-logout-btn,
.psm-gobd-portal .psm-gobd-nav .psgobd-sep + .psgobd-logout-btn,
.psgobd-shell .psgobd-nav .psgobd-sep + .psgobd-logout-btn{
  margin-top: 12px; /* wirkt wie eine Leerzeile */
}

/* =========================================================
   Überschriften / Typografie (rechte Spalte)
   ========================================================= */
.psgobd-right h1, .psm-gobd-right h1,
.psgobd-step h1{ margin:0 0 1rem; font-size:1.4rem; }
.psgobd-right h2, .psm-gobd-right h2,
.psgobd-step h2{ margin:0 0 1rem; font-size:1.25rem; }
.psgobd-right p, .psm-gobd-right p,
.psgobd-step p{ margin:.6rem 0; color:var(--gobd-text); }
.psgobd-right li, .psm-gobd-right li,
.psgobd-step li{ color:var(--gobd-text); }

/* Harte Rückstellung: Fließtext regulär, echte Betonungen/Überschriften fett */
.psgobd-portal .psgobd-step,
.psm-gobd-portal .psm-gobd-step,
.psgobd-shell  .psgobd-step { font-weight: 400 !important; }

.psgobd-step strong,
.psgobd-step b,
.psgobd-step h1,
.psgobd-step h2,
.psgobd-step h3 { font-weight: 600 !important; }

/* Speichern-Status */
.psgobd-saving, .psm-gobd-saving{ display:none; font-size:12px; color:var(--gobd-muted); margin-bottom:10px; }

/* Listen-Fix: rechte Spalte/Step erzwingen Aufzählung */
.psgobd-right ul,
.psm-gobd-right ul,
.psgobd-step ul,
.psgobd-right ol,
.psm-gobd-right ol,
.psgobd-step ol{
  margin: .6rem 0 .6rem 1.25rem !important;
  padding-left: 1rem !important;
}

.psgobd-right ul,
.psm-gobd-right ul,
.psgobd-step ul{ list-style: disc outside !important; }

.psgobd-right ol,
.psm-gobd-right ol,
.psgobd-step ol{ list-style: decimal outside !important; }

.psgobd-right li,
.psm-gobd-right li,
.psgobd-step li{
  display: list-item !important;
  white-space: normal !important;
}

/* =========================================================
   Formulare
   ========================================================= */
.psgobd-right .field, .psm-gobd-right .field, .psgobd-step .field{ margin:.6rem 0; }

.psgobd-right .field input[type="text"],
.psgobd-right .field input[type="email"],
.psgobd-right .field input[type="url"],
.psgobd-right .field input[type="tel"],
.psgobd-right .field textarea,
.psgobd-right .field select,
.psm-gobd-right .field input[type="text"],
.psm-gobd-right .field input[type="email"],
.psm-gobd-right .field input[type="url"],
.psm-gobd-right .field input[type="tel"],
.psm-gobd-right .field textarea,
.psm-gobd-right .field select,
.psgobd-step .field input[type="text"],
.psgobd-step .field input[type="email"],
.psgobd-step .field input[type="url"],
.psgobd-step .field input[type="tel"],
.psgobd-step .field textarea,
.psgobd-step .field select{
  width:100%;
  padding:.65rem .75rem;
  border:1px solid #d1d5db;
  border-radius:10px;
  outline:none;
  background:#fff;
  color:var(--gobd-text);
  transition:border-color .15s ease, box-shadow .15s ease;
}

.psgobd-right .field input[type="text"],
.psgobd-right .field input[type="email"],
.psgobd-right .field input[type="url"],
.psgobd-right .field input[type="tel"],
.psgobd-right .field input[type="number"], /* ← NEU */
.psgobd-right .field textarea,
.psgobd-right .field select,
.psm-gobd-right .field input[type="text"],
.psm-gobd-right .field input[type="email"],
.psm-gobd-right .field input[type="url"],
.psm-gobd-right .field input[type="tel"],
.psm-gobd-right .field input[type="number"], /* ← NEU */
.psm-gobd-right .field textarea,
.psm-gobd-right .field select,
.psgobd-step .field input[type="text"],
.psgobd-step .field input[type="email"],
.psgobd-step .field input[type="url"],
.psgobd-step .field input[type="tel"],
.psgobd-step .field input[type="number"], /* ← NEU */
.psgobd-step .field textarea,
.psgobd-step .field select{
  width:100%;
  padding:.65rem .75rem;
  border:1px solid #d1d5db;
  border-radius:10px;
  outline:none;
  background:#fff;
  color:var(--gobd-text);
  transition:border-color .15s ease, box-shadow .15s ease;
}

.psgobd-right .field textarea,
.psm-gobd-right .field textarea,
.psgobd-step .field textarea{ min-height:140px; resize:vertical; }

.psgobd-right .field input:focus,
.psgobd-right .field textarea:focus,
.psgobd-right .field select:focus,
.psm-gobd-right .field input:focus,
.psm-gobd-right .field textarea:focus,
.psm-gobd-right .field select:focus,
.psgobd-step .field input:focus,
.psgobd-step .field textarea:focus,
.psgobd-step .field select:focus{
  border-color:var(--gobd-accent-border);
  box-shadow:0 0 0 3px rgba(199,210,254,.35);
}

.psgobd-right .gobd-field label,
.psgobd-step .gobd-field label{ display:block; font-weight:600; margin-bottom:4px; }
.psgobd-right .gobd-field input[type="file"],
.psgobd-step .gobd-field input[type="file"]{ width:100%; }

/* Logo Upload Vorschau */
#gobd-logo-preview-wrap{ margin-top:8px; display:none; }
#gobd-logo-preview{ max-height:60px; width:auto; display:block; }

/* Ergänzende Hinweise – Abstände & Button-Layout */
.psgobd-block-spacing{ margin:10px 0 14px; }
.psgobd-inline-remove{ margin-left:8px; vertical-align:middle; }

/* =========================================================
   Buttons / Actions
   ========================================================= */
.psgobd-actions{ display:flex; justify-content:space-between; gap:10px; margin-top:16px; }
.psgobd-actions .psgobd-button,
.psm-gobd-actions .psm-gobd-button,
.psgobd-button, .psm-gobd-button{
  padding:.6rem 1rem;
  border-radius:10px;
  border:1px solid #d1d5db;
  background:#fff;
  color:var(--gobd-text);
  cursor:pointer;
  transition:background .15s ease, border-color .15s ease, color .15s ease;
}
.psgobd-actions .psgobd-button#psgobd-next,
.psm-gobd-actions .psm-gobd-button#psgobd-next{
  background:var(--gobd-primary);
  color:var(--gobd-primary-contrast);
  border-color:var(--gobd-primary);
}
.psgobd-button.is-danger, .psm-gobd-button.is-danger{
  background:var(--gobd-danger);
  border-color:var(--gobd-danger);
  color:#fff;
}
.psgobd-button.is-danger:hover, .psm-gobd-button.is-danger:hover{
  background:var(--gobd-danger-hover);
  border-color:var(--gobd-danger-hover);
}
.psgobd-button[disabled], .psm-gobd-button[disabled]{ opacity:.6; cursor:not-allowed; }

/* =========================================================
   Explain-Bereich (Markdown gerendert)
   ========================================================= */
.psgobd-explain-slot{ margin-top:16px; }

/* container */
.psgobd-explain-slot .psgobd-page-explain{
  background:#fafafa;
  border:1px solid #eee;
  border-radius:8px;
  padding:16px;
  font-size:inherit;
  line-height:inherit;
  box-sizing:border-box;
  max-width:100%;
  overflow-x:auto;
  white-space:normal;
  word-wrap:break-word;
  overflow-wrap:anywhere;
  hyphens:auto;
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color:var(--gobd-text);
}
.psgobd-explain-slot .psgobd-page-explain h1{ font-size:1.3rem; margin:1rem 0 .6rem; }
.psgobd-explain-slot .psgobd-page-explain h2{ font-size:1.2rem; margin:.9rem 0 .5rem; }
.psgobd-explain-slot .psgobd-page-explain h3{ font-size:1.1rem; margin:.8rem 0 .45rem; }
.psgobd-explain-slot .psgobd-page-explain h4{ font-size:1rem;   margin:.7rem 0 .4rem; }
.psgobd-explain-slot .psgobd-page-explain p{ margin:.6rem 0; color:var(--gobd-text); }
.psgobd-explain-slot .psgobd-page-explain ul,
.psgobd-explain-slot .psgobd-page-explain ol{ margin:.6rem 0 .6rem 1.25rem; padding-left:1rem; }
.psgobd-explain-slot .psgobd-page-explain ul{ list-style:disc; }
.psgobd-explain-slot .psgobd-page-explain ol{ list-style:decimal; }
.psgobd-explain-slot .psgobd-page-explain blockquote{
  margin:.6rem 0 .6rem 1rem;
  padding:.4rem .6rem;
  border-left:3px solid var(--gobd-border);
  background:var(--gobd-nav-bg);
}
.psgobd-explain-slot .psgobd-page-explain code{
  padding:.1rem .3rem; background:var(--gobd-soft); border-radius:4px;
}
.psgobd-explain-slot .psgobd-page-explain pre{
  padding:.75rem; overflow:auto; background:var(--gobd-soft-2); border-radius:6px;
}
/* Tabellen/Bilder */
.psgobd-explain-slot .psgobd-page-explain table{ width:100%; border-collapse:collapse; margin:.8rem 0; }
.psgobd-explain-slot .psgobd-page-explain th,
.psgobd-explain-slot .psgobd-page-explain td{ border:1px solid #ddd; padding:.5rem; text-align:left; }
.psgobd-explain-slot .psgobd-page-explain img{ max-width:100%; height:auto; display:block; }

/* Zusätzlich generische Content-Styles (z.B. für PDF) */
.psgobd-content h1,.psgobd-content h2,.psgobd-content h3{ margin:1.2em 0 .5em; line-height:1.25; }
.psgobd-content p{ margin:.6em 0; }
.psgobd-content ul, .psgobd-content ol{ margin:.6em 0 .6em 1.4em; }
.psgobd-content pre{ padding:.75rem; overflow:auto; background:var(--gobd-soft-2); border-radius:6px; }
.psgobd-content table{ border-collapse:collapse; width:100%; margin:.8em 0; }
.psgobd-content th, .psgobd-content td{ border:1px solid #ddd; padding:.5em; text-align:left; }

/* Fallback für falsch als <pre> gerenderte Explain-Seiten */
.psgobd-explain-slot .psgobd-page-explain pre,
.psgobd-explain-slot .psgobd-page-explain pre.psgobd-plain{
  white-space:pre-wrap; word-wrap:break-word; overflow-wrap:anywhere;
}

/* =========================================================
   PDF-Bereich / Alerts
   ========================================================= */
#psgobd-pdf-area .psgobd-alert{
  background:var(--gobd-soft);
  border:1px solid var(--gobd-border);
  padding:10px;
  border-radius:8px;
  display:flex;
  justify-content:space-between;
  align-items:center;
}
#psgobd-pdf-area .psgobd-hint{ color:var(--gobd-muted); }

/* =========================================================
   Modal (Logout / Confirm)
   ========================================================= */
.psgobd-modal-overlay{
  position:fixed; inset:0; background:rgba(0,0,0,.35);
  display:flex; align-items:center; justify-content:center;
  z-index:9999;
}
.psgobd-modal{
  width:min(480px, calc(100% - 40px));
  background:#fff;
  border:1px solid var(--gobd-border);
  border-radius:var(--gobd-radius);
  padding:16px;
  box-shadow:var(--gobd-shadow);
}
.psgobd-modal .psgobd-btn-logout,
.psgobd-modal .psgobd-btn-ok{
  display:inline-block;
  padding:.6rem 1rem;
  border-radius:10px;
  border:1px solid var(--gobd-primary);
  background:var(--gobd-primary);
  color:#fff;
  text-decoration:none;
  cursor:pointer;
}
.psgobd-modal .psgobd-btn-cancel{
  padding:.6rem 1rem;
  border-radius:10px;
  border:1px solid #d1d5db;
  background:#fff;
  cursor:pointer;
}
/* === 2FA "Verifizierung" wieder als kompakte Login-Box =================== */
/* 1) Box-Container treffen – egal ob Plugin eine Klasse setzt oder nur ein <form> rendert */
#psgobd-verify,
.psgobd-verify,
.psgobd-form,
.entry-content form[action*="otp"],
.entry-content form[action*="verify"],
.fusion-post-content form[action*="otp"],
.fusion-post-content form[action*="verify"],
.fusion-builder-container form[action*="otp"],
.fusion-builder-container form[action*="verify"],
.fusion-row form[action*="otp"],
.fusion-row form[action*="verify"]{
  max-width:560px !important;
  width:100% !important;
  margin:24px auto !important;
  padding:20px 24px !important;
  background:#fff !important;
  border:1px solid #e5e7eb !important;
  border-radius:12px !important;
  box-shadow:0 1px 2px rgba(0,0,0,.04), 0 12px 24px rgba(0,0,0,.08) !important;
  box-sizing:border-box !important;
}

/* 2) Überschrift & Text innen */
#psgobd-verify h1, .psgobd-verify h1, .psgobd-form h1,
.entry-content form[action*="otp"] h1,
.entry-content form[action*="verify"] h1{ margin-top:0 !important; }

/* 3) Code-Feld angenehm schmal */
#psgobd-verify input[type="text"],
#psgobd-verify input[type="tel"],
#psgobd-verify input[type="number"],
.psgobd-verify input[type="text"],
.psgobd-verify input[type="tel"],
.psgobd-verify input[type="number"],
.entry-content form[action*="otp"] input[type="text"],
.entry-content form[action*="verify"] input[type="text"],
.entry-content form[action*="otp"] input[type="tel"],
.entry-content form[action*="verify"] input[type="tel"],
.entry-content form[action*="otp"] input[type="number"],
.entry-content form[action*="verify"] input[type="number"]{
  max-width:340px !important;
  width:100% !important;
  padding:.65rem .75rem !important;
  border:1px solid #d1d5db !important;
  border-radius:10px !important;
  background:#fafafa !important;
}

/* 4) Buttons wie beim Login */
#psgobd-verify .button, #psgobd-verify button[type="submit"],
.psgobd-verify .button, .psgobd-verify button[type="submit"],
.entry-content form[action*="otp"] .button,
.entry-content form[action*="verify"] .button,
.entry-content form[action*="otp"] button[type="submit"],
.entry-content form[action*="verify"] button[type="submit"]{
  padding:.6rem 1rem !important;
  border-radius:10px !important;
  border:1px solid var(--gobd-primary) !important;
  background:var(--gobd-primary) !important;
  color:#fff !important;
  cursor:pointer !important;
}

/* =========================================================
   Utilities
   ========================================================= */
.psgobd-mt-0{ margin-top:0 !important; }
.psgobd-mt-1{ margin-top:.25rem !important; }
.psgobd-mt-2{ margin-top:.5rem !important; }
.psgobd-mt-3{ margin-top:.75rem !important; }
.psgobd-mt-4{ margin-top:1rem !important; }

.psgobd-mb-0{ margin-bottom:0 !important; }
.psgobd-mb-1{ margin-bottom:.25rem !important; }
.psgobd-mb-2{ margin-bottom:.5rem !important; }
.psgobd-mb-3{ margin-bottom:.75rem !important; }
.psgobd-mb-4{ margin-bottom:1rem !important; }

/* Keyboard-Fokus */
.psgobd-portal :focus-visible, .psm-gobd-portal :focus-visible,
.psgobd-shell :focus-visible{
  outline:3px solid rgba(199,210,254,.75);
  outline-offset:2px;
  border-radius:4px;
}

/* =========================================================
   Variant Toggle (Standard vs. Eigener Text) + TinyMCE-Fixes
   ========================================================= */

/* Per CSS schalten (zusätzlich zu JS) */
.psgobd-right form:has(input[name="text_variant"][value="custom"]:checked) .psgobd-custom,
.psgobd-step  form:has(input[name="text_variant"][value="custom"]:checked) .psgobd-custom{ display:block !important; }
.psgobd-right form:has(input[name="text_variant"][value="custom"]:checked) .psgobd-std,
.psgobd-step  form:has(input[name="text_variant"][value="custom"]:checked) .psgobd-std   { display:none  !important; }
.psgobd-right form:has(input[name="text_variant"][value="standard"]:checked) .psgobd-custom,
.psgobd-step  form:has(input[name="text_variant"][value="standard"]:checked) .psgobd-custom{ display:none  !important; }
.psgobd-right form:has(input[name="text_variant"][value="standard"]:checked) .psgobd-std,
.psgobd-step  form:has(input[name="text_variant"][value="standard"]:checked) .psgobd-std   { display:block !important; }

/* TinyMCE sichtbar & bedienbar halten */
.psgobd-portal .tox.tox-tinymce,
.psgobd-shell  .tox.tox-tinymce{ display:block !important; visibility:visible !important; opacity:1 !important; max-width:100% !important; }
.tox, .tox *{ pointer-events:auto !important; }
.tox .tox-edit-area__iframe, .tox .tox-edit-area iframe{ pointer-events:auto !important; }

/* Content-Spalte zuverlässig über evtl. Theme-Overlays legen */
.psgobd-right, .psm-gobd-right, .psgobd-step, .psm-gobd-step{ position:relative; z-index:50; }

/* Falls Theme user-select blockiert */
.psgobd-shell *, .psgobd-step *{ user-select:text !important; }

/* Inline-Editor sichtbar (ohne Iframe) */
#custom_text.mce-content-body {
  min-height: 240px;
  border: 1px solid #d1d5db;
  border-radius: 10px;
  padding: .75rem;
  background: #fff;
}

/* Fokusrahmen, wenn Inline-Editor aktiv */
#custom_text.mce-edit-focus {
  box-shadow: 0 0 0 3px rgba(199,210,254,.35);
  outline: none;
}

/* Toolbar vom Inline-Editor sicher bedienbar */
.tox.tox-tinymce-inline { z-index: 100000 !important; }

/* Erzwinge Kontrast für "Weiter" – gegen Theme-Overrides */
#psgobd-next,
.psgobd-actions #psgobd-next,
.psm-gobd-actions #psgobd-next{
  background: var(--gobd-primary) !important;
  color: var(--gobd-primary-contrast) !important;
  border-color: var(--gobd-primary) !important;
}
#psgobd-next:hover{ filter: brightness(0.92); }

/* Hilfetexte unter Labels/Feldern (kursiv, dezent) */
.psgobd-help {
  font-size: .9rem;
  color: var(--gobd-muted);
  font-style: italic;
  margin: .25rem 0 .5rem;
}

/* Grauer, dezenter Text – für (Mehrfachauswahl) */
.psgobd-muted { color: var(--gobd-muted); }

.psgobd-inline-2{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:12px;
}
@media (max-width:900px){
  .psgobd-inline-2{ grid-template-columns: 1fr; }
}
/* =========================================================
   Sticky-Speicherleiste (unten, weißer Kasten, runde Ecken)
   ========================================================= */
.psgobd-sticky-save{
  position: fixed;
  left: 50%;
  transform: translateX(-50%);
  bottom: max(12px, env(safe-area-inset-bottom));
  width: min(720px, calc(100% - 32px));
  z-index: 10000;
  background: #fff;
  border: 1px solid var(--gobd-border);
  border-radius: var(--gobd-radius);
  box-shadow: var(--gobd-shadow);
  pointer-events: none; /* klickt nicht in den Content */
}
.psgobd-sticky-save .psgobd-sticky-inner{
  display: flex;
  align-items: center;
  gap: .6rem;
  padding: .6rem .8rem;
  font: 14px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color: var(--gobd-text);
}

/* Icon + Zustände */
.psgobd-sticky-icon{ font-weight: 700; min-width: 1.2em; text-align:center; }
.psgobd-sticky-time{ margin-left: .4rem; color: var(--gobd-muted); }

/* Farben für States */
.psgobd-sticky-save.is-saving .psgobd-sticky-icon{ animation: psgobd-spin 1s linear infinite; opacity:.9; }
.psgobd-sticky-save.is-success .psgobd-sticky-icon{ color: #10b981; } /* grün */
.psgobd-sticky-save.is-error   .psgobd-sticky-icon{ color: var(--gobd-danger); }

/* dezente Rotation für "Speichern …" */
@keyframes psgobd-spin {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}
