/* PROJECT ABYSS — VOXEL CINEMA. Fully local, no external scripts or video services. */
:root { --abyss-gold: #ffb54b; --abyss-electric:#7bf4f7; }
.cinema-scene{position:relative;isolation:isolate;min-height:650px;height:min(93svh,890px);overflow:hidden;background:#06151d var(--cinema-poster) center/cover no-repeat;border-block:1px solid #345b68;contain:layout paint;}
.cinema-backdrop,.cinema-backdrop video,.cinema-vignette,.cinema-grid{position:absolute;inset:0;width:100%;height:100%;}
.cinema-backdrop{z-index:-4;overflow:hidden;background:var(--cinema-poster) center/cover no-repeat;}
.cinema-backdrop video{object-fit:cover;object-position:center;filter:contrast(1.12) saturate(1.13);transform:scale(1.06);animation:abyss-breathe 17s ease-in-out infinite alternate;}
.cinema-leviathan .cinema-backdrop video{object-position:52% center;}
.cinema-vignette{z-index:-2;background:linear-gradient(90deg,rgba(2,10,17,.95) 0%,rgba(2,10,17,.69) 26%,rgba(2,10,17,.13) 75%),linear-gradient(0deg,rgba(2,10,17,.95) 0%,transparent 51%,rgba(2,10,17,.18) 100%);pointer-events:none;}
.cinema-offshore .cinema-vignette{background:linear-gradient(90deg,rgba(3,8,15,.88),rgba(4,13,21,.44) 43%,rgba(4,13,21,.03) 88%),linear-gradient(0deg,rgba(3,9,15,.95),transparent 44%);}
.cinema-grid{z-index:-1;pointer-events:none;opacity:.15;background-image:repeating-linear-gradient(0deg,rgba(0,0,0,.36) 0 1px,transparent 1px 5px),linear-gradient(90deg,transparent 49.9%,#8bdef519 50%,transparent 50.1%);background-size:100% 5px, 100% 100%;}
.cinema-caption{position:absolute;left:clamp(25px,6vw,100px);right:20px;bottom:clamp(55px,12vh,130px);max-width:760px;z-index:3;text-shadow:0 2px 20px #000e;}
.cinema-caption h2{font-size:clamp(50px,6.7vw,110px);line-height:.88;letter-spacing:-.013em;font-weight:800;margin:21px 0 27px;text-transform:uppercase;}
.cinema-caption h2 em{font-style:normal;color:var(--abyss-electric);text-shadow:0 0 40px #4ec5d948;}
.cinema-offshore h2 em{color:#ffba65;text-shadow:0 0 40px #ff7b4050;}
.cinema-caption p{font-size:clamp(14px,1.3vw,18px);line-height:1.7;max-width:495px;color:#d7e5ed;margin-bottom:29px;}
.cinema-tag{display:flex;gap:14px;align-items:center;flex-wrap:wrap;font:11px/1.4 var(--mono,monospace);letter-spacing:.15em;color:#ccf5f7;}
.cinema-live{color:#ffa975;border:1px solid #ff996180;padding:4px 8px;font-size:10px;animation:abyss-flicker 3s step-end infinite;}
.signal-led{flex:none;width:10px;height:10px;border:2px solid #2b5d55;background:#75ffe1;box-shadow:0 0 15px #3defb5;}
.signal-red{background:#ff865b;box-shadow:0 0 16px #ff8558;border-color:#a04c42;animation:abyss-flicker 4s step-end infinite;}
.cinema-status{display:flex;flex-wrap:wrap;gap:9px 20px;padding-top:18px;border-top:1px solid #a8e4e73b;max-width:750px;}
.cinema-status span{font:10px/1.6 var(--mono,monospace);letter-spacing:.085em;color:#b3d6dc;}
.cinema-status span:not(:first-child):before{content:'▪';color:#77e6e7;padding-right:12px;}
.cinema-offshore .cinema-status span:not(:first-child):before{color:#ffba65;}
.cinema-corner{position:absolute;width:33px;height:33px;z-index:4;pointer-events:none;border-color:#8fdbdd67;border-style:solid;}
.cinema-corner-tl{top:22px;left:22px;border-width:2px 0 0 2px}.cinema-corner-tr{top:22px;right:22px;border-width:2px 2px 0 0}.cinema-corner-bl{bottom:22px;left:22px;border-width:0 0 2px 2px}.cinema-corner-br{bottom:22px;right:22px;border-width:0 2px 2px 0}
.cinema-hud{position:absolute;top:32px;right:clamp(24px,5vw,70px);z-index:2;display:flex;flex-direction:column;align-items:flex-end;gap:8px;font:10px var(--mono,monospace);letter-spacing:.11em;color:#b8eef8;text-shadow:0 2px 15px black;pointer-events:none;}
.cinema-hud .cinema-crosshair{font:36px monospace;color:#83e9ed;opacity:.8;animation:abyss-crosshair 11s ease-in-out infinite;}
.cinema-hud span:last-child{opacity:.5;}
.cinema-offshore .cinema-hud{color:#ffe2c8;}.cinema-offshore .cinema-hud .cinema-crosshair{color:#ffbc86}
.abyss-motion-toggle{position:fixed;bottom:18px;right:18px;z-index:55;display:flex;align-items:center;gap:9px;padding:11px 14px;border:1px solid #6ee1e96c;background:#081a22e8;backdrop-filter:blur(14px);color:#b4eef4;font:10px/1.4 var(--mono,monospace);letter-spacing:.09em;cursor:pointer;box-shadow:0 8px 32px #0007;transition:background .2s,transform .2s;}
.abyss-motion-toggle:hover{background:#143444;transform:translateY(-2px)}
.abyss-motion-toggle:focus-visible{outline:2px solid white;outline-offset:3px}
.abyss-motion-toggle:before{content:'◈';color:#66d5e6;font-size:15px;line-height:1}
.abyss-motion-toggle[aria-pressed=false]:before{content:'◇';color:#8c9da3;}
.abyss-ambient{position:fixed;inset:0;pointer-events:none;z-index:14;overflow:hidden;opacity:.5;}
.abyss-ambient canvas{width:100%;height:100%;}
.abyss-motion-off .abyss-ambient,.abyss-motion-off .cinema-backdrop video{display:none}
.abyss-motion-off .cinema-scene,.abyss-motion-off .cinema-backdrop{background-image:var(--cinema-poster)}
.abyss-motion-on .hero-art{animation:abyss-breathe 19s ease-in-out infinite alternate;transform-origin:center;}
.abyss-motion-on .depth-bg{animation:abyss-breathe 23s ease-in-out infinite alternate;transform-origin:center;}
.abyss-motion-on .system-panel[data-active-world="0"] .system-image:before{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(circle at 55% 15%,rgba(255,123,25,.35),transparent 29%);animation:abyss-furnace 4s ease-in-out infinite alternate;}
.abyss-motion-on .system-panel[data-active-world="1"] .system-image:before,.abyss-motion-on .system-panel[data-active-world="4"] .system-image:before{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(circle at 50% 66%,rgba(32,255,246,.12),transparent 48%);animation:abyss-furnace 5s ease-in-out infinite alternate;}
.abyss-motion-on .gallery-picture img{transition:transform .7s ease,filter .7s ease;}
.abyss-reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease;}
.abyss-reveal.abyss-revealed{opacity:1;transform:translateY(0)}
@keyframes abyss-breathe{0%{transform:scale(1.035) translate(0,0)}100%{transform:scale(1.09) translate(-.7%,.5%)}}
@keyframes abyss-flicker{0%,94%,98%,100%{opacity:1}95%,97%{opacity:.46}}
@keyframes abyss-crosshair{0%,100%{transform:rotate(-8deg)}50%{transform:rotate(11deg)}}
@keyframes abyss-furnace{0%{opacity:.48}100%{opacity:1}}
@media(max-width:800px){.cinema-scene{height:720px;min-height:680px}.cinema-backdrop video{object-position:58% center}.cinema-offshore .cinema-backdrop video{object-position:62% center}.cinema-leviathan .cinema-backdrop video{object-position:56% center}.cinema-vignette,.cinema-offshore .cinema-vignette{background:linear-gradient(0deg,#020911 0%,#031019ec 18%,#0310196b 48%,#03101914 79%,#02091133 100%)}.cinema-caption{left:24px;right:21px;bottom:58px}.cinema-caption h2{font-size:clamp(48px,10vw,80px);line-height:.91;margin:18px 0 20px}.cinema-caption p{font-size:14px;line-height:1.65;max-width:420px;margin-bottom:20px}.cinema-hud{right:25px;top:28px;font-size:9px}.cinema-hud .cinema-crosshair{font-size:30px}.cinema-corner{width:23px;height:23px}.cinema-status{gap:6px 12px}.cinema-status span{font-size:9px}.abyss-motion-toggle{right:11px;bottom:12px;font-size:9px;padding:9px 11px}}
@media(max-width:440px){.cinema-scene{height:690px;min-height:640px}.cinema-caption{left:21px;right:18px;bottom:58px}.cinema-caption h2{font-size:47px}.cinema-caption p{font-size:13px}.cinema-tag{font-size:9px;gap:8px}.cinema-live{font-size:8px}.cinema-status span{font-size:8px;letter-spacing:0}.cinema-status span:not(:first-child):before{padding-right:5px}.cinema-hud{font-size:8px}.cinema-hud span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){html:not(.abyss-motion-on) .cinema-backdrop video{display:none}.cinema-scene,.cinema-backdrop{background:var(--cinema-poster) center/cover no-repeat}html:not(.abyss-motion-on) .abyss-ambient{display:none}.abyss-reveal{opacity:1;transform:none;transition:none}}
