/* =====================================================================
   Mitgliederbereich (/mitglieder*) – nur auf diesen Seiten geladen.
   Baut auf site.css auf (.card, .notice, .pill, .chip, .btn, .kata-k …),
   hier nur Anordnung. Ausschließlich Tokens aus tokens.css/site.css,
   keine px, kein negatives letter-spacing.
   ===================================================================== */

.mb{padding-top:var(--s-10)}
@media(min-width:61.25em){.mb{padding-top:var(--s-16)}}

/* ---------- Kopf: Begrüßung + Abmelden ---------- */
.mb-kopf{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--s-4) var(--s-6);padding-bottom:var(--s-6);border-bottom:.0625rem solid var(--rule)}
.mb-kopf .crumb{margin-bottom:var(--s-3)}
.mb-hallo{font-size:var(--fs-h2);line-height:1.05;max-width:none}
.mb-ab{margin:0}
.mb-meldung{margin-top:var(--s-6)}
.mb-meldung.ok{box-shadow:inset .25rem 0 0 var(--green),var(--sh)}

/* ---------- Familienumschalter ---------- */
.mb-familie{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-3) var(--s-4);margin-top:var(--s-6)}
.mb-familie-l{display:flex;flex-wrap:wrap;gap:var(--s-2)}
.mb-familie form{margin:0}
.mb-punkt{width:.875rem;height:.4375rem;border-radius:.0625rem;background:linear-gradient(90deg,var(--g1) 0 50%,var(--g2) 50% 100%);box-shadow:0 0 0 .0625rem var(--rule-s);display:block;flex:none}

/* ---------- Raster: Hauptspalte + Seitenspalte ---------- */
.mb-raster{display:grid;gap:var(--s-10);margin-top:var(--s-8)}
@media(min-width:61.25em){.mb-raster{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:var(--s-12);align-items:start}}
.mb-block>.sec-head{margin-bottom:var(--s-5)}
.mb-block+.mb-block{margin-top:var(--s-10)}
.mb-leer{color:var(--mute);font-size:.9375rem}

/* ---------- Nächste Prüfung ---------- */
.mb-pruefung{position:relative;overflow:hidden;padding:var(--pad-card);padding-top:calc(var(--pad-card) + .5rem);display:grid;gap:var(--s-3)}
.mb-pruefung::before{content:"";position:absolute;left:0;right:0;top:0;height:.5rem;background:linear-gradient(90deg,var(--g1,var(--rule-s)) 0 50%,var(--g2,var(--rule-s)) 50% 100%);box-shadow:inset 0 -.0625rem 0 var(--rule)}
.mb-grad{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 var(--s-3);max-width:none}
.mb-grad span{font-size:var(--fs-row);font-weight:var(--fw-semi);color:var(--mute)}
.mb-termin{font-size:var(--fs-row);line-height:1.4}
.mb-termin b{font-weight:var(--fw-black)}
.mb-text{color:var(--mute);max-width:var(--measure-body)}
.mb-frei{list-style:none;margin:var(--s-2) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:var(--s-2)}
.mb-frei li{display:inline-flex;align-items:center;gap:.4375rem;font-size:.8125rem;font-weight:var(--fw-bold);color:var(--mute);padding:.375rem .625rem;border-radius:var(--shape-pill);background:var(--sunk)}
.mb-frei li::before{content:"";width:.5rem;height:.5rem;border-radius:50%;box-shadow:inset 0 0 0 .125rem var(--faint)}
.mb-frei li.ok{color:var(--fg)}
.mb-frei li.ok::before{background:var(--green);box-shadow:none}
.mb-pruefung .row-acts{margin-top:var(--s-3)}
.mb-zahlen{font-size:var(--fs-small);color:var(--mute)}

/* ---------- Trainings ---------- */
.mb-termine{list-style:none;margin:0;padding:0;display:grid;gap:var(--s-2)}
.mb-t{display:grid;grid-template-columns:3.25rem minmax(0,1fr);gap:var(--s-2) var(--s-4);align-items:center;padding:var(--s-4);background:var(--card);border-radius:var(--shape-card);box-shadow:var(--sh)}
.mb-t-tag{display:grid;justify-items:center;align-content:center;gap:.125rem;padding:.375rem 0;border-radius:var(--shape-chip);background:var(--sunk);line-height:1}
.mb-t-tag small{font-size:var(--fs-micro);font-weight:var(--fw-black);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--faint)}
.mb-t-tag b{font-size:1.25rem;font-weight:var(--fw-black)}
.mb-t.heute .mb-t-tag{background:var(--red);color:var(--on-red)}
.mb-t.heute .mb-t-tag small{color:var(--on-red)}
.mb-t-info{display:grid;gap:.1875rem;min-width:0}
.mb-t-info b{font-weight:var(--fw-bold);line-height:1.3}
.mb-t-info span{font-size:var(--fs-small);color:var(--mute)}
.mb-t-akt{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s-2) var(--s-3);padding-top:var(--s-3);border-top:.0625rem solid var(--rule)}
.mb-t-akt form{margin:0}
.mb-t-akt .pill{white-space:nowrap}
.mb-t.ab .mb-t-info b{text-decoration:line-through;text-decoration-thickness:.0625rem;color:var(--mute)}
.mb-t.aus{box-shadow:inset 0 0 0 .0625rem var(--warn),var(--sh)}
.mb-link-knopf{font:inherit;font-size:.875rem;font-weight:var(--fw-bold);color:var(--red-t);background:none;border:0;padding:.75rem 0;min-height:var(--hit);cursor:pointer;text-decoration:underline;text-decoration-thickness:.0625rem;text-underline-offset:.25em}
.mb-grund{font-size:var(--fs-small);color:var(--mute)}
@media(min-width:30em){
  .mb-t{grid-template-columns:3.25rem minmax(0,1fr) auto}
  .mb-t-akt{grid-column:auto;padding-top:0;border-top:0;justify-content:flex-end}
}
.mb-hinweis{margin-top:var(--s-4);font-size:var(--fs-small);color:var(--mute)}

/* ---------- Kata-Liste (Karten = .kata-k aus site.css) ---------- */
.mb-kata-gruppe+.mb-kata-gruppe{margin-top:var(--s-6)}
.mb-kata-gruppe>h3{display:flex;align-items:center;gap:var(--s-2);font-size:var(--fs-kicker);font-weight:var(--fw-black);letter-spacing:var(--ls-kicker);text-transform:uppercase;color:var(--mute);margin-bottom:var(--s-3)}
.mb-kata-gruppe .kata-raster{grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:var(--s-2)}
.mb-kata-gruppe .kata-k{padding:var(--s-4) var(--s-4) var(--s-4) calc(var(--s-4) + .25rem)}
a.kata-k{color:inherit;transition:transform var(--dur-fast) var(--ease),box-shadow var(--dur-fast) ease}
@media(hover:hover) and (pointer:fine){a.kata-k:hover{box-shadow:var(--shHi);transform:translateY(-.125rem)}}
a.kata-k:active{transform:scale(.98)}
.mb-kata-meta{font-size:var(--fs-small);color:var(--mute)}
@media(min-width:61.25em){.mb-kata-gruppe .kata-raster{gap:var(--s-3)}.mb-kata-gruppe .kata-k{padding:var(--s-4) var(--s-4) var(--s-4) calc(var(--s-4) + .25rem);gap:var(--s-2)}}

/* ---------- Kata-Detail ---------- */
.mb-medien{display:grid;gap:var(--s-6)}
@media(min-width:61.25em){.mb-medien.zwei{grid-template-columns:repeat(2,minmax(0,1fr))}}
.mb-video{display:grid;gap:var(--s-2);margin:0}
.mb-video video{width:100%;aspect-ratio:16 / 9;display:block;background:var(--overlay);border-radius:var(--shape-card)}
.mb-video figcaption{font-size:var(--fs-small);color:var(--mute)}
.mb-schritte{list-style:none;margin:0;padding:0;display:grid;gap:var(--s-3);grid-template-columns:repeat(auto-fill,minmax(min(100%,9.5rem),1fr))}
@media(min-width:61.25em){.mb-schritte{gap:var(--s-4);grid-template-columns:repeat(auto-fill,minmax(12rem,1fr))}}
.mb-schritt{display:flex;flex-direction:column;overflow:hidden;background:var(--card);border-radius:var(--shape-card);box-shadow:var(--sh);min-width:0}
.mb-schritt figure{position:relative;margin:0;background:var(--tks-white);aspect-ratio:3 / 4}
.mb-schritt img{width:100%;height:100%;object-fit:contain;display:block}
.mb-schritt-nr{position:absolute;left:0;top:0;min-width:2.25rem;padding:.375rem .5rem;text-align:center;font-size:.875rem;font-weight:var(--fw-black);background:var(--inv);color:var(--invfg);border-radius:0 0 var(--r-chip) 0}
.mb-schritt p{padding:var(--s-3);font-size:.875rem;line-height:1.45}
.mb-schritt.ohne-bild{flex-direction:row;align-items:baseline;gap:var(--s-3);padding:var(--s-3)}
.mb-schritt.ohne-bild p{padding:0}
.mb-schritt-nr-t{font-weight:var(--fw-black);color:var(--red-t)}
.mb-embusen{margin-top:var(--s-6)}
.mb-embusen summary{cursor:pointer;font-weight:var(--fw-bold);padding:.75rem 0;min-height:var(--hit)}
.mb-embusen img{max-width:min(100%,28rem);height:auto;background:var(--tks-white);border-radius:var(--shape-card);margin-top:var(--s-3)}
.mb-grade{display:flex;flex-wrap:wrap;gap:var(--s-2);margin-top:var(--s-4)}

/* ---------- Prüfungsprogramm ---------- */
.mb-wahl{display:flex;gap:var(--s-2);overflow-x:auto;padding:.25rem .25rem var(--s-2);margin:var(--s-6) -.25rem 0;scrollbar-width:thin;overscroll-behavior-x:contain}
.mb-wahl .chip{flex:none;text-decoration:none}
.mb-wahl .chip[aria-current="page"]{background:var(--fill);color:var(--on-fill)}
.mb-wahl .chip small{font-size:var(--fs-micro);font-weight:var(--fw-black);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--red-t)}
.mb-prog{display:grid;gap:var(--s-10);margin-top:var(--s-8)}
@media(min-width:61.25em){.mb-prog{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-12) var(--s-10)}.mb-prog .breit{grid-column:1 / -1}}
.mb-prog section>.sec-head{margin-bottom:var(--s-4)}
.mb-zeilen{list-style:none;margin:0;padding:0;counter-reset:z}
.mb-zeilen li{counter-increment:z;display:grid;grid-template-columns:2rem minmax(0,1fr);gap:.125rem var(--s-3);padding:var(--s-3) 0;border-bottom:.0625rem solid var(--rule)}
.mb-zeilen li::before{content:counter(z);grid-row:span 2;font-size:.875rem;font-weight:var(--fw-black);color:var(--red-t);padding-top:.125rem}
.mb-zeilen b{font-weight:var(--fw-bold)}
.mb-zeilen span{font-size:var(--fs-small);color:var(--mute)}
.mb-zeilen a{color:inherit;text-decoration:underline;text-decoration-thickness:.0625rem;text-underline-offset:.2em;text-decoration-color:var(--red-t)}
.mb-tabelle{overflow-x:auto;border-radius:var(--shape-card);box-shadow:var(--sh);background:var(--card)}
.mb-tabelle table{width:100%;border-collapse:collapse;font-size:.875rem}
.mb-tabelle th,.mb-tabelle td{text-align:left;padding:.625rem .75rem;border-bottom:.0625rem solid var(--rule);vertical-align:top}
.mb-tabelle th{font-size:var(--fs-micro);font-weight:var(--fw-black);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--mute);white-space:nowrap}
.mb-tabelle tr:last-child td{border-bottom:0}
.mb-absatz{white-space:pre-line;color:var(--mute);max-width:var(--measure-body)}
.mb-absatz+.mb-absatz{margin-top:var(--s-3)}
.mb-prog h3.h3{margin-bottom:var(--s-2)}

/* ---------- Start (nicht angemeldet) ---------- */
.mb-start{display:grid;gap:var(--s-10)}
@media(min-width:61.25em){.mb-start{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:var(--s-16);align-items:start}}
.mb-start .h1{max-width:12ch}
.mb-start .row-acts{margin-top:var(--s-6)}
.mb-klein{font-size:var(--fs-small);color:var(--mute);margin-top:var(--s-4);max-width:var(--measure-lede)}
.mb-klein a{color:var(--red-t);text-decoration:underline;text-decoration-thickness:.0625rem;text-underline-offset:.2em}

/* Icons statt Textlinks (Tony 25.10.2026) */
.mb-ic{width:2.75rem;height:2.75rem}
.mb-ic svg{width:1.375rem;height:1.375rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.mb-t.ab .mb-ic{color:var(--red-t)}
.mb-app-hinweis{margin-top:var(--s-6);display:grid;gap:var(--s-3)}
.mb-app-hinweis p{margin:0;max-width:var(--measure-body)}
.mb-video-link{display:flex;align-items:center;gap:var(--s-4);padding:var(--s-5);color:var(--fg);text-decoration:none}
.mb-video-link svg{flex:none;width:2.75rem;height:2.75rem;fill:none;stroke:var(--red-t);stroke-width:1.6;stroke-linejoin:round}
.mb-video-link svg path{fill:var(--red-t);stroke:none}
.mb-video-link span{display:grid;gap:.125rem}
.mb-video-link small{color:var(--mute);font-size:var(--fs-small)}
@media(hover:hover) and (pointer:fine){.mb-video-link:hover b{color:var(--red-t)}}

/* Kata-Videos: Überschrift und mehr Luft (Tony 25.10.2026) */
.mb-videos .sec-head{margin-bottom:var(--s-8)}
.mb-videos .mb-medien{gap:var(--s-10)}
.mb-videos .mb-video{gap:var(--s-3)}
.mb-videos .mb-video figcaption{font-size:var(--fs-body,1rem);font-weight:var(--fw-semi);color:var(--fg)}
@media(min-width:61.25em){.mb-videos .mb-medien.zwei{column-gap:var(--s-12,3rem)}}
