.gate-liquid-tank{position:absolute;z-index:5;left:82.55%;top:37.82%;width:6.15%;height:13.35%;pointer-events:none;overflow:hidden;border-radius:9% / 4%;box-shadow:inset 2px 0 5px #091507,0 0 6px #b8ff351c}
.gate-liquid-tank svg{display:block;width:100%;height:100%;overflow:hidden}
.tank-liquid-body{animation:tankSlosh 4.8s ease-in-out infinite;transform-origin:40px 32px}
.tank-bubble{animation:tankBubbles var(--rise) linear var(--delay) infinite}
.tank-current{animation:tankCurrent 5s ease-in-out infinite;transform-origin:40px 100px}
@keyframes tankSlosh{0%,100%{transform:translateY(0) rotate(-1.5deg)}50%{transform:translateY(3px) rotate(1.5deg)}}
@keyframes tankBubbles{0%{transform:translate(0,0);opacity:0}12%{opacity:.85}60%{transform:translate(3px,-75px);opacity:.75}94%,100%{transform:translate(-2px,-128px);opacity:0}}
@keyframes tankCurrent{0%,100%{transform:translateX(-3px) scaleX(.85);opacity:.15}50%{transform:translateX(3px) scaleX(1.08);opacity:.3}}
.gate-panel-lamps i{position:relative;overflow:hidden}
.gate-red-scan{position:absolute;z-index:3;top:-15%;bottom:-15%;left:-75%;width:65%;background:linear-gradient(90deg,transparent,#ff70669c 22%,#fff0dbed 52%,#ff8c7f8c 76%,transparent);filter:blur(.4px);transform:translateX(0);animation:gateRedSweep 2.6s ease-in-out infinite;pointer-events:none;mix-blend-mode:screen}
/* Both indicators sweep horizontally together; the existing green beacon takes over on entry. */
@keyframes gateRedSweep{0%,16%{transform:translateX(0);opacity:0}26%{opacity:.95}58%{opacity:.9}68%,100%{transform:translateX(285%);opacity:0}}
.gate-powered .gate-red-scan{display:none}
@media(prefers-reduced-motion:reduce){.tank-liquid-body,.tank-bubble,.tank-current,.gate-red-scan{animation:none}.tank-bubble{opacity:.4}.gate-red-scan{display:none}}
.tank-level{transform:translateY(calc(var(--liquid-drain,0) * 138px)) scaleY(calc(1 - var(--liquid-drain,0)));transform-origin:40px 32px}.tank-liquid-body{animation-duration:1.8s}.tank-current{animation-duration:1.4s}@keyframes tankBubbles{0%{transform:translate(0,0);opacity:0}8%{opacity:.9}45%{transform:translate(5px,-62px);opacity:.85}80%{transform:translate(-4px,-110px);opacity:.8}100%{transform:translate(1px,-132px);opacity:0}}
