/* PAI Chart Zoom — AG Charts-style zoom (pairs with js/shared/pai-chart-zoom.js) */
.pcz-host { position:relative; }
.pcz-host canvas { cursor:crosshair; touch-action:none; }
.pcz-host.pcz-panning canvas { cursor:grabbing; }
.pcz-sel { display:none; position:absolute; pointer-events:none; z-index:3;
  background:rgba(91,163,235,0.12); border-left:1px solid var(--accent,#5ba3eb); border-right:1px solid var(--accent,#5ba3eb); }

/* hover buttons — appear only while the pointer is over the chart */
.pcz-btns { position:absolute; left:50%; top:auto; transform:translate(-50%,6px); z-index:4; display:flex; gap:1px; padding:3px;
  border-radius:7px; background:rgba(25,32,43,0.92); border:1px solid var(--border2,#324157); box-shadow:0 6px 18px rgba(0,0,0,0.35);
  opacity:0; pointer-events:none; transition:opacity .15s, transform .15s; }
.pcz-host:hover .pcz-btns, .pcz-btns:focus-within { opacity:1; pointer-events:auto; transform:translate(-50%,0); }
.pcz-btns button { display:inline-flex; align-items:center; justify-content:center; width:26px; height:24px; padding:0; border:none; border-radius:5px;
  background:none; cursor:pointer; overflow:hidden; }
.pcz-btns button:hover { background:rgba(255,255,255,0.1); }
.pcz-btns button:focus-visible { outline:2px solid var(--accent,#5ba3eb); outline-offset:-2px; }
.pcz-btns .material-icons-outlined { font-size:17px; color:#fff; }

/* navigator */
.pcz-nav { position:relative; height:34px; margin-top:6px; border-radius:4px; background:rgba(255,255,255,0.02);
  border:1px solid var(--border,#273445); touch-action:none; user-select:none; cursor:pointer; }
.pcz-nav canvas { position:absolute; inset:2px 0 0 0; width:100%; height:calc(100% - 2px); }
.pcz-mask { position:absolute; top:0; bottom:0; background:rgba(12,16,21,0.7); pointer-events:none; }
.pcz-mask-l { left:0; } .pcz-mask-r { right:0; }
.pcz-win { position:absolute; top:-1px; bottom:-1px; border:1px solid rgba(255,255,255,0.28); border-radius:3px; cursor:grab; }
.pcz-win:active { cursor:grabbing; }
.pcz-h { position:absolute; top:50%; width:8px; height:18px; margin:-9px 0 0 -4px; border-radius:3px; background:#d8e9fa;
  border:1px solid rgba(0,0,0,0.4); cursor:ew-resize; z-index:2; }
.pcz-h:focus-visible { outline:2px solid var(--accent,#5ba3eb); outline-offset:1px; }
