.design-editor { width:min(1360px,96vw); max-width:none; height:94vh; max-height:94vh; padding:0; border:1px solid #bed4e3; border-radius:22px; color:#12334f; background:#f3f8fb; }
.design-editor::backdrop { background:#102b46aa; }
.design-editor[open] { display:flex; flex-direction:column; }
.design-editor * { box-sizing:border-box; }
.design-editor { color-scheme:light; --blue:#0070bd; --line:#bed4e3; }
.design-editor input,.design-editor select,.design-editor textarea { background:#fff; color:#12334f; border-color:#bed4e3; }
.design-editor label { text-transform:none; letter-spacing:normal; }
.design-editor .btn.ghost { color:#176193; border-color:#91b5ce; }
.design-editor header,.design-editor footer { padding:16px 24px; background:white; display:flex; gap:12px; align-items:center; justify-content:space-between; border-bottom:1px solid #dce6ed; }
.design-editor header h2 { font-size:22px; margin:0; }
.design-editor header,.design-editor footer,.design-mobile-tabs { flex:none; }
.design-editor header p { margin:4px 0 0; font-size:12px; }
.design-editor footer { border-top:1px solid #dce6ed; border-bottom:0; flex-wrap:wrap; }
.design-editor__body { display:grid; grid-template-columns:minmax(290px,370px) minmax(0,1fr); flex:1; min-height:0; }
.design-editor__settings { overflow:auto; padding:20px; background:#fff; border-right:1px solid #dce6ed; }
.design-editor__settings fieldset { border:0; margin:0 0 22px; padding:0; min-width:0; }
.design-editor__settings legend { font-weight:800; margin-bottom:10px; }
.design-editor__settings label { display:block; font-size:13px; margin:12px 0 5px; }
.design-editor__settings input:not([type=checkbox]),.design-editor__settings select,.design-editor__settings textarea { width:100%; }
.design-editor__settings input[type=color] { height:40px; padding:3px; }
.design-editor__settings input[type=checkbox] { width:auto; margin-right:8px; }
.design-editor__settings textarea { min-height:70px; }
.design-editor__settings details { border-top:1px solid #dce6ed; padding:12px 0; }
.design-editor__settings summary { cursor:pointer; font-weight:700; }
.design-editor__hint { font-size:12px; color:#526d84; line-height:1.6; }
.design-editor__preview { padding:18px; overflow:auto; min-width:0; }
.design-preview-controls { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:14px; align-items:center; }
.design-preview-controls select { width:auto; max-width:180px; }
.design-preview-controls input { width:74px; }
.design-preview-stage { margin:auto; width:100%; overflow:hidden; border:1px solid #c5dbea; border-radius:16px; background:#fff; box-shadow:0 8px 24px #12334f12; }
.design-preview-stage iframe { border:0; display:block; transform-origin:top left; background:#f3f8fb; }
.design-mobile-tabs { display:none; }
.design-editor footer [role=status] { flex:1; min-width:180px; font-size:12px; }
.design-editor .btn { font-size:13px; padding:10px 14px; }
@media(max-width:760px) {
  .design-editor { width:100vw; height:100dvh; max-height:100dvh; border-radius:0; }
  .design-editor header,.design-editor footer { padding:12px; }
  .design-editor header h2 { font-size:18px; }
  .design-editor__body { display:block; min-height:0; }
  .design-editor__settings,.design-editor__preview { height:100%; overflow:auto; }
  .design-mobile-tabs { display:flex; gap:8px; padding:8px 12px; }
  .design-editor[data-tab=settings] .design-editor__preview,.design-editor[data-tab=preview] .design-editor__settings { display:none; }
}
