.builder-canvas{overflow:hidden}
.preview-mode{display:flex;align-items:center;gap:7px;margin:0 0 14px;font-size:12px;color:#5f4c64}
.preview-mode span{margin-right:4px;font-weight:700}
.preview-mode button{border:1px solid #d8cadd;background:#fff;color:#63386b;border-radius:6px;padding:7px 12px;cursor:pointer}
.preview-mode button.active{background:#742774;border-color:#742774;color:#fff;font-weight:700}
.preview-form-wrap{overflow:auto}
.preview-positioned-form{display:block!important;position:relative;max-width:none!important;min-height:0!important;margin:0 auto!important;flex:none}
.preview-freeform-item{position:absolute;box-sizing:border-box;border:1px solid #e5dce7;border-radius:7px;background:#fff;padding:10px;overflow:hidden}
.record-form [hidden],#response-form [hidden]{display:none!important}
.record-form [inert],#response-form [inert]{opacity:.55}
.preview-freeform-item.field label{display:grid;gap:6px;margin:0}
.preview-freeform-item.field input,.preview-freeform-item.field select,.preview-freeform-item.field textarea{width:100%;max-width:100%;box-sizing:border-box}
.preview-freeform-item h2,.preview-freeform-item h3,.preview-freeform-item p{margin:0;overflow-wrap:anywhere}
.preview-freeform-item.submit,.preview-freeform-item.button{border:0;padding:0;display:flex;align-items:center}
.form-wrap.freeform-wrap{max-width:100%;overflow-x:auto}
.published-freeform{position:relative;width:var(--tablet-width);height:var(--tablet-height);margin:0 auto 70px}
.freeform-control{position:absolute;left:var(--tablet-x);top:var(--tablet-y);width:var(--tablet-w);height:var(--tablet-h);overflow:hidden}
.freeform-control>.form-card{height:100%;margin:0;overflow:auto;padding:10px 12px}
.freeform-control h2,.freeform-control h3,.freeform-control p{margin:0;overflow-wrap:anywhere}
.freeform-control button[type=submit]{border:0;border-radius:8px;background:var(--form-accent);color:#fff;font-weight:800;padding:12px 18px;cursor:pointer}
.published-freeform>.form-error{position:absolute;top:calc(100% + 8px);left:0;right:0;margin:0}
@media(max-width:620px){.published-freeform{width:var(--phone-width);height:var(--phone-height)}.freeform-control{left:var(--phone-x);top:var(--phone-y);width:var(--phone-w);height:var(--phone-h)}}

/* Editor visual */
.studio-tree,.studio-properties{background:#fcfbfe}
.tree-heading,.properties-title{font-weight:750;letter-spacing:-.02em}
.tree-tabs,.properties-tabs{gap:8px;padding:0 14px}
.tree-tabs button,.properties-tabs button{border:0;border-bottom:3px solid transparent;background:transparent;color:#675d6c;padding:10px 12px;font-size:12px;cursor:pointer}
.tree-tabs button.selected,.properties-tabs button.selected{color:#742774;border-bottom-color:#9a38a3;font-weight:800}
.tree-tabs button:hover,.properties-tabs button:hover{color:#742774;background:#f8f0f9}
.builder-palette{max-height:none;padding:0 12px 20px;background:#fcfbfe}
.palette-head{padding:16px 3px 12px}
.palette-head strong{display:block;color:#28182e;font-size:15px}
.palette-head small{display:block;color:#827389;font-size:11px;margin-top:4px;line-height:1.35}
.palette-section{margin:3px 0 17px}
.palette-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.palette-grid button{display:flex;align-items:center;gap:8px;min-width:0;min-height:54px;padding:8px;border:1px solid #e6dbea;border-radius:10px;background:#fff;color:#3b2a41;font-size:11px;font-weight:650;box-shadow:0 2px 5px #4f235408;text-align:left;line-height:1.2}
.palette-grid button span:last-child{min-width:0;overflow-wrap:anywhere}
.palette-grid button:hover{border-color:#ad73b5;background:#fbf4fc;box-shadow:0 5px 14px #74277418;transform:translateY(-1px)}
.palette-icon{display:grid;place-items:center;flex:none;width:29px;height:29px;border-radius:8px;background:linear-gradient(140deg,#f8e7fb,#eee8ff);color:#7c2c8a;font-weight:800;font-size:14px}
.studio-screen{background:#f4f0f6;border-radius:14px;box-shadow:0 12px 35px #3f22401b}
.screen-top{border-radius:10px;border-top-width:6px;box-shadow:0 4px 12px #39213d0c}
.builder-item{background:var(--item-bg,#fff);color:var(--item-color,#302434);border-color:var(--item-border,#ded7e2);border-radius:var(--item-radius,8px);font-size:var(--item-font-size,13px);box-shadow:0 4px 12px #3f224014}
.builder-item:hover{box-shadow:0 7px 18px #54205c24}
.builder-item.selected{outline:2px solid #922ca3;outline-offset:1px;box-shadow:0 0 0 4px #ad6db328,0 7px 20px #54205c2a}
.builder-item .builder-handle{background:linear-gradient(90deg,#f7eff9,#faf6fb);border-bottom:1px solid #ede1ef}
.builder-item h2,.builder-item h3,.builder-item p{color:inherit;font-size:inherit}
.builder-item h2{font-size:1.5em}.builder-item h3{font-size:1.3em}
.properties-body{padding:14px 13px 24px}
.property-intro{padding:5px 3px 14px}
.property-intro h3{font-size:18px;margin:7px 0!important;color:#24162a}
.property-intro p{font-size:11px;line-height:1.5;color:#817187;margin:0}
.property-card{background:#fff;border:1px solid #e8dfeb;border-radius:12px;padding:14px;margin:0 0 12px;box-shadow:0 4px 14px #3b224309}
.property-card h4{font-size:12px;margin:0 0 13px!important;color:#412746}
.property-card .form-row{margin-bottom:12px}.property-card .form-row:last-child{margin-bottom:0}
.property-card .form-row label{display:block;font-size:11px;font-weight:700;color:#69566f}
.property-card input,.property-card select,.property-card textarea{width:100%;max-width:100%;margin-top:5px;border:1px solid #ddd1e1;border-radius:7px;padding:8px 9px;background:#fff;color:#2c2032;font-size:12px}
.property-card input:focus,.property-card select:focus,.property-card textarea:focus{outline:2px solid #d4a6dc;border-color:#9947a6}
.property-card input[type=color]{height:40px;padding:3px}
.property-card .field-editor{padding:0;border:0;box-shadow:none}
.property-card .field-editor input[type=checkbox]{width:auto}
.property-card .measure-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.property-card .measure-grid .form-row{margin:0}
.property-tip{padding:10px 12px;border:1px dashed #d9c5df;border-radius:9px;background:#fbf5fd;color:#735d7a;font-size:11px;line-height:1.45}
.property-delete{width:100%;margin-top:4px}
.field-help{display:block;margin-top:5px;color:#766c7a;font-size:11px;font-weight:400;line-height:1.3}
.preview-freeform-item{background:var(--item-bg,#fff);color:var(--item-color,#2b2030);border-color:var(--item-border,#e5dce7);border-radius:var(--item-radius,7px);font-size:var(--item-font-size,14px)}
.preview-freeform-item h2,.preview-freeform-item h3,.preview-freeform-item p{color:inherit}
.ordered-block{background:var(--item-bg,transparent);color:var(--item-color,inherit);border-color:var(--item-border,transparent);border-radius:var(--item-radius,7px);font-size:var(--item-font-size,inherit);min-width:0}
.ordered-block>.form-card{background:var(--item-bg,#fff);color:var(--item-color,inherit);border-color:var(--item-border,#e4dce6);border-radius:var(--item-radius,12px);font-size:var(--item-font-size,inherit)}
.freeform-control{background:var(--item-bg,transparent);color:var(--item-color,inherit);border-radius:var(--item-radius,0);font-size:var(--item-font-size,inherit)}
.freeform-control>.form-card{background:var(--item-bg,#fff);color:var(--item-color,inherit);border-color:var(--item-border,#e4dce6);border-radius:var(--item-radius,12px);font-size:var(--item-font-size,inherit)}
.freeform-control h2,.freeform-control h3,.freeform-control p{color:inherit}

/* The design surface shows the actual controls; editing chrome appears on interaction. */
.studio-screen,.studio-screen.phone{min-height:0;padding:16px;gap:0;background:#fff;border:1px solid #e2dfe5;border-radius:2px;box-shadow:0 5px 18px #1c143014}
.studio-screen .screen-body.builder-canvas{flex:none;border:0;border-radius:0;box-shadow:none;background-image:none}
.builder-item{background:var(--item-bg,transparent);border:1px solid transparent;border-radius:var(--item-radius,0);box-shadow:none;overflow:visible;cursor:move}
.builder-item:hover{border-color:#b38ac0;box-shadow:none}
.builder-item.selected{border-color:#9233a2;outline:1px solid #9233a2;outline-offset:0;box-shadow:none}
.builder-item .builder-content{height:100%;padding:0;overflow:hidden}
.builder-item .builder-handle{position:absolute;z-index:3;top:-7px;left:50%;transform:translateX(-50%);width:30px;height:13px;line-height:11px;border:1px solid #b486be;border-radius:4px;background:#fff;color:#71357c;font-size:12px;opacity:0;pointer-events:none}
.builder-item:hover .builder-handle,.builder-item.selected .builder-handle{opacity:1;pointer-events:auto}
.builder-item .builder-resize{opacity:0;z-index:3;background:#fff;border:2px solid #9233a2;border-radius:2px;width:10px;height:10px;right:-5px;bottom:-5px}
.builder-item:hover .builder-resize,.builder-item.selected .builder-resize{opacity:1}
.builder-item h2,.builder-item h3,.builder-item p{margin:0;border:0;padding:0;background:none;color:inherit}
.builder-item h2{font-size:1.5em}.builder-item h3{font-size:1.3em}
.builder-item.field label{margin:0;color:inherit}
.builder-item.field label input,.builder-item.field label select,.builder-item.field label textarea{border-color:#c9c9cf;background:#f5f5f5;border-radius:2px}
.builder-item.button .builder-content button{display:block;width:100%;height:100%;border-radius:0;background:var(--item-bg,var(--app-accent));color:var(--item-color,#fff);font-size:inherit}
.builder-item.divider .builder-content{display:flex;align-items:center}
.builder-item.divider hr{width:100%;margin:0}
.preview-freeform-item{padding:0;background:var(--item-bg,transparent);border-color:transparent;border-radius:var(--item-radius,0)}
.preview-freeform-item.field input,.preview-freeform-item.field select,.preview-freeform-item.field textarea{background:#f5f5f5;border-radius:2px}
.preview-freeform-item.button button{width:100%;height:100%;border-radius:0}
.preview-form-wrap .record-form .btn.primary{background:var(--item-bg,var(--app-accent,#742774));color:var(--item-color,#fff);border:0}
.freeform-control>.form-card{padding:0;border:0;box-shadow:none;border-radius:0;background:transparent}
.freeform-control.field>.form-card{background:var(--item-bg,transparent)}
.freeform-control button[type=submit]{width:100%;height:100%;border-radius:0}
