/* Expérience Paranormal — DA unifiée cyan spectral / violet */
:root{
  --ep-bg:#02070c;--ep-bg2:#061019;--ep-panel:rgba(6,18,27,.86);
  --ep-panel2:rgba(9,25,36,.76);--ep-cyan:#49f6d2;--ep-blue:#59b9ff;
  --ep-violet:#9b79ff;--ep-text:#eefaff;--ep-muted:#9bb1bd;
  --ep-line:rgba(73,246,210,.20);--ep-line2:rgba(89,185,255,.28);
  --ep-shadow:0 18px 60px rgba(0,0,0,.42),0 0 28px rgba(73,246,210,.05);
  --ink:#02070c;--ink-2:#061019;--ink-3:#091923;--ink-4:#0d2230;
  --bone:#eefaff;--bone-dim:#9bb1bd;--ash:#6f8794;--ember:#49f6d2;
  --ember-2:#59b9ff;--ember-deep:#247f78;--line:rgba(73,246,210,.16);
  --line-2:rgba(89,185,255,.28);--glass:rgba(6,18,27,.82);
}
html{background:var(--ep-bg)!important;color-scheme:dark}
body{
  background:
    radial-gradient(900px 560px at 12% -8%,rgba(73,246,210,.12),transparent 60%),
    radial-gradient(760px 520px at 92% 4%,rgba(155,121,255,.10),transparent 58%),
    linear-gradient(180deg,var(--ep-bg2),var(--ep-bg) 38%,#010408)!important;
  color:var(--ep-text)!important;
  font-family:'Hanken Grotesk',Inter,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important;
  min-height:100vh;overflow-x:hidden;
}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.22;background-image:linear-gradient(rgba(73,246,210,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(73,246,210,.02) 1px,transparent 1px);background-size:36px 36px;mask-image:linear-gradient(to bottom,black,transparent 78%)}
.atmos{background:radial-gradient(100% 80% at 15% 0,rgba(73,246,210,.14),transparent 50%),radial-gradient(90% 70% at 88% 8%,rgba(155,121,255,.10),transparent 52%),linear-gradient(180deg,#061019,#02070c 45%,#010408)!important}
.vignette{box-shadow:inset 0 0 220px 45px rgba(0,0,0,.72)!important}.grain{opacity:.035!important}.ember-mote{background:var(--ep-cyan)!important;box-shadow:0 0 10px var(--ep-cyan)!important}
h1,h2,h3,h4,h5,h6,.serif,.logo{color:var(--ep-text)!important;text-shadow:0 0 24px rgba(73,246,210,.05)}
p,li,td,th,label,.lede,.sub{color:inherit}.muted,.dim,.small,.subtitle{color:var(--ep-muted)!important}
a{color:inherit}.kicker,.accent,.highlight{color:var(--ep-cyan)!important}.kicker::before{background:var(--ep-cyan)!important}
.site-header,header.site-header{
  background:rgba(2,7,12,.90)!important;border-bottom:1px solid var(--ep-line)!important;
  box-shadow:0 10px 34px rgba(0,0,0,.24);backdrop-filter:blur(15px)!important;-webkit-backdrop-filter:blur(15px)!important;
}
.logo .dot{background:var(--ep-cyan)!important;box-shadow:0 0 12px var(--ep-cyan)!important}
.main-nav a,.auth-area a{color:var(--ep-muted)!important}.main-nav a:hover,.main-nav a.active,.auth-area a:hover{color:var(--ep-text)!important}.main-nav a::after{background:linear-gradient(90deg,var(--ep-cyan),var(--ep-blue))!important}
.btn,a.btn,button:not(.nav-toggle),input[type=submit],input[type=button]{
  border-radius:12px!important;border:1px solid rgba(73,246,210,.34)!important;
  background:linear-gradient(135deg,var(--ep-cyan),var(--ep-blue))!important;color:#031015!important;
  font-weight:800!important;letter-spacing:.055em!important;text-transform:uppercase;
  box-shadow:0 10px 30px rgba(73,246,210,.10);transition:transform .2s ease,filter .2s ease,box-shadow .2s ease!important;
}
.btn:hover,a.btn:hover,button:not(.nav-toggle):hover,input[type=submit]:hover,input[type=button]:hover{transform:translateY(-2px);filter:brightness(1.06);box-shadow:0 14px 34px rgba(73,246,210,.17)}
.btn.ghost,.btn.secondary,.btn-outline,a.ghost,button.ghost{background:rgba(6,18,27,.62)!important;color:var(--ep-text)!important;border-color:var(--ep-line2)!important;box-shadow:none}
.btn-register,a.btn-register{background:linear-gradient(135deg,var(--ep-cyan),var(--ep-blue))!important;color:#031015!important}
.card,.panel,.auth-card,.story-card,.staff-card,.game-card,.don-card,.avis-card,.profile-card,.modal-content,.box,fieldset,.table-wrap{
  background:linear-gradient(160deg,rgba(9,25,36,.88),rgba(3,11,17,.86))!important;
  border:1px solid var(--ep-line)!important;border-radius:20px!important;box-shadow:var(--ep-shadow)!important;
}
input:not([type=checkbox]):not([type=radio]),select,textarea{
  background:rgba(1,8,13,.78)!important;color:var(--ep-text)!important;border:1px solid var(--ep-line)!important;border-radius:12px!important;outline:none!important;
}
input:focus,select:focus,textarea:focus{border-color:var(--ep-cyan)!important;box-shadow:0 0 0 3px rgba(73,246,210,.10)!important}
input::placeholder,textarea::placeholder{color:#718792!important;opacity:1}
table{background:transparent!important;color:var(--ep-text)!important}th{color:var(--ep-cyan)!important;background:rgba(73,246,210,.045)!important}th,td{border-color:var(--ep-line)!important}tr:hover td{background:rgba(73,246,210,.025)!important}
hr,.divider{border-color:var(--ep-line)!important}.site-footer,footer{border-top-color:var(--ep-line)!important;background:rgba(1,5,9,.68)!important}
.badge,.tag,.pill{border-color:var(--ep-line2)!important;background:rgba(73,246,210,.075)!important;color:var(--ep-cyan)!important}

@media(max-width:980px){
  body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
  .site-header .header-inner{display:grid!important;grid-template-columns:minmax(0,1fr) 48px!important;align-items:center!important;gap:10px 12px!important;width:100%!important;padding:calc(12px + env(safe-area-inset-top)) clamp(14px,4vw,24px) 12px!important}
  .site-header .logo{grid-column:1!important;grid-row:1!important;min-width:0!important;max-width:100%!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .site-header .nav-toggle{grid-column:2!important;grid-row:1!important;display:block!important;width:48px!important;height:48px!important;margin:0!important;padding:10px!important;border:1px solid var(--ep-line)!important;border-radius:14px!important;background:rgba(73,246,210,.045)!important;z-index:202!important}
  .site-header .nav-toggle span{background:var(--ep-cyan)!important;width:26px!important;margin:5px auto!important}
  .site-header .auth-area,.site-header.nav-open .auth-area{grid-column:1/-1!important;grid-row:2!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;gap:10px!important;padding:0!important;margin:0!important;position:static!important}
  .site-header .auth-area>a,.site-header .auth-area>form,.site-header.nav-open .auth-area>a,.site-header.nav-open .auth-area>form{width:100%!important;min-width:0!important;margin:0!important;display:block!important}
  .site-header .auth-area>a,.site-header .auth-area button,.site-header.nav-open .auth-area>a,.site-header.nav-open .auth-area button{width:100%!important;min-height:48px!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:11px 10px!important;font-size:.78rem!important;line-height:1.15!important;white-space:normal!important;text-align:center!important}
  .site-header .auth-area>span{grid-column:1/-1!important;text-align:center!important;width:100%!important}
  .site-header .main-nav{position:fixed!important;inset:0!important;height:100dvh!important;padding:clamp(145px,23vh,180px) clamp(14px,4vw,24px) calc(28px + env(safe-area-inset-bottom))!important;overflow-y:auto!important;background:rgba(2,7,12,.985)!important;transform:translateY(-105%)!important;visibility:hidden!important;pointer-events:none!important;z-index:200!important}
  .site-header.nav-open .main-nav{transform:translateY(0)!important;visibility:visible!important;pointer-events:auto!important}
  .site-header .main-nav ul{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;width:100%!important;max-width:620px!important;margin:0 auto!important;padding:0!important}
  .site-header .main-nav li{width:100%!important;margin:0!important}
  .site-header .main-nav a{display:flex!important;align-items:center!important;width:100%!important;min-height:52px!important;padding:13px 16px!important;border:1px solid var(--ep-line)!important;border-radius:13px!important;background:rgba(73,246,210,.04)!important;font-size:.9rem!important;white-space:normal!important}
  .site-header .main-nav a::after{display:none!important}
  main.page{padding-top:132px!important}.wrap,.container{max-width:100%!important;padding-left:clamp(14px,4vw,24px)!important;padding-right:clamp(14px,4vw,24px)!important}
  .grid-2,.grid-3,.two-col,.three-col,.columns{grid-template-columns:minmax(0,1fr)!important}
}
@media(max-width:560px){
  .site-header .logo{font-size:.78rem!important;letter-spacing:.065em!important}.site-header .auth-area{gap:8px!important}
  .site-header .auth-area>a,.site-header .auth-area button{min-height:45px!important;padding:9px 7px!important;font-size:.68rem!important}
  .site-header .main-nav{padding-top:142px!important}main.page{padding-top:124px!important}
  .card,.panel,.auth-card,.story-card,.staff-card,.game-card,.don-card,.avis-card{padding:15px!important;border-radius:16px!important}
  h1{font-size:clamp(1.9rem,10vw,2.7rem)!important}h2{font-size:clamp(1.55rem,8vw,2.2rem)!important}
}

/* ============================================================
   MODE PLAYSTATION LÉGER — PS4 / PS5
   Garde la DA cyan/violet en retirant les effets coûteux.
   ============================================================ */
html.playstation{scroll-behavior:auto!important;background:#02070c!important}
html.playstation body{
  background:#02070c!important;
  background-image:none!important;
  font-family:Arial,"Segoe UI",sans-serif!important;
}
html.playstation body::before,
html.playstation .atmos,
html.playstation .grain,
html.playstation .vignette,
html.playstation .embers,
html.playstation .ember-mote,
html.playstation .fog,
html.playstation .noise,
html.playstation .particles,
html.playstation .hero-scroll{display:none!important}
html.playstation body *,
html.playstation body *::before,
html.playstation body *::after{
  animation:none!important;
  transition:none!important;
  text-shadow:none!important;
  filter:none!important;
  -webkit-filter:none!important;
}
html.playstation .site-header,
html.playstation header.site-header{
  background:#02070c!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  box-shadow:none!important;
}
html.playstation .card,
html.playstation .panel,
html.playstation .community-card,
html.playstation .auth-card,
html.playstation .story-card,
html.playstation .staff-card,
html.playstation .game-card,
html.playstation .don-card,
html.playstation .avis-card,
html.playstation .profile-card,
html.playstation .music-card,
html.playstation .player-panel{
  background:#061019!important;
  box-shadow:none!important;
}
html.playstation .reveal{opacity:1!important;transform:none!important}
html.playstation img{image-rendering:auto}
html.playstation audio{width:100%;max-width:100%}

/* Bouton d’accès au panel : visible, distinct et compatible avec tous les thèmes */
.auth-area a.panel-access-btn{
  display:inline-flex!important;align-items:center;justify-content:center;gap:.42rem;
  padding:.62rem 1rem!important;border:1px solid rgba(255,190,70,.68)!important;
  border-radius:10px!important;background:linear-gradient(135deg,#ffb536,#ff6b35)!important;
  color:#241000!important;font-weight:900!important;letter-spacing:.025em;
  box-shadow:0 5px 18px rgba(255,112,45,.28),inset 0 1px 0 rgba(255,255,255,.32)!important;
  text-shadow:none!important;white-space:nowrap;transition:transform .18s ease,filter .18s ease,box-shadow .18s ease!important;
}
.auth-area a.panel-access-btn:hover,.auth-area a.panel-access-btn:focus-visible{
  color:#160900!important;filter:brightness(1.08);transform:translateY(-1px);
  box-shadow:0 7px 22px rgba(255,112,45,.38),inset 0 1px 0 rgba(255,255,255,.4)!important;
}
@media(max-width:980px){
  .site-header.nav-open .auth-area a.panel-access-btn{grid-column:1/-1!important;min-height:48px!important;font-size:.84rem!important;}
}
html.playstation .auth-area a.panel-access-btn,.performance-mode .auth-area a.panel-access-btn{
  transition:none!important;box-shadow:0 3px 10px rgba(0,0,0,.35)!important;
}


/* Accès Panel universel : visible sur PC, mobile, tablette, PlayStation et Xbox */
.main-nav .panel-nav-item{display:block!important;visibility:visible!important;opacity:1!important}
.main-nav a.panel-nav-btn{
  display:flex!important;align-items:center!important;justify-content:center!important;
  min-height:42px!important;padding:.68rem 1rem!important;border:2px solid #ffd36a!important;
  border-radius:12px!important;background:#e96c19!important;color:#fff!important;
  font-weight:900!important;letter-spacing:.035em!important;text-transform:none!important;
  box-shadow:0 4px 12px rgba(0,0,0,.35)!important;white-space:nowrap!important;
}
.main-nav a.panel-nav-btn::after{display:none!important}
.ep-panel-universal{
  position:fixed!important;right:14px!important;top:88px!important;z-index:2147483000!important;
  display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;
  min-width:108px!important;min-height:44px!important;padding:9px 14px!important;
  border:2px solid #ffd36a!important;border-radius:12px!important;background:#e96c19!important;
  color:#fff!important;text-decoration:none!important;font:900 15px/1 Arial,'Segoe UI',sans-serif!important;
  box-shadow:0 5px 15px rgba(0,0,0,.42)!important;visibility:visible!important;opacity:1!important;
}
@media(max-width:980px){
  .main-nav .panel-nav-item{grid-column:1/-1!important}
  .main-nav a.panel-nav-btn{min-height:54px!important;font-size:1rem!important}
  .ep-panel-universal{top:auto!important;right:10px!important;bottom:calc(12px + env(safe-area-inset-bottom))!important;min-width:96px!important;min-height:46px!important}
}
html.playstation .ep-panel-universal,html.ep-console .ep-panel-universal,html.ep-performance-lite .ep-panel-universal{
  position:fixed!important;display:flex!important;background:#d85d12!important;border-color:#ffe08a!important;
  box-shadow:0 3px 8px #000!important;filter:none!important;transform:none!important;animation:none!important;
}
