/* Responder WebWorks Builder 3.7.10
   Shared editor/preview/live layout rules for text columns and element tools. */

.rww-v3710-columns-grid{
  display:grid;
  grid-template-columns:repeat(var(--rww-v3710-columns,3),minmax(0,1fr));
  gap:var(--rww-v3710-gap,30px);
  width:100%;
  align-items:start;
}
.rww-v3710-column{min-width:0}
.rww-v3710-column h3{margin:0 0 10px}
.rww-v3710-column .prose>:first-child{margin-top:0}
.rww-v3710-column .prose>:last-child{margin-bottom:0}
.rww-v3710-column ul,
.rww-v3710-column ol{margin:.45rem 0 0;padding-left:1.35rem}
.rww-v3710-column li{margin:.15rem 0}
.rww-v3710-columns-grid.show-dividers .rww-v3710-column{
  border-top:var(--rww-v3710-divider-size,1px) solid var(--rww-v3710-divider,#cfd6dc);
  padding-top:28px;
}

/* Editor-only controls. They are injected into every added element so thin
   dividers and empty spacers have a reliable grab target. */
body.v32-editor-page #ve-canvas [data-extra-id]{position:relative}
.v3710-element-tools{
  position:absolute;
  z-index:1010;
  left:0;
  top:-42px;
  display:flex;
  align-items:center;
  gap:4px;
  padding:5px;
  border:1px solid #cfdae3;
  border-radius:9px;
  background:#fff;
  box-shadow:0 8px 22px rgba(9,47,80,.2);
  opacity:0;
  pointer-events:none;
  transform:translateY(4px);
  transition:opacity .12s ease,transform .12s ease;
  white-space:nowrap;
}
body.v32-editor-page #ve-canvas [data-extra-id]:hover>.v3710-element-tools,
body.v32-editor-page #ve-canvas [data-extra-id]:focus-within>.v3710-element-tools,
body.v32-editor-page #ve-canvas .v-extra-divider>.v3710-element-tools,
body.v32-editor-page #ve-canvas .v-extra-spacer>.v3710-element-tools{
  opacity:1;
  pointer-events:auto;
  transform:none;
}
.v3710-element-tools button{
  border:0;
  border-radius:6px;
  padding:6px 8px;
  background:#edf3f7;
  color:#123f5f;
  font:800 .72rem/1.1 Inter,ui-sans-serif,system-ui,sans-serif;
  cursor:pointer;
}
.v3710-element-tools [data-layout-handle="move"]{cursor:grab;background:#0b5f95;color:#fff;touch-action:none}
.v3710-element-tools [data-layout-handle="move"]:active{cursor:grabbing}
.v3710-element-tools .v3710-delete-element{background:#fff0f0;color:#a21d1d}
body.v32-editor-page #ve-canvas .v-extra-divider,
body.v32-editor-page #ve-canvas .v-extra-spacer{min-height:52px}
body.v32-editor-page #ve-canvas .v-extra-divider>.v3710-element-tools,
body.v32-editor-page #ve-canvas .v-extra-spacer>.v3710-element-tools{
  top:4px;
  left:4px;
  max-width:calc(100% - 8px);
  overflow-x:auto;
}
body.v32-editor-page #ve-canvas .ve-free-item:has(>.v-extra-divider),
body.v32-editor-page #ve-canvas .ve-free-item:has(>.v-extra-spacer){
  cursor:move;
  touch-action:none;
}
body.v32-editor-page #ve-canvas .v-extra-divider{padding-top:46px}
body.v32-editor-page #ve-canvas .v-extra-spacer{
  outline:1px dashed rgba(11,95,149,.35);
  background:repeating-linear-gradient(135deg,rgba(11,95,149,.025),rgba(11,95,149,.025) 8px,rgba(11,95,149,.07) 8px,rgba(11,95,149,.07) 16px);
}
@media(max-width:850px){
  .rww-v3710-columns-grid{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr))}
}
@media(max-width:560px){
  .rww-v3710-columns-grid{grid-template-columns:1fr}
  .rww-v3710-columns-grid.show-dividers .rww-v3710-column{padding-top:20px}
  .v3710-element-tools{top:-38px;max-width:calc(100vw - 24px);overflow:auto}
}

/* The editor device buttons use a framed canvas, not a browser viewport.
   Mirror the public breakpoints from the frame class so tablet/mobile previews
   cannot accidentally keep desktop column rules. */
body.v32-editor-page .device-tablet .rww-v3710-columns-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));
}
body.v32-editor-page .device-mobile .rww-v3710-columns-grid{
  grid-template-columns:1fr;
}
