/* Mitgliederbereich im Norman-Design.

   Eigenstaendig: alle Farben und Schriften stehen hier, damit der
   Mitgliederbereich ohne das Stylesheet der Hauptseite funktioniert. Liegt
   nw-theme.css doch daneben, sind die Werte identisch, es gibt also keinen
   Bruch. Das ist die Voraussetzung fuer den spaeteren Umzug auf eine
   eigene Adresse. */

:root,
.llms-lms-seite,
.nwlms-anmeldung{
  --nw-navy:#062741;
  --nw-navy-2:#0a2c49;
  --nw-navy-tief:#041d31;
  --nw-creme:#f4f3ee;
  --nw-creme-2:#fbfaf7;
  --nw-weiss:#ffffff;
  --nw-gold:#cdae86;
  --nw-gold-hell:#e0c9a6;
  --nw-gold-dunkel:#7d653f;
  --nw-tinte:#323335;
  --nw-tinte-leise:#5f6975;
  --nw-hell:#d7e6ef;
  --nw-hell-leise:#a9bccc;
  --nw-grau:#9ba5ae;
  --nw-fuss:#7b93ab;
  --nw-linie-hell:rgba(6,39,65,.12);
  --nw-linie-gold:rgba(205,174,134,.30);
  --nw-linie-dunkel:rgba(255,255,255,.10);
  --nw-sans:Montserrat,"Helvetica Neue",system-ui,-apple-system,sans-serif;
  /* Eine Bahn für alle Bereiche, damit jede linke Kante auf derselben Linie
     sitzt: Inhalt 1140 breit, 20 Rand, also 1180 Container. */
  --nw-bahn:1180px;
  --nw-rand:20px;
  --nw-serif:Georgia,"Iowan Old Style","Palatino Linotype",serif;
}

.llms-lms-seite{background:var(--nw-creme);}
.llms-lms-seite .site-header,
.llms-lms-seite .site-footer{display:none;}

/* Inhaltsbahn und Grundtypografie ------------------------------------- */
.llms-lms-seite #content,
.llms-lms-seite .site-main{
  max-width:var(--nw-bahn);margin:0 auto;padding:44px var(--nw-rand) 64px;box-sizing:border-box;
  color:var(--nw-tinte);font-family:var(--nw-sans,Montserrat,system-ui,sans-serif);
}
.llms-lms-seite h1,
.llms-lms-seite h2,
.llms-lms-seite .llms-h3{
  font-family:var(--nw-serif,Georgia,"Iowan Old Style",serif);
  color:var(--nw-navy);font-weight:600;letter-spacing:-.01em;
}
.llms-lms-seite h1{font-size:clamp(28px,4vw,44px);line-height:1.15;margin:0 0 14px;}

/* Kopf der Kursseite --------------------------------------------------- */
.llms-lms-seite .llms-meta-info,
.llms-lms-seite .llms-instructor-info{
  background:var(--nw-weiss);border:1px solid var(--nw-linie-hell);border-radius:14px;
  padding:20px 22px;margin:0 0 26px;
}
.llms-lms-seite .llms-meta-title{
  font-size:11px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--nw-gold-dunkel);font-weight:600;
}

/* Fortschritt ---------------------------------------------------------- */
.llms-lms-seite .llms-progress{margin:0 0 30px;}
.llms-lms-seite .llms-progress .llms-progress-bar{
  background:rgba(6,39,65,.10);border-radius:999px;height:8px;overflow:hidden;
}
.llms-lms-seite .llms-progress .progress-bar-complete{
  background:var(--nw-gold);border-radius:999px;
}

/* Lehrplan ------------------------------------------------------------- */
.llms-lms-seite .llms-syllabus-wrapper{margin-top:12px;}
.llms-lms-seite .llms-section-title{
  font-size:13px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--nw-gold-dunkel);font-family:var(--nw-sans,Montserrat,sans-serif);
  font-weight:700;margin:32px 0 10px;padding-bottom:8px;
  border-bottom:1px solid var(--nw-linie-gold);
}
.llms-lms-seite .llms-lesson-preview{
  background:var(--nw-weiss);border:1px solid var(--nw-linie-hell);
  border-radius:12px;margin:0 0 10px;transition:border-color .15s,transform .15s;
}
.llms-lms-seite .llms-lesson-preview:hover{border-color:var(--nw-gold);}
.llms-lms-seite .llms-lesson-link{
  display:flex;align-items:center;gap:14px;padding:16px 20px;
  text-decoration:none;color:var(--nw-navy);
}
.llms-lms-seite .llms-lesson-title{font-weight:600;font-size:16px;}
.llms-lms-seite .llms-lesson-counter{
  font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--nw-tinte-leise);
}
.llms-lms-seite .llms-lesson-meta{margin-left:auto;}

/* Noch nicht freigeschaltet. Sichtbar bleiben, damit klar ist, was kommt. */
.llms-lms-seite .llms-lesson-preview.is-locked,
.llms-lms-seite .llms-lesson-preview:has(.llms-lesson-locked){
  background:transparent;border-style:dashed;
}
.llms-lms-seite .llms-lesson-locked{color:var(--nw-tinte-leise);}
.llms-lms-seite .llms-lesson-preview:has(.llms-lesson-locked) .llms-lesson-title{
  color:var(--nw-tinte-leise);font-weight:500;
}

/* Knoepfe, gleiche Form wie auf den Verkaufsseiten ---------------------- */
.llms-lms-seite .llms-button-primary,
.llms-lms-seite .llms-button-action,
.llms-lms-seite button[type="submit"],
.llms-lms-seite input[type="submit"]{
  background:var(--nw-gold);color:var(--nw-navy);border:0;border-radius:999px;
  padding:13px 30px;font-weight:700;font-size:15px;cursor:pointer;
  font-family:var(--nw-sans,Montserrat,sans-serif);text-decoration:none;display:inline-block;
}
.llms-lms-seite .llms-button-primary:hover,
.llms-lms-seite .llms-button-action:hover,
.llms-lms-seite button[type="submit"]:hover,
.llms-lms-seite input[type="submit"]:hover{background:var(--nw-gold-hell);color:var(--nw-navy);}
.llms-lms-seite .llms-button-secondary{
  background:transparent;color:var(--nw-navy);border:1px solid var(--nw-navy);
  border-radius:999px;padding:12px 26px;font-weight:600;
}

/* Hinweise ------------------------------------------------------------- */
.llms-lms-seite .llms-notice{
  border-radius:12px;padding:16px 20px;border:1px solid var(--nw-linie-gold);
  background:rgba(205,174,134,.12);color:var(--nw-tinte);
}
.llms-lms-seite .llms-notice.llms-error{
  border-color:rgba(176,58,46,.35);background:rgba(176,58,46,.07);
}

/* Dashboard und Anmeldung ---------------------------------------------- */
.llms-lms-seite .llms-sd-nav .llms-sd-items{
  display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0 0 28px;padding:0;
  border-bottom:1px solid var(--nw-linie-hell);
}
.llms-lms-seite .llms-sd-nav .llms-sd-item a{
  display:inline-block;padding:10px 16px;text-decoration:none;
  color:var(--nw-tinte-leise);font-weight:600;font-size:14px;border-bottom:2px solid transparent;
}
.llms-lms-seite .llms-sd-nav .llms-sd-item.current a,
.llms-lms-seite .llms-sd-nav .llms-sd-item a:hover{
  color:var(--nw-navy);border-bottom-color:var(--nw-gold);
}
.llms-lms-seite .llms-form-field label{
  display:block;font-weight:600;font-size:14px;color:var(--nw-navy);margin:0 0 6px;
}
.llms-lms-seite .llms-form-field input[type="text"],
.llms-lms-seite .llms-form-field input[type="email"],
.llms-lms-seite .llms-form-field input[type="password"],
.llms-lms-seite .nwlms-anmeldelink input[type="email"]{
  width:100%;max-width:420px;padding:12px 14px;border:1px solid var(--nw-linie-hell);
  border-radius:10px;background:var(--nw-weiss);font-size:15px;color:var(--nw-tinte);
}

/* Anmeldelink, der zweite Weg neben dem Passwort ----------------------- */
.nwlms-anmeldelink{
  margin:26px 0 0;padding:22px 24px;border-radius:14px;
  border:1px solid var(--nw-linie-hell);background:var(--nw-creme-2);max-width:520px;
}
.nwlms-anmeldelink label{
  display:block;font-weight:600;color:var(--nw-navy);margin:0 0 10px;font-size:15px;
}
.nwlms-anmeldelink button{margin-top:12px;}
.nwlms-anmeldelink .nwlms-ok{
  margin:0 0 14px;padding:12px 14px;border-radius:10px;
  background:rgba(205,174,134,.16);border:1px solid var(--nw-linie-gold);
  color:var(--nw-tinte);font-size:14px;
}

/* Kommentare gehoeren nicht in den Kursbereich ------------------------- */
.llms-lms-seite #comments,
.llms-lms-seite .comments-area{display:none;}

@media (max-width:600px){
  .llms-lms-seite #content,
  .llms-lms-seite .site-main{padding:26px 16px 44px;}
  .llms-lms-seite .llms-lesson-link{padding:14px 16px;gap:10px;}
}

/* =========================================================================
 * Navy-Seitenkopf, wie auf allen uebrigen Seiten
 * ====================================================================== */
.nwlms-kopf{
  background:var(--nw-navy);color:var(--nw-hell);
  padding:46px 0 40px;
}
.nwlms-kopf__innen{
  max-width:var(--nw-bahn);margin:0 auto;padding-inline:var(--nw-rand);box-sizing:border-box;
}
.nwlms-kopf__kicker{
  font-size:11px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--nw-gold);font-weight:600;margin:0 0 10px;
}
.nwlms-kopf h1{
  font-family:var(--nw-serif,Georgia,serif);color:#fff;font-weight:600;
  font-size:clamp(26px,3.6vw,40px);line-height:1.15;margin:0;letter-spacing:-.01em;
}
.nwlms-kopf__sub{color:var(--nw-hell-leise);margin:12px 0 0;font-size:16px;max-width:640px;}
/* Der Titel steht jetzt im Navy-Kopf, das Theme darf ihn nicht doppeln. */
.llms-lms-seite .site-main > .entry-title,
.llms-lms-seite .page-header .entry-title,
.llms-lms-seite .llms-form-heading{display:none;}

/* =========================================================================
 * LifterLMS-Akzentfarben ersetzen. Das Plugin bringt Pink (#ef476f) und
 * Blau (#466dd8) mit, beides gehoert nicht in diese Marke.
 * ====================================================================== */
.llms-lms-seite .llms-required{color:var(--nw-gold-dunkel);}
.llms-lms-seite a{color:var(--nw-navy);}
.llms-lms-seite a:hover{color:var(--nw-gold-dunkel);}
.llms-lms-seite .llms-button-plain,
.llms-lms-seite .llms-visibility-toggle{
  background:transparent;border:1px solid var(--nw-linie-hell);color:var(--nw-tinte-leise);
  border-radius:999px;padding:7px 14px;font-size:13px;font-weight:600;box-shadow:none;
}
.llms-lms-seite .llms-button-plain:hover,
.llms-lms-seite .llms-visibility-toggle:hover{
  border-color:var(--nw-gold);color:var(--nw-navy);background:transparent;
}
.llms-lms-seite .llms-field-html a{
  color:var(--nw-tinte-leise);font-size:13px;font-style:normal;text-decoration:underline;
}

/* =========================================================================
 * Anmeldeformular: eine ruhige Spalte statt eines zerrissenen Rasters
 * ====================================================================== */
.llms-lms-seite .llms-person-login-form-wrapper,
.llms-lms-seite form.llms-login{max-width:460px;}
.llms-lms-seite form.llms-login .llms-form-fields{display:block;margin:0;}
.llms-lms-seite form.llms-login [class*="llms-cols-"]{
  width:100%;max-width:100%;float:none;padding:0;margin:0 0 18px;
}
.llms-lms-seite form.llms-login .llms-field-input input{max-width:100%;}
.llms-lms-seite form.llms-login .llms-field-button{margin-top:6px;}
.llms-lms-seite form.llms-login .llms-field-checkbox{
  display:flex;align-items:center;gap:8px;margin:14px 0 0;
}
.llms-lms-seite form.llms-login .llms-field-checkbox label{margin:0;font-weight:500;}
.llms-lms-seite .nwlms-anmeldelink{max-width:460px;}

/* Feinschliff am Anmeldeformular ---------------------------------------- */
/* Die Checkbox steckt im Label, deshalb muss das Label selbst zur Zeile
   werden. Ein Flex auf dem Wrapper allein reicht nicht. */
.llms-lms-seite form.llms-login .llms-field-checkbox{display:block;}
.llms-lms-seite form.llms-login .llms-field-checkbox label{
  display:flex;align-items:center;gap:9px;cursor:pointer;font-size:14px;
}
.llms-lms-seite form.llms-login .llms-field-checkbox input[type="checkbox"]{
  width:16px;height:16px;margin:0;flex:0 0 auto;accent-color:var(--nw-navy);
}
.llms-lms-seite form.llms-login .llms-field-html{text-align:left;margin-top:14px;}

/* Favoriten-Herzen gehoeren nicht in einen Kursbereich mit einem Anbieter. */
.llms-lms-seite .llms-favorite-wrapper,
.llms-lms-seite .llms-favorite-btn,
.llms-lms-seite .llms-heart-btn{display:none !important;}

/* Dozentenblock: LifterLMS zeichnet dort Blau (#466dd8). */
.llms-lms-seite .llms-instructor-info,
.llms-lms-seite .llms-instructors,
.llms-lms-seite .llms-author{border-color:var(--nw-linie-hell) !important;}
.llms-lms-seite .llms-author img,
.llms-lms-seite .llms-instructors img{
  border:2px solid var(--nw-gold) !important;border-radius:999px;
}
.llms-lms-seite .llms-instructors{border-top:1px solid var(--nw-linie-hell) !important;}

/* Ohne gepflegten Dozenten steht dort nur "Autor". Dann lieber nichts. */
.llms-lms-seite .llms-meta-info:has(.llms-instructor-info:only-child){display:none;}

/* Fortschritt und Weiter-Knopf mittig, aber nicht verloren wirken lassen. */
.llms-lms-seite .llms-course-continue-button{text-align:left;margin:6px 0 34px;}
.llms-lms-seite .llms-progress{max-width:100%;}

/* Freigabedatum sichtbar machen, nicht nur als Tooltip. */
.llms-lms-seite .llms-lesson-locked[data-tooltip-msg]::after{
  content:attr(data-tooltip-msg);
  display:block;margin:2px 20px 14px;
  font-size:13px;font-weight:600;color:var(--nw-gold-dunkel);
  letter-spacing:.02em;
}
.llms-lms-seite .llms-lesson-locked .llms-lesson-link{padding-bottom:6px;}

/* Der leere Dozentenblock verschwindet, solange kein Dozent gepflegt ist. */
.llms-lms-seite .llms-meta-info{display:none;}

/* Fortschritt und Weiter-Knopf an die Textkante, nicht mittig. */
.llms-lms-seite .llms-course-continue-button,
.llms-lms-seite .llms-progress{text-align:left;}
.llms-lms-seite .llms-course-continue-button .llms-button-primary{margin-left:0;}

/* =========================================================================
 * Eigene Kopf- und Fusszeile
 *
 * Bewusst nicht die Elementor-Vorlagen der Hauptseite: der Mitgliederbereich
 * soll allein lauffaehig bleiben.
 * ====================================================================== */

.nwlms-kopfleiste{
  background:var(--nw-navy);border-bottom:1px solid var(--nw-linie-dunkel);
  font-family:var(--nw-sans);
}
.nwlms-kopfleiste__innen{
  max-width:var(--nw-bahn);margin:0 auto;padding:16px var(--nw-rand);box-sizing:border-box;
  display:flex;align-items:center;justify-content:space-between;gap:20px;
}
.nwlms-marke{text-decoration:none;display:block;line-height:1.25}
.nwlms-marke b{
  display:block;color:#fff;font-weight:700;font-size:17px;letter-spacing:.20em;
}
.nwlms-marke span{
  display:block;color:var(--nw-gold);font-size:9.5px;letter-spacing:.22em;
  text-transform:uppercase;margin-top:3px;
}
.nwlms-nav{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.nwlms-nav a{
  color:var(--nw-hell-leise);text-decoration:none;font-size:14px;font-weight:600;
  padding:8px 12px;border-radius:8px;
}
.nwlms-nav a:hover{color:#fff;background:rgba(255,255,255,.07)}
.nwlms-nav a.ist-aktiv{color:#fff}
.nwlms-nav .nwlms-abmelden{
  color:var(--nw-navy);background:var(--nw-gold);border-radius:999px;padding:9px 18px;
}
.nwlms-nav .nwlms-abmelden:hover{background:var(--nw-gold-hell);color:var(--nw-navy)}

.nwlms-fusszeile{
  background:var(--nw-navy-tief);color:var(--nw-fuss);
  font-family:var(--nw-sans);font-size:13px;margin-top:auto;
}
.nwlms-fusszeile__innen{
  max-width:var(--nw-bahn);margin:0 auto;padding:26px var(--nw-rand);box-sizing:border-box;
  display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:center;
}
.nwlms-fusszeile a{color:var(--nw-fuss);text-decoration:none;margin-left:18px}
.nwlms-fusszeile a:hover{color:var(--nw-hell-leise);text-decoration:underline}
.nwlms-fusszeile__links{margin:0}

/* =========================================================================
 * Anmeldeseite: zentrierte Karte auf dunklem Grund
 * ====================================================================== */

body.nwlms-anmeldung{background:var(--nw-navy)}
body.nwlms-anmeldung .site-header,
body.nwlms-anmeldung .site-footer,
body.nwlms-anmeldung .nwlms-kopf{display:none}
body.nwlms-anmeldung #content,
body.nwlms-anmeldung .site-main{max-width:none;padding:0;background:transparent}

.nwlms-tor{
  min-height:70vh;display:flex;align-items:center;justify-content:center;
  padding:56px 20px;
  background:
    radial-gradient(1100px 520px at 50% -10%, var(--nw-navy-2) 0%, transparent 60%),
    var(--nw-navy);
}
.nwlms-karte{
  width:100%;max-width:440px;background:var(--nw-weiss);border-radius:18px;
  padding:38px 36px 32px;box-shadow:0 24px 60px rgba(0,0,0,.30);
  font-family:var(--nw-sans);
}
.nwlms-karte__marke{text-align:center;margin:0 0 26px}
.nwlms-karte__marke b{
  display:block;color:var(--nw-navy);font-weight:700;font-size:15px;letter-spacing:.20em;
}
.nwlms-karte__marke span{
  display:block;color:var(--nw-gold-dunkel);font-size:9px;letter-spacing:.20em;
  text-transform:uppercase;margin-top:4px;
}
.nwlms-karte h1{
  font-family:var(--nw-serif);color:var(--nw-navy);font-size:27px;line-height:1.2;
  margin:0 0 6px;text-align:center;font-weight:600;letter-spacing:-.01em;
}
.nwlms-karte__sub{
  color:var(--nw-tinte-leise);font-size:14px;text-align:center;margin:0 0 26px;line-height:1.5;
}
.nwlms-feld{margin:0 0 15px}
.nwlms-feld label{
  display:block;font-size:13px;font-weight:600;color:var(--nw-navy);margin:0 0 6px;
}
.nwlms-feld input[type="text"],
.nwlms-feld input[type="email"],
.nwlms-feld input[type="password"]{
  width:100%;padding:13px 15px;border:1px solid var(--nw-linie-hell);border-radius:11px;
  background:var(--nw-creme-2);font-size:15px;color:var(--nw-tinte);
  font-family:var(--nw-sans);box-sizing:border-box;
}
.nwlms-feld input:focus{
  outline:none;border-color:var(--nw-gold);background:var(--nw-weiss);
  box-shadow:0 0 0 3px rgba(205,174,134,.22);
}
.nwlms-karte button[type="submit"]{
  width:100%;background:var(--nw-gold);color:var(--nw-navy);border:0;border-radius:999px;
  padding:14px 24px;font-weight:700;font-size:15px;cursor:pointer;
  font-family:var(--nw-sans);margin-top:6px;
}
.nwlms-karte button[type="submit"]:hover{background:var(--nw-gold-hell)}
.nwlms-karte__zeile{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin:14px 0 0;font-size:13px;
}
.nwlms-karte__zeile label{display:flex;align-items:center;gap:7px;color:var(--nw-tinte-leise);cursor:pointer}
.nwlms-karte__zeile input[type="checkbox"]{width:15px;height:15px;margin:0;accent-color:var(--nw-navy)}
.nwlms-karte__zeile a{color:var(--nw-tinte-leise);text-decoration:underline}
.nwlms-karte__zeile a:hover{color:var(--nw-navy)}

.nwlms-oder{
  display:flex;align-items:center;gap:14px;margin:26px 0 20px;
  color:var(--nw-tinte-leise);font-size:11px;letter-spacing:.16em;text-transform:uppercase;
}
.nwlms-oder::before,.nwlms-oder::after{content:"";flex:1;height:1px;background:var(--nw-linie-hell)}

.nwlms-karte__hinweis{
  margin:0 0 16px;padding:12px 14px;border-radius:11px;font-size:13.5px;line-height:1.5;
  background:rgba(205,174,134,.14);border:1px solid var(--nw-linie-gold);color:var(--nw-tinte);
}
.nwlms-karte__hinweis.ist-fehler{
  background:rgba(176,58,46,.07);border-color:rgba(176,58,46,.32);
}
.nwlms-karte__fuss{
  text-align:center;margin:24px 0 0;font-size:12.5px;color:var(--nw-tinte-leise);
}
.nwlms-karte__fuss a{color:var(--nw-gold-dunkel);text-decoration:none;font-weight:600}
.nwlms-karte__fuss a:hover{text-decoration:underline}

@media (max-width:520px){
  .nwlms-tor{padding:26px 14px;min-height:0}
  .nwlms-karte{padding:28px 22px 24px;border-radius:14px}
  .nwlms-karte h1{font-size:23px}
}

/* Kurskacheln im Dashboard aufräumen ------------------------------------ */
/* Ohne gepflegten Dozenten steht dort nur ein graues Platzhalter-Bildchen. */
.llms-lms-seite .llms-loop-item .llms-author,
.llms-lms-seite .llms-loop-item .avatar{display:none}
.llms-lms-seite .llms-loop-item{
  border:1px solid var(--nw-linie-hell);border-radius:14px;overflow:hidden;background:var(--nw-weiss);
}
.llms-lms-seite .llms-loop-item-content{padding:18px 20px 20px}
.llms-lms-seite .llms-loop-item h3,
.llms-lms-seite .llms-loop-item .llms-loop-title{
  font-family:var(--nw-sans);font-size:17px;font-weight:700;color:var(--nw-navy);
  line-height:1.3;margin:0 0 10px;
}
.llms-lms-seite .llms-meta{font-size:13px;color:var(--nw-tinte-leise)}
/* „Alle meine Kurse anzeigen“ soll ein Knopf sein, kein unterstrichener Link. */
.llms-lms-seite .llms-sd-section .llms-button-secondary{
  text-decoration:none;border:1px solid var(--nw-navy);color:var(--nw-navy);
  border-radius:999px;padding:11px 24px;font-weight:600;display:inline-block;
}
.llms-lms-seite .llms-sd-section .llms-button-secondary:hover{
  background:var(--nw-navy);color:#fff;
}

/* =========================================================================
 * Kursübersicht, Folgenliste, Lektionsseite
 *
 * Rhythmus: dunkle Bühne, dunkle Kursreihen, danach helle Lesestrecke. Längerer
 * Text auf Dunkel ermüdet, deshalb wechselt die Fläche dort, wo gelesen wird.
 * ====================================================================== */

/* --- Bühne ------------------------------------------------------------- */
.nwlms-buehne{
  position:relative;isolation:isolate;overflow:hidden;
  background:var(--nw-navy);
  padding:clamp(48px,7vw,104px) 0 clamp(40px,5vw,64px);
  margin:0 0 clamp(32px,4vw,56px);
}
.nwlms-buehne::before{
  content:"";position:absolute;inset:0;z-index:-2;
  background-image:var(--bild);background-size:cover;background-position:58% center;
}
.nwlms-buehne::after{
  content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(100deg,
    var(--nw-navy) 0%, color-mix(in oklab, var(--nw-navy) 92%, transparent) 38%,
    color-mix(in oklab, var(--nw-navy) 42%, transparent) 62%,
    color-mix(in oklab, var(--nw-navy) 15%, transparent) 100%);
}
.nwlms-buehne__inhalt{
  max-width:var(--nw-bahn);margin:0 auto;padding-inline:var(--nw-rand);box-sizing:border-box;
}
.nwlms-buehne__kicker{
  margin:0 0 12px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--nw-gold);font-weight:600;
}
.nwlms-buehne h1{
  font-family:var(--nw-serif);color:#fff;font-weight:600;letter-spacing:-.015em;
  font-size:clamp(30px,5vw,58px);line-height:1.06;margin:0;max-width:16ch;
}
.nwlms-buehne__text{
  color:var(--nw-hell-leise);margin:18px 0 0;max-width:52ch;font-size:16px;line-height:1.65;
}
.nwlms-buehne__knoepfe{display:flex;gap:12px;flex-wrap:wrap;margin:32px 0 0}
.nwlms-knopf{
  display:inline-flex;flex-direction:column;gap:2px;
  background:var(--nw-gold);color:var(--nw-navy);text-decoration:none;
  padding:13px 26px;border-radius:999px;font-weight:700;font-size:15px;
  transition:transform .18s cubic-bezier(.22,1,.36,1),background .18s;
}
.nwlms-knopf:hover{background:var(--nw-gold-hell);transform:translateY(-1px);color:var(--nw-navy)}
.nwlms-knopf__zusatz{
  font-weight:500;font-size:11.5px;opacity:.72;max-width:30ch;overflow:hidden;
  text-overflow:ellipsis;white-space:nowrap;
}
.nwlms-knopf.ist-still{
  background:transparent;color:var(--nw-hell);border:1px solid rgba(255,255,255,.28);
  justify-content:center;
}
.nwlms-knopf.ist-still:hover{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.45)}

/* --- Kursreihen -------------------------------------------------------- */
.nwlms-reihen{
  max-width:var(--nw-bahn);margin:0 auto clamp(40px,6vw,72px);
  padding-inline:var(--nw-rand);box-sizing:border-box;
}
.nwlms-reihen h2{
  font-family:var(--nw-sans);font-size:13px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--nw-gold-dunkel);font-weight:700;margin:0 0 18px;
}
.nwlms-reihen__gitter{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:20px;
}
.nwlms-reihe{
  text-decoration:none;display:block;border-radius:14px;overflow:hidden;
  background:var(--nw-weiss);border:1px solid var(--nw-linie-hell);
  transition:transform .2s cubic-bezier(.22,1,.36,1),box-shadow .2s;
}
.nwlms-reihe:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(6,39,65,.14)}
.nwlms-reihe__bild{
  display:block;aspect-ratio:16/9;background:var(--nw-navy) center/cover no-repeat;
  position:relative;
}
.nwlms-reihe.ist-zu .nwlms-reihe__bild{filter:grayscale(.55) brightness(.62)}
.nwlms-reihe__marke{
  position:absolute;left:12px;bottom:12px;background:rgba(6,39,65,.9);color:var(--nw-hell);
  font-size:11px;letter-spacing:.06em;padding:5px 11px;border-radius:999px;
}
.nwlms-reihe__text{display:block;padding:16px 18px 18px}
.nwlms-reihe__text strong{display:block;color:var(--nw-navy);font-size:16.5px;line-height:1.32}
.nwlms-reihe__text em{display:block;margin-top:6px;font-style:normal;font-size:13px;color:var(--nw-tinte-leise)}

/* --- Folgenliste auf der Kursseite ------------------------------------- */
.nwlms-folgen{max-width:900px;margin:clamp(28px,4vw,44px) 0 0}
.nwlms-folgen h2{
  font-family:var(--nw-sans);font-size:13px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--nw-gold-dunkel);font-weight:700;margin:0 0 6px;
}
.nwlms-folgen__liste{list-style:none;margin:0;padding:0;counter-reset:none}
.nwlms-folge{
  display:grid;grid-template-columns:38px 168px 1fr;gap:20px;align-items:start;
  padding:24px 0;border-bottom:1px solid var(--nw-linie-hell);
}
.nwlms-folge:last-child{border-bottom:0}
.nwlms-folge__nr{
  font-family:var(--nw-serif);font-size:26px;line-height:1;color:var(--nw-gold-dunkel);
  padding-top:4px;
}
.nwlms-folge__bild{
  display:block;aspect-ratio:16/9;border-radius:9px;background:var(--nw-navy) center/cover no-repeat;
}
.nwlms-folge__kopf{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:0 0 8px}
.nwlms-folge__kopf a,.nwlms-folge__kopf strong{
  font-size:19px;font-weight:700;color:var(--nw-navy);text-decoration:none;line-height:1.3;
}
.nwlms-folge__kopf a:hover{color:var(--nw-gold-dunkel)}
.nwlms-folge__kopf em{font-style:normal;font-size:12.5px;color:var(--nw-tinte-leise);white-space:nowrap}
.nwlms-folge__text{display:block;color:var(--nw-tinte);font-size:15px;line-height:1.62;max-width:68ch}
.nwlms-folge__sperre,
.nwlms-folge__fertig{
  display:inline-block;margin-top:10px;font-size:12.5px;font-weight:600;
}
.nwlms-folge__sperre{color:var(--nw-gold-dunkel)}
.nwlms-folge__fertig{color:var(--nw-tinte-leise)}
.nwlms-folge.ist-zu .nwlms-folge__bild{filter:grayscale(.6) brightness(.66)}
.nwlms-folge.ist-zu .nwlms-folge__kopf strong,
.nwlms-folge.ist-zu .nwlms-folge__text{color:var(--nw-tinte-leise)}
.nwlms-folge.ist-fertig .nwlms-folge__nr{color:var(--nw-tinte-leise)}

/* Ganze Kachel klickbar: der Titel-Link legt sich unsichtbar über die Zeile.
   So bleibt genau EIN Link im Markup, der Vorleser liest den Folgentitel. */
.nwlms-folge{position:relative}
.nwlms-folge.ist-klickbar{cursor:pointer}
.nwlms-folge.ist-klickbar .nwlms-folge__kopf a::after{
  content:"";position:absolute;inset:0;z-index:1;
}
.nwlms-folge.ist-klickbar .nwlms-folge__bild{
  transition:filter .18s ease, box-shadow .18s ease;
}
.nwlms-folge.ist-klickbar:hover .nwlms-folge__bild{
  filter:brightness(1.06);box-shadow:0 8px 22px rgba(6,39,65,.18);
}
/* Tastatur: die ganze Zeile bekommt den Rahmen, nicht nur der Titel. */
.nwlms-folge.ist-klickbar:has(a:focus-visible){
  outline:2px solid var(--nw-gold-dunkel);outline-offset:6px;border-radius:10px;
}
.nwlms-folge.ist-klickbar a:focus-visible{outline:none}

/* Nebenliste auf der Lektionsseite: gleiche Mechanik. */
.nwlms-neben__liste li{position:relative}
.nwlms-neben__liste li.ist-klickbar{cursor:pointer}
.nwlms-neben__liste li.ist-klickbar a::after{content:"";position:absolute;inset:0}
.nwlms-neben__liste li.ist-klickbar:has(a:focus-visible){
  outline:2px solid var(--nw-gold-dunkel);outline-offset:3px;border-radius:6px;
}
.nwlms-neben__liste li.ist-klickbar a:focus-visible{outline:none}

/* --- Lektionsseite ----------------------------------------------------- */
.llms-lms-seite.single-lesson .site-main{max-width:1180px}
.llms-lms-seite.single-lesson .llms-lesson-preview,
.llms-lms-seite.single-lesson .llms-parent-course-link{display:none}
.nwlms-neben{
  border:1px solid var(--nw-linie-hell);border-radius:14px;background:var(--nw-weiss);
  padding:18px 20px 20px;margin:32px 0 0;
}
.nwlms-neben__titel{
  margin:0 0 12px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--nw-gold-dunkel);font-weight:700;
}
.nwlms-neben__liste{list-style:none;margin:0;padding:0}
.nwlms-neben__liste li{
  display:grid;grid-template-columns:26px 1fr;gap:10px;align-items:baseline;
  padding:9px 0;border-top:1px solid var(--nw-linie-hell);font-size:14.5px;
}
.nwlms-neben__liste li:first-child{border-top:0}
.nwlms-neben__nr{font-size:11.5px;color:var(--nw-tinte-leise);font-variant-numeric:tabular-nums}
.nwlms-neben__liste a{color:var(--nw-navy);text-decoration:none}
.nwlms-neben__liste a:hover{color:var(--nw-gold-dunkel);text-decoration:underline}
.nwlms-neben__liste li.ist-hier{font-weight:700;color:var(--nw-navy)}
.nwlms-neben__liste li.ist-hier .nwlms-neben__nr{color:var(--nw-gold-dunkel)}
.nwlms-neben__liste li.ist-zu span:last-child{color:var(--nw-tinte-leise)}
.nwlms-neben__liste li.ist-fertig a{color:var(--nw-tinte-leise)}

.nwlms-leer{
  max-width:560px;margin:60px auto;padding:34px;border-radius:14px;
  background:var(--nw-weiss);border:1px solid var(--nw-linie-hell);text-align:center;
}

@media (min-width:1000px){
  /* Auf breiten Schirmen läuft die Folgenliste neben dem Video mit.
     Das Raster gehört auf .page-content: das ist der Container, in dem die
     Lektionsinhalte tatsächlich liegen, .site-main hat nur dieses eine Kind. */
  .llms-lms-seite.single-lesson .page-content{
    display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:38px;align-items:start;
  }
  .llms-lms-seite.single-lesson .page-content > *{grid-column:1;min-width:0}
  .llms-lms-seite.single-lesson .nwlms-neben{
    grid-column:2;grid-row:1 / span 40;margin-top:0;position:sticky;top:24px;
  }
}
@media (max-width:760px){
  .nwlms-folge{grid-template-columns:30px 1fr;gap:14px}
  .nwlms-folge__bild{grid-column:1 / -1;max-width:260px}
  .nwlms-buehne h1{max-width:none}
}

/* Knöpfe sind Knöpfe, keine Links. Das Elementor-Kit unterstreicht global mit
   höherer Spezifität, dagegen hilft nur !important. Gemessen mit
   getComputedStyle, nicht geraten. */
.nwlms-knopf,
.nwlms-knopf:hover,
.nwlms-knopf:focus,
.nwlms-knopf__zusatz,
.nwlms-reihe,
.nwlms-reihe:hover,
.nwlms-reihe:focus,
.nwlms-reihe__text,
.nwlms-reihe__text strong,
.llms-lms-seite .nwlms-folge__kopf a,
.llms-lms-seite .nwlms-neben__liste a,
.llms-lms-seite .nwlms-kopfleiste a,
.llms-lms-seite .nwlms-fusszeile a{text-decoration:none !important}
.llms-lms-seite .nwlms-folge__kopf a:hover,
.llms-lms-seite .nwlms-neben__liste a:hover,
.llms-lms-seite .nwlms-fusszeile a:hover{text-decoration:underline !important}

/* Der WordPress-Video-Baustein schreibt width:640px fest ins Element.
   Auf schmalen Geräten läuft das über, deshalb hier überschrieben. */
.llms-lms-seite .wp-video,
.llms-lms-seite .wp-video-shortcode,
.llms-lms-seite .mejs-container{width:100% !important;max-width:100% !important}
.llms-lms-seite .wp-video-shortcode,
.llms-lms-seite .mejs-container{height:auto !important;aspect-ratio:16/9}
.llms-lms-seite .mejs-overlay,
.llms-lms-seite .mejs-poster,
.llms-lms-seite .mejs-mediaelement video{width:100% !important;height:100% !important}
.llms-lms-seite .llms-video-wrapper,
.llms-lms-seite .center-video{max-width:100%}

/* Kopfleiste auf schmalen Geräten: Marke oben, Navigation als eine Zeile
   darunter. Gestapelte Einzelpunkte fressen sonst den halben Bildschirm. */
@media (max-width:640px){
  .nwlms-kopfleiste__innen{flex-direction:column;align-items:flex-start;gap:12px;padding:14px 16px}
  .nwlms-marke b{font-size:15px;letter-spacing:.16em}
  .nwlms-marke span{font-size:8.5px;letter-spacing:.16em}
  .nwlms-nav{width:100%;gap:4px;align-items:center}
  .nwlms-nav a{padding:7px 10px;font-size:13px}
  .nwlms-nav .nwlms-abmelden{margin-left:auto;padding:7px 15px}
  .nwlms-kopf{padding:30px 16px 26px}
  .nwlms-fusszeile__innen{flex-direction:column;align-items:flex-start;gap:10px}
  .nwlms-fusszeile a{margin:0 16px 0 0}
}

/* Auf der Übersicht bringt der Inhalt seine eigene Bahn mit: die Bühne läuft
   randlos über die volle Breite, Text und Kacheln liegen darin auf derselben
   Linie wie Kopfleiste und Fußzeile. Ohne das bekäme die Bühne den Abstand der
   Inhaltsbahn zusätzlich und stünde 20px weiter innen. */
.llms-lms-seite.nwlms-uebersicht #content,
.llms-lms-seite.nwlms-uebersicht .site-main{max-width:none;padding:0}
.llms-lms-seite.nwlms-uebersicht .nwlms-kopf{display:none}
