/* ===== 原型预览台 / 演示控制台 ===== */
html,body{height:100%;}
body{overflow:hidden;} /* 预览台不产生外层滚动，只有左侧内容区内部滚动 */

.stage{
  height:100vh;display:flex;align-items:center;justify-content:center;gap:40px;
  padding:20px 24px;overflow:hidden;
}
.device-wrap{display:flex;flex-direction:column;width:390px;height:calc(100vh - 40px);flex:none;gap:9px}
.device-meta{flex:none;display:flex;align-items:baseline;gap:8px;padding-left:2px;color:var(--text-3);font-size:10px;line-height:1.4}
.device-meta b{font-family:var(--font-display);font-size:13px;letter-spacing:1.5px;color:var(--gold-1);font-weight:700}
.device-meta span{font-size:9px;color:var(--text-4);letter-spacing:.5px}

/* 预览区域：不再套手机模型，只有内容面板与内部滚动 */
.phone{
  position:relative;flex:1;width:100%;min-height:0;overflow:hidden;
  background:#05030a;border:1px solid rgba(185,167,255,.14);border-radius:16px;
  box-shadow:0 24px 60px rgba(0,0,0,.55),0 0 60px rgba(124,92,255,.10);
  display:flex;flex-direction:column;
}
.screen{
  position:relative;flex:1;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;
  background:#05030a;scrollbar-width:none;
}
.screen::-webkit-scrollbar{display:none}

/* 手机状态栏 / home 条只在截图与长图模式出现 */
.statusbar{display:none}
.home-bar{display:none}

/* 演示控制台：与预览同高，内部独立滚动 */
.demo-panel{
  width:300px;height:calc(100vh - 40px);overflow-y:auto;flex:none;align-self:center;
  border-radius:20px;padding:16px;color:var(--text-2);
  background:linear-gradient(165deg,rgba(255,255,255,.07),rgba(255,255,255,.02) 60%,rgba(124,92,255,.10));
  border:1px solid var(--line-soft);backdrop-filter:blur(14px);
  box-shadow:0 30px 60px rgba(0,0,0,.45);scrollbar-width:thin;scrollbar-color:rgba(185,167,255,.3) transparent;
}
.demo-panel::-webkit-scrollbar{width:5px}
.demo-panel::-webkit-scrollbar-thumb{background:rgba(185,167,255,.28);border-radius:3px}
.demo-panel h4{font-size:12px;font-weight:700;color:var(--text-1);letter-spacing:1px;display:flex;align-items:center;gap:6px;margin:0 0 4px}
.demo-panel h4 em{font-style:normal;font-size:9px;color:var(--text-4);font-weight:400;letter-spacing:0}
.demo-panel .dp-note{font-size:10px;color:var(--text-3);line-height:1.6;margin:2px 0 12px}
.demo-panel .dp-group{margin-bottom:12px}
.demo-panel .dp-label{font-size:10px;color:var(--text-3);margin-bottom:6px;display:flex;align-items:center;gap:4px}
.demo-panel .dp-row{display:flex;flex-wrap:wrap;gap:6px}
.demo-panel .dp-btn{font-size:10px;padding:5px 9px;border-radius:8px;background:rgba(255,255,255,.05);
  border:1px solid var(--line-soft);color:var(--text-2);transition:.15s;line-height:1.5}
.demo-panel .dp-btn:hover{background:rgba(255,255,255,.09);color:var(--text-1)}
.demo-panel .dp-btn.on{background:rgba(185,167,255,.16);border-color:var(--line-strong);color:var(--gold-1);font-weight:600}
.demo-panel .dp-toggle{display:flex;align-items:center;justify-content:space-between;gap:8px;
  padding:7px 10px;border-radius:9px;background:rgba(255,255,255,.04);border:1px solid var(--line-soft);font-size:11px;margin-bottom:6px}
.demo-panel .dp-switch{width:32px;height:18px;border-radius:9px;background:rgba(255,255,255,.12);position:relative;flex:none;transition:.2s}
.demo-panel .dp-switch:after{content:"";position:absolute;width:14px;height:14px;border-radius:50%;top:2px;left:2px;background:#bdb1d6;transition:.2s}
.demo-panel .dp-switch.on{background:linear-gradient(90deg,#7c5cff,#c6a7ff)}
.demo-panel .dp-switch.on:after{left:16px;background:#fff}
.demo-panel .dp-actions{display:flex;gap:6px;margin-top:4px}
.demo-panel .dp-actions .dp-btn{flex:1;text-align:center}
.demo-panel .dp-pages{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.demo-panel .dp-pages .dp-btn{text-align:center}
.demo-panel .dp-hr{height:1px;background:var(--line-soft);margin:12px 0}

/* 窄屏：预览与演示控制台上下排布，页面整体滚动，避免嵌套滚动 */
@media (max-width: 900px){
  body{overflow:auto}
  .stage{height:auto;min-height:100vh;overflow:visible;flex-direction:column;align-items:stretch;padding:16px}
  .device-wrap{width:100%;height:auto}
  .device-meta{padding-left:0}
  .phone{height:auto;min-height:0;border-radius:14px}
  .screen{overflow:visible;max-height:none}
  .demo-panel{width:100%;height:auto;overflow:visible;align-self:stretch}
}

/* embed（截图/嵌入）模式：内容铺满视口，保留状态栏，隐藏控制台与装饰 */
body.embed{overflow:hidden}
body.embed .stage{padding:0;height:100vh;gap:0;display:block}
body.embed .device-wrap{width:100vw;height:100vh;gap:0}
body.embed .phone{width:100vw;height:100vh;border-radius:0;box-shadow:none;border:0}
body.embed .device-meta{display:none}
body.embed .demo-panel{display:none}
body.embed .statusbar{display:flex}
body.embed .screen{flex:1}

/* 静态截图模式：关闭动画（避免入场动画停在初始不可见状态） */
body.shot *{animation:none!important;transition:none!important}

/* 长图模式：取消固定高度，整页截图 */
body.full{overflow:auto}
body.full .stage{padding:0;display:block;height:auto}
body.full .device-wrap{width:390px;height:auto;margin:0 auto;gap:0}
body.full .phone{height:auto;min-height:100vh;border-radius:0;box-shadow:none;border:0}
body.full .screen{overflow:visible;flex:none;height:auto}
body.full .demo-panel{display:none}
body.full .device-meta{display:none}
body.full .statusbar{display:flex}
