:root{--ink:#f5f6ff;--muted:#a8a9ba;--void:#050611;--violet:#8b6cff;--cyan:#39e7ff;--amber:#f6b75a;--line:rgba(255,255,255,.14);--ease:cubic-bezier(.22,.85,.26,1);--jupiter-plugin-primary:57,231,255;--jupiter-plugin-background:5,6,17;--jupiter-plugin-primaryText:245,246,255;--jupiter-plugin-warning:246,183,90;--jupiter-plugin-interactive:24,26,52;--jupiter-plugin-module:12,14,33}
*{box-sizing:border-box}html{scroll-behavior:auto;background:var(--void)}body{margin:0;color:var(--ink);background:var(--void);font-family:Manrope,system-ui,sans-serif;overflow-x:hidden}.experience{height:800vh}.stage{position:fixed;inset:0;overflow:hidden;background:#050611}.boot{position:fixed;inset:0;z-index:100;display:grid;place-content:center;justify-items:center;gap:18px;background:radial-gradient(circle at 50% 46%,#11132c 0,#050611 38%);transition:opacity .7s var(--ease),visibility .7s}.boot.done{opacity:0;visibility:hidden}.boot-mascot{position:relative;width:190px;height:176px;display:grid;place-items:center;isolation:isolate}.boot-mascot:before{content:"";position:absolute;z-index:-2;left:28px;right:28px;bottom:3px;height:20px;border-radius:50%;background:#000;filter:blur(9px);opacity:.75;animation:loaderShadow 1s ease-in-out infinite alternate}.boot-mascot:after{content:"";position:absolute;z-index:-2;inset:19px;border-radius:50%;background:radial-gradient(circle,#8b6cff24,transparent 66%);filter:blur(8px);animation:loaderGlow 1.1s ease-in-out infinite alternate}.boot-mascot img{position:relative;z-index:2;width:178px;height:auto;max-height:176px;object-fit:contain;filter:drop-shadow(0 10px 18px #000b) drop-shadow(0 0 12px #8b6cff4d);transform-origin:50% 84%;animation:loaderCat 1s var(--ease) infinite alternate}.boot-orbit{position:absolute;z-index:1;width:174px;height:62px;bottom:15px;border:1px solid #8b6cff80;border-right-color:var(--cyan);border-radius:50%;box-shadow:0 0 14px #39e7ff1f,inset 0 0 12px #8b6cff14;animation:loaderOrbit 1.5s linear infinite}.boot-line{width:210px;height:1px;background:#26283d;overflow:hidden}.boot-line i{display:block;height:100%;width:70%;background:linear-gradient(90deg,var(--violet),var(--cyan));box-shadow:0 0 10px var(--cyan);animation:boot 1.5s var(--ease) both}.boot p{margin:0;text-align:center;font:500 10px/1 DM Mono,monospace;letter-spacing:.2em;color:#77798e}@keyframes boot{from{transform:translateX(-100%)}to{transform:translateX(45%)}}@keyframes loaderCat{from{transform:translateY(4px) rotate(-1deg)}to{transform:translateY(-7px) rotate(1.5deg)}}@keyframes loaderOrbit{to{transform:rotate(360deg)}}@keyframes loaderGlow{to{opacity:.45;transform:scale(1.18)}}@keyframes loaderShadow{to{transform:scaleX(.78);opacity:.45}}
.hud{position:fixed;z-index:30;top:0;left:0;right:0;height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,4vw,64px);border-bottom:1px solid var(--line);background:linear-gradient(#050611cc,transparent);backdrop-filter:blur(10px)}.brand{display:flex;align-items:center;gap:12px;color:white;text-decoration:none;font:700 14px/1 Space Grotesk;letter-spacing:.18em}.brand-logo{width:48px;height:48px;border-radius:14px;object-fit:cover;object-position:center;border:1px solid #7c66ff80;box-shadow:0 0 0 3px #090a18,0 0 22px #7657ff40;transition:transform .3s var(--ease),box-shadow .3s}.brand:hover .brand-logo{transform:rotate(-3deg) scale(1.06);box-shadow:0 0 0 3px #090a18,0 0 30px #7eeeff55}.brand-name{white-space:nowrap}.hud-center{position:absolute;left:50%;transform:translateX(-50%);display:flex;gap:10px;align-items:center;font:500 10px/1 DM Mono;letter-spacing:.12em;color:#bbbccb}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 12px var(--cyan)}.hud-actions{display:flex;align-items:center;gap:10px}.icon-button,.nav-buy{height:40px;border:1px solid var(--line);background:#0a0b19aa;color:white}.icon-button{position:relative;width:40px;display:grid;place-items:center;cursor:pointer;transition:.25s}.music-icon{width:20px;height:20px;overflow:visible}.music-icon path{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.music-icon circle{fill:currentColor}.music-button:hover{border-color:var(--cyan);color:var(--cyan);transform:translateY(-1px)}.music-button[aria-pressed=false]{color:#a1a3b7}.music-button[aria-pressed=true]{color:var(--cyan);border-color:#7eeeff75;box-shadow:inset 0 0 18px #7eeeff14,0 0 18px #7eeeff1f}.music-button[aria-pressed=true] .music-icon{animation:musicPulse 1.4s ease-in-out infinite}.music-button:after{content:attr(data-tooltip);position:absolute;top:calc(100% + 10px);right:0;padding:7px 9px;border:1px solid var(--line);background:#080916e8;color:#dfe0ec;font:500 8px/1 DM Mono;letter-spacing:.12em;white-space:nowrap;opacity:0;transform:translateY(-4px);pointer-events:none;transition:.2s}.music-button:hover:after,.music-button:focus-visible:after{opacity:1;transform:translateY(0)}.nav-buy{display:flex;align-items:center;gap:18px;padding:0 18px;text-decoration:none;font:600 11px/1 DM Mono;letter-spacing:.13em;transition:.25s}.nav-buy:hover{border-color:var(--cyan);color:var(--cyan)}@keyframes musicPulse{50%{transform:scale(1.12);filter:drop-shadow(0 0 5px var(--cyan))}}
.backdrops,.backdrop,.vignette,.grain,#particleCanvas{position:absolute;inset:0}.backdrop{background-position:center;background-size:cover;opacity:0;transform:scale(1.08);transition:opacity 1.2s ease,transform 7s linear}.backdrop.active{opacity:.73;transform:scale(1)}.backdrop-hero{background-image:linear-gradient(90deg,#050611 3%,transparent 60%),url('assets/raycat-hero.jpg')}.backdrop-reactor{background-image:linear-gradient(90deg,#050611bb,transparent 55%),url('assets/raycat-reactor.jpg')}.backdrop-finale{background-image:linear-gradient(90deg,#050611 0%,transparent 54%,#05061199 100%),url('assets/raycat-finale.jpg')}.vignette{background:radial-gradient(circle at 57% 44%,transparent 0 25%,#05061140 58%,#050611e8 100%),linear-gradient(180deg,#05061180,transparent 30%,#050611a8)}.grain{opacity:.09;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");pointer-events:none}#particleCanvas{width:100%;height:100%}
.portal{position:absolute;z-index:2;width:min(44vw,620px);aspect-ratio:1;right:7vw;top:50%;transform:translateY(-48%) scale(.3);opacity:0;transition:1s var(--ease);pointer-events:none}.portal i{position:absolute;inset:0;border-radius:50%;border:1px solid #937aff88;box-shadow:inset 0 0 30px #6c4eff88,0 0 80px #5137d766;animation:spin 14s linear infinite}.portal i:nth-child(2){inset:8%;border-style:dashed;animation-direction:reverse;animation-duration:9s}.portal i:nth-child(3){inset:17%;border-color:#39e7ffaa;animation-duration:5s}.portal b{position:absolute;inset:23%;border-radius:50%;background:radial-gradient(circle,#bbf8ffbb,#7960ff55 40%,transparent 68%);filter:blur(12px)}.portal.visible{opacity:.8;transform:translateY(-48%) scale(1)}@keyframes spin{to{rotate:360deg}}
.scene{position:absolute;z-index:5;inset:86px 0 0;display:flex;align-items:center;padding:clamp(28px,6vw,96px);opacity:0;visibility:hidden;transform:translateY(30px);transition:opacity .75s var(--ease),transform .75s var(--ease),visibility .75s}.scene.active{opacity:1;visibility:visible;transform:none}.scene-copy{max-width:760px}.hero-copy{width:min(63vw,900px)}.eyebrow,.kicker{display:flex;gap:20px;margin:0 0 24px;font:500 11px/1 DM Mono;letter-spacing:.16em;color:#d5d3df}.eyebrow span:before,.kicker:before{content:'◆';margin-right:9px;color:var(--cyan)}h1,h2{margin:0;font-family:Space Grotesk,sans-serif;font-weight:600;letter-spacing:-.075em;line-height:.85;text-wrap:balance}h1{font-size:clamp(4.2rem,10vw,10rem)}h2{font-size:clamp(3.2rem,7vw,7.4rem)}h1 em,h2 em{font-style:normal;color:transparent;-webkit-text-stroke:1px #b2a8ff;text-shadow:0 0 40px #7d5cff44}.lede{max-width:430px;margin:28px 0;color:#d1d1dc;font-size:clamp(1rem,1.5vw,1.25rem)}.hero-actions,.final-actions{display:flex;align-items:center;gap:14px;margin-top:35px;flex-wrap:wrap}.primary-cta{height:58px;min-width:220px;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:0 18px 0 24px;color:#050611;background:linear-gradient(105deg,#f8f8ff,#beeeff);text-decoration:none;font:700 12px/1 DM Mono;letter-spacing:.12em;clip-path:polygon(0 0,93% 0,100% 28%,100% 100%,7% 100%,0 72%);transition:.25s}.primary-cta:hover{filter:brightness(1.15);transform:translateY(-3px);box-shadow:0 10px 50px #39e7ff40}.primary-cta b{font-size:18px}.primary-cta.large{min-width:270px;height:64px}.contract-button{height:58px;display:flex;align-items:center;gap:14px;padding:0 18px;border:1px solid var(--line);background:#08091699;color:white;cursor:pointer;font:500 11px/1 DM Mono}.contract-button span{color:#6f7181}.contract-button code{font:inherit}.contract-button:hover{border-color:#8c6cff}.scroll-cue{position:absolute;right:clamp(28px,6vw,96px);bottom:46px;display:flex;align-items:center;gap:14px;rotate:90deg;transform-origin:right;color:#9294a5;font:500 9px/1 DM Mono;letter-spacing:.14em}.scroll-cue i{width:64px;height:1px;background:#ffffff55;position:relative;overflow:hidden}.scroll-cue i:after{content:'';position:absolute;inset:0;background:var(--cyan);animation:cue 2s infinite}@keyframes cue{from{transform:translateX(-110%)}to{transform:translateX(110%)}}
.offset-right{margin-left:auto;width:min(52vw,710px)}.scene-number{position:absolute;left:5vw;bottom:7vh;font:500 clamp(5rem,14vw,14rem)/1 Space Grotesk;color:#ffffff08;letter-spacing:-.08em}.scene-copy>p:not(.kicker,.eyebrow,.lede){max-width:530px;color:#b9bac8;font-size:clamp(1rem,1.45vw,1.18rem);line-height:1.7}.reactor-ui{position:absolute;left:4vw;top:50%;width:min(40vw,550px);aspect-ratio:1;transform:translateY(-50%)}.reactor-core{position:absolute;inset:28%;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle,#d8fbff 0,#6ce4ff 8%,#805cff 38%,#170a51 65%,transparent 67%);box-shadow:0 0 80px #6d4cffbb;animation:pulse 2.6s ease-in-out infinite}.reactor-core div{text-align:center}.reactor-core span{display:block;font:600 clamp(2rem,5vw,5rem)/1 Space Grotesk}.reactor-core small{font:500 8px/1 DM Mono;letter-spacing:.16em}.orbit{position:absolute;inset:12%;border:1px solid #8c6cff77;border-radius:50%;animation:spin 12s linear infinite}.orbit-two{inset:1%;border-style:dashed;animation-direction:reverse}.orbit i{position:absolute;top:50%;left:-4px;width:9px;height:9px;border-radius:50%;background:var(--cyan);box-shadow:0 0 18px var(--cyan)}.orbit i:nth-child(2){left:auto;right:-4px;background:var(--violet)}.orbit i:nth-child(3){left:50%;top:-4px;background:white}.reactor-copy{margin-left:auto;width:min(48vw,680px)}.mechanic-list{margin-top:35px;border-top:1px solid var(--line)}.mechanic-list div{display:grid;grid-template-columns:54px 1fr;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.mechanic-list b{font:500 10px DM Mono;color:var(--violet)}.mechanic-list span{font-size:.94rem;color:#e6e6ec}@keyframes pulse{50%{scale:1.07;filter:brightness(1.25)}}
.scene-storm{justify-content:center;text-align:center}.centered{max-width:720px}.centered p{margin-inline:auto}.centered small{font:400 10px/1.5 DM Mono;color:#77798b}.storm-type{position:absolute;inset:0;overflow:hidden;opacity:.11;filter:blur(1px)}.storm-type span{position:absolute;font:700 22vw/1 Space Grotesk;color:transparent;-webkit-text-stroke:1px white}.storm-type span:nth-child(1){top:-10%;left:-4%;rotate:-12deg}.storm-type span:nth-child(2){top:35%;right:-5%;rotate:9deg}.storm-type span:nth-child(3){bottom:-12%;left:20%;rotate:-4deg}.storm-type span:nth-child(4){top:10%;right:35%;font-size:8vw;animation:float 4s ease-in-out infinite}@keyframes float{50%{transform:translateY(-20px) rotate(7deg)}}
.scene-command{align-items:flex-start;padding-top:16vh}.command-copy{max-width:620px}.deck-panels{position:absolute;right:5vw;bottom:8vh;width:min(52vw,730px);display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.data-card{min-height:170px;padding:20px;text-align:left;border:1px solid var(--line);background:#090a18cc;color:white;text-decoration:none;backdrop-filter:blur(18px);cursor:pointer;transition:.3s var(--ease)}.data-card:hover{transform:translateY(-8px);border-color:#7fefff;background:#11132aaa}.data-card span,.data-card small{display:block;font:500 9px/1.4 DM Mono;letter-spacing:.12em;color:#9294a5}.data-card strong{display:block;margin:26px 0 21px;font:600 clamp(1.4rem,3vw,2.6rem)/1 Space Grotesk}.data-card small{color:#d7d8e2}.scene-nine{gap:7vw}.nine-intro{width:34vw}.life-grid{margin-left:auto;width:min(52vw,720px);display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.life-grid button{aspect-ratio:1.25;border:1px solid var(--line);background:#08091699;color:white;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;padding:15px;cursor:pointer;transition:.35s var(--ease);transform:translateY(calc((var(--i) - 4)*2px))}.life-grid button:hover,.life-grid button.visited{border-color:var(--cyan);background:linear-gradient(145deg,#2a1d65aa,#0b2936bb);transform:scale(1.06);z-index:2;box-shadow:0 15px 45px #0008}.life-grid b{font:500 10px DM Mono;color:#858798}.life-grid span{font:600 clamp(.7rem,1.1vw,1rem) Space Grotesk;letter-spacing:.08em}.life-grid button.visited:after{content:'PAW ✓';font:500 8px DM Mono;color:var(--cyan);position:absolute;top:14px;right:12px}.proof-copy{max-width:840px}.proof-actions{display:flex;gap:10px;margin-top:35px}.proof-actions a{padding:18px 22px;border:1px solid var(--line);color:white;text-decoration:none;font:600 10px DM Mono;letter-spacing:.12em}.proof-actions a:hover{border-color:var(--cyan);color:var(--cyan)}.ca-display{position:absolute;left:6vw;right:6vw;bottom:7vh;display:grid;grid-template-columns:160px 1fr auto;align-items:center;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.ca-display span,.ca-display button{font:500 9px DM Mono;letter-spacing:.12em;color:#9698a8}.ca-display code{font:400 clamp(.72rem,1.4vw,1rem) DM Mono;color:#dfe0e9;overflow:hidden;text-overflow:ellipsis}.ca-display button{border:0;background:none;color:var(--cyan);cursor:pointer}.scene-jump{align-items:center}.finale-copy{margin-left:auto;width:min(52vw,760px)}.text-link{color:#d9dae3;font:500 10px DM Mono;letter-spacing:.12em;text-decoration:none}footer{position:absolute;bottom:24px;left:6vw;right:6vw;display:flex;justify-content:space-between;gap:30px;border-top:1px solid var(--line);padding-top:14px;color:#77798a;font:400 9px/1.5 DM Mono}footer p{margin:0;max-width:720px}footer span{white-space:nowrap}
.chapter-rail{position:absolute;z-index:15;left:clamp(16px,2vw,32px);top:50%;transform:translateY(-45%);display:flex;flex-direction:column;gap:13px}.chapter-rail button{display:flex;align-items:center;gap:9px;width:34px;padding:0;border:0;background:none;color:#5b5d70;cursor:pointer;font:500 8px DM Mono}.chapter-rail i{width:10px;height:1px;background:currentColor;transition:.3s}.chapter-rail button.active{color:white}.chapter-rail button.active i{width:22px;background:var(--cyan);box-shadow:0 0 10px var(--cyan)}.progress-track{position:absolute;z-index:20;left:0;bottom:0;right:0;height:2px;background:#ffffff11}.progress-track i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--violet),var(--cyan));box-shadow:0 0 12px var(--cyan)}.toast{position:absolute;z-index:40;left:50%;bottom:38px;transform:translate(-50%,20px);padding:13px 18px;background:#ecfaff;color:#050611;font:600 10px DM Mono;letter-spacing:.12em;opacity:0;transition:.35s}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:800px){.experience{height:800svh}.stage{height:100svh}.hud{height:70px;padding:0 18px}.brand{gap:9px}.brand-logo{width:40px;height:40px;border-radius:12px}.brand-name{font-size:12px}.hud-center{display:none}.nav-buy{padding:0 12px}.scene{inset:70px 0 0;padding:24px 24px 76px;align-items:flex-end}.hero-copy,.offset-right,.reactor-copy,.nine-intro,.finale-copy{width:100%;margin:0}.hero-copy{padding-bottom:5vh}.eyebrow{flex-direction:column;gap:8px}.lede{margin:18px 0}.hero-actions{margin-top:20px}.contract-button{display:none}.scroll-cue{display:none}h1{font-size:clamp(3.45rem,17vw,6rem)}h2{font-size:clamp(3rem,14vw,5rem)}.backdrop{background-position:62% center}.backdrop-hero{background-image:linear-gradient(0deg,#050611 5%,transparent 70%),url('assets/raycat-hero.jpg')}.backdrop-reactor{background-image:linear-gradient(0deg,#050611 2%,transparent 78%),url('assets/raycat-reactor.jpg')}.backdrop-finale{background-image:linear-gradient(0deg,#050611 0%,transparent 75%),url('assets/raycat-finale.jpg')}.portal{width:94vw;right:-20vw;top:34%}.scene-number{top:5vh;bottom:auto}.offset-right{padding-bottom:6vh}.reactor-ui{width:88vw;left:18vw;top:34%;opacity:.65}.reactor-copy{position:relative;z-index:2}.mechanic-list{margin-top:18px}.scene-command{align-items:flex-start;padding-top:11vh}.command-copy h2{font-size:13vw}.deck-panels{position:static;width:100%;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-top:auto}.data-card{min-width:70vw;min-height:145px;scroll-snap-align:center}.scene-nine{display:block;padding-top:13vh}.nine-intro{height:30%}.nine-intro h2{font-size:12vw}.life-grid{width:100%;grid-template-columns:repeat(3,1fr);gap:5px}.life-grid button{padding:10px;aspect-ratio:1}.proof-copy{align-self:center}.ca-display{grid-template-columns:1fr auto;bottom:6vh}.ca-display span{display:none}.ca-display code{padding-right:10px}.finale-copy{padding-bottom:18vh}.scene-jump{align-items:flex-end}.chapter-rail{display:none}footer{bottom:18px;left:24px;right:24px}footer p{font-size:8px}footer span{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.15s!important}.backdrop{transform:none!important}}
.backdrop video{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transition:opacity .8s ease}.backdrop video.ready{opacity:1}@media(max-width:800px){.backdrop video{object-position:62% center}}

.life-portal{position:absolute;z-index:40;inset:0;display:grid;place-items:center;padding:clamp(18px,5vw,72px);background:radial-gradient(circle at 50% 38%,#312063aa,transparent 38%),#03040bd9;backdrop-filter:blur(18px);opacity:0;visibility:hidden;transform:scale(1.03);transition:.38s var(--ease)}.life-portal.open{opacity:1;visibility:visible;transform:none}.life-portal-shell{position:relative;width:min(900px,92vw);max-height:min(680px,78vh);overflow:auto;border:1px solid #8b6cff66;background:linear-gradient(145deg,#11132af2,#070813f5);box-shadow:0 35px 100px #000d,0 0 70px #714cff24;clip-path:polygon(0 0,96% 0,100% 6%,100% 100%,4% 100%,0 94%)}.life-portal-shell:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,var(--violet),var(--cyan),transparent)}.life-portal-top{position:sticky;z-index:3;top:0;display:flex;align-items:center;justify-content:space-between;padding:17px 22px;border-bottom:1px solid var(--line);background:#090a18ed;backdrop-filter:blur(12px)}.life-portal-top span,.life-portal-top button{font:500 9px/1 DM Mono;letter-spacing:.16em}.life-portal-top span{color:var(--cyan)}.life-portal-top button{border:0;background:none;color:#a8aabd;cursor:pointer}.life-portal-top button:hover{color:white}.life-portal-content{padding:clamp(24px,4vw,52px)}.portal-kicker{margin:0 0 12px;color:var(--cyan);font:500 9px/1 DM Mono;letter-spacing:.18em}.life-portal-content h3{margin:0 0 20px;font:600 clamp(2.8rem,7vw,6rem)/.9 Space Grotesk;letter-spacing:-.07em}.life-portal-content>p:not(.portal-kicker,.portal-note){max-width:680px;margin:0;color:#c9cad5;font-size:clamp(.95rem,1.35vw,1.12rem);line-height:1.65}.portal-note{margin:15px 0 0;color:#77798e;font:400 9px/1.5 DM Mono;letter-spacing:.06em}.portal-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}.portal-tags span{padding:8px 10px;border:1px solid #ffffff22;color:#aeb0c2;font:500 8px/1 DM Mono;letter-spacing:.12em}.portal-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.portal-actions a,.portal-actions button{min-height:48px;display:flex;align-items:center;justify-content:center;padding:0 18px;border:1px solid #ffffff25;background:#0d0f21;color:white;text-decoration:none;cursor:pointer;font:600 9px/1 DM Mono;letter-spacing:.12em;transition:.25s}.portal-actions a:hover,.portal-actions button:hover{border-color:var(--cyan);color:var(--cyan);transform:translateY(-2px)}.portal-actions .portal-swap{background:linear-gradient(105deg,var(--violet),#4933c7);border-color:#9a83ff;min-width:220px}.portal-actions .portal-swap:hover{color:white;filter:brightness(1.15);box-shadow:0 12px 40px #6f51ff45}.portal-stat{display:flex;align-items:center;gap:24px;margin:8px 0 26px}.portal-stat strong{font:600 clamp(5rem,13vw,9rem)/.75 Space Grotesk;letter-spacing:-.1em;color:transparent;-webkit-text-stroke:1px var(--cyan);text-shadow:0 0 40px #39e7ff33}.portal-stat span{font:500 10px/1.6 DM Mono;letter-spacing:.14em;color:#c9cad5}.portal-proof{display:grid;grid-template-columns:100px 1fr;gap:8px 20px;align-items:center;margin-top:28px;padding:18px;border:1px solid var(--line);background:#070916aa}.portal-proof span{grid-row:1/3;color:var(--violet);font:600 10px DM Mono;letter-spacing:.12em}.portal-proof strong{font:600 clamp(1.1rem,3vw,2rem) Space Grotesk}.portal-proof small{font:400 9px DM Mono;color:#858798}.portal-contract{display:block;margin-top:25px;padding:18px;border:1px solid #8b6cff55;background:#050611;color:var(--cyan);font:400 clamp(.62rem,1.5vw,.95rem)/1.5 DM Mono;overflow-wrap:anywhere}.market-snapshot{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:8px 0 0}.market-snapshot>span{grid-column:1/-1;padding:28px;border:1px solid var(--line);color:#8d8fa1;font:500 9px DM Mono;letter-spacing:.12em}.market-snapshot div{min-height:105px;display:flex;flex-direction:column;justify-content:space-between;padding:15px;border:1px solid var(--line);background:#080a19}.market-snapshot span{color:#858798;font:500 8px DM Mono;letter-spacing:.12em}.market-snapshot strong{font:600 clamp(1rem,2.3vw,1.75rem) Space Grotesk}.swap-lock{display:grid;grid-template-columns:auto 1fr auto auto 1fr;gap:12px;align-items:center;margin-top:28px;padding:20px;border:1px solid #7d65ff55;background:linear-gradient(90deg,#120d2caa,#071c26aa)}.swap-lock span{font:500 8px DM Mono;color:#858798;letter-spacing:.12em}.swap-lock strong{font:600 clamp(1.4rem,3vw,2.2rem) Space Grotesk}.swap-lock i{font-style:normal;color:var(--cyan)}.meme-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px;min-height:170px}.meme-gallery>a{display:block;aspect-ratio:1;overflow:hidden;border:1px solid var(--line);background:#050611}.meme-gallery img{width:100%;height:100%;object-fit:cover;transition:.35s var(--ease)}.meme-gallery a:hover img{transform:scale(1.08);filter:brightness(1.14)}.meme-empty{grid-column:1/-1;display:flex;flex-direction:column;justify-content:center;gap:10px;padding:28px;border:1px dashed #ffffff29;background:#070815}.meme-empty strong{font:600 1.2rem Space Grotesk}.meme-empty span{color:#8f91a3;font:400 9px/1.6 DM Mono}.meme-empty code{color:var(--cyan)}
.burn-snapshot{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:28px}.burn-snapshot>div{min-height:130px;display:flex;flex-direction:column;justify-content:space-between;padding:18px;border:1px solid var(--line);background:linear-gradient(145deg,#170b24bb,#080a19)}.burn-snapshot>div:first-child{border-color:#ff6d6d66;box-shadow:inset 0 0 35px #ff4e2f0c}.burn-snapshot span,.burn-snapshot small{font:500 8px/1.35 DM Mono;letter-spacing:.12em}.burn-snapshot span{color:#ff8b78}.burn-snapshot small{color:#858798}.burn-snapshot strong{font:600 clamp(1.35rem,3vw,2.35rem)/1 Space Grotesk;letter-spacing:-.05em}
@media(max-width:800px){.life-portal{position:fixed;padding:12px}.life-portal-shell{width:100%;max-height:84svh}.life-portal-content{padding:24px}.life-portal-content h3{font-size:3.2rem}.market-snapshot{grid-template-columns:repeat(2,1fr)}.burn-snapshot{grid-template-columns:1fr 1fr}.burn-snapshot>div{min-height:105px;padding:13px}.burn-snapshot strong{font-size:clamp(1rem,4vw,1.5rem)}.portal-stat{align-items:flex-end}.portal-stat strong{font-size:5.8rem}.portal-proof{grid-template-columns:1fr}.portal-proof span{grid-row:auto}.meme-gallery{grid-template-columns:repeat(2,1fr)}.swap-lock{grid-template-columns:auto 1fr auto;gap:8px}.swap-lock i{grid-row:1/3;grid-column:3}.swap-lock span:nth-of-type(2),.swap-lock strong:last-child{grid-column:2}.portal-actions a,.portal-actions button{flex:1 1 180px}}

/* Mobile scenes stay viewport-native: no nested horizontal or vertical scrollers. */
@media(max-width:800px){
  .hud{transition:opacity .2s,visibility .2s}
  .life-portal-open .hud{opacity:0;visibility:hidden}
  .scene-command{display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;padding-top:7vh;gap:18px}
  .command-copy{width:100%;max-width:none}
  .command-copy h2{font-size:clamp(2.9rem,12vw,4.2rem)}
  .command-copy>p:not(.kicker){max-width:88%;font-size:.9rem;line-height:1.45}
  .deck-panels{position:static;width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:0;overflow:visible;scroll-snap-type:none}
  .data-card{min-width:0;min-height:108px;padding:11px 9px;overflow:hidden}
  .data-card span,.data-card small{font-size:6.5px;line-height:1.35;letter-spacing:.08em}
  .data-card strong{margin:14px 0 12px;font-size:clamp(.92rem,4.6vw,1.22rem);overflow-wrap:anywhere}

  .life-portal{z-index:80;inset:0;padding:10px;overflow:hidden}
  .life-portal-shell{width:100%;height:calc(100svh - 20px);max-height:none;overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr)}
  .life-portal-top{position:relative;padding:13px 16px}
  .life-portal-content{min-height:0;overflow:hidden;padding:17px 18px;display:flex;flex-direction:column}
  .portal-kicker{margin-bottom:7px;font-size:7px}
  .life-portal-content h3{margin-bottom:12px;font-size:clamp(2.45rem,12vw,3.5rem)}
  .life-portal-content>p:not(.portal-kicker,.portal-note){font-size:.82rem;line-height:1.42}
  .portal-note{margin-top:8px;font-size:7px}
  .portal-tags{margin-top:14px;gap:5px}
  .portal-tags span{padding:6px 7px;font-size:6.5px}
  .portal-actions{margin-top:auto;padding-top:13px;gap:6px;flex-wrap:nowrap}
  .portal-actions a,.portal-actions button{flex:1 1 0;min-width:0;min-height:42px;padding:0 9px;font-size:7px;line-height:1.25;text-align:center}
  .portal-actions .portal-swap{min-width:0}
  .portal-stat{gap:14px;margin:4px 0 15px;align-items:flex-end}
  .portal-stat strong{font-size:clamp(4.2rem,21vw,6rem)}
  .portal-stat span{font-size:7px}
  .portal-proof{grid-template-columns:70px 1fr;gap:5px 10px;margin-top:15px;padding:12px}
  .portal-proof span{grid-row:1/3;font-size:7px}
  .portal-proof strong{font-size:1.05rem}
  .portal-proof small{font-size:7px}
  .portal-contract{margin-top:14px;padding:12px;font-size:.62rem}
  .market-snapshot{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:2px}
  .market-snapshot div{min-height:70px;padding:9px}
  .market-snapshot span{font-size:6px}
  .market-snapshot strong{font-size:1rem}
  .burn-snapshot{gap:5px;margin-top:12px}
  .burn-snapshot>div{min-height:82px;padding:10px}
  .burn-snapshot span,.burn-snapshot small{font-size:6px}
  .burn-snapshot strong{font-size:clamp(.92rem,3.8vw,1.3rem)}
  .swap-lock{grid-template-columns:auto 1fr auto auto 1fr;gap:7px;margin-top:15px;padding:12px}
  .swap-lock i{grid-row:auto;grid-column:auto}
  .swap-lock span:nth-of-type(2),.swap-lock strong:last-child{grid-column:auto}
  .swap-lock span{font-size:6px}
  .swap-lock strong{font-size:1.05rem}
  .meme-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:5px;margin-top:2px;min-height:0;flex:1}
  .meme-gallery>a:nth-of-type(n+5){display:none}
  .meme-empty{padding:18px}
  .meme-empty strong{font-size:1rem}
  .meme-empty span{font-size:7px}
}
@media(max-width:800px) and (max-height:700px){
  .scene-command{padding-top:4vh;padding-bottom:62px}
  .command-copy .kicker{margin-bottom:12px}
  .command-copy h2{font-size:2.7rem}
  .command-copy>p:not(.kicker){font-size:.78rem}
  .data-card{min-height:88px}
  .data-card strong{margin:10px 0 8px;font-size:.9rem}
  .life-portal-content{padding:13px 16px}
  .life-portal-content h3{font-size:2.35rem;margin-bottom:8px}
  .life-portal-content>p:not(.portal-kicker,.portal-note){font-size:.74rem;line-height:1.32}
  .portal-actions{padding-top:8px}
  .portal-stat strong{font-size:3.9rem}
  .market-snapshot div{min-height:58px}
  .burn-snapshot{margin-top:8px}
  .burn-snapshot>div{min-height:68px;padding:8px}
  .burn-snapshot strong{font-size:.88rem}
}

/* Nine Doors: all loops run together; canvases key black pixels to true transparency. */
.life-grid button{position:relative;isolation:auto;overflow:hidden;background:transparent;backdrop-filter:none;mix-blend-mode:normal;transform:none}
.life-grid button:before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,transparent 55%,#05061180 100%);pointer-events:none;transition:opacity .3s var(--ease)}
.life-loop{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.life-poster,.life-canvas{position:absolute;z-index:0;inset:-3%;width:106%;height:106%;object-fit:contain;object-position:center;filter:saturate(1.06) brightness(1.02) drop-shadow(0 0 12px #8b6cff44);transform:scale(.96);transition:opacity .2s,filter .35s var(--ease),transform .5s var(--ease);pointer-events:none}
.life-canvas{opacity:1}.life-poster{opacity:1}.life-grid button.canvas-ready .life-poster{opacity:0}
.life-grid b,.life-grid span{position:relative;z-index:2;text-shadow:0 2px 9px #050611,0 0 12px #050611}
.life-grid button:hover,.life-grid button.visited{background:#0b0d1a1c;transform:none}
.life-grid button:hover :is(.life-poster,.life-canvas),.life-grid button:focus-visible :is(.life-poster,.life-canvas){filter:saturate(1.18) brightness(1.1) drop-shadow(0 0 18px #39e7ff66);transform:scale(1)}
.life-grid button:hover:before,.life-grid button:focus-visible:before{opacity:.48}
.life-grid button:focus-visible{outline:1px solid var(--cyan);outline-offset:3px}
.life-grid button.visited:after{z-index:3}

@media(max-width:800px){
  .scene-nine{padding-top:9vh}
  .nine-intro{height:25%}
  .nine-intro>p:last-child{display:none}
  .life-grid{height:66%;grid-template-rows:repeat(3,minmax(0,1fr))}
  .life-grid button{min-height:0;aspect-ratio:auto;padding:8px}
  .life-poster,.life-canvas{inset:-5%;width:110%;height:110%}
  .life-grid b{font-size:7px}
  .life-grid span{font-size:clamp(.58rem,2.8vw,.76rem)}
}

@media(max-width:800px) and (max-height:700px){
  .scene-nine{padding-top:5vh;padding-bottom:54px}
  .nine-intro{height:25%}
  .nine-intro .kicker{margin-bottom:8px}
  .nine-intro>p:last-child{display:none}
  .life-grid{height:68%}
}

@media(prefers-reduced-motion:reduce){.life-loop,.life-canvas{display:none}}
