:root{--epic-a:#7a3fff;--epic-b:#ff4f9f;--epic-c:#39d6c5;--epic-d:#ffd85a}
body.epicModalOpen{overflow:hidden}

/* V23 — quattro soglie, invece di una pagina che presenta tutto insieme. */
.epicGateway{position:relative;isolation:isolate;overflow:hidden;margin:18px 0 22px;padding:clamp(24px,4vw,48px);border-radius:36px;background:linear-gradient(145deg,#160e22,#2d1b43 45%,#102f3d);color:#fff;box-shadow:0 26px 70px #2817353f}
.epicGateway:before,.epicGateway:after{content:"";position:absolute;z-index:-1;border-radius:50%;filter:blur(2px)}
.epicGateway:before{right:-9%;top:-65%;width:480px;height:480px;background:radial-gradient(circle,var(--epic-b),transparent 66%);opacity:.24}
.epicGateway:after{left:30%;bottom:-78%;width:520px;height:520px;background:radial-gradient(circle,var(--epic-c),transparent 68%);opacity:.19}
.epicGatewayIntro{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.72fr);gap:26px;align-items:end;margin-bottom:26px}.epicGatewayIntro .sectionEyebrow{grid-column:1/-1;margin-bottom:-12px;color:#f3a9d1}.epicGatewayIntro h2{margin:0;font:900 clamp(34px,5.6vw,67px)/.92 Georgia,serif;letter-spacing:-.045em}.epicGatewayIntro>p:last-child{margin:0;color:#e3d8e9;font-size:15px;line-height:1.6}
.epicGatewayGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.epicGatewayGrid button{position:relative;min-height:166px;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;border:1px solid #ffffff2e;border-radius:24px;padding:17px;background:linear-gradient(145deg,#ffffff18,#ffffff08);color:#fff;text-align:left;backdrop-filter:blur(10px);transition:transform .25s,border-color .25s,background .25s}.epicGatewayGrid button:hover{transform:translateY(-4px);border-color:#ffffff85;background:#ffffff20}.epicGatewayGrid span{position:absolute;left:17px;top:15px;font:900 28px Georgia,serif;color:#f2b7d9}.epicGatewayGrid b{font:900 22px/1 Georgia,serif}.epicGatewayGrid small{margin-top:8px;color:#ded1e4;font-size:11px;line-height:1.4}.epicAllAccess{display:block;margin:18px auto 0;border:1px solid #ffffff3c;border-radius:999px;padding:10px 16px;background:transparent;color:#e8ddea;font-size:11px;font-weight:900;letter-spacing:.06em}
/* Il quadro risponde durante il gioco. */
.epicAwakening{position:relative;z-index:37;display:grid;grid-template-columns:auto minmax(240px,1fr) auto;align-items:center;gap:14px;min-height:62px;padding:8px max(14px,env(safe-area-inset-right)) 8px max(14px,env(safe-area-inset-left));border-bottom:1px solid #ffffff24;background:linear-gradient(110deg,#160f21f2,#2a1a3df0 55%,#12303bf0);color:#fff;box-shadow:inset 0 1px #ffffff12}
.epicAwakeningHead{display:flex;align-items:center;gap:10px}.epicAwakeningHead>span{font-size:9px;font-weight:950;letter-spacing:.15em;white-space:nowrap}.epicAwakeningHead button{min-height:38px;border:1px solid #ffffff31;border-radius:999px;padding:7px 10px;background:#ffffff0d;color:#fff;font-size:10px;font-weight:900}.epicAwakeningHead button[aria-pressed="true"]{border-color:var(--epic-c);background:linear-gradient(90deg,#ffffff17,#37d4c526);box-shadow:0 0 20px color-mix(in srgb,var(--epic-c) 42%,transparent)}
.epicThresholds{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.epicThresholds i{position:relative;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:5px;min-width:0;border-radius:12px;padding:7px 8px;background:#ffffff0b;color:#9f94a8;font-style:normal;transition:.35s}.epicThresholds i:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(100deg,var(--epic-a),var(--epic-b));opacity:0;transition:.35s}.epicThresholds b,.epicThresholds small{position:relative}.epicThresholds b{font-size:12px}.epicThresholds small{overflow:hidden;font-size:9px;white-space:nowrap;text-overflow:ellipsis}.epicThresholds i.active{color:#fff;box-shadow:0 0 18px color-mix(in srgb,var(--epic-a) 32%,transparent)}.epicThresholds i.active:before{opacity:.66}.epicThresholds i.justAwoke{animation:epicWake 1.1s ease}.epicAwakening>p{margin:0;color:#d9cfdf;font-size:10px;line-height:1.35;text-align:right}
@keyframes epicWake{0%{transform:scale(.88)}35%{transform:scale(1.12);filter:brightness(1.6)}100%{transform:scale(1)}}
.game .boardShell{transition:box-shadow .65s,filter .65s;background:linear-gradient(135deg,var(--epic-a),var(--epic-b),var(--epic-d),var(--epic-c),var(--epic-a));box-shadow:0 18px 52px rgba(70,43,91,.18)}
body[data-epic-threshold="50"] .boardShell{filter:saturate(1.04)}body[data-epic-threshold="75"] .boardShell{box-shadow:0 18px 52px #2a153a38,0 0 58px color-mix(in srgb,var(--epic-c) 48%,transparent)}body[data-epic-threshold="100"] .boardShell{animation:epicCompleteGlow 2.8s ease-in-out infinite alternate}
@keyframes epicCompleteGlow{from{box-shadow:0 18px 52px #2a153a38,0 0 24px var(--epic-a)}to{box-shadow:0 18px 52px #2a153a38,0 0 64px var(--epic-c)}}

/* Portale finale. */
.epicCompletionPortal{position:relative;overflow:hidden;margin:22px 0;padding:24px;border:1px solid #ffffff52;border-radius:27px;background:linear-gradient(135deg,#20122f,#4c2664 48%,#174b54);color:#fff;text-align:left;box-shadow:0 18px 48px #24132d31}.epicCompletionPortal:after{content:"";position:absolute;right:-45px;top:-75px;width:210px;height:210px;border:34px solid #ffffff11;border-radius:50%}.epicCompletionPortal .sectionEyebrow{color:#f1b6d7}.epicCompletionPortal h3{position:relative;z-index:1;margin:5px 0 8px;font:900 29px/1 Georgia,serif}.epicCompletionPortal>p:not(.sectionEyebrow){position:relative;z-index:1;max-width:650px;color:#e2d8e6;line-height:1.55}.epicCompletionPortal>div{position:relative;z-index:1;display:flex;gap:8px;flex-wrap:wrap}.epicCompletionPortal button{min-height:48px;border:1px solid #ffffff30;border-radius:15px;padding:10px 15px;background:#ffffff12;color:#fff;font-weight:900}.epicCompletionPortal button.primary{border:0;background:#fff;color:#392546}

/* Dialoghi epici condivisi. */
.epicDialog{position:fixed;z-index:460;inset:0;display:grid;place-items:center;padding:max(14px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left))}.epicDialogBackdrop{position:absolute;inset:0;background:#0c0714de;backdrop-filter:blur(18px)}.epicDialogCard{position:relative;width:min(1120px,100%);max-height:94dvh;overflow:auto;border:1px solid #ffffff2b;border-radius:32px;padding:clamp(18px,3vw,34px);background:linear-gradient(150deg,#1b1127,#2a1938 58%,#102f39);color:#fff;box-shadow:0 35px 110px #0009}.epicDialogCard>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}.epicDialogCard>header h2{margin:2px 0 0;font:900 clamp(31px,5vw,57px)/.95 Georgia,serif;letter-spacing:-.035em}.epicDialogCard>header button,.epicImmersionClose{flex:0 0 auto;width:48px;height:48px;border:1px solid #ffffff37;border-radius:16px;background:#ffffff0c;color:#fff;font-size:25px}.epicDialogCard>p{max-width:780px;color:#d7cddd;line-height:1.6}.epicDialog .sectionEyebrow{color:#f2a9d0}

/* Grandi traversate. */
.epicJourneyGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.epicJourneyGrid>button{position:relative;min-height:178px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;border:1px solid #ffffff24;border-radius:22px;padding:16px;background:linear-gradient(145deg,#ffffff12,#ffffff05);color:#fff;text-align:left}.epicJourneyGrid>button:hover,.epicJourneyGrid>button[aria-pressed="true"]{border-color:var(--epic-c);background:linear-gradient(145deg,#ffffff1e,#35d1bf1b);transform:translateY(-2px)}.epicJourneyGrid span{position:absolute;top:14px;left:15px;font:900 30px Georgia,serif;color:#f3b5d8}.epicJourneyGrid small{color:#bfaec8;font-size:9px;font-weight:950;letter-spacing:.12em}.epicJourneyGrid b{margin-top:8px;font:900 20px/1.08 Georgia,serif}.epicJourneyGrid em{margin-top:8px;color:#d7cddd;font-size:10px;font-style:normal}.epicJourneyDetail{margin-top:16px;padding:22px;border:1px solid #ffffff22;border-radius:25px;background:#ffffff0b}.epicJourneyDetail h3{margin:5px 0 8px;font:900 31px/1 Georgia,serif}.epicJourneyDetail>p:not(.sectionEyebrow){color:#ded2e2;line-height:1.55}.epicJourneyDetail>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:16px 0}.epicJourneyStep{min-width:0;overflow:hidden;border:1px solid #ffffff20;border-radius:16px;padding:0;background:#ffffff0a;color:#fff;text-align:left}.epicJourneyStep img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.epicJourneyStep span{display:block;padding:10px}.epicJourneyStep small,.epicJourneyStep b,.epicJourneyStep em{display:block}.epicJourneyStep small{color:#bbaac5;font-size:8px;font-weight:950;letter-spacing:.09em}.epicJourneyStep b{overflow:hidden;margin-top:5px;font:900 13px/1.12 Georgia,serif;text-overflow:ellipsis}.epicJourneyStep em{margin-top:5px;color:#cbbfd0;font-size:9px;font-style:normal;line-height:1.3}.epicJourneyStep>i{display:none}.epicJourneyDetail>.primary{min-height:49px;border:0;border-radius:15px;padding:11px 17px;background:#fff;color:#3d2948;font-weight:950}

/* Museo vivente e costellazione. */
.epicMuseumStats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:15px}.epicMuseumStats span{padding:14px;border:1px solid #ffffff1d;border-radius:18px;background:#ffffff0a}.epicMuseumStats b,.epicMuseumStats small{display:block}.epicMuseumStats b{font:900 29px Georgia,serif}.epicMuseumStats small{margin-top:4px;color:#cfc1d5;font-size:10px}.epicMuseumStage{min-height:330px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:center;gap:11px;overflow:hidden;border-radius:27px;padding:28px 25px 40px;background:linear-gradient(180deg,#1d2234,#302940 70%,#110c18);perspective:900px;box-shadow:inset 0 -60px 80px #07050a99}.epicMuseumWork{position:relative;overflow:visible;border:0;padding:0;background:transparent;color:#fff;transform:rotateY(var(--museum-angle,0deg));transform-style:preserve-3d}.epicMuseumWork img{display:block;width:100%;aspect-ratio:3/4;object-fit:contain;border:8px solid #ece2d1;background:#19151b;box-shadow:0 18px 28px #0009,0 0 0 1px #fff8}.epicMuseumWork span{display:block;margin-top:9px}.epicMuseumWork b,.epicMuseumWork small{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.epicMuseumWork b{font:900 12px Georgia,serif}.epicMuseumWork small{margin-top:3px;color:#cbbfd0;font-size:8px}.epicMuseumEmpty{grid-column:1/-1;align-self:center;text-align:center;color:#d9cede}.epicMuseumEmpty b{font:900 27px Georgia,serif}.epicMuseumEmpty p{color:#baaec1}.epicConstellation{margin-top:16px;border:1px solid #ffffff1e;border-radius:27px;padding:22px;background:#0d0916}.epicConstellation h3{margin:4px 0 12px;font:900 28px Georgia,serif}.epicConstellation canvas{display:block;width:100%;height:420px;border-radius:20px;background:radial-gradient(circle at 50% 48%,#24113c,#090610 72%)}#epicConstellationList{display:flex;gap:6px;overflow-x:auto;padding-top:10px}#epicConstellationList button{flex:0 0 auto;min-height:40px;border:1px solid #ffffff22;border-radius:999px;padding:7px 11px;background:#ffffff0b;color:#e9e0ed;font-size:9px;font-weight:900}

/* Immersione, segreto e rivelazione totale. */
.epicImmersion{padding:0;background:#08050d}.epicImmersionBackdrop{position:absolute;inset:0;background:radial-gradient(circle at 70% 20%,color-mix(in srgb,var(--epic-b) 38%,transparent),transparent 42%),#08050d}.epicImmersionCard{position:relative;width:100%;height:100dvh;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(330px,.7fr);overflow:hidden;color:#fff}.epicImmersionClose{position:absolute;z-index:5;right:max(18px,env(safe-area-inset-right));top:max(18px,env(safe-area-inset-top))}.epicImmersionVisual{position:relative;overflow:hidden;background:#08050d}.epicImmersionVisual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 65%,#08050d 100%),linear-gradient(0deg,#08050d33,transparent 28%);pointer-events:none}.epicImmersionVisual img{width:100%;height:100%;object-fit:contain;transition:filter .18s,transform .3s;animation:epicBreathe 12s ease-in-out infinite alternate}.epicImmersionVeil{position:absolute;inset:0;background:repeating-linear-gradient(118deg,#fff0 0 11px,#fff4 12px 13px),radial-gradient(circle at 45% 46%,transparent,#08050dcc);mix-blend-mode:screen;pointer-events:none}.epicHotspot{position:absolute;left:44%;top:43%;width:22px;height:22px;border:1px solid #fff;border-radius:50%;box-shadow:0 0 0 8px #ffffff18,0 0 28px #fff;animation:epicHotspot 2.2s ease-in-out infinite}.epicImmersionWords{min-width:0;overflow:auto;padding:clamp(70px,8vh,110px) clamp(24px,4vw,58px) 36px 22px}.epicImmersionWords h2{margin:5px 0 7px;font:900 clamp(38px,5vw,68px)/.92 Georgia,serif;letter-spacing:-.04em}.epicImmersionWords>p{color:#cbbfd1}.epicImmersionWords blockquote{margin:28px 0;padding:0 0 0 17px;border-left:2px solid var(--epic-c);font:italic 21px/1.45 Georgia,serif;color:#f3edf5}.epicSecret{margin:20px 0;padding:17px;border:1px solid #ffffff25;border-radius:18px;background:#ffffff09}.epicSecret b{color:#f0acd2;font-size:10px;letter-spacing:.13em;text-transform:uppercase}.epicSecret p{margin:8px 0 0;color:#ded4e2;font-size:13px;line-height:1.55}.epicImmersionWords label{display:flex;justify-content:space-between;gap:12px;margin:22px 0 9px;color:#d8cedd;font-size:11px;font-weight:900}.epicImmersionWords output{color:#fff}.epicImmersionWords input[type="range"]{width:100%;accent-color:var(--epic-c)}.epicImmersionActions{display:flex;gap:7px;flex-wrap:wrap;margin-top:18px}.epicImmersionActions button{min-height:47px;border:1px solid #ffffff2d;border-radius:14px;padding:10px 13px;background:#ffffff0e;color:#fff;font-weight:900}.epicImmersionActions button:first-child{background:#fff;color:#32223e}.epicExportStatus{min-height:20px;color:#bfb3c6!important;font-size:10px;line-height:1.4}.epicImmersion.epicRecording{opacity:0;pointer-events:none}
@keyframes epicBreathe{from{transform:scale(1.015)}to{transform:scale(1.055)}}@keyframes epicHotspot{50%{transform:scale(1.35);opacity:.52}}

body.themeEvening .epicGateway{box-shadow:0 26px 70px #0008}body.themeEvening .epicCompletionPortal{border-color:#ffffff24}

@media(max-width:980px){.epicGatewayGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.epicJourneyGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.epicJourneyDetail>div{grid-template-columns:repeat(3,minmax(0,1fr))}.epicMuseumStage{grid-template-columns:repeat(4,minmax(0,1fr))}.epicImmersionCard{grid-template-columns:1fr}.epicImmersionVisual{min-height:47dvh}.epicImmersionWords{padding:25px max(20px,env(safe-area-inset-right)) calc(30px + env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left))}.epicImmersionVisual:after{background:linear-gradient(0deg,#08050d 0,transparent 30%)}}
@media(max-width:760px){.epicGatewayIntro{grid-template-columns:1fr}.epicGatewayIntro .sectionEyebrow{margin-bottom:-4px}.epicAwakening{grid-template-columns:1fr;gap:6px;padding-block:7px}.epicAwakeningHead{justify-content:space-between}.epicAwakening>p{text-align:left}.epicThresholds i{padding:6px}.epicThresholds small{display:none}.epicJourneyDetail>div{display:flex;overflow-x:auto}.epicJourneyStep{flex:0 0 170px}.epicMuseumStage{display:flex;overflow-x:auto;min-height:290px}.epicMuseumWork{flex:0 0 145px}.epicConstellation canvas{height:330px}.epicCompletionPortal h3{font-size:24px}}
@media(max-width:520px){.epicGateway{margin-inline:-4px;padding:22px 16px;border-radius:28px}.epicGatewayGrid{grid-template-columns:1fr 1fr;gap:8px}.epicGatewayGrid button{min-height:138px;padding:14px}.epicGatewayGrid b{font-size:18px}.epicGatewayGrid small{font-size:9px}.epicDialog{padding:0}.epicDialogCard{width:100%;height:100dvh;max-height:none;border:0;border-radius:0;padding:calc(18px + env(safe-area-inset-top)) 14px calc(22px + env(safe-area-inset-bottom));}.epicJourneyGrid{grid-template-columns:1fr 1fr}.epicJourneyGrid>button{min-height:145px;padding:13px}.epicJourneyGrid b{font-size:16px}.epicMuseumStats{grid-template-columns:1fr 1fr 1fr}.epicMuseumStats span{padding:10px}.epicMuseumStats b{font-size:22px}.epicMuseumStats small{font-size:8px}.epicImmersionVisual{min-height:43dvh}.epicImmersionWords h2{font-size:38px}.epicImmersionWords blockquote{font-size:18px}.epicImmersionActions{display:grid;grid-template-columns:1fr 1fr}.epicImmersionActions button:first-child{grid-column:1/-1}.epicCompletionPortal>div{display:grid}.epicCompletionPortal button{width:100%}}
@media(orientation:landscape) and (max-height:620px){.epicAwakening{display:none}.epicImmersionCard{grid-template-columns:1.25fr .75fr}.epicImmersionVisual{min-height:100dvh}.epicImmersionWords{padding-top:60px}.epicImmersionWords blockquote{margin-block:14px}.epicSecret{margin-block:12px}}
@media(prefers-reduced-motion:reduce){.epicGatewayGrid button,.epicThresholds i,.epicImmersionVisual img,.epicHotspot{animation:none!important;transition:none!important}.game .boardShell{animation:none!important}}
