/* V7 enhancement: separate gate mechanism overlay, never baked into scene art. */
.v7-gate .realm-canvas {position:relative; overflow:hidden; isolation:isolate; min-height:620px}
.v7-gate .v7-iris {position:absolute; z-index:2; width:min(38vw,380px); height:min(38vw,380px); max-width:64%; aspect-ratio:1; left:50%; top:42%; transform:translate(-50%,-50%); border:14px ridge #8d7249; border-radius:50%; box-shadow:0 0 0 8px #211c1b,0 0 0 13px #a17c45,0 0 55px #12a8d95a, inset 0 0 60px #040407; background:radial-gradient(circle,#051c28,#080b12 75%); overflow:hidden; pointer-events:none; transition:filter .8s, box-shadow .8s}
.v7-iris:before {content:'ᚠ ᚢ ᚦ ᚨ ᚱ ᚲ ᚷ ᚹ ᛃ ᛗ'; position:absolute; inset:8px; border:2px dashed #c7a16a; border-radius:50%; color:#efcc8a; font-size:16px; letter-spacing:4px; text-align:center; padding-top:10px; box-sizing:border-box; transition:transform 1.8s cubic-bezier(.2,.7,.1,1)}
.v7-door {position:absolute; top:12%; bottom:12%; width:44%; z-index:2; background:linear-gradient(95deg,#211c1a,#6a5036 52%,#161419); border:2px solid #b3905a; box-shadow:inset 0 0 24px #030304; transition:transform 1.6s ease}
.v7-door-left {left:7%; border-radius:80% 0 0 80%}
.v7-door-right {right:7%; border-radius:0 80% 80% 0}
.v7-rune {position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%);font-size:45px;color:#e4c38b;text-shadow:0 0 20px #77c8eb;transition:opacity .3s}
.v7-gate[data-gate-phase="aligning"] .v7-iris:before {transform:rotate(540deg)}
.v7-gate[data-gate-phase="aligning"] .v7-iris {filter:brightness(1.45)}
.v7-gate[data-gate-phase="preview"] .v7-door-left,.v7-gate[data-gate-phase="entered"] .v7-door-left {transform:translateX(-115%)}
.v7-gate[data-gate-phase="preview"] .v7-door-right,.v7-gate[data-gate-phase="entered"] .v7-door-right {transform:translateX(115%)}
.v7-gate[data-gate-phase="preview"] .v7-rune,.v7-gate[data-gate-phase="entered"] .v7-rune {opacity:0}
.v7-gate[data-gate-phase="entered"] .v7-iris {transform:translate(-50%,-50%) scale(.68); top:25%; opacity:.75}
.v7-gate .veil {z-index:3;position:relative;pointer-events:none}
.v7-gate .veil button {pointer-events:auto}
.v7-gate[data-gate-phase="entered"] .veil {display:none}
.v7-gate .floating-markers {z-index:5}
@media(max-width:750px){.v7-gate .v7-iris{width:245px;height:245px;top:35%}.v7-gate .realm-canvas{min-height:570px}}
@media(prefers-reduced-motion:reduce){.v7-gate *,.v7-gate *:before{animation:none!important;transition-duration:.01ms!important}}

/* V8 interaction: purely decorative gate pieces cannot intercept pointer actions */
.v7-gate .v7-door,.v7-gate .v7-iris,.v7-gate .v7-rune,.v7-gate .v3-gate-ring{pointer-events:none!important}
.v7-gate .veil{z-index:8;pointer-events:none}
.v7-gate .veil a,.v7-gate .veil button,.v7-gate .veil select,.v7-gate .veil input{pointer-events:auto;position:relative;z-index:9}
.v7-gate .floating-markers{position:relative;z-index:9}
.v7-gate .floating-markers button,.v7-gate .floating-markers a{pointer-events:auto;position:relative;z-index:10;touch-action:manipulation}
.v7-gate #discovery-panel{position:relative;z-index:11}
