/*
 * Web3-Design, privates FRF – Paket 4: Trading, Rahmen-Reiter, privater Nutzer-Reiter (16.10.2026).
 *
 * Nur das Aussehen der Teile, die es in der Web3-Fassung nicht gibt:
 * Trading (nur FRF-Teil, Panel ist eigener Ursprung), Rahmen um
 * eingebettete Apps (V3 DEX Simulator, Shortcuts, Trade-Busters; deren
 * Inhalt erreicht dieses CSS nicht), GLV Vaults (seit 16.10.2026 nativ,
 * Abschnitt 7), privater Nutzer-Reiter
 * (Rollen, Rechte-Matrix, Einladungen, Seiten, Nachrichten, Statistik, Ask-
 * FRF-Verlauf).
 *
 * Regeln wie web3-design.css: jede Regel beginnt mit
 * html[data-frf-design="web3"] (Schalter Nutzer ▸ Seiten, sonst wirkungslos),
 * Farben nur über die --w3-*-Tokens aus web3-design.css (keine festen Werte),
 * Schrift nie unter 12 px, am Handy (≤ 640 px) geprüft. Lädt nach
 * web3-design*.css (src/services/web3Shell.ts, DESIGN_LINKS).
 */

/* Alle Regeln zusätzlich mit :not([data-frf-modus="web3"]): die Reiter gibt
   es in der Web3-Fassung nicht (Trading, Shortcuts, GLV, Trade-Busters) bzw.
   ihr abgenommenes Aussehen dort (Nutzer, web3-design-team.css) bleibt
   unberührt. Nur Tokens, hell wie dunkel (keine Annahme „dunkel“). */

/* ── 1. Rahmen um eingebettete Apps ──────────────────────────────────────
   Trading (trading.css), V3 DEX Simulator und Shortcuts (v3dex.css,
   gleiche Klassen), Trade-Busters (trade-busters.css). Der
   Inhalt der iframes ist ein anderer Ursprung; hier nur Rahmen, Leiste,
   Hinweis, Lade- und Fehlerzustand. */

/* iframe mit Kartenradius (der Inhalt wird an den Ecken beschnitten). */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) :is(.trading-frame, .v3dex-frame, .tb-frame) {
  border-radius: var(--w3-radius-karte);
}

/* Laden: Balken im Akzent, Skelett-Kacheln und -Fläche als Plattform-Karte. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) :is(.trading-lade, .v3dex-lade, .tb-lade) .lz-ladebalken::before {
  background: var(--w3-akzent);
  box-shadow: 0 0 8px var(--w3-akzent-rand);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) :is(.trading-lade, .v3dex-lade, .tb-lade) .lz-skel-karte,
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) :is(.trading-lade, .v3dex-lade, .tb-lade) .lz-skel-flaeche {
  background: var(--w3-glanz), var(--w3-karte);
  border-color: transparent;
  border-radius: var(--w3-radius-karte);
  box-shadow: var(--w3-kante);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) :is(.trading-lade, .v3dex-lade, .tb-lade) .lz-skel-flaeche > span {
  background: var(--w3-fuellung);
}

/* Fehler („nicht erreichbar“, „Kein Zugriff“): Leerzustand als Karte,
   Titel medium; das rote Symbol bleibt (echter Fehler), „Erneut versuchen“
   ist der Primärknopf der Grundlage. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) :is(.trading-fehler, .v3dex-fehler, .tb-fehler) .lz-leer {
  background: var(--w3-glanz), var(--w3-karte);
  border-color: transparent;
  border-radius: var(--w3-radius-karte);
  box-shadow: var(--w3-kante);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) :is(.trading-fehler, .v3dex-fehler, .tb-fehler) .lz-leer-titel {
  font-weight: 500;
  letter-spacing: normal;
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) :is(.trading-fehler, .v3dex-fehler, .tb-fehler) .lz-knopf {
  border-radius: var(--w3-radius-feld);
  font-weight: 500;
}

/* V3 DEX Simulator: Zeile „PP-Bot-ID [Feld] [Laden]“ – nur für ältere
   Simulator-Stände sichtbar. Kein display hier: .v3dex-leiste[hidden]
   (v3dex.css) muss die Zeile weiter verstecken. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .v3dex-leiste {
  background: var(--w3-glanz), var(--w3-karte);
  border-color: transparent;
  border-radius: var(--w3-radius-karte);
  box-shadow: var(--w3-kante);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .v3dex-leiste-label { color: var(--w3-text-2); font-weight: 500; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .v3dex-feld {
  background: var(--w3-fuellung);
  border-color: transparent;
  border-radius: var(--w3-radius-feld);
  box-shadow: var(--w3-kante-feld);
  color: var(--w3-text);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .v3dex-feld:hover:not(:focus) { background: var(--w3-fuellung-mittel); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .v3dex-feld:focus {
  border-color: transparent;
  box-shadow: var(--w3-kante-feld), var(--w3-ring);
}
/* „Laden“ ist die Aktion der Zeile: Primärknopf wie „Suchen“ in TEAM ▸ Pools. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .v3dex-knopf {
  background: var(--w3-akzent);
  border-color: transparent;
  border-radius: var(--w3-radius-feld);
  color: var(--w3-akzent-text);
  font-weight: 500;
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .v3dex-knopf:hover:not(:disabled) {
  background: color-mix(in srgb, var(--w3-akzent) 80%, transparent);
  border-color: transparent;
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .v3dex-knopf:focus-visible { box-shadow: var(--w3-ring); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .v3dex-knopf-spinner {
  border-color: color-mix(in srgb, var(--w3-akzent-text) 30%, transparent);
  border-top-color: var(--w3-akzent-text);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .v3dex-status { color: var(--w3-text-3); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .v3dex-status[data-art="ok"] { color: var(--w3-text-2); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .v3dex-status[data-art="ok"]::before { background: var(--w3-positiv); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .v3dex-status[data-art="fehler"] { color: var(--w3-negativ-text); }

/* Shortcuts: Hinweis „Die Seite meldet sich nicht …“ – ein echtes Problem
   (Zugangs-Cookie fehlt), darum in der Warnfarbe, sonst wie ein Plattform-Hint. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .shortcuts-hinweis {
  background: color-mix(in srgb, var(--w3-warnung) 8%, transparent);
  border-color: color-mix(in srgb, var(--w3-warnung) 35%, transparent);
  border-radius: var(--w3-radius-karte);
  color: var(--w3-text-2);
  line-height: 1.5;
}

/* Trade-Busters: „In eigenem Fenster öffnen ↗“ als Sekundärknopf. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .tb-knopf {
  height: 32px;
  padding: 0 16px;
  background: var(--w3-fuellung);
  border-color: transparent;
  border-radius: var(--w3-radius-feld);
  box-shadow: var(--w3-kante-feld);
  color: var(--w3-text);
  font-weight: 500;
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .tb-knopf:hover { background: var(--w3-fuellung-stark); border-color: transparent; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .tb-knopf:focus-visible { outline: none; box-shadow: var(--w3-kante-feld), var(--w3-ring); }

/* ── 2. Nutzer (privat): Kopf, Rechte-Matrix, Konten ─────────────────────
   Ergänzt den Nutzer-Abschnitt in web3-design-team.css (Unterreiter,
   Titel, Tabellenköpfe, Felder, Kennzahlen bleiben dort). */

/* Kopf: am Handy steht der rechte Teil (Suche, Zahl, Neu laden) unter dem
   Titel statt daneben gequetscht. */
@media (max-width: 760px) {
  html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-header { flex-wrap: wrap; }
  html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-header > div:first-child { flex: 1 1 100%; min-width: 0; }
  html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-header-right {
    flex: 1 1 100%;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 8px 12px;
  }
  html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-header-right .users-suche { flex: 1 1 100%; }
  html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-header-right .users-count { flex: 1 1 auto; }
}
/* Unterreiter am Handy: eine Spur, die in sich quer rollt (fünf Reiter
   passen nicht in 358 px), statt in zwei Zeilen umzubrechen. */
@media (max-width: 640px) {
  html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-unterreiter {
    display: flex;
    flex-wrap: nowrap;
    max-width: 100%;
    box-sizing: border-box;
    overflow-x: auto;
    scrollbar-width: none;
  }
  html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-unterreiter::-webkit-scrollbar { display: none; }
  html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-unterreiter-knopf { flex: none; padding: 6px 11px; }
}

/* „Neu laden“ im Kopf (account-btn) wie die übrigen Sekundärknöpfe des Reiters. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .account-btn {
  min-height: 32px;
  padding: 0 16px;
  background: var(--w3-fuellung);
  border-color: transparent;
  border-radius: var(--w3-radius-feld);
  box-shadow: var(--w3-kante-feld);
  color: var(--w3-text);
  font-size: 13px;
  font-weight: 500;
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .account-btn:hover { background: var(--w3-fuellung-stark); border-color: transparent; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .account-btn:focus-visible { outline: none; box-shadow: var(--w3-kante-feld), var(--w3-ring); }

/* Rechte-Matrix: das unsichtbare „Aktionen“-Etikett (sr-only, absolut) hing
   an keinem Bezugsrahmen in der Hülle und schob die Seite am Handy auf
   1352 px Breite. Mit Bezugsrahmen bleibt es in der quer rollenden Hülle. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-matrix thead th.users-kopf-aktion { position: relative; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-matrix thead th.users-kopf-gruppe > span { border-bottom-color: var(--w3-rand); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-matrix thead th.users-perm-cell > span { color: var(--w3-text-2); font-weight: 500; letter-spacing: normal; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-matrix thead th.users-perm-cell.ist-spalte { background: var(--w3-hover); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-matrix thead th.users-perm-cell.ist-spalte > span { color: var(--w3-text); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-matrix tbody td.users-perm-cell.ist-spalte { background: var(--w3-zeile-hover); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-matrix tbody tr.users-row:is(:hover, .menue-offen) > td { background: var(--w3-zeile-hover); }
/* Rollenzeilen: leise abgesetzt (Name im Akzent aus web3-design-team.css). */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-matrix tbody tr.users-rolle-zeile > td { background: var(--w3-fuellung); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-matrix .users-rolle-name { font-weight: 500; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-name-knopf { color: var(--w3-text); font-weight: 500; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-name-knopf:is(:hover, [aria-expanded="true"]) { text-decoration-color: var(--w3-akzent); }

/* Kästchen: an = Akzent mit dunklem Haken wie die Plattform-Checkbox (vorher
   Grün); über die Rolle blasser, entzogen mit rotem Rand – wie bisher. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-matrix :is(input.users-perm-box, input.users-rolle-box, input.users-tracking-box, input.users-pp-box),
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-kbox {
  border-color: var(--w3-rand);
  border-radius: 4px;
  background: var(--w3-fuellung);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-matrix :is(input.users-perm-box, input.users-rolle-box, input.users-tracking-box, input.users-pp-box):hover { border-color: var(--w3-text-3); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-matrix :is(input.users-perm-box, input.users-rolle-box, input.users-tracking-box, input.users-pp-box):checked,
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-matrix :is(input.users-tracking-box, input.users-pp-box):indeterminate,
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-kbox:is(.ist-an, .ist-teil) {
  background: var(--w3-akzent);
  border-color: var(--w3-akzent);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-matrix :is(input.users-perm-box, input.users-rolle-box, input.users-tracking-box, input.users-pp-box):checked::after,
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-kbox.ist-an::after {
  border-color: var(--w3-akzent-text);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-matrix :is(input.users-tracking-box, input.users-pp-box):indeterminate::after,
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-kbox.ist-teil::after {
  background: var(--w3-akzent-text);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-matrix .users-perm-entzogen :is(input.users-perm-box, input.users-tracking-box, input.users-pp-box),
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-kbox.ist-weg {
  border-color: var(--w3-negativ);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-matrix :is(input.users-perm-box, input.users-rolle-box, input.users-tracking-box, input.users-pp-box):focus-visible { box-shadow: var(--w3-ring); }

/* Pfeil an Tracking/PP und „⋯“: Sekundärknopf, ganz gerundet; offene
   Anfragen bleiben gelb umrandet (Handlung nötig). */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-matrix :is(.users-tracking-pfeil, .users-pp-pfeil) { border-radius: var(--w3-radius-feld); color: var(--w3-text-2); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-matrix :is(.users-tracking-pfeil, .users-pp-pfeil):is(:hover, [aria-expanded="true"]) {
  background: var(--w3-fuellung-stark);
  border-color: transparent;
  color: var(--w3-text);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-mehr {
  background: var(--w3-fuellung);
  border-color: transparent;
  border-radius: var(--w3-radius-feld);
  box-shadow: var(--w3-kante-feld);
  color: var(--w3-text-2);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-mehr:is(:hover, [aria-expanded="true"]) { background: var(--w3-fuellung-stark); border-color: transparent; color: var(--w3-text); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-mehr:focus-visible { box-shadow: var(--w3-kante-feld), var(--w3-ring); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-mehr.ist-anfrage {
  box-shadow: inset 0 0 0 1px var(--w3-warnung);
  color: var(--w3-warnung);
}

/* Rollen-Abzeichen, Ausnahme, Discord: Pillen in normaler Schreibung. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-role-badge {
  padding: 1px 8px;
  background: var(--w3-fuellung-stark);
  border-radius: var(--w3-radius-feld);
  color: var(--w3-text-2);
  font-weight: 500;
  letter-spacing: normal;
  text-transform: none;
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-ausnahme {
  background: var(--w3-fuellung);
  border-color: var(--w3-rand);
  border-radius: var(--w3-radius-feld);
  color: var(--w3-text);
  font-weight: 500;
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-meta .admin-status { font-weight: 500; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-meta .admin-status.admin-status-active-offline { background: var(--w3-fuellung-stark); color: var(--w3-text-2); }

/* Legende unter der Matrix. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-legende { color: var(--w3-text-3); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-legende-hinweis { color: var(--w3-text-2); }

/* Aufgeklappte Nutzung eines Kontos: Karte in der Zeile. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-table td.users-nutzung-zelle { background: var(--w3-fuellung); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-table tbody tr.users-row.detail-offen { background: var(--w3-fuellung); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .ns-detail {
  background: var(--w3-glanz), var(--w3-karte);
  border-color: transparent;
  border-radius: var(--w3-radius-karte);
  box-shadow: var(--w3-kante);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .ns-ungemessen { fill: var(--w3-fuellung); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-table tbody tr.users-offline-zeile:hover { background: var(--w3-zeile-hover); }

/* Warteliste (gelb: Rolle fehlt = Handlung nötig) und „Discord ausstehend“
   (neutral): Karte in der Karte, Kopf und Zahl behalten ihre Farbe. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-warteliste {
  background: var(--w3-kopf);
  border-color: transparent;
  border-radius: var(--w3-radius-karte);
  box-shadow: var(--w3-kante);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .uw-kopf {
  background: color-mix(in srgb, var(--w3-warnung) 7%, transparent);
  border-bottom-color: color-mix(in srgb, var(--w3-warnung) 25%, transparent);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-ausstehend .uw-kopf { background: transparent; border-bottom-color: var(--w3-rand-leise); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-ausstehend .uw-aufklapp:hover { background: var(--w3-zeile-hover); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-ausstehend .uw-anzahl { background: var(--w3-fuellung-stark); border-color: transparent; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView :is(.uw-titel, .uw-anzahl) { font-weight: 500; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .uw-kopfzeile {
  color: var(--w3-text-3);
  font-weight: 500;
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .uw-zeile { border-top-color: var(--w3-rand-leise); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .uw-avatar { background: var(--w3-fuellung-stark); font-weight: 500; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .uw-gefahr { box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--w3-negativ) 45%, transparent); color: var(--w3-negativ-text); }

/* Rückfragen (Löschen, Team-PIN, Senden/Verwerfen): Plattform-Dialog. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .users-tr-dialog {
  background: var(--w3-flaeche);
  border-color: var(--w3-rand);
  border-radius: var(--w3-radius-karte);
  box-shadow: var(--w3-schatten);
  color: var(--w3-text);
  font-family: var(--font-sans);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .users-tr-dialog::backdrop { background: var(--overlay-solid); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .users-tr-dialog:focus-visible { outline: none; box-shadow: var(--w3-schatten); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .users-tr-dialog-titel { font-weight: 500; letter-spacing: normal; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .users-tr-dialog-text { color: var(--w3-text-2); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .users-tr-dialog-fuss { border-top-color: var(--w3-rand-leise); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .users-tr-dialog-zu { border-radius: var(--w3-radius-feld); color: var(--w3-text-3); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .users-tr-dialog-zu:hover { background: var(--w3-fuellung-stark); color: var(--w3-text); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .users-tr-dialog .lz-knopf { border-radius: var(--w3-radius-feld); font-weight: 500; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .users-tr-dialog .lz-knopf.users-tr-gefahr {
  background: var(--w3-fehler);
  border-color: transparent;
  box-shadow: none;
  font-weight: 500;
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .users-tr-dialog .lz-knopf.users-tr-gefahr:hover:not(:disabled) {
  background: color-mix(in srgb, var(--w3-fehler) 80%, transparent);
  border-color: transparent;
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .users-teampin-wert {
  background: var(--w3-fuellung);
  border-color: transparent;
  border-radius: var(--w3-radius-karte);
  box-shadow: var(--w3-kante-feld);
  color: var(--w3-text);
}

/* Aktionsmenü „⋯“, Discord-Kärtchen und Tracking/PP-Auswahl hängen am
   <body>: Plattform-Fläche wie die Aufklapplisten der Grundlage. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .users-menue {
  background: var(--w3-flaeche);
  border-color: var(--w3-rand);
  border-radius: var(--w3-radius-karte);
  box-shadow: var(--w3-schatten);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .users-menue-titel { color: var(--w3-text-3); font-weight: 500; letter-spacing: 0.04em; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .users-menue-eintrag { color: var(--w3-text); font-weight: 400; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .users-menue-eintrag:is(:hover, :focus-visible) { background: var(--w3-fuellung-stark); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .users-menue-eintrag:focus-visible { box-shadow: inset 0 0 0 2px var(--w3-akzent-rand); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .users-menue-haken { color: var(--w3-akzent); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .users-menue-eintrag.ist-gefahr:is(:hover, :focus-visible) { background: color-mix(in srgb, var(--w3-negativ) 12%, transparent); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .users-menue-trenner { background: var(--w3-rand-leise); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) .users-tracking-titel { color: var(--w3-text-3); font-weight: 500; }

/* ── 3. Nachrichten ─────────────────────────────────────────────────── */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-zeile:hover { background: var(--w3-zeile-hover); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-zeile:is(.ist-offen, .ist-in-arbeit) { background: var(--w3-fuellung); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-zeile.ist-in-arbeit > td:first-child { box-shadow: inset 3px 0 0 var(--w3-akzent); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-titel { font-weight: 500; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-status { font-weight: 500; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-status-gesendet { background: var(--w3-fuellung-stark); border-color: transparent; color: var(--w3-text); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-detail > td { background: var(--w3-fuellung); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-detail-innen {
  background: var(--w3-glanz), var(--w3-karte);
  border-color: transparent;
  border-radius: var(--w3-radius-karte);
  box-shadow: var(--w3-kante);
}

/* Editor „Neue Nachricht“: Karte, Felder der Plattform, Segmente als Pillen. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-editor {
  background: var(--w3-kopf);
  border-color: transparent;
  border-radius: var(--w3-radius-karte);
  box-shadow: var(--w3-kante);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-editor-titel { font-weight: 500; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-label {
  color: var(--w3-text-2);
  font-size: 13px;
  font-weight: 500;
  letter-spacing: normal;
  text-transform: none;
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-eingabe {
  background: var(--w3-fuellung);
  border-color: transparent;
  border-radius: var(--w3-radius-karte);
  box-shadow: var(--w3-kante-feld);
  color: var(--w3-text);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView :is(input, select).nr-eingabe { border-radius: var(--w3-radius-feld); padding-inline: 14px; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-eingabe::placeholder { color: var(--w3-text-3); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-eingabe:hover:not(:focus) { background: var(--w3-fuellung-mittel); border-color: transparent; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-eingabe:focus { border-color: transparent; box-shadow: var(--w3-kante-feld), var(--w3-ring); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-eingabe.ist-fehler { box-shadow: inset 0 0 0 1px var(--w3-negativ); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-hilfe { color: var(--w3-text-3); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-seite {
  background: var(--w3-glanz), var(--w3-karte);
  border-color: transparent;
  border-radius: var(--w3-radius-karte);
  box-shadow: var(--w3-kante);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-seite.ist-in-vorschau { box-shadow: var(--w3-kante), inset 3px 0 0 var(--w3-akzent); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-seite-name { font-weight: 500; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView :is(.nr-abschnitt, .nr-editor-aktionen) { border-top-color: var(--w3-rand-leise); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-segment {
  background: var(--w3-fuellung);
  border-color: transparent;
  box-shadow: var(--w3-kante-feld);
  color: var(--w3-text-2);
  font-weight: 500;
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-segment:hover:not(.is-aktiv) { background: var(--w3-fuellung-mittel); border-color: transparent; color: var(--w3-text); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-segment.is-aktiv {
  background: var(--w3-fuellung-stark);
  border-color: transparent;
  box-shadow: var(--w3-kante);
  color: var(--w3-text);
  font-weight: 500;
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-kasten { background: var(--w3-fuellung); border-color: var(--w3-rand); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-haekchen input:checked + .nr-kasten { background: var(--w3-akzent); border-color: var(--w3-akzent); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-haekchen input:checked + .nr-kasten::after { border-color: var(--w3-akzent-text); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-haekchen input:focus-visible + .nr-kasten { outline: none; box-shadow: var(--w3-ring); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-sperre { border-radius: var(--w3-radius-karte); color: var(--w3-text); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-vorschau-flaeche { border-color: var(--w3-rand-leise); border-radius: var(--w3-radius-karte); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .nr-ziel-zahl { font-weight: 500; }

/* ── 4. Statistik ───────────────────────────────────────────────────── */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .ng-tabelle-huelle {
  border-color: transparent;
  border-radius: var(--w3-radius-karte);
  box-shadow: var(--w3-kante);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .ng-tabelle tfoot :is(td, th) { background: var(--w3-fuellung); border-top-color: var(--w3-rand); font-weight: 500; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .ng-balken { background: var(--w3-fuellung-stark); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .ng-balken > span { background: var(--w3-akzent); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView :is(.ng-name-text, .ng-online-wert, .ng-top-titel, .ng-abschnitt) { font-weight: 500; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .ng-badge { border-color: var(--w3-rand); color: var(--w3-text-2); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .ng-badge-gesperrt { border-color: var(--w3-negativ); color: var(--w3-negativ-text); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .ng-klapp { border-radius: var(--w3-radius-feld); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .ng-klapp:hover { background: var(--w3-fuellung-stark); color: var(--w3-text); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .ng-top-balken { background: var(--w3-fuellung-stark); }

/* ── 5. Seiten ──────────────────────────────────────────────────────── */
/* Karten (Team-Einladung, Web3-Design, Öffentliche Seiten, Eigene Bots):
   Karte in der Karte wie die Kennzahl-Kacheln. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .sb-karte,
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-demo {
  background: var(--w3-glanz), var(--w3-kopf);
  border-color: transparent;
  border-radius: var(--w3-radius-karte);
  box-shadow: var(--w3-kante);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView :is(.users-demo-titel, .users-seiten-name, .sb-pp-name) { color: var(--w3-text); font-weight: 500; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .sb-label { color: var(--w3-text-2); font-weight: 500; }

/* Schalter (Einladung aktiv): aus white/10, an im Akzent, Knopf dunkel. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-demo-bahn {
  background: var(--w3-fuellung-stark);
  border-color: transparent;
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-demo-knopf { background: var(--w3-text-2); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-demo-schalter input:checked + .users-demo-bahn {
  background: var(--w3-akzent);
  border-color: var(--w3-akzent);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-demo-schalter input:checked + .users-demo-bahn .users-demo-knopf { background: var(--w3-akzent-text); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-demo-schalter input:focus-visible + .users-demo-bahn { box-shadow: var(--w3-ring); }

/* Einladungslink: Plattform-Feld (nur lesen), ganz gerundet. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .sb-link {
  padding: 0 14px;
  background: var(--w3-fuellung);
  border-color: transparent;
  border-radius: var(--w3-radius-feld);
  box-shadow: var(--w3-kante-feld);
  color: var(--w3-text);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .sb-link.ist-leer { color: var(--w3-text-3); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .sb-knopf.ist-ok .sb-knopf-ok { color: var(--w3-positiv); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .sb-nutzung {
  background: var(--w3-fuellung);
  border-color: transparent;
  box-shadow: var(--w3-kante-feld);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .sb-nutzung.sb-nutzung-leer { background: transparent; border-color: var(--w3-rand); box-shadow: none; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .sb-nutzung-name { font-weight: 500; }

/* Öffentliche Seiten: Geheimlink-Knöpfe als Sekundärknopf. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) :is(#usersTrKarte, #usersDemoKarte) .users-tr-ikon {
  background: var(--w3-fuellung);
  border-color: transparent;
  border-radius: var(--w3-radius-feld);
  box-shadow: var(--w3-kante-feld);
  color: var(--w3-text);
  font-weight: 500;
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) :is(#usersTrKarte, #usersDemoKarte) .users-tr-ikon:hover:not(:disabled) { background: var(--w3-fuellung-stark); border-color: transparent; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) :is(#usersTrKarte, #usersDemoKarte) .users-tr-ikon:focus-visible { box-shadow: var(--w3-kante-feld), var(--w3-ring); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) :is(#usersTrKarte, #usersDemoKarte) .users-tr-ikon.ist-ok .users-tr-ikon-ok { color: var(--w3-positiv); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-seiten-oeffnen { color: var(--w3-akzent); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-seiten-oeffnen:hover { color: var(--w3-akzent-hell); }

/* Eigene Bots (PerpPilot): Mail-Feld wie die übrigen Felder. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .sb-pp-feld {
  min-height: 32px;
  box-sizing: border-box;
  padding: 0 14px;
  background: var(--w3-fuellung);
  border-color: transparent;
  border-radius: var(--w3-radius-feld);
  box-shadow: var(--w3-kante-feld);
  color: var(--w3-text);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .sb-pp-feld::placeholder { color: var(--w3-text-3); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .sb-pp-feld:focus { border-color: transparent; box-shadow: var(--w3-kante-feld), var(--w3-ring); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .sb-pp-muster { border-bottom-color: var(--w3-rand-leise); }

/* ── 6. Ask FRF (Verlauf) ───────────────────────────────────────────── */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #askFrfAdminBereich .akv-filter-chip {
  background: var(--w3-fuellung);
  border-color: transparent;
  border-radius: var(--w3-radius-feld);
  box-shadow: var(--w3-kante-feld);
  color: var(--w3-text);
  font-weight: 500;
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #askFrfAdminBereich .akv-filter-chip:hover { background: var(--w3-fuellung-stark); border-color: transparent; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #askFrfAdminBereich .akv-chip {
  background: var(--w3-fuellung);
  border-color: transparent;
  border-radius: var(--w3-radius-feld);
  color: var(--w3-text-2);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #askFrfAdminBereich :is(.akv-chip b, .akv-nt-name) { font-weight: 500; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #askFrfAdminBereich .akv-nt-zeile.ist-offen > td:first-child { box-shadow: inset 3px 0 0 var(--w3-akzent); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #askFrfAdminBereich .akv-limit-knopf { color: var(--w3-text); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #askFrfAdminBereich .akv-limit-knopf:hover { background: var(--w3-fuellung-stark); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #askFrfAdminBereich .akv-limit-knopf:focus-visible { outline: none; box-shadow: var(--w3-ring); }
@media (max-width: 760px) {
  html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #askFrfAdminBereich :is(.akv-nt-tabelle, .akv-tabelle) tbody tr.nr-zeile { border-top-color: var(--w3-rand-leise); }
  html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #askFrfAdminBereich .akv-nt-zeile.ist-offen { box-shadow: inset 3px 0 0 var(--w3-akzent); }
}
/* Öffentliche Seiten: die Tabelle ist nur so breit wie ihr Inhalt; ihr Kopf
   stand als dunkles Rechteck in der Karte. Kopf ohne eigene Fläche,
   Gruppenköpfe wie in der Rechte-Matrix. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-seiten-matrix thead th { background: transparent; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-seiten-matrix thead th.users-kopf-gruppe {
  color: var(--w3-text-3);
  font-weight: 500;
  text-transform: uppercase;
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-seiten-matrix thead th.users-kopf-nutzer { color: var(--w3-text-3); font-weight: 500; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #usersView .users-seiten-matrix :is(th, td) { border-color: var(--w3-rand-leise); }

/* ── 7. GLV Vaults (nativ seit 16.10.2026, glv.css) ──────────────────────
   Wie Fundingrates im Web3-Design: Karten mit Glanz, Felder und Segmente
   white/5 mit Innenkante, gewähltes Segment white/10, Chart direkt auf der
   Karte, Zeitleiste und Fenster im Akzent, Tooltip im Hint-Stil. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView :is(.glv-leiste, .glv-karte) {
  background: var(--w3-glanz), var(--w3-karte);
  border-color: transparent;
  border-radius: var(--w3-radius-karte);
  box-shadow: var(--w3-kante);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView :is(.glv-segmente, .glv-pools-knopf, .glv-feld, .glv-suche) {
  background: var(--w3-fuellung);
  border-color: transparent;
  box-shadow: var(--w3-kante-feld);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView :is(.glv-feld, .glv-suche) { border-radius: var(--w3-radius-feld); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView :is(.glv-feld:focus, .glv-suche:focus-within, .glv-pools-knopf[aria-expanded="true"]) {
  border-color: transparent;
  box-shadow: var(--w3-kante-feld), var(--w3-ring);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-segment { color: var(--w3-text-2); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-segment:hover { background: var(--w3-hover); color: var(--w3-text); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-segment[aria-checked="true"] {
  background: var(--w3-fuellung-stark);
  box-shadow: var(--w3-kante);
  color: var(--w3-text);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView :is(.glv-knopf, .glv-legende-eintrag, .chart-reset-zoom) {
  background: var(--w3-fuellung);
  border-color: transparent;
  box-shadow: var(--w3-kante-feld);
  color: var(--w3-text);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView :is(.glv-knopf:hover:not(:disabled), .glv-legende-eintrag:hover, .chart-reset-zoom:not(:disabled):hover) {
  background: var(--w3-fuellung-stark);
  border-color: transparent;
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-legende-eintrag.ist-aus { color: var(--w3-text-3); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-knopf-primaer {
  background: var(--w3-akzent);
  box-shadow: none;
  color: var(--w3-akzent-text);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-knopf-primaer:hover:not(:disabled) { background: var(--w3-akzent-hell); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView :is(.glv-label, .glv-fenster, .glv-karte-unter, .glv-fuss, .glv-pools-gruppe-titel, .glv-pools-zaehler, .glv-pool-adresse, .glv-tooltip-kurs) { color: var(--w3-text-3); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-trenner { background: var(--w3-rand); }

/* Pool-Auswahl als Plattform-Popover. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-pools-panel {
  background: var(--w3-popover);
  border-color: var(--w3-rand);
  border-radius: var(--w3-radius-karte);
  box-shadow: var(--w3-schatten);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-pool-option:hover:not(:disabled) { background: var(--w3-hover); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-pool-option.ist-an { background: var(--w3-akzent-hauch); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-haken { color: var(--w3-akzent); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-pools-gruppe + .glv-pools-gruppe { border-top-color: var(--w3-rand-leise); }

/* Chart: ohne eigene Fläche, Zeitleiste und Fenster im Akzent. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-chart .chart-container { background: transparent; border-color: transparent; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-chart .chart-nav-flaeche { background: var(--w3-kopf); box-shadow: var(--w3-kante-feld); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-chart .chart-nav-flaeche-pfad { fill: var(--w3-fuellung-stark); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-chart .chart-nav-fenster { background: var(--w3-akzent-hauch); border-color: var(--w3-akzent-rand); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-chart .chart-nav-griff { background: var(--w3-akzent); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-chart .hover-tooltip {
  background: var(--w3-tip);
  border-color: var(--w3-rand);
  border-radius: var(--w3-radius-tip);
  box-shadow: var(--w3-schatten);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-chart .tooltip-status { font-size: 12px; }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-chart-lade { background: var(--w3-karte); }

/* Richtung der Werte und Kennzahlen-Tabelle wie die Tabellen der sechs Reiter. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView { --glv-plus: var(--w3-positiv); --glv-minus: var(--w3-negativ-text); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-tabelle th {
  background-color: var(--w3-flaeche);
  color: var(--w3-text-3);
  font-weight: 500;
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-tabelle :is(th, td) { border-color: var(--w3-rand-leise); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-tabelle tbody tr.glv-zeile:hover td { background-color: var(--w3-zeile-hover); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-typ { background: var(--w3-fuellung); color: var(--w3-text-2); }

/* Berechnungsinfo und FAQ. */
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-formel {
  background: var(--w3-fuellung);
  border-left-color: var(--w3-akzent);
}
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-info.ist-markiert { box-shadow: var(--w3-kante), var(--w3-ring); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView .glv-faq-eintrag + .glv-faq-eintrag { border-top-color: var(--w3-rand-leise); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView :is(.glv-faq-antwort p, .glv-info-abschnitt p) { color: var(--w3-text-2); }
html[data-frf-design="web3"]:not([data-frf-modus="web3"]) #glvView :is(.glv-faq-frage .glv-symbol, .glv-info-abschnitt .glv-symbol) { color: var(--w3-akzent); }
