/* The preview owns the full right edge, independently of the editing page. */
:root{--preview-width:clamp(320px,33vw,500px)}
.preview-panel{display:flex;flex-direction:column;gap:0;overflow:visible;padding:14px 16px 12px}
.preview-header{flex:none;min-width:0}
.preview-heading{margin:0;gap:8px;min-height:32px}
.preview-heading h2{margin:0;font-size:17px;white-space:nowrap}
.expand-preview{padding:7px 9px;font-size:10px}
.preview-meta{display:flex;justify-content:space-between;align-items:center;gap:6px;height:30px;min-width:0}
.device-label{justify-content:flex-start;gap:7px;margin:0;min-width:0;white-space:nowrap;font-size:9px}
.device-label>span:first-child{font-size:10px}
.live-controls{display:flex;align-items:center;gap:4px;padding:0;flex:none}
.live-controls>span{font-size:8px;color:#a0758c;margin-right:2px}
.live-controls button{width:24px;height:24px;padding:0;font-size:14px;line-height:1}
.preview-header .live-mode-button{margin:0;padding:6px 8px;min-height:34px;gap:7px;font-size:10px;white-space:nowrap;border-radius:6px}
.preview-panel .phone-wrap{flex:1;min-height:0;min-width:0;align-self:stretch;align-items:center;padding:10px 9px 16px;position:relative}
.preview-panel .phone{flex:none;max-width:none}
.preview-panel .phone.iphone-device{padding:7px;border-radius:clamp(28px,3vw,46px)}
.preview-panel #preview.iphone-screen{border-radius:clamp(22px,2.5vw,39px)}
.preview-bottom{display:flex;align-items:stretch;gap:10px;flex:none;position:relative;padding-top:9px;border-top:1px solid var(--line)}
.preview-bottom .lens-control{min-width:0;flex:1;margin:0;max-width:none}
.preview-bottom .segmented{margin:0;padding:2px}
.preview-bottom .segmented button{padding:5px 0;font-size:11px}
.preview-bottom .segmented button small{margin-top:1px;font-size:8px}
.preview-settings{flex:none;align-self:stretch}
.preview-settings>summary{display:flex;align-items:center;gap:7px;height:100%;padding:0 10px;list-style:none;border:1px solid #e2e7f0;border-radius:7px;background:#fafbfe;color:#6d7a90;font-size:10px;cursor:pointer;white-space:nowrap}
.preview-settings>summary::-webkit-details-marker{display:none}
.preview-settings>summary:focus-visible{outline:3px solid #a2b4ff;outline-offset:3px}
.preview-settings[open]>summary{background:#eef2ff;color:var(--blue);border-color:#cdd8fc}
.preview-settings[open]>summary span{transform:rotate(180deg)}
.preview-settings-popover{position:absolute;bottom:calc(100% + 8px);right:0;left:0;z-index:10;padding:18px;background:#fff;border:1px solid #e1e6f0;border-radius:12px;box-shadow:0 8px 35px #24344d28;max-height:min(420px,65dvh);overflow:auto}
.preview-settings-popover .preview-options{padding:0;margin:0;border:0;max-width:none}
.preview-settings-popover .footnote{margin:15px 0 0;max-width:none}
@media(min-width:701px){
  .topbar,.workspace,body>footer{width:calc(100% - var(--preview-width));max-width:none;margin-left:0;margin-right:var(--preview-width)}
  .topbar{padding:0 22px;gap:12px}
  .top-note{display:none}
  .header-actions{gap:12px;flex:none}
  .workspace{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:16px;padding:20px}
  .model-panel{grid-column:1}
  .scene-column{grid-column:2}
  .preview-panel{position:fixed;inset:0 0 0 auto;width:var(--preview-width);height:100vh;height:100dvh;border:0;border-left:1px solid #e1e5ee;border-radius:0;z-index:5;box-shadow:-6px 0 24px #263a5d03}
  .model-options{display:block}
  .model-options .label-row{min-width:0;margin-bottom:12px}
  .material-row{margin-top:20px}
  .pose-grid{max-height:500px}
  .pose-card .pose-thumbnail,.preset-load img{height:auto;aspect-ratio:6/5}
  .pose-card>span{font-size:9px}
  .model-panel .joint-editor .control{display:block;width:auto;margin-right:0}
  body>footer{padding:0 20px 18px;gap:12px}
  body>footer>span:last-child{display:none}
}
@media(min-width:701px) and (max-width:1050px){
  .topbar{height:78px;padding:0 14px}
  .brand{gap:7px}.brand-logo{width:46px;height:46px}
  .brand-copy strong{font-size:15px}.brand-title{font-size:10px;letter-spacing:0}
  .header-actions{gap:5px}.header-actions .primary{font-size:9px;padding:9px 7px}.header-actions .primary svg,.header-actions .quiet span{display:none}
  .workspace{grid-template-columns:minmax(0,1fr);padding:14px;gap:14px}
  .model-panel,.scene-column{grid-column:1}
  .pose-grid{max-height:320px}
  .pose-card{min-height:98px}
}
@media(max-width:700px){
  .topbar{height:70px;min-height:70px;padding:6px 12px}
  .workspace{padding:0 10px 14px;gap:14px}
  .preview-panel{order:-1;height:calc(100svh - 70px);height:calc(100dvh - 70px);min-height:280px;width:calc(100% + 20px);margin:0 -10px;padding:12px 14px max(10px,env(safe-area-inset-bottom));border:0;border-bottom:1px solid var(--line);border-radius:0}
  .preview-panel .phone-wrap{padding:8px 9px 14px}
  .preview-heading h2{font-size:16px}
  .model-panel{order:0}.scene-column{order:1}
}
@media(max-height:550px){
  .preview-panel{padding-top:8px;padding-bottom:8px}
  .preview-heading{min-height:28px}.preview-heading h2{font-size:15px}
  .preview-meta{height:26px}.preview-header .live-mode-button{min-height:29px;padding:3px 6px}
  .preview-panel .phone-wrap{padding-top:6px;padding-bottom:8px}
  .preview-bottom{padding-top:6px}
}
