/* KlipTok v77 · Constructor web (kt-v77-builder.js) */
.kb-stage{position:relative;padding:18px;min-height:100%}
.kb-page{margin:0 auto;max-width:var(--kb-max,1100px);min-height:420px;box-shadow:0 10px 40px -12px rgba(15,23,42,.35);border-radius:6px;transition:max-width .2s;overflow:visible}
.kb-edit .kb-node{cursor:default;outline:1px dashed transparent;outline-offset:-1px;transition:outline-color .1s}
.kb-edit .kb-hov{outline-color:rgba(124,58,237,.55)}
.kb-edit .kb-sel{outline:2px solid #7c3aed!important;outline-offset:-2px}
.kb-edit .kb-off{opacity:.25}
.kb-edit .kb-emptyc{min-height:70px;background:repeating-linear-gradient(45deg,rgba(124,58,237,.06),rgba(124,58,237,.06) 8px,transparent 8px,transparent 16px);display:grid;place-items:center}
.kb-edit .kb-emptyc::before{content:'Suelta aquí';color:#7c3aed;font:600 12px system-ui;opacity:.8}
.kb-edit [data-edit]{cursor:text}.kb-editing{outline:2px solid #ec4899!important;background:rgba(236,72,153,.08)}
.kb-edit a,.kb-edit button:not(.kb-hbtn){pointer-events:auto}
.kb-edit iframe,.kb-edit video,.kb-edit audio{pointer-events:none}
.kb-preview .kb-edit .kb-node{outline:0!important}.kb-preview .kb-emptyc::before{content:''}.kb-preview .kb-emptyc{background:none;min-height:0}
.kb-empty{display:grid;gap:.4rem;place-items:center;text-align:center;padding:4rem 1rem;color:#64748b;border:2px dashed #cbd5e1;border-radius:12px;margin:1rem}
.kb-handles{position:absolute;z-index:20;display:flex;align-items:center;gap:2px;background:#7c3aed;border-radius:8px 8px 8px 0;padding:2px;box-shadow:0 4px 14px rgba(0,0,0,.3)}
.kb-hlabel{color:#fff;font:700 11px system-ui;padding:0 8px;white-space:nowrap}
.kb-hbtn{border:0;background:rgba(255,255,255,.18);color:#fff;border-radius:6px;min-width:26px;height:26px;cursor:pointer;font-size:13px;line-height:1}
.kb-hbtn:hover:not([disabled]){background:rgba(255,255,255,.38)}.kb-hbtn[disabled]{opacity:.35;cursor:default}.kb-grip{cursor:grab;touch-action:none}.kb-danger:hover{background:#dc2626!important}
.kb-drop{position:absolute;z-index:30;pointer-events:none}
.kb-drop.kb-line{background:#ec4899;border-radius:3px;box-shadow:0 0 0 2px rgba(236,72,153,.3)}
.kb-drop.kb-in{border:2px dashed #ec4899;background:rgba(236,72,153,.1);border-radius:8px}
.kb-ghost{position:fixed;z-index:99999;pointer-events:none;padding:.35rem .8rem;border-radius:999px;background:var(--kt-grad,linear-gradient(90deg,#2563eb,#9333ea,#ec4899));color:#fff;font:700 12px system-ui;box-shadow:0 8px 24px rgba(0,0,0,.35)}
body.kb-dragging{cursor:grabbing;user-select:none;-webkit-user-select:none}
.kb-pgrid{display:grid;grid-template-columns:1fr 1fr;gap:.4rem;margin-bottom:.4rem}
.kb-pi{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.6rem .3rem;border:1px solid var(--ks-line);border-radius:.7rem;background:var(--ks-bg);color:var(--ks-ink);cursor:grab;font:600 .74rem/1.1 inherit;text-align:center}
.kb-pi:hover{border-color:var(--ks-a);background:var(--ks-hov)}.kb-pic{font-size:1.35rem;line-height:1}
.kb-gt{font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;color:var(--ks-mute);margin:.7rem 0 .35rem;font-weight:700}
.kb-q{width:100%;box-sizing:border-box;padding:.45rem .6rem;border:1px solid var(--ks-line);border-radius:.6rem;background:var(--ks-bg);color:var(--ks-ink);font:inherit;margin-bottom:.4rem}
.kb-note{color:var(--ks-mute);font-size:.76rem;margin:.3rem 0 .6rem}
.kb-tpl{display:flex;align-items:center;gap:.6rem;width:100%;padding:.7rem;margin-bottom:.4rem;border:1px solid var(--ks-line);border-radius:.7rem;background:var(--ks-bg);color:var(--ks-ink);cursor:pointer;text-align:left;font:inherit}.kb-tpl:hover{border-color:var(--ks-a)}
.kb-chips{display:flex;gap:.3rem;margin-bottom:.4rem}.kb-chip{flex:1;padding:.35rem;border:1px solid var(--ks-line);border-radius:999px;background:none;color:var(--ks-ink);cursor:pointer;font:600 .72rem/1 inherit}.kb-chip.on{background:var(--ks-a);color:#fff;border-color:transparent}
.kb-rgrid{display:grid;grid-template-columns:1fr 1fr;gap:.4rem}.kb-res{aspect-ratio:1;border:1px solid var(--ks-line);border-radius:.6rem;overflow:hidden;padding:0;background:var(--ks-bg);cursor:grab;display:grid;place-items:center;color:var(--ks-ink)}.kb-res img{width:100%;height:100%;object-fit:cover}.kb-res small{font-size:.66rem;padding:.2rem;overflow:hidden;max-height:2.6em}.kb-rau{font-size:1.6rem}
.kb-h4{margin:.2rem 0 .4rem;font-size:.95rem}
.kb-tree{list-style:none;margin:0;padding:0}
.kb-lrow{display:flex;align-items:center;gap:.3rem;padding:.3rem .4rem;border-radius:.5rem;cursor:pointer;border:1px solid transparent;position:relative}
.kb-lrow:hover{background:var(--ks-hov)}.kb-lrow.on{background:var(--ks-hov);border-color:var(--ks-a)}.kb-lrow.off{opacity:.45}
.kb-lname{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kb-lgrip{cursor:grab;color:var(--ks-mute);padding:0 .2rem}.kb-leye{border:0;background:none;cursor:pointer;opacity:.7}
.kb-t-before{box-shadow:0 -2px 0 #ec4899}.kb-t-after{box-shadow:0 2px 0 #ec4899}.kb-t-in{background:rgba(236,72,153,.15)!important;outline:2px dashed #ec4899}.kb-t-end{box-shadow:0 2px 0 #ec4899}
.kb-clr{display:flex;gap:.3rem;align-items:center}.kb-clr input{flex:1}.kb-x{border:1px solid var(--ks-line);background:none;border-radius:50%;width:1.6rem;height:1.6rem;cursor:pointer;color:var(--ks-mute)}
.kb-more{margin:.5rem auto 0;display:flex}
@media(max-width:999px){.kb-stage{padding:8px}}

.kb-codeview{display:flex;flex-direction:column;height:100%;background:#0b1020}.kb-codeview[hidden]{display:none}.kb-codebar{display:flex;align-items:center;gap:.6rem;justify-content:space-between;padding:.4rem .7rem;background:var(--ks-card);border-bottom:1px solid var(--ks-line)}.kb-codeview textarea{flex:1;width:100%;box-sizing:border-box;border:0;resize:none;background:#0b1020;color:#e2e8f0;font:13px/1.55 ui-monospace,Menlo,Consolas,monospace;padding:1rem;tab-size:2;outline:0}
