:root{--preview-bar-height:42px;--preview-app-height:calc(100vh - 42px)}
html,body{height:100%;margin:0}body{padding-top:var(--preview-bar-height);box-sizing:border-box}
.preview-bar{position:fixed;z-index:2000;top:0;left:0;right:0;height:var(--preview-bar-height);background:#fcfbf7;border-bottom:1px solid #e1e6dc;color:#526658;font:12px/1.4 -apple-system,BlinkMacSystemFont,'PingFang SC','Microsoft YaHei',sans-serif}
.preview-bar-inner{height:100%;max-width:1440px;margin:auto;display:flex;align-items:center;gap:8px;padding:0 12px}
.preview-mark{margin-right:auto;white-space:nowrap;font-size:11px;color:#788776}
.preview-bar a,.preview-bar button{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:4px 11px;border:1px solid #dce3d6;border-radius:6px;background:transparent;font:inherit;color:inherit;white-space:nowrap;text-decoration:none;cursor:pointer}
.preview-bar a[aria-current=page]{background:#285846;border-color:#285846;color:#fff}
.preview-bar a:focus-visible,.preview-bar button:focus-visible{outline:2px solid #285846;outline-offset:2px}
#preview-loading{position:fixed;z-index:1500;inset:var(--preview-bar-height) 0 0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;background:#f8f7f3;color:#536c5c;font:14px/1.8 -apple-system,BlinkMacSystemFont,'PingFang SC','Microsoft YaHei',sans-serif;text-align:center;padding:24px}
#preview-loading[hidden]{display:none}#preview-loading a{color:#285846;text-decoration:underline}#preview-loading small{font-size:11px;color:#8a9189}
.preview-mobile #app{height:var(--preview-app-height);max-width:430px}
.preview-mobile .bottom-nav{height:calc(78px + env(safe-area-inset-bottom,0px));padding-bottom:calc(20px + env(safe-area-inset-bottom,0px))}
.preview-admin #admin-app{min-height:var(--preview-app-height)}
.preview-admin .desk-side,.preview-admin .desk-drawer,.preview-admin .desk-overlay{top:var(--preview-bar-height)}
.preview-admin .desk-drawer{height:var(--preview-app-height)}
@media(max-width:360px){.preview-bar-inner{gap:5px;padding:0 8px}.preview-bar a,.preview-bar button{padding-left:8px;padding-right:8px}.preview-mark{font-size:10px}}
