/* Isolated review preview: production styles are intentionally unchanged. */
.header-actions{display:contents}.header-phone{display:none}
.loop-toggle{position:absolute;right:16px;bottom:16px;z-index:2;min-width:62px;min-height:44px;padding:9px 16px;border:1px solid rgba(255,255,255,.75);background:rgba(10,16,19,.88);color:#fff;font-size:13px;line-height:1.2;cursor:pointer}
.loop-toggle[hidden]{display:none}.loop-toggle:focus-visible{outline:3px solid #f4cb74;outline-offset:3px}
.process-video-frame{position:relative}.loop-loading{background:linear-gradient(135deg,#182227 0%,#0c1215 58%,#161b1e 100%)}.loop-loading video{opacity:0}.loop-loading::after{content:"视频画面加载中";position:absolute;inset:0;z-index:1;display:grid;place-items:center;color:#aab6bc;font-size:12px;letter-spacing:.08em;pointer-events:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.diagram-panel picture{display:block;width:100%;height:100%}.diagram-panel picture img{display:block}
.gallery-caption a{display:inline-block;color:#d0d7da;margin-top:7px;text-decoration:underline;text-underline-offset:3px}
.automation-note{color:#a7b1b6;font-size:12px}.press-facts dt{color:#aab4b9;font-size:12px}.process-film figcaption{font-size:12px}
@media(max-width:800px){.header-actions{display:flex;align-items:center;gap:10px}.header-phone{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 13px;border:1px solid #858d91;color:#f2f4f4;font-size:12px;white-space:nowrap}}
@media(max-width:580px){.header-inner{gap:10px}.header-actions{gap:8px}.header-phone{padding-inline:10px}.loop-toggle{right:10px;bottom:10px}.diagram-panel{aspect-ratio:auto;height:auto}.diagram-panel .visual-button{display:block;height:auto;padding:10px 10px 55px}.diagram-panel picture{height:auto}.diagram-panel picture img{height:auto;width:100%;object-fit:contain}.gallery-caption{font-size:12px}.process-film figcaption{font-size:11px}.automation-note{font-size:12px}}

/* Playback and enlarged-image loading states for this preview. */
.buffer-message{position:absolute;left:50%;top:50%;z-index:3;transform:translate(-50%,-50%);padding:10px 14px;border:1px solid rgba(255,255,255,.3);background:rgba(10,16,19,.88);color:#fff;font-size:12px;white-space:nowrap;pointer-events:none}.buffer-message[hidden]{display:none}
#image-dialog.is-loading .image-scroll{display:grid;min-height:220px}#image-dialog.is-loading .image-scroll::after{display:grid}#image-dialog.is-loading .image-scroll img{opacity:0}
