.shead h2{font:800 var(--nx-shead-gr,var(--nx-typo-abschnitt))/1.15 var(--nx-f-titel)!important;letter-spacing:-.01em;color:#fff}
.shead h3{font:800 var(--nx-shead-gr,var(--nx-typo-abschnitt))/1.15 var(--nx-f-titel);letter-spacing:-.01em;}
/* Unterkoepfe in einer Kanalflaeche sind eine Stufe kleiner (Rolle
  "unterkopf" in nxm-typo.js, Nr. C64): sonst setzte die Zeile oben 20 und
  die Rolle nach dem Laden 15,5. */
.nx-charea-inner .shead h2,.nx-charea-inner .shead h3{--nx-shead-gr:var(--nx-typo-kartenkopf)}
.shead h2>svg,.shead h3>svg{display:none}
.shead h2::before,.shead h3::before{content:"";width:8px;height:8px;background:var(--nx-akzent,#5b27e8);flex:none;margin-right:2px}
.nx-row > .shead h2::before,.nx-row > .shead h3::before{width:9px;height:14px;margin-right:5px;background:radial-gradient(circle,#a9a9b6 1.15px,transparent 1.5px) 0 0/5px 5px;opacity:.85;transition:opacity .15s}
.nx-row > .shead h2,.nx-row > .shead h3{cursor:grab;user-select:none}
@media (hover:hover){.nx-row > .shead h2:hover::before,.nx-row > .shead h3:hover::before{background-image:none;opacity:1}}
.nx-row.nx-dragging > .shead h2,.nx-row.nx-dragging > .shead h3{cursor:grabbing}
.shead .note{font:400 var(--nx-typo-text) 'Nunito Sans',sans-serif;margin-left:10px}
.seeall{font:700 var(--nx-typo-meta) var(--nx-f-text)!important;border:1px solid var(--line,rgba(255,255,255,.14));border-radius:var(--nx-r-pille);padding:7px 12px;}
@media (hover:hover){.seeall:hover{border-color:rgba(255,255,255,.3)}}
/* DIE REIHENLEISTE STEHT AUF DER KANTE DER SEITE, NICHT AUF EINER EIGENEN.
  Sie trug noch das alte Mass 1232 und stand damit mittig in einer Seite,
  die inzwischen bis 1600 laeuft · gemessen auf Game detail: fuenfzehn
  Reihenkoepfe auf 68, die Leiste darueber auf 180. Hundertzwoelf Punkte
  Versatz sieht man, auch ohne sie zu messen.
  --nx-breite und --nx-rand sind dieselben Werte, aus denen jede Reihe
  ihre Kante zieht · die Leiste rechnet sie nicht nach, sie benutzt sie.
  Sie klebt 16 Punkte unter der Kopfflaeche (--nx-kopf, nxm-kopfmass.js) ·
  dieselbe Luft wie ueber der Flaeche. Ein fester Wert stimmte nur fuer
  eine Kopfhoehe und lag mit Vorschauleiste unter dem Kopf. */
.nx-snav{position:sticky;top:calc(var(--nx-kopf, 72px) + 16px);z-index:5;width:100%;max-width:var(--nx-breite,1600px);
  margin:12px auto 0;box-sizing:border-box;display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;
  padding:6px var(--nx-innen);border:none;border-radius:var(--nx-r-pille);background:var(--nx-flaeche)}
/* DIE KLEBENDE LEISTE DARF DEN ABSCHNITT NICHT VERDECKEN, ZU DEM SIE
  FUEHRT. Ein Sprung auf einen Anker stellte die Ueberschrift genau
  dorthin, wo die Leiste liegt · man landete unter ihr. Der Abstand
  gehoert dem Ziel, nicht dem Sprung. */
.nx-snav ~ * [id], .nx-snav ~ [id], section[id], .nx-row[id], .section[id]{
  scroll-margin-top:calc(var(--nx-kopf, 72px) + 76px);
}
@media(max-width:900px){
  .nx-snav ~ * [id], .nx-snav ~ [id], section[id], .nx-row[id], .section[id]{
    scroll-margin-top:calc(var(--nx-kopf, 72px) + 62px);
  }
}
.nx-snav::-webkit-scrollbar{display:none}
.nx-snav a{font-family:var(--nx-f-text);font-weight:700;font-size:var(--nx-typo-text);color:var(--dim);text-decoration:none;padding:7px 12px;border-radius:var(--nx-r-pille);white-space:nowrap}
.nx-snav a:hover,.nx-snav a.an{color:#fff;background:var(--nx-hebung-2)}
.nx-snav a[hidden]{display:none}
.nx-row.nx-charea > .nx-charea-inner > .nx-charea-out > .nx-charea-head > b,.nx-row.nx-charea > .nx-charea-inner > .nx-charea-head > b,.nx-row > .nx-fm > .nx-fm-h,.nx-row > #nxRightNow > .nx-rn-head{cursor:grab;user-select:none}
.nx-row.nx-charea > .nx-charea-inner > .nx-charea-out > .nx-charea-head > b,.nx-row.nx-charea > .nx-charea-inner > .nx-charea-head > b{display:inline-flex;align-items:center}
.nx-row.nx-charea:not(#nxChArea):not(#nxChanArea) > .nx-charea-inner > .nx-charea-out > .nx-charea-head > svg,.nx-row.nx-charea:not(#nxChArea):not(#nxChanArea) > .nx-charea-inner > .nx-charea-head > svg{display:none}
.nx-row.nx-charea > .nx-charea-inner > .nx-charea-out > .nx-charea-head > b::before,.nx-row.nx-charea > .nx-charea-inner > .nx-charea-head > b::before,.nx-row > .nx-fm > .nx-fm-h::before,.nx-row > #nxRightNow > .nx-rn-head::before{width:9px;height:14px;margin-right:5px;flex:none;background:radial-gradient(circle,#a9a9b6 1.15px,transparent 1.5px) 0 0/5px 5px;opacity:.85;transition:opacity .15s}
@media (hover:hover){.nx-row.nx-charea > .nx-charea-inner > .nx-charea-out > .nx-charea-head > b:hover::before,.nx-row.nx-charea > .nx-charea-inner > .nx-charea-head > b:hover::before,.nx-row > .nx-fm > .nx-fm-h:hover::before,.nx-row > #nxRightNow > .nx-rn-head:hover::before{background-image:none;opacity:1}}
.nx-row.nx-dragging > .nx-charea-inner > .nx-charea-out > .nx-charea-head > b,.nx-row.nx-dragging > .nx-charea-inner > .nx-charea-head > b,.nx-row.nx-dragging > .nx-fm > .nx-fm-h,.nx-row.nx-dragging > #nxRightNow > .nx-rn-head{cursor:grabbing}
.nx-row .nx-row > .shead h2::before,.nx-row .nx-row > .shead h3::before{width:8px;height:8px;margin-right:2px;background:var(--nx-akzent,#5b27e8);opacity:1}
.nx-row .nx-row > .shead h2,.nx-row .nx-row > .shead h3{cursor:default;user-select:auto}
.nx-griff{cursor:grab;user-select:none}
.nx-griff::before{display:inline-block;width:9px;height:14px;margin-right:5px;flex:none;vertical-align:-2px;background:radial-gradient(circle,#a9a9b6 1.15px,transparent 1.5px) 0 0/5px 5px;opacity:.85;transition:opacity .15s}
@media (hover:hover){.nx-griff:hover::before{background-image:none;opacity:1}}
.nx-row.nx-dragging .nx-griff{cursor:grabbing}
.shead.nx-griff::before{align-self:center}
/* Unter 900 liegt die Leiste ueber allem im Fluss (die Knoepfe der Reihen
  stehen auf 35), aber UNTER dem Kopf (40). Sie stand auf 41 und damit
  ueber den Meldungen und dem Kontomenue, die im Kopf aufklappen. */
@media(max-width:900px){
  .nx-snav{top:calc(var(--nx-kopf, 72px) + 6px);z-index:39}
}
[data-nx-fest] > .shead h2::before,
[data-nx-fest] > .shead h3::before{content:none}
[data-nx-fest] > .shead h2,[data-nx-fest] > .shead h3{cursor:default}
/* KEIN GRIFFZEICHEN AN DIESEN KOEPFEN. Die Liste steht hinter den
  Griff-Regeln weiter oben und nennt jeden ihrer Waehler mit demselben
  Gewicht · sie gewinnt durch ihre Stelle, ohne Vorrang. Wer oben einen
  Griff-Waehler ergaenzt, ergaenzt ihn hier auch. */
.nx-row > .shead h2::before,
.nx-row > .shead h3::before,

[data-ch-row] > .shead h2::before,
[data-ch-row] > .shead h3::before,
.nx-griff::before,
.nx-row.nx-charea > .nx-charea-inner > .nx-charea-out > .nx-charea-head > b::before,
.nx-row.nx-charea > .nx-charea-inner > .nx-charea-head > b::before,
.nx-row > .nx-charea-head > b::before,
.nx-row > .shead > div > b::before,
.nx-row > .nx-fm-h::before,
.nx-row > .nx-rn-head::before,
.nx-row > .nx-fm > .nx-fm-h::before,
.nx-row > #nxRightNow > .nx-rn-head::before,
.nx-row > .rh > h2::before,
.nx-row > .lg-title::before,
.nx-row .sptitle::before,
.nx-row .pt-t::before,
.nx-row .liefhead::before{content:none}
.nx-row{position:relative}
.nx-row > .nx-ctrls{position:absolute;top:14px;right:20px;display:flex;align-items:center;
  gap:8px;z-index:35;opacity:0;pointer-events:none;transition:opacity .15s ease}
.nx-row:hover > .nx-ctrls,.nx-row:focus-within > .nx-ctrls{opacity:1;pointer-events:auto}
@media(hover:none){.nx-row > .nx-ctrls{opacity:1;pointer-events:auto}}
.nx-row > .nx-ctrls .nx-btn{width:30px;height:30px;border-radius:var(--nx-r-bedien);
  border:1px solid var(--line,rgba(255,255,255,.1));background:var(--nx-hebung);
  color:var(--nx-leise);display:flex;align-items:center;justify-content:center;cursor:grab;padding:0;
  transition:.15s}
@media (hover:hover){.nx-row > .nx-ctrls .nx-btn:hover{color:#fff;border-color:rgba(255,255,255,.28)}}
[data-nx-fest] > .nx-ctrls{display:none}
.nxsh-ctrls{opacity:0;pointer-events:none;transition:opacity .15s ease}
.nxch-gen:hover > .shead > .nxsh-ctrls,
.nxch-gen:focus-within > .shead > .nxsh-ctrls,
[data-ch-row]:hover .nxsh-ctrls,
[data-ch-row]:focus-within .nxsh-ctrls{opacity:1;pointer-events:auto}
@media(hover:none){.nxsh-ctrls{opacity:1;pointer-events:auto}}
