/* 3D圆柱展示模式 */
.stage.stage-3d {
    perspective: 1200px;
}
.stage.stage-3d .stage-tiles {
    display: block;
    inset: 0;
    transform: none;
    transform-style: preserve-3d;
    will-change: transform;
}
.stage.stage-3d::after {
    display: none;
}
.stage-row-wrap {
    position: absolute;
    top: 50%;
    left: -30%;
    width: 160%;
    margin-top: -60px;
    opacity: 0;
    transition: opacity 0.6s ease;
    will-change: opacity;
    contain: layout style;
}
.stage-row-wrap.visible {
    opacity: 1;
}
/* 暗角overlay：固定shadow，只用opacity做动画（GPU合成，避免每帧重绘box-shadow） */
.cylinder-vignette {
    position: absolute;
    inset: 0;
    z-index: 1;
    box-shadow: inset 0 0 clamp(120px, 25vw, 300px) clamp(40px, 8vw, 100px) rgba(0,0,0,0.7);
    pointer-events: none;
    opacity: 0.5;
    will-change: opacity;
}
/* 3D模式瓷砖3D光影 */
.stage.stage-3d .stage-tile {
    box-shadow: 0 2px 12px rgba(0,0,0,0.3);
    contain: strict;
}
/* 背面行保持可见：圆柱透视效果 */
@media (max-width: 768px) {
    .stage-row-wrap {
        margin-top: -45px;
    }
}
