/* The scene uses the editor's original styles; only the read-only shell changes. */
.preview-mode .app{display:block;position:fixed;inset:0;height:100%;padding:0}
.preview-mode .app>header,.preview-mode .app>aside,.preview-mode .app>footer,.preview-mode #lib,.preview-mode #lib3d,.preview-mode .drawer-shade,.preview-mode #fab{display:none!important}
.preview-mode #stage{position:absolute;inset:100px 0 48px;min-width:0;min-height:0;touch-action:none}
.preview-mode #plan{touch-action:none}
.preview-mode #hint3d,.preview-mode #scalebar{display:none!important}
.preview-mode #previewBar{position:fixed;z-index:40;inset:0 0 auto;min-height:96px;background:#fffdf9;border-bottom:1px solid #dedfd5;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.preview-title{min-width:0}.preview-title span{font-size:9px;letter-spacing:2px;color:#587366;font-weight:700}.preview-title h1{margin:3px 0 0;font-size:17px;line-height:1.35;max-width:48vw;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.preview-tabs{display:flex;background:#edf1ec;border-radius:12px;padding:4px;flex-shrink:0;gap:3px}
.preview-tabs button,#previewActions button,#previewRetry{border:0;border-radius:9px;min-height:44px;min-width:44px;padding:8px 12px;background:transparent;font-weight:600;cursor:pointer}
.preview-tabs button[aria-pressed=true]{background:#286658;color:white;box-shadow:0 2px 4px #1f4e4220}
.preview-tabs button:disabled,#previewActions button:disabled{opacity:.45;cursor:wait}
#previewActions{position:fixed;bottom:calc(62px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);display:flex;z-index:40;white-space:nowrap;gap:4px;background:#fffdf9ed;padding:5px;border:1px solid #dfe4db;border-radius:14px;box-shadow:0 5px 24px #30443918}
#previewActions button:hover{background:#eaf0e9}
#previewHint{position:fixed;bottom:0;left:0;right:0;z-index:40;margin:0;min-height:48px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));text-align:center;font-size:11px;color:#546b5e;background:#fffdf9;border-top:1px solid #e0e4db}
#previewStatus{position:fixed;inset:100px 0 48px;z-index:45;background:#f7f4eef7;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:24px;gap:8px}
#previewStatus strong{font-size:18px}#previewStatus p{color:#68776b;line-height:1.7;max-width:340px;margin:0}#previewRetry{background:#286658;color:#fff;margin-top:8px}#previewStatus[hidden]{display:none}
.preview-mode button:focus-visible{outline:3px solid #c78437;outline-offset:2px}
@media(max-width:480px){.preview-mode #previewBar{padding:10px 12px;gap:8px}.preview-title h1{font-size:15px;max-width:40vw}.preview-tabs button{padding:7px 10px}.preview-mode #stage{bottom:58px}#previewHint{font-size:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
