/* Visigate builder — admin & block editor only. Never loaded on the front end. */
.vg-builder { display: flex; flex-direction: column; gap: 10px; max-width: 760px; }
.vg-group { border: 1px solid #c3c4c7; border-left: 4px solid #2271b1; border-radius: 4px; padding: 12px; background: #fff; display: flex; flex-direction: column; gap: 10px; }
.vg-cond { display: flex; flex-direction: column; gap: 8px; padding: 10px; background: #f6f7f7; border-radius: 4px; }
.vg-cond__top { display: flex; gap: 6px; align-items: center; }
.vg-cond__top > :first-child { flex: 1; }
.vg-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.vg-and, .vg-or { text-align: center; font-size: 11px; font-weight: 600; letter-spacing: .08em; color: #757575; }
.vg-or { color: #2271b1; }
.vg-summary { margin: 4px 0 0; padding: 8px 10px; background: #f0f6fc; border-radius: 4px; font-size: 12px; color: #1d2327; }
.vg-pro-note { margin: 0; font-size: 12px; color: #996800; }
.vg-cond--missing { color: #d63638; flex-direction: row; justify-content: space-between; align-items: center; }
.vg-panel-title { font-weight: 600; margin: 8px 0; }
.block-editor-block-inspector .vg-builder { max-width: none; }
.block-editor-block-inspector .vg-pair { grid-template-columns: 1fr; }

/* Editor canvas cue for blocks that have rules */
.visigate-has-rules { outline: 1px dashed #2271b1; outline-offset: 2px; position: relative; }
.visigate-has-rules::after {
	content: "\f177"; font-family: dashicons; position: absolute; top: -10px; right: -10px; z-index: 5;
	width: 20px; height: 20px; line-height: 20px; text-align: center; font-size: 13px;
	background: #2271b1; color: #fff; border-radius: 50%; pointer-events: none;
}
