.rscg-private{max-width:900px;margin:40px auto;padding:30px;border-radius:18px;background:#1c1118;color:#fff;text-align:center;font-weight:800}.rscg-wrap{--pink:#A81477;--orange:#f28a1a;--gold:#ffc66d;position:relative;isolation:isolate;max-width:1180px;margin:36px auto;padding:42px 28px 30px;border-radius:30px;background:radial-gradient(circle at 72% 8%,rgba(255,176,68,.14),transparent 18%),radial-gradient(circle at 15% 0,#4a1d37 0,transparent 30%),linear-gradient(160deg,#0d0910,#26111d 58%,#120b10);color:#fff;box-shadow:0 28px 80px rgba(0,0,0,.38);overflow:hidden;border:1px solid rgba(255,158,57,.2)}.rscg-wrap:before{content:"";position:absolute;inset:0;z-index:-3;background-image:radial-gradient(circle,rgba(255,255,255,.7) 0 1px,transparent 1.5px);background-size:73px 73px;opacity:.18}.rscg-moon{position:absolute;right:8%;top:32px;width:150px;height:150px;border-radius:50%;z-index:-2;background:radial-gradient(circle at 38% 34%,#fff4c9,#f6c66f 56%,#cf7928 72%);box-shadow:0 0 55px rgba(255,191,92,.35);opacity:.92}.rscg-moon:after{content:"";position:absolute;width:24px;height:24px;border-radius:50%;background:rgba(124,74,52,.18);left:30px;top:35px;box-shadow:55px 20px 0 5px rgba(124,74,52,.13),30px 72px 0 1px rgba(124,74,52,.14)}.rscg-bats{position:absolute;top:82px;left:7%;font-size:1.55rem;transform:rotate(-7deg);opacity:.82;animation:rscgFloat 5s ease-in-out infinite}.rscg-tree{position:absolute;bottom:-65px;font-size:29rem;line-height:.65;color:#09070a;z-index:-1;opacity:.95;filter:drop-shadow(0 0 12px rgba(0,0,0,.5));transform:scaleX(.35)}.rscg-tree-left{left:-155px;transform-origin:left bottom;transform:scaleX(.35) rotate(-5deg)}.rscg-tree-right{right:-165px;transform-origin:right bottom;transform:scaleX(.35) rotate(5deg)}.rscg-head{text-align:center;max-width:850px;margin:0 auto 34px;position:relative;z-index:2}.rscg-kicker{display:inline-block;font-weight:900;letter-spacing:.13em;font-size:.74rem;color:#ffd09b;background:rgba(0,0,0,.28);padding:7px 12px;border-radius:999px;border:1px solid rgba(255,192,112,.2)}.rscg-head h2{font-size:clamp(2rem,5vw,4rem);line-height:1;margin:.38em 0 .25em;text-shadow:0 4px 18px #000}.rscg-head p{font-size:1.06rem;opacity:.92;text-shadow:0 2px 8px #000}.rscg-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:17px;perspective:1400px;position:relative;z-index:3}.rscg-door{min-height:225px;perspective:900px;filter:drop-shadow(0 14px 15px rgba(0,0,0,.28))}.rscg-door-inner{position:relative;width:100%;height:100%;min-height:225px;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.2,.8,.2,1)}.rscg-door.is-open .rscg-door-inner{transform:rotateY(-180deg)}.rscg-front,.rscg-back{position:absolute;inset:0;border-radius:13px;backface-visibility:hidden;-webkit-backface-visibility:hidden}.rscg-front{border:5px solid #3b2018;background:linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(160deg,#71324d,#3e182d 70%);background-size:19px 100%,auto;color:#fff;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:inset 0 0 0 3px #87503b,inset 0 0 0 7px #29120f,0 10px 25px rgba(0,0,0,.28);transition:.25s}.rscg-front:before{content:"";position:absolute;inset:15px;border:2px solid rgba(246,177,91,.24);border-radius:6px;box-shadow:inset 0 0 25px rgba(0,0,0,.25)}.rscg-front:after{content:"";position:absolute;right:19px;top:50%;width:9px;height:9px;border-radius:50%;background:#d8a44f;box-shadow:0 0 0 3px #5b351e,0 0 12px rgba(255,185,80,.3)}.rscg-num{font-size:3.55rem;font-weight:950;line-height:1;text-shadow:0 3px 10px #000}.rscg-date{font-weight:900;text-transform:uppercase;margin-top:8px;color:#ffd8a4}.rscg-lock{font-size:1.35rem;margin-top:14px}.rscg-door.is-unlocked .rscg-front{box-shadow:inset 0 0 0 3px #9d5b3d,inset 0 0 0 7px #29120f,0 10px 25px rgba(0,0,0,.28),0 0 25px rgba(242,138,26,.22)}.rscg-door.is-unlocked .rscg-front:hover{transform:translateY(-4px) rotate(.5deg);filter:brightness(1.12);box-shadow:inset 0 0 0 3px #b66b45,inset 0 0 0 7px #29120f,0 18px 34px rgba(0,0,0,.38),0 0 35px rgba(242,138,26,.38)}.rscg-door.is-locked .rscg-front{filter:saturate(.52) brightness(.78);cursor:not-allowed}.rscg-back{transform:rotateY(180deg);background:radial-gradient(circle at 50% 15%,#fff7db,#ffd59b 58%,#efaa5d);color:#24131d;padding:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:3px solid #6b351f;box-shadow:inset 0 0 35px rgba(255,139,34,.35)}.rscg-flag{font-size:2.7rem}.rscg-back small{font-weight:950;text-transform:uppercase;letter-spacing:.08em;color:#7e294f;margin:5px 0}.rscg-back strong{font-size:1.05rem;line-height:1.25}.rscg-back a{display:inline-block;margin-top:14px;background:var(--pink);color:#fff!important;text-decoration:none;padding:10px 14px;border-radius:999px;font-weight:900;box-shadow:0 6px 15px rgba(0,0,0,.16)}.rscg-back em{font-size:.82rem;margin-top:12px}.rscg-ground{position:relative;z-index:4;margin:8px -5px -3px;display:flex;justify-content:space-around;align-items:end;font-size:2.3rem;filter:drop-shadow(0 5px 6px #000);letter-spacing:.15em}.rscg-ground span:nth-child(2),.rscg-ground span:nth-child(5){font-size:3.6rem}.rscg-note{text-align:center;margin:16px 0 0;opacity:.82;position:relative;z-index:4}.rscg-wrap:after{content:"🍂  ✦  🎃  ✦  🍁  ✦  🕯️";display:block;text-align:center;color:#ffb25d;letter-spacing:.5em;margin-top:16px;opacity:.85;position:relative;z-index:4}@keyframes rscgFloat{50%{transform:translateY(-8px) rotate(-3deg)}}@media(max-width:900px){.rscg-grid{grid-template-columns:repeat(3,1fr)}.rscg-tree{font-size:23rem}.rscg-moon{width:115px;height:115px;right:3%}}@media(max-width:600px){.rscg-wrap{padding:30px 12px 20px;border-radius:18px}.rscg-grid{grid-template-columns:repeat(2,1fr);gap:11px}.rscg-door,.rscg-door-inner{min-height:185px}.rscg-num{font-size:2.7rem}.rscg-head h2{font-size:2.15rem}.rscg-bats{top:100px;left:2%;font-size:1rem}.rscg-tree{display:none}.rscg-moon{width:82px;height:82px;top:18px;right:2%;opacity:.7}.rscg-ground{font-size:1.55rem}.rscg-ground span:nth-child(2),.rscg-ground span:nth-child(5){font-size:2.4rem}}@media(prefers-reduced-motion:reduce){.rscg-door-inner,.rscg-bats{transition:none;animation:none}}


/* v1.1.2 — esprit calendrier de l'Avent : portes volontairement mélangées */
.rscg-door:nth-child(1){order:8}.rscg-door:nth-child(2){order:1}.rscg-door:nth-child(3){order:13}.rscg-door:nth-child(4){order:5}.rscg-door:nth-child(5){order:10}
.rscg-door:nth-child(6){order:3}.rscg-door:nth-child(7){order:15}.rscg-door:nth-child(8){order:6}.rscg-door:nth-child(9){order:11}.rscg-door:nth-child(10){order:2}
.rscg-door:nth-child(11){order:14}.rscg-door:nth-child(12){order:7}.rscg-door:nth-child(13){order:4}.rscg-door:nth-child(14){order:12}.rscg-door:nth-child(15){order:9}

/* Le contenu révélé reste toujours contenu dans sa case */
.rscg-back{overflow:hidden;box-sizing:border-box;padding:16px 12px 14px}
.rscg-back strong{font-size:.98rem;line-height:1.18;max-width:100%;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.rscg-back a{box-sizing:border-box;max-width:calc(100% - 8px);width:auto;padding:9px 11px;margin-top:10px;font-size:.82rem;line-height:1.15;white-space:normal;text-align:center;overflow-wrap:anywhere;position:relative;z-index:5}
.rscg-flag{font-size:2.25rem;line-height:1}.rscg-back small{font-size:.69rem;line-height:1.1}

/* Petites étoiles scintillantes dans les portes ouvertes */
.rscg-back:before,.rscg-back:after{position:absolute;inset:0;pointer-events:none;color:#fff7b0;text-shadow:0 0 6px #fff,0 0 12px #ffc35b;z-index:1;opacity:.85}
.rscg-back:before{content:"✦   ·   ✧        ✦      ·   ✧";font-size:.72rem;letter-spacing:.42em;padding:13px 8px;animation:rscgTwinkle 1.7s ease-in-out infinite alternate}
.rscg-back:after{content:"·      ✦    ·   ✧       ✦";font-size:.55rem;letter-spacing:.7em;padding:55px 6px 8px;animation:rscgTwinkle 2.3s .45s ease-in-out infinite alternate-reverse}
.rscg-back>*{position:relative;z-index:3}
@keyframes rscgTwinkle{0%{opacity:.2;filter:brightness(.7);transform:scale(.98)}55%{opacity:1;filter:brightness(1.45)}100%{opacity:.45;filter:brightness(1);transform:scale(1.02)}}

@media(max-width:600px){.rscg-back{padding:12px 8px}.rscg-back strong{font-size:.88rem;-webkit-line-clamp:3}.rscg-back a{font-size:.74rem;padding:8px 8px;margin-top:8px}.rscg-flag{font-size:1.9rem}.rscg-back small{font-size:.62rem}}
@media(prefers-reduced-motion:reduce){.rscg-back:before,.rscg-back:after{animation:none}}

.rscg-head .rscg-subtitle{margin:6px auto 10px;font-size:clamp(18px,2.2vw,28px);font-weight:800;letter-spacing:.02em;color:#ffd38a;text-transform:none}.rscg-head h2{margin-bottom:4px}

.rscg-tagline{margin:12px auto 14px;font-size:clamp(15px,1.55vw,21px);font-weight:900;color:#ffd38a;white-space:nowrap;line-height:1.25;text-align:center;text-shadow:0 2px 8px #000}
@media(max-width:760px){.rscg-tagline{white-space:normal;font-size:16px;max-width:94%}}

/* 1.2.1 — décors configurables */
.rscg-wrap{--pink:var(--rscg-primary,#A81477);--orange:var(--rscg-secondary,#f28a1a);background-image:var(--rscg-bg,none),radial-gradient(circle at 72% 8%,rgba(255,176,68,.14),transparent 18%),linear-gradient(160deg,#0d0910,#26111d 58%,#120b10);background-size:cover,auto,auto;background-position:center,center,center}
.rscg-back a{background:var(--rscg-primary,#A81477)}
.rscg-theme-christmas{background-image:var(--rscg-bg,none),radial-gradient(circle at 75% 10%,rgba(255,255,255,.2),transparent 18%),linear-gradient(155deg,#071b13,#123b2b 55%,#4b0e18)}
.rscg-theme-christmas:after{content:"❄️  ✦  🎄  ✦  ⭐  ✦  🎁"}
.rscg-theme-valentine{background-image:var(--rscg-bg,none),radial-gradient(circle at 75% 10%,rgba(255,210,220,.22),transparent 20%),linear-gradient(155deg,#3a0b24,#781b48 55%,#220712)}
.rscg-theme-valentine:after{content:"💗  ✦  🌹  ✦  💕  ✦  🍓"}
.rscg-theme-wallonia{background-image:var(--rscg-bg,none),radial-gradient(circle at 75% 10%,rgba(255,218,62,.18),transparent 20%),linear-gradient(155deg,#15110a,#3d250e 58%,#0d0a07)}
.rscg-theme-wallonia:after{content:"🟡  ✦  🐓  ✦  🔴  ✦  🍽️"}
.rscg-theme-world{background-image:var(--rscg-bg,none),radial-gradient(circle at 75% 10%,rgba(120,210,255,.16),transparent 20%),linear-gradient(155deg,#071c26,#123847 55%,#160b24)}
.rscg-theme-world:after{content:"🌍  ✦  🍴  ✦  🌎  ✦  🥘"}
.rscg-theme-custom{background-image:var(--rscg-bg,none),linear-gradient(155deg,#0d0910,#26111d 58%,#120b10)}
.rscg-theme-halloween:after{content:"🍂  ✦  🎃  ✦  🍁  ✦  🕯️"}
.rscg-portal{max-width:1220px;margin:0 auto}.rscg-portal-intro{text-align:center;margin:24px auto 8px;max-width:760px}.rscg-portal-intro h2{font-size:clamp(2rem,4vw,3.5rem);margin-bottom:8px}.rscg-archives{margin:46px auto}.rscg-archives h3{text-align:center}.rscg-archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.rscg-archive-grid article{border:1px solid rgba(128,128,128,.25);border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:7px}.rscg-archive-grid article span{font-size:2rem}.rscg-archive-grid article strong{font-size:1.05rem}.rscg-archive-grid article small{opacity:.75}.rscg-archive-grid code{font-size:.72rem;overflow-wrap:anywhere;opacity:.65}@media(max-width:760px){.rscg-archive-grid{grid-template-columns:1fr}}

/* 1.2.3 — archives publiques */
.rscg-archive-grid article{display:flex;flex-direction:column;gap:8px}
.rscg-archive-link{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:8px 14px;border-radius:999px;background:var(--rscg-primary,#A81477);color:#fff!important;text-decoration:none;font-weight:700}
.rscg-back-archives{margin:0 0 18px}.rscg-back-archives a{font-weight:700;text-decoration:none}

/* 1.2.4 — image personnalisée par porte (affiche cinéma, restaurant, etc.) */
.rscg-door{position:relative;z-index:1;transition:z-index 0s .25s}
.rscg-door:hover,.rscg-door.is-previewing{z-index:50;transition-delay:0s}
.rscg-front{overflow:hidden}
.rscg-door-poster{position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;object-position:center;z-index:0;transition:transform .32s ease,filter .32s ease;filter:brightness(.72)}
.rscg-front .rscg-num,.rscg-front .rscg-date,.rscg-front .rscg-lock{position:relative;z-index:3;background:rgba(0,0,0,.58);padding:4px 9px;border-radius:8px}
.rscg-front .rscg-num{font-size:2.5rem}
.rscg-door:has(.rscg-door-poster) .rscg-front:before{background:linear-gradient(to bottom,rgba(0,0,0,.08),rgba(0,0,0,.18));z-index:2}
@media (hover:hover) and (pointer:fine){.rscg-door:has(.rscg-door-poster):hover .rscg-front{transform:scale(1.5);box-shadow:0 25px 55px rgba(0,0,0,.65);z-index:60}.rscg-door:has(.rscg-door-poster):hover .rscg-door-poster{filter:brightness(1);transform:scale(1.02)}}
@media(max-width:600px){.rscg-door.is-previewing:has(.rscg-door-poster) .rscg-front{position:fixed;inset:8vh 8vw;z-index:99999;width:84vw;height:84vh;max-height:720px;margin:auto;transform:none!important;box-shadow:0 20px 70px rgba(0,0,0,.8)}.rscg-door.is-previewing .rscg-door-poster{filter:brightness(1);object-fit:contain;background:#080808}.rscg-door.is-previewing .rscg-num,.rscg-door.is-previewing .rscg-date,.rscg-door.is-previewing .rscg-lock{position:absolute}.rscg-door.is-previewing .rscg-num{top:12px;left:12px}.rscg-door.is-previewing .rscg-date{bottom:12px;left:12px}.rscg-door.is-previewing .rscg-lock{bottom:12px;right:12px}}
.rscg-admin-preview{margin:0 0 18px;padding:10px 14px;border:1px dashed #A81477;border-radius:8px;background:#fff;color:#222;font-size:14px}

/* 1.2.36 — mobile : la face ouverte doit recevoir les interactions tactiles. */
.rscg-front{pointer-events:auto}
.rscg-back{pointer-events:none;z-index:2}
.rscg-door.is-open .rscg-front{pointer-events:none}
.rscg-door.is-open .rscg-back{pointer-events:auto}
.rscg-door.is-open .rscg-back a{position:relative;z-index:20;pointer-events:auto;touch-action:manipulation}
@media(max-width:600px){
 .rscg-door.is-open{z-index:20}
 .rscg-door.is-open .rscg-door-inner{position:relative}
 .rscg-door.is-open .rscg-back{z-index:10}
}
