/* Thèmes saisonniers réalistes et intégrés, version 78 */
html{
  --site-theme-accent:#fff;
  --site-theme-accent-2:#aaa;
  --site-theme-deep:#050505;
  --site-theme-surface:rgba(18,18,18,.78);
  --site-theme-surface-strong:rgba(28,28,28,.88);
  --site-theme-line:rgba(255,255,255,.14);
  --site-theme-glow:rgba(255,255,255,.12);
}

/* V86 : fonds téléphone dédiés, logos rééquilibrés et neige derrière le contenu */
.theme-atmosphere{z-index:0!important}
body>.topbar,body>main,body>footer{position:relative;z-index:1}
.logo-halo{display:none!important}
.default-logo-video{display:none;width:100%;height:100%;object-fit:contain;background:transparent;filter:drop-shadow(0 10px 24px rgba(255,255,255,.12))}
html[data-site-theme="default"] .default-logo-video{display:block}
html[data-site-theme="default"] .logo-stage>.hero-logo{display:none}
html:not([data-site-theme="default"]) .logo-stage>.hero-logo{display:block}

@media(max-width:700px){
  html[data-site-theme="summer"] body{background-image:url("themes/summer-mobile.webp")!important}
  html[data-site-theme="halloween"] body{background-image:url("themes/halloween-mobile.webp")!important}
  html[data-site-theme="christmas"] body{background-image:url("themes/christmas-mobile.webp")!important}
  html[data-site-theme="easter"] body{background-image:url("themes/easter-mobile.webp")!important}
  html:not([data-site-theme="default"]) body{background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important}
  .hero{padding-top:64px!important}
  .logo-stage{width:min(66vw,250px)!important;height:min(66vw,250px)!important;margin:0 auto 22px!important}
  html[data-site-theme="halloween"] .logo-stage,html[data-site-theme="christmas"] .logo-stage{width:min(69vw,264px)!important;height:min(69vw,264px)!important}
  .hero-logo,.default-logo-video{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important}
  .theme-atmosphere[data-theme="christmas"]{opacity:.9}
}


@media(min-width:701px){
  .logo-stage{transform:translateY(16px)}
}

@media(prefers-reduced-motion:reduce){
  .default-logo-video{display:none!important}
  html[data-site-theme="default"] .logo-stage>.hero-logo{display:block!important}
}

/* Version 84 : univers saisonniers immersifs et moteur pointeur/tactile */
.theme-atmosphere{
  position:fixed;inset:0;z-index:58;overflow:hidden;pointer-events:none;contain:strict;
}
.theme-atmosphere[data-theme="default"]{display:none}
.theme-particles{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.theme-pointer-glow{
  position:absolute;left:0;top:0;width:240px;height:240px;border-radius:50%;opacity:0;
  transform:translate(calc(var(--theme-pointer-x, -300px) - 50%),calc(var(--theme-pointer-y, -300px) - 50%));
  background:radial-gradient(circle,color-mix(in srgb,var(--theme-pointer-color) 28%,transparent),transparent 68%);
  filter:blur(7px);transition:opacity .25s ease;mix-blend-mode:screen;pointer-events:none;
}
.theme-pointer-glow.is-visible{opacity:.72}
.theme-magnetic{transform:translate(var(--theme-magnet-x,0),var(--theme-magnet-y,0))!important;transition:transform .15s ease!important}

html:not([data-site-theme="default"]) body{
  background-position:center top!important;background-size:cover!important;
}
html:not([data-site-theme="default"]) [data-theme-logo]{
  object-fit:cover!important;border-radius:50%!important;
  filter:saturate(1.04) contrast(1.04);transition:filter .35s ease,box-shadow .35s ease;
}
html:not([data-site-theme="default"]) .hero-logo{
  box-shadow:0 0 0 1px var(--site-theme-line),0 0 48px var(--site-theme-glow),0 22px 60px rgba(0,0,0,.55)!important;
}

html[data-site-theme="summer"]{
  --site-theme-accent:#7cecff;--site-theme-accent-2:#ffd784;--site-theme-deep:#020d16;
  --site-theme-surface:rgba(3,18,28,.78);--site-theme-surface-strong:rgba(5,30,43,.9);
  --site-theme-line:rgba(124,236,255,.28);--site-theme-glow:rgba(72,215,255,.24);
}
html[data-site-theme="summer"] body::before{
  background:radial-gradient(circle at 72% 8%,rgba(183,229,255,.18),transparent 16%),linear-gradient(180deg,rgba(0,7,13,.08),rgba(1,12,20,.48) 52%,rgba(0,7,12,.82))!important;
}
html[data-site-theme="summer"] .hero{box-shadow:inset 0 -65px 90px rgba(12,127,166,.13),0 30px 90px rgba(0,0,0,.42)!important}
html[data-site-theme="summer"] .hero::after{
  height:40%;inset:auto 0 0!important;background:repeating-radial-gradient(ellipse at 50% 120%,transparent 0 16px,rgba(124,236,255,.08) 18px 20px,transparent 22px 36px)!important;
  animation:themeWaterBreath 7s ease-in-out infinite!important;
}

html[data-site-theme="halloween"]{
  --site-theme-accent:#ff9138;--site-theme-accent-2:#b77cff;--site-theme-deep:#0b060d;
  --site-theme-surface:rgba(20,9,20,.82);--site-theme-surface-strong:rgba(38,14,34,.92);
  --site-theme-line:rgba(255,145,56,.28);--site-theme-glow:rgba(255,105,27,.25);
}
html[data-site-theme="halloween"] body::before{
  background:radial-gradient(circle at 9% 84%,rgba(255,109,24,.13),transparent 14%),radial-gradient(circle at 90% 77%,rgba(118,53,140,.15),transparent 18%),linear-gradient(180deg,rgba(6,2,8,.18),rgba(12,5,14,.57) 60%,rgba(5,2,7,.88))!important;
}
html[data-site-theme="halloween"] .hero::after{
  inset:auto -4% -45px!important;height:145px!important;background:radial-gradient(ellipse at 50% 100%,rgba(190,112,210,.18),transparent 62%)!important;
  filter:blur(12px);animation:themeFog 11s ease-in-out infinite alternate!important;
}
html[data-site-theme="halloween"] .hero-logo{animation:themePumpkinGlow 4.8s ease-in-out infinite}

html[data-site-theme="christmas"]{
  --site-theme-accent:#dff6ff;--site-theme-accent-2:#e7c37a;--site-theme-deep:#030b11;
  --site-theme-surface:rgba(5,18,25,.82);--site-theme-surface-strong:rgba(8,29,36,.92);
  --site-theme-line:rgba(209,241,255,.3);--site-theme-glow:rgba(156,220,255,.23);
}
html[data-site-theme="christmas"] body::before{
  background:radial-gradient(circle at 50% -5%,rgba(151,211,255,.17),transparent 25%),linear-gradient(180deg,rgba(1,8,14,.06),rgba(2,12,18,.5) 55%,rgba(1,7,11,.86))!important;
}
html[data-site-theme="christmas"] .hero-logo{animation:themeGlassShine 6s ease-in-out infinite}
html[data-site-theme="christmas"] .topbar::before{opacity:.88!important}

html[data-site-theme="easter"]{
  --site-theme-accent:#efb5cb;--site-theme-accent-2:#b7d796;--site-theme-deep:#06100c;
  --site-theme-surface:rgba(8,24,17,.8);--site-theme-surface-strong:rgba(13,38,26,.92);
  --site-theme-line:rgba(211,229,180,.28);--site-theme-glow:rgba(183,215,132,.22);
}
html[data-site-theme="easter"] body::before{
  background:radial-gradient(circle at 85% 14%,rgba(232,180,201,.13),transparent 19%),radial-gradient(circle at 11% 72%,rgba(164,202,111,.12),transparent 19%),linear-gradient(180deg,rgba(2,10,7,.08),rgba(4,17,11,.52) 57%,rgba(2,9,6,.86))!important;
}
html[data-site-theme="easter"] .hero-logo{animation:themeBloom 7s ease-in-out infinite}

@keyframes themeWaterBreath{0%,100%{opacity:.42;transform:scaleX(.96)}50%{opacity:.8;transform:scaleX(1.04)}}
@keyframes themeFog{from{transform:translateX(-3%) scaleX(1)}to{transform:translateX(3%) scaleX(1.08)}}
@keyframes themePumpkinGlow{0%,100%{filter:saturate(1) brightness(.92);box-shadow:0 0 30px rgba(255,102,20,.18)}50%{filter:saturate(1.18) brightness(1.08);box-shadow:0 0 56px rgba(255,111,23,.34)}}
@keyframes themeGlassShine{0%,100%{filter:saturate(1) brightness(.94)}50%{filter:saturate(1.05) brightness(1.12);box-shadow:0 0 65px rgba(188,231,255,.32)}}
@keyframes themeBloom{0%,100%{filter:saturate(.94) brightness(.96)}50%{filter:saturate(1.1) brightness(1.06);box-shadow:0 0 58px rgba(204,226,155,.28)}}

@media(max-width:700px){
  html:not([data-site-theme="default"]) body{background-size:auto 100svh!important;background-position:50% top!important;background-attachment:scroll!important}
  html:not([data-site-theme="default"]) .hero-logo{width:min(76vw,310px)!important;height:auto!important;max-height:none!important}
  html:not([data-site-theme="default"]) .hero{background:color-mix(in srgb,var(--site-theme-deep) 60%,transparent)!important;backdrop-filter:blur(5px)}
  .theme-pointer-glow{display:none}
  .theme-atmosphere{z-index:58}
}
@media(min-width:701px) and (max-width:1100px){
  html:not([data-site-theme="default"]) body{background-position:50% top!important}
  .theme-pointer-glow{width:190px;height:190px}
}
@media(prefers-reduced-motion:reduce){
  .theme-particles,.theme-pointer-glow{display:none!important}
  html:not([data-site-theme="default"]) .hero-logo,html:not([data-site-theme="default"]) .hero::after{animation:none!important}
  .theme-magnetic{transform:none!important;transition:none!important}
}
html[data-site-theme="summer"]{
  --site-theme-accent:#63e6f5;
  --site-theme-accent-2:#ffd576;
  --site-theme-deep:#04131b;
  --site-theme-surface:rgba(4,28,39,.72);
  --site-theme-surface-strong:rgba(7,43,56,.84);
  --site-theme-line:rgba(139,238,248,.25);
  --site-theme-glow:rgba(80,218,236,.2);
}
html[data-site-theme="halloween"]{
  --site-theme-accent:#ff9a43;
  --site-theme-accent-2:#c37cff;
  --site-theme-deep:#120811;
  --site-theme-surface:rgba(25,12,24,.76);
  --site-theme-surface-strong:rgba(42,18,38,.87);
  --site-theme-line:rgba(255,154,67,.22);
  --site-theme-glow:rgba(255,132,42,.18);
}
html[data-site-theme="christmas"]{
  --site-theme-accent:#ff6070;
  --site-theme-accent-2:#70dea2;
  --site-theme-deep:#07120f;
  --site-theme-surface:rgba(8,23,27,.77);
  --site-theme-surface-strong:rgba(12,35,38,.88);
  --site-theme-line:rgba(166,233,202,.22);
  --site-theme-glow:rgba(255,92,108,.18);
}
html[data-site-theme="easter"]{
  --site-theme-accent:#ff9fd2;
  --site-theme-accent-2:#91e5ce;
  --site-theme-deep:#141019;
  --site-theme-surface:rgba(22,17,27,.75);
  --site-theme-surface-strong:rgba(39,29,45,.86);
  --site-theme-line:rgba(255,205,233,.23);
  --site-theme-glow:rgba(255,160,212,.18);
}

html:not([data-site-theme="default"]) body{
  position:relative;
  isolation:isolate;
  min-height:100vh;
  color:#fff;
  background-color:var(--site-theme-deep)!important;
  background-repeat:no-repeat!important;
  background-position:center top!important;
  background-size:cover!important;
  background-attachment:fixed!important;
}
html[data-site-theme="summer"] body{background-image:url("themes/summer-v78.webp")!important}
html[data-site-theme="halloween"] body{background-image:url("themes/halloween-v78.webp")!important}
html[data-site-theme="christmas"] body{background-image:url("themes/christmas-v78.webp")!important}
html[data-site-theme="easter"] body{background-image:url("themes/easter-v78.webp")!important}

html:not([data-site-theme="default"]) body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    radial-gradient(ellipse at 50% 30%,rgba(0,0,0,.2) 0%,rgba(0,0,0,.48) 45%,rgba(0,0,0,.72) 100%),
    linear-gradient(180deg,rgba(0,0,0,.14),rgba(0,0,0,.46) 52%,rgba(0,0,0,.76));
}
html[data-site-theme="summer"] body::before{
  background:
    radial-gradient(ellipse at 50% 27%,rgba(3,20,30,.25) 0%,rgba(2,15,23,.48) 48%,rgba(1,9,14,.75) 100%),
    linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.42) 60%,rgba(0,0,0,.73));
}
html[data-site-theme="easter"] body::before{
  background:
    radial-gradient(ellipse at 50% 28%,rgba(20,14,25,.18) 0%,rgba(20,14,25,.47) 48%,rgba(13,8,16,.72) 100%),
    linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.38) 56%,rgba(0,0,0,.68));
}

html:not([data-site-theme="default"]) body::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:60;
  pointer-events:none;
  opacity:.16;
  background-repeat:repeat;
}
html[data-site-theme="summer"] body::after{
  background-image:radial-gradient(circle,rgba(255,255,255,.9) 0 1px,transparent 2px),radial-gradient(circle,rgba(255,228,145,.9) 0 1.5px,transparent 2.5px);
  background-size:160px 160px,240px 240px;
  background-position:20px 40px,95px 130px;
  animation:themeSummerLight 18s ease-in-out infinite alternate;
}
html[data-site-theme="halloween"] body::after{
  background-image:radial-gradient(ellipse at center,rgba(229,102,39,.7) 0 3px,transparent 4px),radial-gradient(ellipse at center,rgba(140,73,46,.65) 0 2px,transparent 3px);
  background-size:240px 270px,330px 300px;
  background-position:20px -50px,130px -90px;
  opacity:.11;
  animation:themeLeaves 26s linear infinite;
}
html[data-site-theme="christmas"] body::after{
  background-image:radial-gradient(circle,#fff 0 2px,transparent 3px),radial-gradient(circle,#e6f5ff 0 3px,transparent 4px),radial-gradient(circle,#fff 0 1px,transparent 2px);
  background-size:120px 120px,180px 180px,78px 78px;
  background-position:10px -20px,62px -90px,30px -30px;
  opacity:.28;
  animation:themeSnow 18s linear infinite;
}
html[data-site-theme="easter"] body::after{
  background-image:radial-gradient(ellipse at center,#ffcde4 0 2px,transparent 3px),radial-gradient(ellipse at center,#fff0a5 0 2px,transparent 3px),radial-gradient(ellipse at center,#a7ebd7 0 2px,transparent 3px);
  background-size:210px 250px,280px 290px,340px 270px;
  background-position:15px -30px,90px 10px,160px -70px;
  opacity:.1;
  animation:themePetals 28s linear infinite;
}
@keyframes themeSnow{to{background-position:10px 980px,62px 840px,30px 720px}}
@keyframes themePetals{to{background-position:340px 980px,-200px 930px,470px 900px}}
@keyframes themeLeaves{to{background-position:390px 980px,-260px 940px}}
@keyframes themeSummerLight{to{background-position:85px 5px,25px 175px}}

html:not([data-site-theme="default"]) .topbar,
html:not([data-site-theme="default"]) .game-header{
  position:relative;
  background:color-mix(in srgb,var(--site-theme-deep) 80%,transparent)!important;
  border-color:var(--site-theme-line)!important;
  box-shadow:0 12px 38px rgba(0,0,0,.28)!important;
  backdrop-filter:blur(18px) saturate(1.08);
}
html:not([data-site-theme="default"]) .topbar.scrolled{background:color-mix(in srgb,var(--site-theme-deep) 93%,transparent)!important}
html[data-site-theme="christmas"] .topbar::after,
html[data-site-theme="christmas"] .game-header::after{
  content:"";position:absolute;left:0;right:0;top:-7px;height:14px;pointer-events:none;
  background:
    radial-gradient(circle at 16px 7px,#ff5f6d 0 3px,transparent 4px) 0 0/62px 14px repeat-x,
    radial-gradient(circle at 47px 7px,#ffe078 0 3px,transparent 4px) 0 0/62px 14px repeat-x;
  filter:drop-shadow(0 0 7px rgba(255,218,100,.5));
}
html[data-site-theme="halloween"] .topbar::after,
html[data-site-theme="halloween"] .game-header::after{
  content:"";position:absolute;left:0;right:0;bottom:-4px;height:5px;pointer-events:none;
  background:linear-gradient(90deg,#ff8b31 0 14px,#552164 14px 28px,#1f121e 28px 42px) 0 0/42px 5px repeat-x;
}
html[data-site-theme="easter"] .topbar::after,
html[data-site-theme="easter"] .game-header::after{
  content:"";position:absolute;left:0;right:0;top:-5px;height:10px;pointer-events:none;
  background:radial-gradient(ellipse at center,#ffd2e8 0 4px,transparent 5px) 0 0/34px 10px repeat-x;
  opacity:.82;
}

html:not([data-site-theme="default"]) h1,
html:not([data-site-theme="default"]) .hero-title-premium{
  background:linear-gradient(180deg,#fff 10%,var(--site-theme-accent) 76%,var(--site-theme-accent-2) 132%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  color:transparent!important;
  text-shadow:none!important;
}
html:not([data-site-theme="default"]) .eyebrow,
html:not([data-site-theme="default"]) .dashboard-kicker,
html:not([data-site-theme="default"]) .section-kicker{color:var(--site-theme-accent)!important}
html:not([data-site-theme="default"]) .logo-halo,
html:not([data-site-theme="default"]) .game-brand img,
html:not([data-site-theme="default"]) .brand img{border-color:var(--site-theme-line)!important;box-shadow:0 0 34px var(--site-theme-glow)!important}
html:not([data-site-theme="default"]) nav a::after{background:var(--site-theme-accent)!important}
html:not([data-site-theme="default"]) ::selection{background:var(--site-theme-accent);color:#061015}

html:not([data-site-theme="default"]) .primary,
html:not([data-site-theme="default"]) .primary-button,
html:not([data-site-theme="default"]) .album-tabs button.active,
html:not([data-site-theme="default"]) .mode-button.is-active,
html:not([data-site-theme="default"]) .admin-dialog.mode-admin .admin-tabs .tab.active{
  background:linear-gradient(135deg,var(--site-theme-accent),var(--site-theme-accent-2))!important;
  border-color:color-mix(in srgb,var(--site-theme-accent) 65%,#fff)!important;
  color:#071013!important;
  box-shadow:0 12px 30px var(--site-theme-glow)!important;
}
html:not([data-site-theme="default"]) input:focus,
html:not([data-site-theme="default"]) textarea:focus,
html:not([data-site-theme="default"]) select:focus{border-color:var(--site-theme-accent)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--site-theme-accent) 18%,transparent)!important}

html:not([data-site-theme="default"]) .glass,
html:not([data-site-theme="default"]) .member-card,
html:not([data-site-theme="default"]) .admin-surface,
html:not([data-site-theme="default"]) .admin-item,
html:not([data-site-theme="default"]) .game-shell,
html:not([data-site-theme="default"]) .mine-shell,
html:not([data-site-theme="default"]) .memory-shell,
html:not([data-site-theme="default"]) .leaderboard,
html:not([data-site-theme="default"]) .best-panel,
html:not([data-site-theme="default"]) .game-card,
html:not([data-site-theme="default"]) .overlay-card,
html:not([data-site-theme="default"]) .album-modal-content,
html:not([data-site-theme="default"]) .account-panel,
html:not([data-site-theme="default"]) .theme-admin-card,
html:not([data-site-theme="default"]) .section-card,
html:not([data-site-theme="default"]) .dashboard-card,
html:not([data-site-theme="default"]) .lightbox-shell{
  background:linear-gradient(145deg,var(--site-theme-surface-strong),var(--site-theme-surface))!important;
  border-color:var(--site-theme-line)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.07),0 24px 65px rgba(0,0,0,.34)!important;
  backdrop-filter:blur(18px) saturate(1.08);
}
html:not([data-site-theme="default"]) .glass:hover,
html:not([data-site-theme="default"]) .member-card:hover,
html:not([data-site-theme="default"]) .game-card:hover{border-color:var(--site-theme-accent)!important;box-shadow:0 22px 60px var(--site-theme-glow)!important}
html:not([data-site-theme="default"]) .album-date-heading,
html:not([data-site-theme="default"]) .lightbox-photo-date,
html:not([data-site-theme="default"]) .album-count,
html:not([data-site-theme="default"]) .lightbox-photo-counter{border-color:var(--site-theme-line)!important;background:color-mix(in srgb,var(--site-theme-deep) 88%,transparent)!important;color:#fff!important}
html:not([data-site-theme="default"]) .record-row:first-child{border-color:var(--site-theme-accent)!important;background:color-mix(in srgb,var(--site-theme-accent) 10%,transparent)!important}
html:not([data-site-theme="default"]) .record-value{color:var(--site-theme-accent)!important}
html:not([data-site-theme="default"]) *{scrollbar-color:var(--site-theme-accent) rgba(255,255,255,.05)}

/* Aperçus et choix dans l'administration */
.theme-admin-card{margin:24px 0;padding:22px;border:1px solid var(--line,rgba(255,255,255,.14));border-radius:24px;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018))}
.theme-admin-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}
.theme-admin-heading h3{margin:0 0 7px;font-size:1.55rem}
.theme-admin-heading p:not(.eyebrow){margin:0;color:#969696;line-height:1.55}
.theme-current-badge{flex:0 0 auto;padding:9px 13px;border:1px solid var(--site-theme-line);border-radius:999px;background:var(--site-theme-surface);color:var(--site-theme-accent);font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.theme-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.theme-choice{position:relative;display:grid;grid-template-columns:78px minmax(0,1fr);grid-template-rows:auto auto;column-gap:13px;align-items:center;min-width:0;padding:12px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(0,0,0,.22);cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.theme-choice:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.28)}
.theme-choice.is-selected{border-color:var(--site-theme-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--site-theme-accent) 18%,transparent),0 16px 36px rgba(0,0,0,.3)}
.theme-choice input{position:absolute;top:10px;right:10px;width:18px;height:18px;accent-color:var(--site-theme-accent)}
.theme-choice-preview{grid-row:1/3;display:block;position:relative;width:78px;height:58px;overflow:hidden;border-radius:14px;border:1px solid rgba(255,255,255,.18);background:#080808 center/cover no-repeat}
.theme-choice-preview i{display:none}
.theme-choice strong{align-self:end;min-width:0;padding-right:20px;font-size:.94rem}
.theme-choice small{align-self:start;color:#7f7f7f;line-height:1.35}
.theme-choice-default .theme-choice-preview{background-image:linear-gradient(145deg,#222,#050505)}
.theme-choice-summer .theme-choice-preview{background-image:url("themes/summer-v78.webp")}
.theme-choice-halloween .theme-choice-preview{background-image:url("themes/halloween-v78.webp")}
.theme-choice-christmas .theme-choice-preview{background-image:url("themes/christmas-v78.webp")}
.theme-choice-easter .theme-choice-preview{background-image:url("themes/easter-v78.webp")}
.theme-choice-auto .theme-choice-preview{background-image:conic-gradient(from 45deg,#0aa4c2,#ff8b2f,#b72037,#ff9dce,#0aa4c2)}
.theme-preview-help{margin:14px 0 0;color:#777;font-size:.82rem;line-height:1.5}

@media(max-width:900px){.theme-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){
  html:not([data-site-theme="default"]) body{background-attachment:scroll!important;background-size:auto 100svh!important;background-position:center top!important}
  html:not([data-site-theme="default"]) body::after{opacity:.08}
  html[data-site-theme="christmas"] body::after{opacity:.18}
  .theme-admin-card{padding:16px;border-radius:19px}
  .theme-admin-heading{display:block}
  .theme-current-badge{display:inline-flex;margin-top:12px}
  .theme-choice-grid{grid-template-columns:1fr}
  .theme-choice{grid-template-columns:68px minmax(0,1fr)}
  .theme-choice-preview{width:68px;height:52px}
}
@media(prefers-reduced-motion:reduce){.theme-choice{transition:none}html:not([data-site-theme="default"]) body::after{animation:none!important}}


/* Version 79 : détails premium + mobile amélioré */
html:not([data-site-theme="default"]) .hero,
html:not([data-site-theme="default"]) .glass,
html:not([data-site-theme="default"]) .section-card,
html:not([data-site-theme="default"]) .dashboard-card,
html:not([data-site-theme="default"]) .game-card,
html:not([data-site-theme="default"]) .album-modal-content,
html:not([data-site-theme="default"]) .lightbox-shell,
html:not([data-site-theme="default"]) .topbar,
html:not([data-site-theme="default"]) .game-header,
html:not([data-site-theme="default"]) .primary,
html:not([data-site-theme="default"]) .primary-button,
html:not([data-site-theme="default"]) .ghost,
html:not([data-site-theme="default"]) .header-button,
html:not([data-site-theme="default"]) .action-button{
  position:relative;
  overflow:hidden;
}

html:not([data-site-theme="default"]) .hero{
  border-color:var(--site-theme-line)!important;
  box-shadow:0 30px 80px rgba(0,0,0,.28)!important;
}
html:not([data-site-theme="default"]) .hero::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.06),transparent 24%,transparent 72%,rgba(0,0,0,.18));
  opacity:.95;
}
html:not([data-site-theme="default"]) .glass::before,
html:not([data-site-theme="default"]) .section-card::before,
html:not([data-site-theme="default"]) .dashboard-card::before,
html:not([data-site-theme="default"]) .game-card::before,
html:not([data-site-theme="default"]) .album-modal-content::before,
html:not([data-site-theme="default"]) .lightbox-shell::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.08),transparent 24%,transparent 78%,rgba(255,255,255,.03));
}
html:not([data-site-theme="default"]) .primary::before,
html:not([data-site-theme="default"]) .primary-button::before,
html:not([data-site-theme="default"]) .ghost::before,
html:not([data-site-theme="default"]) .header-button::before,
html:not([data-site-theme="default"]) .action-button::before{
  content:"";
  position:absolute;
  inset:-40% auto auto -12%;
  width:45%;
  height:180%;
  transform:rotate(22deg);
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.45),rgba(255,255,255,.06) 28%,transparent 60%);
  opacity:.45;
}

@keyframes hypnosTwinkle{0%,100%{opacity:.48;filter:drop-shadow(0 0 3px rgba(255,255,255,.3))}50%{opacity:1;filter:drop-shadow(0 0 12px rgba(255,255,255,.75))}}
@keyframes hypnosSway{0%,100%{transform:translateX(0) rotate(0deg)}25%{transform:translateX(-4px) rotate(-1.2deg)}75%{transform:translateX(4px) rotate(1.2deg)}}
@keyframes hypnosPulseGlow{0%,100%{box-shadow:0 0 0 rgba(255,255,255,0),0 12px 30px var(--site-theme-glow)!important}50%{box-shadow:0 0 18px color-mix(in srgb,var(--site-theme-accent) 28%,transparent),0 12px 34px var(--site-theme-glow)!important}}
@keyframes hypnosFlickerOrange{0%,100%{filter:drop-shadow(0 0 4px rgba(255,146,51,.2))}35%{filter:drop-shadow(0 0 12px rgba(255,146,51,.62))}70%{filter:drop-shadow(0 0 7px rgba(204,120,255,.3))}}

/* SUMMER */
html[data-site-theme="summer"] .topbar::before,
html[data-site-theme="summer"] .game-header::before{
  content:"";
  position:absolute;
  left:0;right:0;bottom:-8px;height:14px;
  pointer-events:none;
  background:
    radial-gradient(ellipse at 50% 120%,rgba(255,255,255,.95) 0 8px,transparent 9px) 0 0/36px 14px repeat-x,
    linear-gradient(90deg,rgba(114,233,247,.34),rgba(255,222,131,.24));
}
html[data-site-theme="summer"] .hero::after{
  content:"";
  position:absolute;
  inset:auto 0 10px 0;
  height:26px;
  pointer-events:none;
  background:
    radial-gradient(circle at 14% 65%,rgba(255,240,179,.95) 0 6px,transparent 7px),
    radial-gradient(circle at 84% 58%,rgba(255,238,179,.95) 0 5px,transparent 6px),
    radial-gradient(circle at 30% 78%,rgba(131,234,244,.85) 0 5px,transparent 6px),
    linear-gradient(90deg,transparent,rgba(255,255,255,.14),transparent);
  opacity:.72;
}
html[data-site-theme="summer"] .primary,
html[data-site-theme="summer"] .primary-button{animation:hypnosPulseGlow 6s ease-in-out infinite}
html[data-site-theme="summer"] .glass,
html[data-site-theme="summer"] .section-card,
html[data-site-theme="summer"] .dashboard-card,
html[data-site-theme="summer"] .game-card{
  box-shadow:inset 0 1px rgba(255,255,255,.08),0 24px 65px rgba(0,0,0,.30),0 0 0 1px rgba(144,239,247,.05)!important;
}

/* HALLOWEEN */
html[data-site-theme="halloween"] .topbar::before,
html[data-site-theme="halloween"] .game-header::before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;height:36px;
  pointer-events:none;
  background:
    radial-gradient(circle at 6% 12px,rgba(255,146,62,.92) 0 3px,transparent 4px),
    radial-gradient(circle at 18% 22px,rgba(196,124,255,.82) 0 2.5px,transparent 3.5px),
    radial-gradient(circle at 77% 11px,rgba(255,146,62,.92) 0 3px,transparent 4px),
    radial-gradient(circle at 91% 24px,rgba(196,124,255,.82) 0 2.5px,transparent 3.5px),
    linear-gradient(180deg,rgba(0,0,0,.25),transparent 74%);
  animation:hypnosFlickerOrange 7s ease-in-out infinite;
}
html[data-site-theme="halloween"] .hero::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 10% 92%,rgba(255,133,39,.16) 0 40px,transparent 42px),
    radial-gradient(circle at 90% 90%,rgba(255,133,39,.13) 0 42px,transparent 44px),
    linear-gradient(180deg,transparent 0 70%,rgba(255,122,48,.05));
}
html[data-site-theme="halloween"] .glass::after,
html[data-site-theme="halloween"] .section-card::after,
html[data-site-theme="halloween"] .dashboard-card::after,
html[data-site-theme="halloween"] .game-card::after{
  content:"";
  position:absolute;
  right:10px;top:8px;width:46px;height:46px;
  pointer-events:none;opacity:.16;
  background:
    radial-gradient(circle at 50% 50%,rgba(255,142,45,.85) 0 4px,transparent 5px),
    radial-gradient(circle at 28% 26%,rgba(255,142,45,.55) 0 2px,transparent 3px),
    radial-gradient(circle at 74% 31%,rgba(200,122,255,.45) 0 2px,transparent 3px);
  filter:blur(.2px);
}
html[data-site-theme="halloween"] .primary,
html[data-site-theme="halloween"] .primary-button{animation:hypnosFlickerOrange 5s ease-in-out infinite}

/* CHRISTMAS */
html[data-site-theme="christmas"] .topbar::before,
html[data-site-theme="christmas"] .game-header::before{
  content:"";
  position:absolute;
  left:0;right:0;top:-2px;height:38px;
  pointer-events:none;
  background:
    radial-gradient(circle at 5% 13px,#ff5e6f 0 4px,transparent 5px),
    radial-gradient(circle at 12% 24px,#ffe17b 0 4px,transparent 5px),
    radial-gradient(circle at 21% 16px,#77e3a8 0 4px,transparent 5px),
    radial-gradient(circle at 30% 23px,#83c8ff 0 4px,transparent 5px),
    radial-gradient(circle at 39% 14px,#ff5e6f 0 4px,transparent 5px),
    radial-gradient(circle at 48% 25px,#ffe17b 0 4px,transparent 5px),
    radial-gradient(circle at 57% 15px,#77e3a8 0 4px,transparent 5px),
    radial-gradient(circle at 66% 23px,#83c8ff 0 4px,transparent 5px),
    radial-gradient(circle at 75% 14px,#ff5e6f 0 4px,transparent 5px),
    radial-gradient(circle at 84% 24px,#ffe17b 0 4px,transparent 5px),
    radial-gradient(circle at 93% 16px,#77e3a8 0 4px,transparent 5px),
    linear-gradient(180deg,transparent 0 8px,rgba(33,74,51,.95) 8px 10px,transparent 10px),
    radial-gradient(ellipse at 50% 100%,rgba(255,255,255,.14),transparent 65%);
  filter:drop-shadow(0 0 10px rgba(255,235,139,.45));
  animation:hypnosTwinkle 4s ease-in-out infinite;
}
html[data-site-theme="christmas"] .topbar::after,
html[data-site-theme="christmas"] .game-header::after{
  height:20px;top:-12px;
  background:
    radial-gradient(circle at 16px 10px,#ff5f6d 0 4px,transparent 5px) 0 0/62px 20px repeat-x,
    radial-gradient(circle at 47px 10px,#ffe078 0 4px,transparent 5px) 0 0/62px 20px repeat-x,
    radial-gradient(circle at 77px 10px,#6fe0a2 0 4px,transparent 5px) 0 0/124px 20px repeat-x;
  opacity:.95;
}
html[data-site-theme="christmas"] .hero::after{
  content:"";
  position:absolute;
  left:0;right:0;top:0;height:110px;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(0,0,0,.08),transparent 60%),
    linear-gradient(90deg,transparent 10%,rgba(33,74,51,.95) 10% 11%,transparent 11% 28%,rgba(33,74,51,.95) 28% 29%,transparent 29% 73%,rgba(33,74,51,.95) 73% 74%,transparent 74% 90%,rgba(33,74,51,.95) 90% 91%,transparent 91%),
    radial-gradient(circle at 10% 58px,#ff5e6f 0 9px,transparent 10px),
    radial-gradient(circle at 28% 76px,#ffe17b 0 10px,transparent 11px),
    radial-gradient(circle at 73% 76px,#77e3a8 0 10px,transparent 11px),
    radial-gradient(circle at 90% 58px,#83c8ff 0 9px,transparent 10px);
  filter:drop-shadow(0 0 9px rgba(255,232,140,.42));
  animation:hypnosSway 9s ease-in-out infinite;
}
html[data-site-theme="christmas"] .primary,
html[data-site-theme="christmas"] .primary-button,
html[data-site-theme="christmas"] .glass,
html[data-site-theme="christmas"] .section-card,
html[data-site-theme="christmas"] .dashboard-card,
html[data-site-theme="christmas"] .game-card{
  box-shadow:inset 0 1px rgba(255,255,255,.10),0 24px 65px rgba(0,0,0,.32),0 0 16px rgba(255,228,132,.06)!important;
}
html[data-site-theme="christmas"] .glass::after,
html[data-site-theme="christmas"] .section-card::after,
html[data-site-theme="christmas"] .dashboard-card::after,
html[data-site-theme="christmas"] .game-card::after{
  content:"";
  position:absolute;
  inset:auto 12px 10px auto;
  width:58px;height:18px;
  pointer-events:none;opacity:.55;
  background:
    radial-gradient(circle at 9px 9px,#ff5f6d 0 4px,transparent 5px),
    radial-gradient(circle at 29px 9px,#ffe078 0 4px,transparent 5px),
    radial-gradient(circle at 49px 9px,#70dea2 0 4px,transparent 5px);
  animation:hypnosTwinkle 5s ease-in-out infinite;
}

/* EASTER */
html[data-site-theme="easter"] .topbar::before,
html[data-site-theme="easter"] .game-header::before{
  content:"";
  position:absolute;
  left:0;right:0;top:-2px;height:30px;
  pointer-events:none;
  background:
    radial-gradient(circle at 8% 20px,#ffd4e8 0 5px,transparent 6px),
    radial-gradient(circle at 16% 12px,#fff1a9 0 5px,transparent 6px),
    radial-gradient(circle at 24% 20px,#a6ebd8 0 5px,transparent 6px),
    radial-gradient(circle at 76% 20px,#ffd4e8 0 5px,transparent 6px),
    radial-gradient(circle at 84% 12px,#fff1a9 0 5px,transparent 6px),
    radial-gradient(circle at 92% 20px,#a6ebd8 0 5px,transparent 6px),
    linear-gradient(180deg,rgba(255,255,255,.18),transparent 65%);
}
html[data-site-theme="easter"] .hero::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 12% 14%,rgba(255,211,232,.55) 0 8px,transparent 9px),
    radial-gradient(circle at 16% 18%,rgba(255,240,169,.55) 0 7px,transparent 8px),
    radial-gradient(circle at 83% 12%,rgba(167,235,215,.55) 0 7px,transparent 8px),
    radial-gradient(circle at 87% 17%,rgba(255,211,232,.55) 0 8px,transparent 9px);
  opacity:.7;
}
html[data-site-theme="easter"] .glass::after,
html[data-site-theme="easter"] .section-card::after,
html[data-site-theme="easter"] .dashboard-card::after,
html[data-site-theme="easter"] .game-card::after{
  content:"";
  position:absolute;
  right:12px;bottom:10px;width:52px;height:18px;
  pointer-events:none;opacity:.42;
  background:
    radial-gradient(ellipse at center,#ffd4e8 0 5px,transparent 6px) 0 0/18px 18px no-repeat,
    radial-gradient(ellipse at center,#fff1a9 0 5px,transparent 6px) 17px 0/18px 18px no-repeat,
    radial-gradient(ellipse at center,#a6ebd8 0 5px,transparent 6px) 34px 0/18px 18px no-repeat;
}

/* Lightbox/header badges a bit more visible */
html:not([data-site-theme="default"]) .lightbox-photo-date,
html:not([data-site-theme="default"]) .lightbox-photo-counter,
html:not([data-site-theme="default"]) .album-date-heading{
  backdrop-filter:blur(14px) saturate(1.06);
}

/* Mobile : montrer davantage le décor */
@media(max-width:700px){
  html:not([data-site-theme="default"]) body{
    background-size:cover!important;
    background-attachment:scroll!important;
  }
  html:not([data-site-theme="default"]) body::before{opacity:.85}
  html:not([data-site-theme="default"]) .hero{
    background:linear-gradient(180deg,rgba(0,0,0,.16),rgba(0,0,0,.22))!important;
    backdrop-filter:blur(6px) saturate(1.02);
  }
  html[data-site-theme="summer"] body{background-position:60% top!important}
  html[data-site-theme="halloween"] body{background-position:52% top!important}
  html[data-site-theme="christmas"] body{background-position:60% top!important}
  html[data-site-theme="easter"] body{background-position:56% top!important}
  html[data-site-theme="christmas"] .hero::after{height:86px;background-size:auto}
  html[data-site-theme="christmas"] .topbar::before,
  html[data-site-theme="christmas"] .game-header::before,
  html[data-site-theme="christmas"] .topbar::after,
  html[data-site-theme="christmas"] .game-header::after{transform:scale(.92);transform-origin:top center}
}
@media(max-width:520px){
  html:not([data-site-theme="default"]) body::before{
    background:linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.34) 50%,rgba(0,0,0,.58));
  }
  html[data-site-theme="summer"] body{background-position:64% top!important}
  html[data-site-theme="halloween"] body{background-position:54% top!important}
  html[data-site-theme="christmas"] body{background-position:64% top!important}
  html[data-site-theme="easter"] body{background-position:58% top!important}
  html[data-site-theme="christmas"] .hero::after{height:72px;opacity:.95}
  html[data-site-theme="christmas"] .glass::after,
  html[data-site-theme="christmas"] .section-card::after,
  html[data-site-theme="christmas"] .dashboard-card::after,
  html[data-site-theme="christmas"] .game-card::after{width:44px}
  html[data-site-theme="summer"] .hero::after,
  html[data-site-theme="easter"] .hero::after,
  html[data-site-theme="halloween"] .hero::after{opacity:.55}
}
@media(prefers-reduced-motion:reduce){
  html[data-site-theme="summer"] .primary,
  html[data-site-theme="summer"] .primary-button,
  html[data-site-theme="halloween"] .primary,
  html[data-site-theme="halloween"] .primary-button,
  html[data-site-theme="christmas"] .primary,
  html[data-site-theme="christmas"] .primary-button,
  html[data-site-theme="christmas"] .topbar::before,
  html[data-site-theme="christmas"] .game-header::before,
  html[data-site-theme="christmas"] .glass::after,
  html[data-site-theme="christmas"] .section-card::after,
  html[data-site-theme="christmas"] .dashboard-card::after,
  html[data-site-theme="christmas"] .game-card::after,
  html[data-site-theme="christmas"] .hero::after,
  html[data-site-theme="halloween"] .topbar::before,
  html[data-site-theme="halloween"] .game-header::before{animation:none!important}
}


/* Version 83 : correction Noël hero + thème dans galerie et visionneuse */
html[data-site-theme="christmas"] .hero::after{
  content:none!important;
  background:none!important;
  filter:none!important;
  animation:none!important;
}

/* Le topbar garde seulement sa guirlande propre */
html[data-site-theme="christmas"] .topbar,
html[data-site-theme="christmas"] .game-header{
  overflow:visible!important;
}

/* Dialogues galerie + lightbox réellement thémés */
html:not([data-site-theme="default"]) .album-dialog,
html:not([data-site-theme="default"]) .lightbox-dialog{
  position:relative;
  background:linear-gradient(145deg,var(--site-theme-surface-strong),var(--site-theme-surface))!important;
  border:1px solid var(--site-theme-line)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.08),0 28px 80px rgba(0,0,0,.46),0 0 0 1px rgba(255,255,255,.03)!important;
  color:#fff!important;
  overflow:visible!important;
  backdrop-filter:blur(18px) saturate(1.08);
}
html:not([data-site-theme="default"]) .album-dialog::backdrop,
html:not([data-site-theme="default"]) .lightbox-dialog::backdrop{
  background:color-mix(in srgb,var(--site-theme-deep) 72%,rgba(0,0,0,.72))!important;
  backdrop-filter:blur(8px) saturate(1.05);
}
html:not([data-site-theme="default"]) .album-dialog-head,
html:not([data-site-theme="default"]) .album-dialog-toolbar,
html:not([data-site-theme="default"]) .lightbox-tools,
html:not([data-site-theme="default"]) .lightbox-social,
html:not([data-site-theme="default"]) .lightbox-thumbs{
  border-color:var(--site-theme-line)!important;
}
html:not([data-site-theme="default"]) .album-dialog-grid,
html:not([data-site-theme="default"]) .lightbox-stage{
  background:color-mix(in srgb,var(--site-theme-deep) 42%,transparent)!important;
  border-radius:24px;
}
html:not([data-site-theme="default"]) .album-dialog .ghost,
html:not([data-site-theme="default"]) .album-dialog .ghost.small,
html:not([data-site-theme="default"]) .lightbox-dialog .ghost,
html:not([data-site-theme="default"]) .lightbox-dialog .ghost.small,
html:not([data-site-theme="default"]) .lightbox-close,
html:not([data-site-theme="default"]) .lightbox-nav,
html:not([data-site-theme="default"]) .album-dialog .close,
html:not([data-site-theme="default"]) .lightbox-dialog .close{
  background:color-mix(in srgb,var(--site-theme-deep) 88%,transparent)!important;
  border-color:var(--site-theme-line)!important;
  color:#fff!important;
  box-shadow:0 10px 24px rgba(0,0,0,.24)!important;
}
html:not([data-site-theme="default"]) .album-dialog .ghost:hover,
html:not([data-site-theme="default"]) .lightbox-dialog .ghost:hover,
html:not([data-site-theme="default"]) .lightbox-nav:hover,
html:not([data-site-theme="default"]) .album-dialog .close:hover,
html:not([data-site-theme="default"]) .lightbox-dialog .close:hover{
  border-color:var(--site-theme-accent)!important;
  box-shadow:0 12px 28px var(--site-theme-glow)!important;
}
html:not([data-site-theme="default"]) .lightbox-thumbs .thumb,
html:not([data-site-theme="default"]) .lightbox-thumbs button,
html:not([data-site-theme="default"]) .album-dialog-grid > *{
  border-color:var(--site-theme-line)!important;
}
html:not([data-site-theme="default"]) .lightbox-thumbs .is-active,
html:not([data-site-theme="default"]) .lightbox-thumbs .active,
html:not([data-site-theme="default"]) .album-photo.is-active,
html:not([data-site-theme="default"]) .album-media.is-active{
  box-shadow:0 0 0 2px var(--site-theme-accent),0 14px 30px var(--site-theme-glow)!important;
}

/* Noël dans la galerie et la visionneuse */
html[data-site-theme="christmas"] .album-dialog::before,
html[data-site-theme="christmas"] .lightbox-dialog::before{
  content:"";
  position:absolute;
  left:16px;
  right:16px;
  top:-10px;
  height:20px;
  pointer-events:none;
  z-index:3;
  background:
    radial-gradient(circle at 16px 10px,#ff5f6d 0 4px,transparent 5px) 0 0/64px 20px repeat-x,
    radial-gradient(circle at 32px 10px,#ffe078 0 4px,transparent 5px) 0 0/64px 20px repeat-x,
    radial-gradient(circle at 48px 10px,#70dea2 0 4px,transparent 5px) 0 0/64px 20px repeat-x,
    radial-gradient(circle at 64px 10px,#83c8ff 0 4px,transparent 5px) 0 0/64px 20px repeat-x,
    linear-gradient(180deg,transparent 0 8px,#28563e 8px 10px,transparent 10px);
  filter:drop-shadow(0 0 8px rgba(255,230,135,.4));
  animation:hypnosTwinkle 3.4s ease-in-out infinite;
}
html[data-site-theme="christmas"] .album-dialog .ghost,
html[data-site-theme="christmas"] .album-dialog .ghost.small,
html[data-site-theme="christmas"] .lightbox-dialog .ghost,
html[data-site-theme="christmas"] .lightbox-dialog .ghost.small,
html[data-site-theme="christmas"] .lightbox-nav,
html[data-site-theme="christmas"] .album-dialog .close,
html[data-site-theme="christmas"] .lightbox-dialog .close{
  position:relative;
  overflow:visible!important;
}
html[data-site-theme="christmas"] .album-dialog .ghost::after,
html[data-site-theme="christmas"] .album-dialog .ghost.small::after,
html[data-site-theme="christmas"] .lightbox-dialog .ghost::after,
html[data-site-theme="christmas"] .lightbox-dialog .ghost.small::after,
html[data-site-theme="christmas"] .lightbox-nav::after,
html[data-site-theme="christmas"] .album-dialog .close::after,
html[data-site-theme="christmas"] .lightbox-dialog .close::after{
  content:"";
  position:absolute;
  left:-6px;
  right:-6px;
  top:-8px;
  height:14px;
  pointer-events:none;
  border-radius:14px 14px 0 0;
  background:
    radial-gradient(circle at 8px 7px,#ff5f6d 0 3px,transparent 4px) 0 0/36px 14px repeat-x,
    radial-gradient(circle at 18px 7px,#ffe078 0 3px,transparent 4px) 0 0/36px 14px repeat-x,
    radial-gradient(circle at 28px 7px,#70dea2 0 3px,transparent 4px) 0 0/36px 14px repeat-x,
    linear-gradient(180deg,transparent 0 5px,#28563e 5px 7px,transparent 7px);
  filter:drop-shadow(0 0 6px rgba(255,230,135,.35));
}
html[data-site-theme="christmas"] .album-dialog-grid,
html[data-site-theme="christmas"] .lightbox-stage,
html[data-site-theme="christmas"] .lightbox-thumbs{
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05),0 0 0 1px rgba(255,255,255,.03),0 0 24px rgba(255,226,126,.08)!important;
}

@media(max-width:700px){
  html:not([data-site-theme="default"]) .album-dialog,
  html:not([data-site-theme="default"]) .lightbox-dialog{border-radius:24px!important}
  html[data-site-theme="christmas"] .album-dialog::before,
html[data-site-theme="christmas"] .lightbox-dialog::before{left:10px;right:10px;top:-8px;height:16px;background-size:52px 16px,52px 16px,52px 16px,52px 16px,100% 16px}
}

/* V84 final overrides. Placés en dernier pour remplacer les anciennes versions. */
html[data-site-theme="summer"]{--site-theme-accent:#7cecff;--site-theme-accent-2:#ffd784;--site-theme-deep:#020d16;--site-theme-surface:rgba(3,18,28,.78);--site-theme-surface-strong:rgba(5,30,43,.9);--site-theme-line:rgba(124,236,255,.28);--site-theme-glow:rgba(72,215,255,.24)}
html[data-site-theme="halloween"]{--site-theme-accent:#ff9138;--site-theme-accent-2:#b77cff;--site-theme-deep:#0b060d;--site-theme-surface:rgba(20,9,20,.82);--site-theme-surface-strong:rgba(38,14,34,.92);--site-theme-line:rgba(255,145,56,.28);--site-theme-glow:rgba(255,105,27,.25)}
html[data-site-theme="christmas"]{--site-theme-accent:#dff6ff;--site-theme-accent-2:#e7c37a;--site-theme-deep:#030b11;--site-theme-surface:rgba(5,18,25,.82);--site-theme-surface-strong:rgba(8,29,36,.92);--site-theme-line:rgba(209,241,255,.3);--site-theme-glow:rgba(156,220,255,.23)}
html[data-site-theme="easter"]{--site-theme-accent:#efb5cb;--site-theme-accent-2:#b7d796;--site-theme-deep:#06100c;--site-theme-surface:rgba(8,24,17,.8);--site-theme-surface-strong:rgba(13,38,26,.92);--site-theme-line:rgba(211,229,180,.28);--site-theme-glow:rgba(183,215,132,.22)}
html:not([data-site-theme="default"]) [data-theme-logo]{object-fit:cover!important;border-radius:50%!important;filter:saturate(1.04) contrast(1.04)}
html:not([data-site-theme="default"]) .hero-logo{box-shadow:0 0 0 1px var(--site-theme-line),0 0 48px var(--site-theme-glow),0 22px 60px rgba(0,0,0,.55)!important}
html[data-site-theme="halloween"] .hero-logo{animation:themePumpkinGlow 4.8s ease-in-out infinite}
html[data-site-theme="christmas"] .hero-logo{animation:themeGlassShine 6s ease-in-out infinite}
html[data-site-theme="easter"] .hero-logo{animation:themeBloom 7s ease-in-out infinite}
@media(max-width:700px){html:not([data-site-theme="default"]) body{background-size:auto 100svh!important;background-position:50% top!important;background-attachment:scroll!important}html:not([data-site-theme="default"]) .hero-logo{width:min(76vw,310px)!important;height:auto!important;max-height:none!important}.theme-pointer-glow{display:none}}
@media(prefers-reduced-motion:reduce){.theme-particles,.theme-pointer-glow{display:none!important}html:not([data-site-theme="default"]) .hero-logo,html:not([data-site-theme="default"]) .hero::after{animation:none!important}.theme-magnetic{transform:none!important;transition:none!important}}

/* V85 : corrections après contrôle téléphone et ordinateur */
html:not([data-site-theme="default"]) body::after{display:none!important;background:none!important;animation:none!important}
html:not([data-site-theme="default"]) .topbar::before,
html:not([data-site-theme="default"]) .topbar::after,
html:not([data-site-theme="default"]) .game-header::before,
html:not([data-site-theme="default"]) .game-header::after{content:none!important;display:none!important;background:none!important;animation:none!important}

.logo-stage{background:transparent!important;border:0!important;box-shadow:none!important}
.logo-halo{opacity:.3!important;inset:5%!important;box-shadow:0 0 70px var(--site-theme-glow,rgba(255,255,255,.08))!important}
.hero-logo,[data-theme-logo]{object-position:50% 50%!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;mix-blend-mode:normal!important}
.hero-logo{object-fit:contain!important;transform:none!important;animation:none!important;filter:drop-shadow(0 12px 22px rgba(0,0,0,.38))!important}
.brand img,.footer-brand img,.admin-nav-brand img{object-fit:contain!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}

html:not([data-site-theme="default"]) .hero-title-premium,
html:not([data-site-theme="default"]) .hero-title-premium *,
html:not([data-site-theme="default"]) .hero-copy h1{
  text-shadow:none!important;filter:none!important;-webkit-text-stroke:0 transparent!important;
}
html:not([data-site-theme="default"]) .hero-title-premium{
  background:none!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
}
html:not([data-site-theme="default"]) .primary,
html:not([data-site-theme="default"]) .primary-button{
  color:#fff!important;background:linear-gradient(135deg,color-mix(in srgb,var(--site-theme-accent) 28%,#111),color-mix(in srgb,var(--site-theme-accent-2) 18%,#080808))!important;
  border:1px solid color-mix(in srgb,var(--site-theme-accent) 55%,transparent)!important;box-shadow:0 10px 30px rgba(0,0,0,.3),0 0 20px var(--site-theme-glow)!important;
}

html[data-site-theme="halloween"] body::before{background:linear-gradient(90deg,rgba(4,2,6,.72),rgba(11,5,12,.42) 28%,rgba(9,4,10,.5) 72%,rgba(4,2,6,.76)),linear-gradient(180deg,rgba(4,2,6,.1),rgba(6,3,8,.76))!important}
html[data-site-theme="christmas"] body::before{background:linear-gradient(90deg,rgba(1,7,11,.64),rgba(3,12,18,.38) 30%,rgba(3,12,18,.48) 70%,rgba(1,7,11,.68)),linear-gradient(180deg,rgba(2,8,13,.08),rgba(2,8,13,.7))!important}
html[data-site-theme="easter"] body::before{background:linear-gradient(90deg,rgba(2,10,7,.7),rgba(5,18,12,.38) 30%,rgba(5,18,12,.46) 70%,rgba(2,9,6,.72)),linear-gradient(180deg,rgba(2,9,6,.08),rgba(2,9,6,.72))!important}

@media(max-width:700px){
  .logo-stage{width:min(78vw,300px)!important;height:min(78vw,300px)!important;margin-inline:auto!important}
  .hero-logo{width:100%!important;height:100%!important;object-position:center!important}
  .logo-halo{inset:8%!important;opacity:.22!important}
  html:not([data-site-theme="default"]) .hero-title-premium{text-shadow:none!important;filter:none!important}
  html:not([data-site-theme="default"]) .hero{padding-top:24px!important}
  html:not([data-site-theme="default"]) .primary{background:color-mix(in srgb,var(--site-theme-accent) 24%,#101010)!important}
}

/* V86 final overrides */
.theme-atmosphere{z-index:0!important}
body>.topbar,body>main,body>footer{position:relative;z-index:1}
.logo-halo{display:none!important}
.default-logo-video{display:none;width:100%;height:100%;object-fit:contain;background:transparent;filter:drop-shadow(0 10px 24px rgba(255,255,255,.12))}
html[data-site-theme="default"] .default-logo-video{display:block}
html[data-site-theme="default"] .logo-stage>.hero-logo{display:none}
html:not([data-site-theme="default"]) .logo-stage>.hero-logo{display:block}
@media(max-width:700px){
  html[data-site-theme="summer"] body{background-image:url("themes/summer-mobile.webp")!important}
  html[data-site-theme="halloween"] body{background-image:url("themes/halloween-mobile.webp")!important}
  html[data-site-theme="christmas"] body{background-image:url("themes/christmas-mobile.webp")!important}
  html[data-site-theme="easter"] body{background-image:url("themes/easter-mobile.webp")!important}
  html:not([data-site-theme="default"]) body{background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important}
  .hero,html:not([data-site-theme="default"]) .hero{padding-top:64px!important}
  .logo-stage{width:min(66vw,250px)!important;height:min(66vw,250px)!important;margin:0 auto 22px!important}
  html[data-site-theme="halloween"] .logo-stage,html[data-site-theme="christmas"] .logo-stage{width:min(69vw,264px)!important;height:min(69vw,264px)!important}
  .hero-logo,.default-logo-video{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important}
  .theme-atmosphere[data-theme="christmas"]{opacity:.9}
}
@media(min-width:701px){.logo-stage{transform:translateY(16px)}}
@media(prefers-reduced-motion:reduce){.default-logo-video{display:none!important}html[data-site-theme="default"] .logo-stage>.hero-logo{display:block!important}}

/* V87 final : arrière-plan mobile fixe et logos rééquilibrés */
.theme-mobile-background{display:none;pointer-events:none}
@media(max-width:700px){
  html:not([data-site-theme="default"]) body{background-image:none!important;background-color:var(--site-theme-deep)!important}
  .theme-mobile-background{display:block;position:fixed;inset:0;z-index:0;background-position:center;background-size:cover;background-repeat:no-repeat;transform:translateZ(0)}
  html[data-site-theme="summer"] .theme-mobile-background{background-image:url("themes/summer-mobile.webp")}
  html[data-site-theme="halloween"] .theme-mobile-background{background-image:url("themes/halloween-mobile.webp")}
  html[data-site-theme="christmas"] .theme-mobile-background{background-image:url("themes/christmas-mobile.webp")}
  html[data-site-theme="easter"] .theme-mobile-background{background-image:url("themes/easter-mobile.webp")}
  .theme-atmosphere{z-index:1!important}
  body>.topbar,body>main,body>footer{z-index:2}
  .hero,html:not([data-site-theme="default"]) .hero{padding-top:72px!important}
  .logo-stage{width:min(62vw,238px)!important;height:min(62vw,238px)!important;margin-bottom:14px!important}
  html[data-site-theme="halloween"] .logo-stage,html[data-site-theme="christmas"] .logo-stage{width:min(64vw,246px)!important;height:min(64vw,246px)!important}
}
@media(min-width:1100px){
  html:not([data-site-theme="default"]) .logo-stage{width:360px!important;height:360px!important;max-width:28vw!important;max-height:28vw!important}
  html:not([data-site-theme="default"]) .hero-logo{width:100%!important;height:100%!important}
}

/* V88 : Halloween, Noël et thème mobile par défaut */
html[data-site-theme="halloween"] .orbit-one,
html[data-site-theme="christmas"] .orbit-one{display:none!important}
html[data-site-theme="christmas"]{--site-theme-accent:#f1d9d9;--site-theme-accent-2:#9e2030;--site-theme-line:rgba(201,73,84,.28);--site-theme-glow:rgba(154,22,38,.24)}
html[data-site-theme="christmas"] .hero-logo{filter:drop-shadow(0 14px 30px rgba(99,4,17,.32))!important}
html[data-site-theme="halloween"] .hero-logo{filter:drop-shadow(0 14px 28px rgba(132,49,8,.28))!important}

@media(max-width:700px){
  html[data-site-theme="default"] .theme-mobile-background{display:block}
  html[data-site-theme="default"] body{background:#050505!important}
  html[data-site-theme="default"] .hero{background:transparent!important;padding-top:54px!important;min-height:calc(100svh - 138px)!important}
  html[data-site-theme="default"] .hero-aurora,html[data-site-theme="default"] .orbit{display:none!important}
  html[data-site-theme="default"] .logo-stage{width:min(58vw,220px)!important;height:min(39vw,148px)!important;margin:0 auto 22px!important}
  html[data-site-theme="default"] .default-logo-video{filter:drop-shadow(0 7px 13px rgba(255,255,255,.1))!important}
  html[data-site-theme="default"] .hero-content{gap:0!important}
  html[data-site-theme="default"] .eyebrow{margin-top:0!important;margin-bottom:12px!important;color:#bfc2c6!important}
  html[data-site-theme="default"] .hero-title-premium{margin-bottom:14px!important;text-shadow:none!important;filter:none!important}
  html[data-site-theme="default"] .hero-subtitle{margin:0 auto 22px!important;color:#c7c7c7!important}
  html[data-site-theme="default"] .hero .primary{background:linear-gradient(145deg,#282a2d,#111214)!important;color:#fff!important;border:1px solid rgba(255,255,255,.22)!important;box-shadow:0 12px 28px rgba(0,0,0,.38)!important}
  html[data-site-theme="default"] .hero .ghost{background:rgba(5,5,5,.38)!important;border-color:rgba(255,255,255,.16)!important}
}

/* V89 : thème par défaut mobile sans lignes décoratives */
@media(max-width:700px){
  html[data-site-theme="default"] .theme-mobile-background{
    display:block;
    background-color:#050506;
    background-image:radial-gradient(ellipse at 50% 12%,rgba(255,255,255,.09),transparent 32%),radial-gradient(ellipse at 50% 72%,rgba(255,255,255,.035),transparent 48%),linear-gradient(180deg,#08090a 0%,#030304 58%,#090a0b 100%);
    background-position:center;background-size:cover;background-repeat:no-repeat;
  }
  html[data-site-theme="default"] .topbar{min-height:96px!important;padding:12px 22px!important;background:rgba(5,6,7,.9)!important}
  html[data-site-theme="default"] .topbar .brand img{width:58px!important;height:58px!important}
  html[data-site-theme="default"] .menu-btn{width:52px!important;height:52px!important;font-size:2rem!important}
  html[data-site-theme="default"] .hero{padding-top:82px!important;min-height:calc(100svh - 96px)!important;padding-bottom:54px!important}
  html[data-site-theme="default"] .logo-stage{width:min(58vw,218px)!important;height:min(39vw,146px)!important;margin-bottom:18px!important}
  html[data-site-theme="default"] .hero-title-premium{margin-top:0!important;margin-bottom:20px!important}
  html[data-site-theme="default"] .hero-welcome{margin-bottom:18px!important}
  html[data-site-theme="default"] .lead{margin:0 auto 26px!important;line-height:1.45!important}
  html[data-site-theme="default"] .actions{gap:14px!important;width:100%!important}
  html[data-site-theme="default"] .actions .primary,html[data-site-theme="default"] .actions .ghost{min-height:58px!important;padding:14px 20px!important}
  html[data-site-theme="default"] .marquee{margin-top:0!important}
}

@media(min-width:1100px){
  html[data-site-theme="default"] .logo-stage{width:480px!important;height:320px!important;max-width:38vw!important;max-height:32vh!important}
  html:not([data-site-theme="default"]) .logo-stage{width:430px!important;height:430px!important;max-width:34vw!important;max-height:43vh!important}
  html[data-site-theme="halloween"] .logo-stage,html[data-site-theme="christmas"] .logo-stage{width:450px!important;height:450px!important;max-width:35vw!important;max-height:45vh!important}
}

/* V90 : en-tête mobile compact et étincelles du thème par défaut */
.theme-atmosphere[data-theme="default"]{display:block;opacity:.72}
html[data-site-theme="default"] .theme-pointer-glow{opacity:.2}

@media(max-width:700px){
  html[data-site-theme="default"] .topbar{
    min-height:74px!important;
    height:74px!important;
    padding:7px 20px!important;
  }
  html[data-site-theme="default"] .topbar .brand img{width:54px!important;height:54px!important}
  html[data-site-theme="default"] .menu-btn{width:48px!important;height:48px!important;font-size:1.85rem!important}
  html[data-site-theme="default"] .hero{
    padding-top:28px!important;
    min-height:calc(100svh - 74px)!important;
  }
  html[data-site-theme="default"] .logo-stage{
    width:min(70vw,264px)!important;
    height:min(47vw,177px)!important;
    margin-bottom:20px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .theme-atmosphere[data-theme="default"]{display:none!important}
}

/* V91 : barre mobile fine et logos séparés */
@media(max-width:700px){
  html[data-site-theme="default"] .topbar{
    min-height:58px!important;
    height:58px!important;
    padding:7px 18px!important;
    align-items:center!important;
  }
  html[data-site-theme="default"] .topbar .brand{
    height:44px!important;
    display:flex!important;
    align-items:center!important;
  }
  html[data-site-theme="default"] .topbar .brand img{width:44px!important;height:44px!important}
  html[data-site-theme="default"] .menu-btn{width:42px!important;height:42px!important;font-size:1.7rem!important}
  html[data-site-theme="default"] .hero{
    padding-top:12px!important;
    min-height:calc(100svh - 58px)!important;
  }
}

/* V92 : le contenu commence sous la barre mobile fixe */
@media(max-width:700px){
  html[data-site-theme="default"] #accueil{scroll-margin-top:58px!important}
  html[data-site-theme="default"] .hero{
    padding-top:70px!important;
    min-height:calc(100svh - 58px)!important;
  }
}

/* V93 : calendrier automatique des saisons, fêtes et commémorations */
html[data-theme-mode="automatic"][data-calendar-event="valentine"]{
  --site-theme-accent:#ff89b7;--site-theme-accent-2:#d9a6ff;
  --site-theme-line:rgba(255,137,183,.3);--site-theme-glow:rgba(255,80,145,.22);
}
html[data-theme-mode="automatic"][data-calendar-event="carnival"]{
  --site-theme-accent:#ffd15c;--site-theme-accent-2:#a968ff;
  --site-theme-line:rgba(255,209,92,.3);--site-theme-glow:rgba(169,104,255,.2);
}
html[data-theme-mode="automatic"][data-calendar-event="new-year"]{
  --site-theme-accent:#f5d782;--site-theme-accent-2:#e8f5ff;
  --site-theme-line:rgba(245,215,130,.34);--site-theme-glow:rgba(245,215,130,.25);
}
html[data-theme-mode="automatic"][data-calendar-event="saint-nicholas"]{
  --site-theme-accent:#d93445;--site-theme-accent-2:#f4cf72;
  --site-theme-line:rgba(217,52,69,.32);--site-theme-glow:rgba(217,52,69,.22);
}
html[data-theme-mode="automatic"][data-calendar-event="music-day"]{
  --site-theme-accent:#64e9ff;--site-theme-accent-2:#ffce55;
  --site-theme-line:rgba(100,233,255,.3);--site-theme-glow:rgba(255,206,85,.2);
}
html[data-theme-mode="automatic"][data-calendar-event="belgium-day"]{
  --site-theme-accent:#ffd90a;--site-theme-accent-2:#e62b36;
  --site-theme-line:rgba(255,217,10,.34);--site-theme-glow:rgba(230,43,54,.2);
}
html[data-theme-mode="automatic"][data-calendar-event="france-day"]{
  --site-theme-accent:#f4f7ff;--site-theme-accent-2:#e33b4f;
  --site-theme-line:rgba(56,104,210,.34);--site-theme-glow:rgba(227,59,79,.2);
}
html[data-theme-mode="automatic"][data-calendar-event="belgium-day"] body::before{
  background:linear-gradient(90deg,rgba(3,3,3,.72),rgba(255,211,0,.11) 48%,rgba(220,32,42,.16)),linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.7))!important;
}
html[data-theme-mode="automatic"][data-calendar-event="france-day"] body::before{
  background:linear-gradient(90deg,rgba(19,56,132,.24),rgba(255,255,255,.04) 48%,rgba(198,34,52,.2)),linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.72))!important;
}
html[data-theme-mode="automatic"][data-calendar-tone="sober"]{
  --site-theme-accent:#dadde1;--site-theme-accent-2:#8f969d;
  --site-theme-deep:#070809;--site-theme-line:rgba(255,255,255,.14);--site-theme-glow:rgba(255,255,255,.08);
}
html[data-theme-mode="automatic"][data-calendar-tone="sober"] body{
  background:#070809!important;
}
html[data-theme-mode="automatic"][data-calendar-tone="sober"] body::before{
  background:radial-gradient(ellipse at 50% 18%,rgba(255,255,255,.06),transparent 34%),linear-gradient(180deg,rgba(5,6,7,.2),rgba(2,3,4,.88))!important;
}
html[data-theme-mode="automatic"][data-calendar-tone="sober"] .theme-atmosphere{
  opacity:.22!important;
}

@media(prefers-reduced-motion:reduce){
  html[data-theme-mode="automatic"] .theme-atmosphere{display:none!important}
}
