/* EQUILIBRIUM — PASS 21 / spatial depth, material polish, canonical interaction */

/* Menu */
.pass21-trippy-nav{position:relative}.pass21-trippy-nav::after{content:'POCKET DIMENSION';margin-left:auto;color:#e676c8;font:800 .45rem/1 system-ui;letter-spacing:.12em;opacity:.72}.pass21-trippy-nav[data-active=true]{color:#f4b9e7!important;text-shadow:0 0 1rem #d95fc344}

/* RÊVERIE — true camera focus stays authoritative; optical focus only reinforces it. */
.reverie-sketchbook[data-pass21-reverie=true] .reverie-sketchbook__cosmos canvas{transition:transform 1.15s cubic-bezier(.16,1,.3,1),filter .8s ease;transform-origin:50% 52%}
.reverie-sketchbook[data-pass21-focus=true] .reverie-sketchbook__cosmos canvas{transform:scale(1.055);filter:saturate(1.08) contrast(1.025)}
.reverie-sketchbook[data-pass21-place=kaguya] .reverie-sketchbook__cosmos canvas{transform:scale(1.075)}
.reverie-place-story .reverie-place-beat>div{pointer-events:auto}
.pass21-place-actions{display:flex;gap:.38rem;flex-wrap:wrap;margin-top:.65rem}.pass21-place-actions button,.pass21-place-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:2.25rem;padding:.48rem .68rem;border:1px solid rgba(127,235,255,.38);border-radius:999px;background:linear-gradient(145deg,rgba(5,19,29,.74),rgba(31,49,58,.42));box-shadow:inset 0 1px rgba(255,255,255,.09),0 .4rem 1.3rem rgba(0,0,0,.24);backdrop-filter:blur(12px) saturate(1.25);color:#dffbff;font:800 .52rem/1 system-ui;text-transform:uppercase;letter-spacing:.09em;text-decoration:none;cursor:pointer}.pass21-place-actions a{border-color:rgba(244,211,130,.48);color:#fff0bd;background:linear-gradient(145deg,rgba(88,56,20,.48),rgba(20,15,9,.48))}.pass21-place-actions button:hover,.pass21-place-actions a:hover{transform:translateY(-1px);box-shadow:0 .65rem 1.7rem rgba(0,0,0,.3),inset 0 1px rgba(255,255,255,.13)}

/* QUANTUM UNFOLDS — clean liquid mirror framing, no retro pixel dressing. */
.quantum-world-page .quantum-world{background:linear-gradient(180deg,#03070c,#061019)!important}
.quantum-world-page .quantum-world canvas{image-rendering:auto!important;filter:saturate(1.04) contrast(1.015)!important}
.quantum-world-page .quantum-grade{background:radial-gradient(ellipse at 50% 62%,transparent 0 48%,rgba(2,5,9,.22) 82%,rgba(1,3,7,.54)),linear-gradient(180deg,rgba(2,6,11,.16),transparent 24%,transparent 76%,rgba(2,5,9,.28))!important;mix-blend-mode:normal!important}
.quantum-world-page .quantum-vignette{opacity:.28!important}
.quantum-world-page .quantum-state-panel,.quantum-world-page .quantum-dock{border-color:rgba(185,244,255,.2)!important;background:linear-gradient(145deg,rgba(8,20,27,.46),rgba(8,13,21,.23))!important;box-shadow:inset 0 1px rgba(255,255,255,.12),0 1rem 4rem rgba(0,0,0,.2),0 0 2.5rem rgba(102,235,247,.045)!important;backdrop-filter:blur(22px) saturate(1.28)!important;-webkit-backdrop-filter:blur(22px) saturate(1.28)!important}
.quantum-world-page .quantum-dock button[aria-pressed=true]{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 17%,transparent),rgba(255,255,255,.025))!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 38%,transparent),0 0 2rem color-mix(in srgb,var(--accent) 11%,transparent)!important}
.quantum-liquid-mirror-v6{position:absolute;inset:0}.quantum-liquid-mirror-v6 canvas{width:100%;height:100%;display:block}

/* TRIPPY MOUNTAINS — let the canonical scene breathe. */
.trippy-page .trippy-world canvas{image-rendering:auto!important;filter:brightness(1.08) saturate(1.08) contrast(1.015)!important}.trippy-page .trippy-grade{background:linear-gradient(90deg,rgba(8,4,14,.48),rgba(8,4,14,.06) 42%,transparent 70%),linear-gradient(180deg,rgba(7,3,12,.14),transparent 35%,rgba(4,2,9,.34))!important;mix-blend-mode:normal!important}.trippy-page .trippy-horizon{opacity:.18!important}.trippy-canon-runtime{position:absolute;inset:0}.trippy-canon-runtime canvas{width:100%;height:100%;display:block}

/* LE GAMER LUCIDE — six canonical chapters become six spatial instruments. */
.page-shell-gamer-lucid-room .lucid-room[data-pass21-gamer=true] .lucid-stage{background:radial-gradient(ellipse at 50% 55%,#eef3f3,#d8e0e1 68%,#bdc8ca)!important}
.gamer-artifact-field{position:absolute;z-index:5;inset:0;pointer-events:none;perspective:1200px;overflow:hidden}.gamer-artifact{position:absolute;right:clamp(5vw,12vw,15vw);top:49%;width:clamp(9rem,17vw,16rem);aspect-ratio:1;opacity:0;transform:translate3d(0,-48%,0) scale(.72) rotateY(-12deg);transition:opacity .65s ease,transform .8s cubic-bezier(.16,1,.3,1);filter:drop-shadow(0 1.4rem 2rem rgba(27,46,50,.18))}.gamer-artifact-field[data-active-artifact=lucidity] [data-artifact=lucidity],.gamer-artifact-field[data-active-artifact=void] [data-artifact=void],.gamer-artifact-field[data-active-artifact=npc] [data-artifact=npc],.gamer-artifact-field[data-active-artifact=noise-silence] [data-artifact=noise-silence],.gamer-artifact-field[data-active-artifact=mask] [data-artifact=mask],.gamer-artifact-field[data-active-artifact=mastery] [data-artifact=mastery]{opacity:.95;transform:translate3d(0,-50%,0) scale(1) rotateY(0)}
.gamer-artifact>div,.gamer-artifact i,.gamer-artifact b,.gamer-artifact span{position:absolute;display:block;box-sizing:border-box}.artifact-lens{inset:5%;border-radius:50%;border:1px solid rgba(38,87,97,.32);background:radial-gradient(circle at 36% 28%,rgba(255,255,255,.85),rgba(113,220,230,.15) 25%,rgba(16,47,56,.08) 48%,rgba(255,255,255,.12) 61%,rgba(31,62,68,.16));box-shadow:inset 0 0 3rem rgba(107,220,232,.24),0 0 0 1rem rgba(255,255,255,.08);backdrop-filter:blur(4px)}.artifact-lens i:first-child{inset:15%;border:1px solid rgba(45,112,126,.4);border-radius:50%;animation:p21Orbit 12s linear infinite}.artifact-lens i:nth-child(2){left:49.5%;top:4%;bottom:4%;width:1px;background:linear-gradient(transparent,#73512c,transparent);transform:rotate(31deg)}.artifact-lens b{inset:42%;border-radius:50%;background:#152a30;box-shadow:0 0 1.4rem rgba(70,192,210,.4)}
.artifact-void{inset:8%;border-radius:50%;background:radial-gradient(circle at 42% 35%,#253137 0,#090d10 28%,#020304 62%,#000 72%);box-shadow:inset -1.4rem -1.7rem 3rem #000,0 1.4rem 3rem rgba(33,52,58,.25)}.artifact-void i{inset:-10%;border:1px solid rgba(137,94,45,.36);border-radius:50%;transform:scaleY(.47) rotate(-18deg);box-shadow:0 0 1rem rgba(189,134,72,.12)}.artifact-void b{inset:29%;border-radius:50%;border:1px solid rgba(255,255,255,.06)}
.artifact-controller{inset:15% 2%;border:1px solid rgba(42,73,80,.28);border-radius:48% 48% 38% 38%/54% 54% 35% 35%;background:linear-gradient(155deg,rgba(255,255,255,.62),rgba(132,151,156,.25));box-shadow:inset 0 1px #fff,0 1rem 3rem rgba(40,61,66,.18)}.artifact-controller i{width:17%;aspect-ratio:1;border:1px solid #324b52;border-radius:50%;top:40%;background:#d9e5e6}.artifact-controller i:first-child{left:24%}.artifact-controller i:nth-child(2){right:24%}.artifact-controller b{left:49%;top:25%;width:2px;height:50%;background:#97653b;transform:rotate(45deg)}.artifact-controller span{left:49%;top:25%;width:2px;height:50%;background:#446d76;transform:rotate(-45deg)}
.artifact-wave{inset:6%;border-radius:50%;border:1px solid rgba(60,101,109,.22);background:radial-gradient(circle,rgba(255,255,255,.65),rgba(221,233,233,.14) 60%,transparent)}.artifact-wave i{left:50%;top:50%;border:1px solid rgba(45,97,108,.35);border-radius:50%;transform:translate(-50%,-50%)}.artifact-wave i:nth-child(1){width:28%;height:28%}.artifact-wave i:nth-child(2){width:52%;height:52%}.artifact-wave i:nth-child(3){width:75%;height:75%}.artifact-wave i:nth-child(4){width:96%;height:96%}.artifact-wave b{left:49.5%;top:20%;width:1px;height:60%;background:#8a5b2c;box-shadow:0 0 1rem #b78149}
.artifact-mask{inset:5% 20%;border-radius:48% 48% 38% 38%;background:linear-gradient(105deg,rgba(246,251,250,.76),rgba(119,144,148,.18) 47%,rgba(27,44,49,.22) 50%,rgba(246,249,248,.58));border:1px solid rgba(255,255,255,.75);box-shadow:inset 0 0 2rem rgba(255,255,255,.5),0 1.5rem 3rem rgba(38,55,59,.16);transform:perspective(500px) rotateY(-10deg)}.artifact-mask::before,.artifact-mask::after{content:'';position:absolute;top:38%;width:22%;height:7%;border-radius:60%;background:#17272b}.artifact-mask::before{left:17%;transform:rotate(8deg)}.artifact-mask::after{right:17%;transform:rotate(-8deg)}.artifact-mask i{left:50%;top:8%;bottom:8%;width:1px;background:linear-gradient(transparent,#a16c37,transparent)}
.artifact-gyro{inset:7%;border-radius:50%}.artifact-gyro i{inset:12%;border:1px solid rgba(53,97,106,.42);border-radius:50%;box-shadow:inset 0 0 1rem rgba(50,122,134,.08);animation:p21Orbit 14s linear infinite}.artifact-gyro i:nth-child(2){transform:rotateX(66deg);animation-duration:9s;animation-direction:reverse}.artifact-gyro i:nth-child(3){transform:rotateY(68deg);animation-duration:17s}.artifact-gyro b{inset:43%;border-radius:50%;background:radial-gradient(circle at 35% 30%,#f5d9af,#8e5c30 45%,#263b40 70%);box-shadow:0 0 1.5rem rgba(188,130,72,.3)}
@keyframes p21Orbit{to{transform:rotate(360deg)}}

/* RÉSONANCE — one sticky cathedral + a true 3D carousel, instead of an expanding rail. */
.resonance-v2[data-pass21-resonance=true]{--resonance-pass21-progress:0;min-height:540svh!important;background:linear-gradient(180deg,#07141d,#061119 72%,#050d13)!important}
.resonance-v2[data-pass21-resonance=true] .resonance-stage{position:sticky!important;top:0!important;height:100svh!important;min-height:620px;z-index:4;overflow:hidden!important;background:transparent!important}
.resonance-pass21-scroll-space{height:430svh;pointer-events:none}
.resonance-v2[data-pass21-resonance=true] [data-resonance-world]{z-index:0!important;filter:brightness(1.22) saturate(1.12)!important}
.resonance-v2[data-pass21-resonance=true] .resonance-opening{top:clamp(5rem,8vh,6.5rem);width:min(31rem,42vw);background:linear-gradient(145deg,rgba(7,20,27,.55),rgba(6,14,20,.22))!important}
.resonance-carousel-shell{position:absolute;z-index:14;left:50%;bottom:max(1rem,env(safe-area-inset-bottom));width:min(68rem,92vw);height:clamp(15rem,28vh,20rem);transform:translateX(-50%);perspective:1050px;pointer-events:auto}.resonance-carousel-viewport{position:absolute;left:8%;right:8%;top:0;height:10.7rem;transform-style:preserve-3d;overflow:visible}.resonance-v2[data-pass21-resonance=true] .frequency-rail{position:absolute!important;inset:0!important;display:block!important;width:auto!important;height:auto!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;transform-style:preserve-3d}.resonance-v2[data-pass21-resonance=true] .band-group{--carousel-offset:0;position:absolute!important;left:50%!important;top:50%!important;width:min(17rem,31vw)!important;height:9.4rem!important;margin:0!important;padding:.75rem!important;border:1px solid color-mix(in srgb,var(--band,#a8f1ee) 25%,rgba(255,255,255,.1))!important;border-radius:1rem!important;background:linear-gradient(145deg,rgba(7,20,29,.76),rgba(5,11,18,.52))!important;box-shadow:0 1.2rem 3rem rgba(0,0,0,.3),inset 0 1px rgba(255,255,255,.08),0 0 2.5rem color-mix(in srgb,var(--band,#a8f1ee) 8%,transparent)!important;backdrop-filter:blur(18px) saturate(1.24)!important;transform:translate(-50%,-50%) translateX(calc(var(--carousel-offset)*12.4rem)) translateZ(calc((1 - abs(var(--carousel-offset)))*3rem - abs(var(--carousel-offset))*3.5rem)) rotateY(calc(var(--carousel-offset)*-18deg)) scale(calc(1 - abs(var(--carousel-offset))*.12));opacity:calc(1 - abs(var(--carousel-offset))*.22);transition:transform .65s cubic-bezier(.16,1,.3,1),opacity .45s ease,filter .45s ease;transform-style:preserve-3d;overflow:hidden}.resonance-v2[data-pass21-resonance=true] .band-group[data-carousel-active=true]{z-index:5!important;filter:brightness(1.08)}.resonance-v2[data-pass21-resonance=true] .band-group[data-carousel-active=false]{z-index:2}.resonance-v2[data-pass21-resonance=true] .band-group header{margin-bottom:.5rem}.resonance-v2[data-pass21-resonance=true] .band-group .signal-button{min-height:2.2rem!important;padding:.35rem .45rem!important;font-size:.56rem!important}.resonance-band-description{position:absolute;left:50%;bottom:.2rem;width:min(39rem,72vw);padding:.55rem .85rem;text-align:center;transform:translateX(-50%);color:#e9f8f8;background:linear-gradient(90deg,transparent,rgba(5,15,22,.72) 14% 86%,transparent);text-shadow:0 .1rem .6rem #000}.resonance-band-description strong{display:block;color:var(--band,#a8f1ee);font:800 .7rem/1 system-ui;letter-spacing:.14em;text-transform:uppercase}.resonance-band-description p{margin:.35rem auto 0;max-width:35rem;color:#e7f4f3c4;font:560 .68rem/1.45 system-ui}.resonance-band-description small{display:block;margin-top:.3rem;color:#bcd0cf7d;font:.5rem/1.35 system-ui}.resonance-carousel-arrow{position:absolute;top:4.4rem;width:2.8rem;height:2.8rem;border:1px solid rgba(180,241,242,.22);border-radius:50%;background:rgba(5,15,22,.6);color:#dffcff;font:300 1.8rem/1 serif;cursor:pointer;backdrop-filter:blur(12px);transform:translateY(-50%)}.resonance-carousel-arrow.prev{left:0}.resonance-carousel-arrow.next{right:0}.resonance-carousel-arrow:hover{border-color:var(--band,#a8f1ee);box-shadow:0 0 1.5rem color-mix(in srgb,var(--band,#a8f1ee) 16%,transparent)}

@media(max-width:820px){.pass21-trippy-nav::after{display:none}.reverie-sketchbook[data-pass21-focus=true] .reverie-sketchbook__cosmos canvas{transform:scale(1.035)}.pass21-place-actions{margin-top:.45rem}.pass21-place-actions button,.pass21-place-actions a{font-size:.46rem;min-height:2rem;padding:.4rem .55rem}.gamer-artifact{right:4vw;top:59%;width:clamp(7rem,31vw,10rem);opacity:.82}.gamer-canon-copy{width:min(28rem,88vw)!important;top:35%!important}.resonance-v2[data-pass21-resonance=true]{min-height:570svh!important}.resonance-pass21-scroll-space{height:460svh}.resonance-v2[data-pass21-resonance=true] .resonance-opening{top:5.2rem;left:.7rem;width:calc(100vw - 1.4rem)}.resonance-carousel-shell{width:100vw;height:14.5rem;bottom:max(.25rem,env(safe-area-inset-bottom));}.resonance-carousel-viewport{left:6%;right:6%;height:9rem}.resonance-v2[data-pass21-resonance=true] .band-group{width:min(14rem,69vw)!important;height:8.25rem!important;transform:translate(-50%,-50%) translateX(calc(var(--carousel-offset)*8.4rem)) translateZ(calc((1 - abs(var(--carousel-offset)))*1.5rem - abs(var(--carousel-offset))*2.2rem)) rotateY(calc(var(--carousel-offset)*-20deg)) scale(calc(1 - abs(var(--carousel-offset))*.14))}.resonance-band-description{bottom:.1rem;width:86vw}.resonance-band-description p{font-size:.58rem}.resonance-band-description small{font-size:.43rem}.resonance-carousel-arrow{top:3.9rem;width:2.45rem;height:2.45rem}.resonance-carousel-arrow.prev{left:.35rem}.resonance-carousel-arrow.next{right:.35rem}}
@media(prefers-reduced-motion:reduce){.gamer-artifact,.artifact-lens i,.artifact-gyro i,.reverie-sketchbook__cosmos canvas,.resonance-v2 .band-group{transition:none!important;animation:none!important}}
