/* Blackrack global locale + consent + premium-light animation layer.
   Relies on per-page CSS vars (--bg,--accent,--card,--border,--mono,--ink,--muted) with fallbacks. */

/* ─── currency selector (nav) ─── */
.cur-select{
  font-family:var(--mono,monospace);font-size:.56rem;letter-spacing:.06em;text-transform:uppercase;
  padding:.3rem .5rem;margin-left:.35rem;border:1px solid var(--border,rgba(0,198,255,.13));
  background:rgba(0,198,255,.05);color:var(--muted,#88a5c2);cursor:pointer;border-radius:2px;
  transition:color .14s,border-color .14s,background .14s;
}
.cur-select:hover{color:var(--ink,#e8f4ff);border-color:var(--bhi,rgba(0,198,255,.32));}
.cur-select:focus-visible{outline:2px solid var(--accent,#00c6ff);outline-offset:1px;}

/* ─── footer region switcher ─── */
.br-region{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-family:var(--mono,monospace);font-size:.58rem;color:var(--muted,#88a5c2);}
.br-region svg{width:.95rem;height:.95rem;opacity:.7;flex-shrink:0;}
.br-region .br-region-langs{display:flex;gap:.25rem;}
.br-region button{font:inherit;text-transform:uppercase;letter-spacing:.08em;padding:.25rem .5rem;border:1px solid var(--border,rgba(0,198,255,.13));background:transparent;color:var(--muted,#88a5c2);cursor:pointer;transition:color .14s,border-color .14s;}
.br-region button.active{border-color:var(--accent,#00c6ff);color:var(--accent,#00c6ff);background:rgba(0,198,255,.08);}
.br-region button:hover{color:var(--ink,#e8f4ff);}

/* ─── price indicative note ─── */
.price-disclaimer{font-family:var(--mono,monospace);font-size:.6rem;letter-spacing:.04em;color:var(--dim,rgba(136,165,194,.6));margin-top:.6rem;}

/* ─── auto-detect toast ─── */
.br-toast{
  position:fixed;left:1rem;bottom:1rem;z-index:300;display:flex;align-items:center;gap:.6rem;
  max-width:min(92vw,22rem);padding:.7rem .9rem;font-family:var(--mono,monospace);font-size:.62rem;letter-spacing:.04em;
  color:var(--ink,#e8f4ff);background:var(--card,rgba(10,18,34,.92));border:1px solid var(--bhi,rgba(0,198,255,.32));
  backdrop-filter:blur(18px);box-shadow:0 16px 50px rgba(0,0,0,.45);
  transform:translateY(140%);opacity:0;transition:transform .4s cubic-bezier(.22,1,.36,1),opacity .4s;border-radius:6px;
}
.br-toast.show{transform:none;opacity:1;}
.br-toast button{margin-left:auto;background:none;border:none;color:var(--muted,#88a5c2);font-size:1rem;line-height:1;cursor:pointer;padding:0 .2rem;}
.br-toast button:hover{color:var(--ink,#e8f4ff);}

/* ─── consent banner ─── */
.br-consent{
  position:fixed;left:50%;bottom:1rem;transform:translateX(-50%) translateY(160%);z-index:400;
  width:min(94vw,40rem);padding:1.1rem 1.25rem;border:1px solid var(--bhi,rgba(0,198,255,.32));
  background:var(--card,rgba(10,18,34,.94));backdrop-filter:blur(22px);box-shadow:0 24px 80px rgba(0,0,0,.5);
  border-radius:10px;opacity:0;transition:transform .42s cubic-bezier(.22,1,.36,1),opacity .42s;
}
.br-consent.show{transform:translateX(-50%);opacity:1;}
.br-consent-text{font-size:.82rem;line-height:1.55;color:var(--muted,#88a5c2);margin:0 0 .85rem;}
.br-consent-panel{display:none;flex-direction:column;gap:.55rem;margin-bottom:.85rem;}
.br-consent.open .br-consent-panel{display:flex;}
.br-consent-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.55rem .7rem;border:1px solid var(--border,rgba(0,198,255,.13));border-radius:6px;}
.br-consent-row span{display:flex;flex-direction:column;gap:.15rem;}
.br-consent-row strong{font-size:.78rem;color:var(--ink,#e8f4ff);font-weight:600;}
.br-consent-row em{font-style:normal;font-size:.68rem;color:var(--dim,rgba(136,165,194,.6));}
.br-consent-row input{width:1.05rem;height:1.05rem;accent-color:var(--accent,#00c6ff);cursor:pointer;flex-shrink:0;}
.br-consent-links{display:flex;gap:1rem;margin-bottom:.7rem;font-family:var(--mono,monospace);font-size:.6rem;text-transform:uppercase;letter-spacing:.08em;}
.br-consent-links a{color:var(--muted,#88a5c2);text-decoration:underline;}
.br-consent-links a:hover{color:var(--accent,#00c6ff);}
.br-consent-actions{display:flex;gap:.55rem;flex-wrap:wrap;align-items:center;}
.br-consent-btn{font-family:var(--mono,monospace);font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;padding:.55rem 1rem;cursor:pointer;border:1px solid transparent;border-radius:3px;transition:filter .15s,border-color .15s,color .15s,background .15s;}
/* Reject is visually EQUAL to Accept (GDPR: no dark patterns) */
.br-consent-btn--primary{background:linear-gradient(135deg,var(--accent,#00c6ff),var(--accent2,#0072ff));color:#021018;}
.br-consent-btn--primary:hover{filter:brightness(1.1);}
.br-consent-btn--ghost{border-color:var(--bhi,rgba(0,198,255,.32));color:var(--ink,#e8f4ff);background:rgba(255,255,255,.03);}
.br-consent-btn--ghost:hover{border-color:var(--accent,#00c6ff);}
.br-consent-btn--text{background:none;color:var(--muted,#88a5c2);margin-left:auto;}
.br-consent-btn--text:hover{color:var(--ink,#e8f4ff);}
@media (max-width:540px){.br-consent-btn--text{margin-left:0;}.br-consent-actions{gap:.4rem;}.br-consent-btn{flex:1 1 auto;text-align:center;}}

/* ─── film grain over the dark gradients (static, ~0kb) ─── */
body::after{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.045;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size:180px 180px;
}

/* ─── spotlight cursor glow (opt-in: add class "spotlight" to a positioned container) ─── */
.spotlight{position:relative;}
.spotlight::after{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
  background:radial-gradient(circle 600px at var(--mx,50%) var(--my,30%),rgba(0,198,255,.07),transparent 60%);
  opacity:0;transition:opacity .3s;
}
@media (hover:hover){.spotlight:hover::after{opacity:1;}}
.spotlight>*{position:relative;z-index:1;}

/* ─── CSS-only marquee (opt-in) ─── */
.marquee-wrap{position:relative;overflow:hidden;}
.marquee-wrap::before,.marquee-wrap::after{content:"";position:absolute;top:0;bottom:0;width:4rem;z-index:2;pointer-events:none;}
.marquee-wrap::before{left:0;background:linear-gradient(90deg,var(--bg,#03050a),transparent);}
.marquee-wrap::after{right:0;background:linear-gradient(-90deg,var(--bg,#03050a),transparent);}
.marquee{display:flex;width:max-content;gap:2.5rem;animation:br-marquee 30s linear infinite;will-change:transform;}
.marquee-wrap:hover .marquee{animation-play-state:paused;}
@keyframes br-marquee{to{transform:translateX(-50%);}}

/* ─── view transitions for MPA navigation ─── */
@media (prefers-reduced-motion:no-preference){
  @view-transition{navigation:auto;}
}

/* ─── reduced motion ─── */
@media (prefers-reduced-motion:reduce){
  .marquee{animation:none;}
  .br-toast,.br-consent{transition:opacity .2s;}
}
