/* QE V7-A. Source guide drawing remains unchanged; palette controls replace the binary toggle. */
.qe-xhair {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 3;
  pointer-events: none;
  overflow: hidden;
}
@media (hover: hover) and (pointer: fine) {
  .qe-xhair[data-active="true"] { display: block; }
}
.qe-xhair i { position: absolute; transition: opacity .3s ease; }
.qe-xhair .vx { top: 0; bottom: 0; left: 0; width: 1px; background: rgba(53,228,232,.60); transform: translateX(var(--x,-10px)); }
.qe-xhair .hz { left: 0; right: 0; top: 0; height: 1px; background: rgba(238,33,154,.52); transform: translateY(var(--y,-10px)); }
.qe-xhair .vy { top: 0; bottom: 0; left: 0; width: 1px; background: rgba(255,222,0,.26); transform: translateX(calc(var(--x,-10px) + 2px)); }
.qe-xhair .hy { left: 0; right: 0; top: 0; height: 1px; background: rgba(255,222,0,.24); transform: translateY(calc(var(--y,-10px) + 2px)); }
.qe-xhair .reg {
  top: 0; left: 0; width: 13px; height: 13px;
  border: 1px solid rgba(46,92,255,.55);
  border-radius: 50%;
  transform: translate(calc(var(--x,-30px) - 6.5px),calc(var(--y,-30px) - 6.5px));
}
.qe-palettes{position:fixed;left:var(--left,20px);bottom:max(13px,env(safe-area-inset-bottom));z-index:420;display:flex;align-items:center;gap:4px;color:var(--ink);background:var(--paper);padding:0 4px;border:0;font:400 10px/1.65 var(--mono,var(--body,monospace));letter-spacing:.045em}
.qe-palette-swatch{display:grid;place-items:center;width:30px;min-height:38px;padding:0;border:0;border-radius:0;background:transparent;color:var(--ink);cursor:pointer}
.qe-palette-chip{display:block;width:11px;height:11px;border:1px solid rgba(128,128,128,.65);box-sizing:border-box}
.qe-palette-swatch.is-selected .qe-palette-chip{outline:1px solid var(--ink);outline-offset:3px}
.qe-palette-swatch:focus-visible{outline:1px solid var(--accent);outline-offset:0}
.qe-palette-readout{position:absolute;bottom:calc(100% + 2px);left:0;width:max-content;max-width:calc(100vw - var(--left,20px) - 20px);padding:7px 9px;background:var(--paper);color:var(--ink);border:1px solid var(--hair);pointer-events:none;white-space:nowrap}
.qe-palette-readout[hidden]{display:none!important}
.qe-palette-name,.qe-palette-values{display:block}.qe-palette-name{text-transform:uppercase}.qe-palette-values{color:var(--muted)}
@media(pointer:coarse){.qe-palette-swatch{width:40px;min-height:44px}}
@media(prefers-reduced-motion:reduce){.qe-xhair i{transition:none}}
@media print{.qe-xhair,.qe-palettes{display:none!important}}
