/* === FAC Players – Sponsor-Glow (EXAKT am Kartenrand) – v1.0.2 === */

/* SVG-Overlay: liegt deckungsgleich über der Karte */
body.fac-players-active .player-card .facp-glow{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  overflow: visible;

  /* vorhandene Steuer-Variablen bleiben gültig */
  --glow-stroke: 3; /* Strichstärke, falls nicht anders gesetzt */
    --glow-nudge: 0; /* bündig am Kartenrand */

}

/* Linien-Stil (Animation unverändert – kommt aus deinem bestehenden CSS) */
body.fac-players-active .player-card .facp-glow .gb{
  fill: none;
  stroke: var(--fac-glow-accent, var(--fac-lvl-accent, #22c55e)) !important;
  stroke-width: var(--glow-stroke, 3);
  stroke-linecap: round;
  vector-effect: non-scaling-stroke;

  /* (falls du bereits einen Glow-Filter nutzt, belassen wir ihn hier) */
  filter: drop-shadow(
    0 0 calc(var(--fac-card-glow-blur,38px)*.9)
    color-mix(
      in oklab,
      var(--fac-glow-accent, var(--fac-lvl-accent, #22c55e))
      var(--fac-card-glow-alpha, 0.7),
      transparent
    )
  );

  /* Dasharray beibehalten, damit deine bestehende Animation weiterläuft */
  stroke-dasharray: 120 380;
}
.player-card .facp-glow{ overflow: visible; }
/* Level-Bar – dezenter Sheen beim ersten Füllen (optional) */
body.fac-players-active .fac-lvl-badge .fac-lvl-progress{
  position: relative; overflow: hidden;
}
body.fac-players-active .fac-lvl-badge .fac-lvl-progress>span{
  /* leichte Tiefe im Balken */
  background-image:
    linear-gradient(90deg,
      color-mix(in oklab, var(--fac-lvl-accent, #22c55e) 85%, transparent) 0%,
      var(--fac-lvl-accent, #22c55e) 70%,
      color-mix(in oklab, var(--fac-lvl-accent, #22c55e) 92%, transparent) 100%);
}
body.fac-players-active .fac-lvl-badge.fac-fill-anim .fac-lvl-progress>span::after{
  content:""; position:absolute; top:-30%; bottom:-30%; right:-8px; width:18px;
  background: radial-gradient(closest-side, rgba(255,255,255,.50), rgba(255,255,255,0));
  filter: blur(2px);
  animation: facLevelSheen .9s ease-out 1 forwards;
}
@keyframes facLevelSheen{
  from{ transform: translateX(-100%); opacity:.7; }
  to  { transform: translateX(0%);    opacity:0; }
}
/* OUTSET steuert, wie weit der Glow über den Kartenrand hinausgeht */
.card .glow-border{
  position:absolute;
  inset: calc(-1 * var(--gb-outset, 8px)); /* größer = weiter nach außen */
  pointer-events:none;
  color: color-mix(in oklab, var(--fac-glow-accent, #9aa7ff) calc(var(--fac-card-glow-alpha, .7)*100%), transparent);
}

.card .glow-border .gb-stroke{
  stroke: currentColor;
  stroke-width: 3.5;
  vector-effect: non-scaling-stroke;
  /* weicher Außen-Schein */
  filter: drop-shadow(0 0 14px color-mix(in oklab, var(--fac-glow-accent, #9aa7ff) 60%, transparent))
          drop-shadow(0 0 22px color-mix(in oklab, var(--fac-glow-accent, #9aa7ff) 35%, transparent));
}
/* pro Karte individuell möglich */
.player-card { --gb-outset: 10px; }  /* z.B. global 10px */
/* 1) Endkreis (Knopf) weg */
.fac-lvl-badge .fac-lvl-progress > span::after {
  content: none !important;
  display: none !important;
}

/* 2) Track sichtbarer: leichte Tönung + klare Umrandung */
.fac-lvl-badge .fac-lvl-progress{
  /* Reststrecke leicht in Level-Farbe tönen, damit der Unterschied zur Füllung
     sofort sichtbar ist – bleibt aber dezent */
  background:
    linear-gradient(180deg, rgba(255,255,255,.10), rgba(0,0,0,.14)),
    color-mix(in oklab, var(--fac-lvl-accent) 20%, transparent);
  /* deutliche Kontur um den gesamten Balken */
  box-shadow:
    inset 0 0 0 1.5px rgba(255,255,255,.35),
    inset 0 -8px 20px rgba(0,0,0,.35),
    0 0 0 1px rgba(0,0,0,.25);
}

/* (optional) dünne “Trennlinie” genau am Füll-Ende, statt eines Kreises.
   Lässt die Reststrecke noch klarer erscheinen, verdeckt aber nichts. */
.fac-lvl-badge .fac-lvl-progress > span::before{
  content:"";
  position:absolute; top:2px; bottom:2px; right:-1px; width:1.5px;
  border-radius:1px;
  background: rgba(255,255,255,.55);
  box-shadow: 0 0 0 1px rgba(0,0,0,.15);
  pointer-events:none;
}
