html.carrrven-visual-edit-mode { --cve-accent: #e7c08e; }
.cve-toggle,.cve-undo {
  min-height:40px;display:inline-flex;align-items:center;gap:8px;padding:0 13px;
  border:1px solid rgba(92,64,63,.72);border-radius:10px;background:#201f1f;
  color:#e4bdbc;font-family:'Geist Mono',monospace;font-size:10px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;cursor:pointer;
  transition:border-color .18s ease,color .18s ease,background .18s ease,opacity .18s ease;
}
.cve-toggle:hover,.cve-undo:hover:not(:disabled){border-color:#e7c08e;color:#e7c08e}
.cve-toggle.is-active{background:rgba(188,0,45,.18);border-color:#bc002d;color:#ffc9c8}
.cve-svg-icon{width:18px;height:18px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.cve-svg-icon circle{fill:currentColor;stroke:none}.cve-toggle__icon{width:18px;height:18px}
.cve-undo:disabled{opacity:.35;cursor:not-allowed}
.cve-undo[hidden]{display:none!important}
@media(max-width:880px){.cve-toggle__text,.cve-undo__text{display:none}.cve-toggle,.cve-undo{width:40px;padding:0;justify-content:center}}

/* Inline ownership: pencil stays after the actual text and never escapes the parent card. */
.carrrven-visual-edit-mode .cve-text-host{outline:1px dashed transparent;outline-offset:2px}
.carrrven-visual-edit-mode .cve-text-host:hover{outline-color:rgba(231,192,142,.42)}
.cve-pencil{
  position:static!important;inset:auto!important;z-index:auto;width:20px;height:20px;margin-inline-start:6px;
  display:inline-flex!important;align-items:center;justify-content:center;vertical-align:middle;flex:0 0 auto;
  border:0;background:transparent;color:#e7c08e;line-height:1;cursor:pointer;padding:0;
  box-shadow:none;opacity:.45;transform:none!important;transition:opacity .14s ease,color .14s ease;
}
.cve-text-host:hover>.cve-pencil,.cve-pencil:focus{opacity:1;color:#ffd49d}

.cve-dialog-backdrop{display:none;position:fixed;inset:0;z-index:10000;align-items:center;justify-content:center;padding:24px;background:rgba(0,0,0,.76);backdrop-filter:blur(8px)}
.cve-dialog-backdrop.is-open{display:flex}
.cve-dialog{width:min(680px,96vw);max-height:90vh;overflow:auto;border:1px solid rgba(92,64,63,.78);background:#171616;color:#e5e2e1;box-shadow:0 30px 90px rgba(0,0,0,.55)}
.cve-dialog__header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:22px 24px 18px;border-bottom:1px solid rgba(92,64,63,.45)}
.cve-dialog__kicker{color:#e7c08e;font:700 10px/1.4 'Geist Mono',monospace;text-transform:uppercase;letter-spacing:.16em}
.cve-dialog__title{margin:5px 0 0;font:700 22px/1.2 'Sora',sans-serif}
.cve-dialog__close{width:38px;height:38px;display:grid;place-items:center;border:1px solid rgba(92,64,63,.65);background:#201f1f;color:#e4bdbc;cursor:pointer}
.cve-dialog__body{display:grid;gap:16px;padding:22px 24px}
.cve-field{display:grid;gap:7px;color:#e4bdbc;font:700 10px/1.4 'Geist Mono',monospace;text-transform:uppercase;letter-spacing:.12em}
.cve-field select,.cve-field textarea{width:100%;box-sizing:border-box;border:1px solid rgba(92,64,63,.72);border-radius:8px;background:#0e0e0e;color:#e5e2e1;padding:12px 14px;font:600 14px/1.5 'Hanken Grotesk',sans-serif;text-transform:none;letter-spacing:normal;outline:none}
.cve-field select:focus,.cve-field textarea:focus{border-color:#e7c08e}
.cve-dialog__note{min-height:18px;margin:0;color:#e7c08e;font:600 11px/1.5 'Geist Mono',monospace}
.cve-dialog__footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px 22px;border-top:1px solid rgba(92,64,63,.35)}
.cve-button{min-height:40px;padding:0 18px;border-radius:8px;font:700 10px/1 'Geist Mono',monospace;text-transform:uppercase;letter-spacing:.1em;cursor:pointer}
.cve-button--ghost{background:transparent;border:1px solid rgba(92,64,63,.72);color:#e4bdbc}
.cve-button--primary{background:#bc002d;border:1px solid #bc002d;color:#ffc9c8}
.cve-button:disabled{opacity:.5;cursor:wait}

/* Dashboard drag reflows continuously while pointer is over another widget. */
.carrrven-visual-edit-mode .cve-dashboard-widget{position:relative;transition:order .08s ease,transform .12s ease,outline-color .15s ease,opacity .15s ease;outline:1px dashed rgba(231,192,142,.28);outline-offset:3px}
.cve-dashboard-handle{position:absolute;z-index:80;top:10px;right:10px;width:34px;height:34px;display:grid;place-items:center;border:1px solid rgba(231,192,142,.65);border-radius:8px;background:#151414;color:#e7c08e;cursor:grab;opacity:.72}
.cve-dashboard-handle:hover{opacity:1}.cve-dashboard-handle:active{cursor:grabbing}
.cve-dashboard-widget.is-dragging{opacity:.36}.cve-dashboard-widget.is-drop-target{outline:2px solid #e7c08e;outline-offset:5px}


/* fix.2: physical block drag feedback — the actual card/row is captured as drag image while the source remains in flow. */
.cve-physical-drag-ghost{position:fixed!important;z-index:2147483000!important;margin:0!important;pointer-events:none!important;opacity:.94!important;box-sizing:border-box!important;overflow:hidden!important;transform:scale(.985);transform-origin:center;box-shadow:0 24px 80px rgba(0,0,0,.62),0 0 0 2px rgba(231,192,142,.82)!important;filter:none!important}
.cve-physical-drag-table{border-collapse:collapse!important;background:#171616!important;color:#e5e2e1!important}
.cve-physical-drag-source{opacity:.3!important;outline:2px dashed rgba(231,192,142,.75)!important;outline-offset:3px!important}
.cms-page-block-card[data-cve-page-block-key]{transition:transform .12s ease,opacity .12s ease,border-color .12s ease,box-shadow .12s ease}
.carrrven-visual-edit-mode .cms-page-block-card[data-cve-page-block-key]{will-change:transform}
.cve-dashboard-handle .cve-svg-icon{width:18px;height:18px}
.cve-pencil .cve-svg-icon{width:15px;height:15px}
.cve-dialog__close .cve-svg-icon{width:18px;height:18px}
