/* The outer page scales one 1920×1080 same-origin viewport. Shared desktop
   breakpoints and chart coordinates therefore remain at their native size. */
html{height:100%}
.web-demo-host{margin:0;min-height:100%;background:#020a18;color:#dceeff;font-family:"Microsoft YaHei","Segoe UI",sans-serif}
.web-demo-host [hidden]{display:none!important}
.presentation-viewport{position:fixed;inset:0;display:grid;place-items:center;overflow:clip;background:#020a18}
.presentation-stage{position:relative;width:0;height:0}
.presentation-stage iframe{position:absolute;left:0;top:0;display:block;width:1920px;height:1080px;border:0;transform-origin:0 0;visibility:hidden}
.presentation-stage[data-state="ready"] iframe{visibility:visible}

/* Browser-only additions inside the fixed viewport. */
.web-demo .app-shell{width:1920px;height:1080px;min-height:1080px;max-width:none}
.web-demo .app-header>.brand{grid-column:2}
.web-demo .app-header>.header-actions{grid-column:3}
.web-demo .web-demo-status{display:inline-flex;align-items:center;gap:7px;color:#adcde5;font-size:12px;white-space:nowrap}
.web-demo .web-demo-status::before{content:"";width:5px;height:5px;background:#6be0e9;box-shadow:0 0 6px #36bfd8}
.web-demo .app-footer{gap:10px}
.web-demo .demo-badge{height:25px;font-size:12px;padding:0 8px}
.web-demo .empty-state p{max-width:35em}
.web-demo .experience-return{display:inline-flex;align-items:center;text-decoration:none}
.web-demo .experience-return:focus-visible{outline:2px solid #ffe18a;outline-offset:-3px}
.web-demo noscript{display:block;margin:24px;padding:20px;color:#fff0c2;border:1px solid #7f6939;background:#202c3f;line-height:1.8}
