/* ============================================================
   6DT KO10-11 — luxury glow pass (sitewide surround + edges)
   Loaded by all three shells (public / member / keeper panel)
   ONLY when the fx_enabled knob is on. Drama scales with
   --fx-glow, emitted per shell from the anim_intensity Motion %
   knob (Motion 70 => 1.000). Page ambience = fixed aurora halos
   with a slow breath. Edges = gold auras on cards, buttons,
   desks and tiles, appended on top of each shell's base tokens.
   Reduced motion: the ambient breathing stops; the static glow
   stays, so the drama can always be turned down a notch further.
   Color: public/member ride --c-gold/--gold-2; the keeper panel
   (which defines no --c-gold) falls back to its own --adm-gold /
   --adm-gold-2 palette.
   ============================================================ */

body{
  --fx-gold-c:var(--c-gold,var(--adm-gold,#C8A24B));
  --fx-gold-h:var(--gold-2,var(--adm-gold-2,#E8C97F));
}

/* ---------- page surround: fixed aurora halos + slow breath ---------- */
body::after{
  content:"";position:fixed;inset:0;z-index:3;pointer-events:none;
  background:
    radial-gradient(52rem 38rem at 10% -6%,
      color-mix(in srgb,var(--fx-gold-c) calc(15% * var(--fx-glow,1)),transparent),transparent 62%),
    radial-gradient(44rem 34rem at 92% -10%,
      color-mix(in srgb,var(--fx-gold-h) calc(11% * var(--fx-glow,1)),transparent),transparent 60%),
    radial-gradient(60rem 44rem at 50% 118%,
      color-mix(in srgb,var(--fx-gold-c) calc(8% * var(--fx-glow,1)),transparent),transparent 65%);
  animation:fx-surround 9s ease-in-out infinite alternate;
}
@keyframes fx-surround{
  from{opacity:.72}
  to{opacity:1}
}

/* ---------- glowing edges: public + member cards and tiles ---------- */
.card,.go-card,.val-card{
  box-shadow:0 0 34px -16px color-mix(in srgb,var(--fx-gold-c) calc(34% * var(--fx-glow,1)),transparent);
}
.card:hover,.go-card:hover,.val-card:hover{
  box-shadow:var(--shadow-1),0 0 52px -14px color-mix(in srgb,var(--fx-gold-c) calc(46% * var(--fx-glow,1)),transparent);
}
.vstat{
  box-shadow:0 0 30px -14px color-mix(in srgb,var(--fx-gold-c) calc(30% * var(--fx-glow,1)),transparent);
}
.vstat:hover{
  box-shadow:0 18px 40px -22px rgba(0,0,0,.6),
             0 0 44px -14px color-mix(in srgb,var(--fx-gold-c) calc(44% * var(--fx-glow,1)),transparent);
}
.pkg-card{
  box-shadow:0 0 34px -16px color-mix(in srgb,var(--fx-gold-c) calc(30% * var(--fx-glow,1)),transparent);
}
.pkg-card:hover{
  box-shadow:0 0 48px -14px color-mix(in srgb,var(--fx-gold-c) calc(44% * var(--fx-glow,1)),transparent);
}

/* ---------- glowing buttons: gold CTAs bloom, outline warms ---------- */
.btn-gold{
  box-shadow:0 10px 30px color-mix(in srgb,var(--c-gold) 16%,transparent),
             inset 0 1px 0 rgba(255,255,255,.4),
             0 0 26px -8px color-mix(in srgb,var(--fx-gold-c) calc(46% * var(--fx-glow,1)),transparent);
}
.btn-gold:hover{
  box-shadow:0 16px 44px color-mix(in srgb,var(--c-gold) 30%,transparent),
             inset 0 1px 0 rgba(255,255,255,.4),
             0 0 44px -8px color-mix(in srgb,var(--fx-gold-c) calc(56% * var(--fx-glow,1)),transparent);
}
.btn-outline:hover{
  box-shadow:0 0 26px -10px color-mix(in srgb,var(--fx-gold-c) calc(38% * var(--fx-glow,1)),transparent);
}

/* ---------- keeper panel: desks and stat tiles breathe gold ---------- */
body.adm .panel,body.adm .stat,body.adm .login-card{
  box-shadow:0 0 40px -18px color-mix(in srgb,var(--fx-gold-c) calc(30% * var(--fx-glow,1)),transparent),
             var(--adm-shadow);
}
body.adm .stat:hover,body.adm .login-card:hover{
  box-shadow:0 0 52px -16px color-mix(in srgb,var(--fx-gold-c) calc(44% * var(--fx-glow,1)),transparent),
             var(--adm-shadow);
}
body.adm .btn.gold{
  box-shadow:0 0 22px -6px color-mix(in srgb,var(--fx-gold-c) calc(42% * var(--fx-glow,1)),transparent);
}
body.adm .btn.gold:hover{
  box-shadow:0 0 34px -6px color-mix(in srgb,var(--fx-gold-c) calc(54% * var(--fx-glow,1)),transparent);
}

/* ---------- reduced motion: stop the breath, keep the glow ---------- */
@media (prefers-reduced-motion: reduce){
  body::after{animation:none}
}