/* AQUATISS Zoom and Choose — responsive enhancement v1.1
   Loaded after the existing plugin styles. No changes to selection coordinates. */
.aqz-overlay, .aqz-overlay * { box-sizing: border-box; }
.aqz-overlay { max-width: 100vw; overflow-x: clip; }
.aqz-overlay .aqz-panel { width: min(100% - 16px, 1100px); max-width: 100%; min-width: 0; max-height: calc(100dvh - 16px); overflow-x: clip; overflow-y: auto; overscroll-behavior: contain; }
.aqz-overlay .aqz-layout, .aqz-overlay .aqz-visual, .aqz-overlay .aqz-photo-surface { min-width: 0; max-width: 100%; }
/* The photo canvas uses an explicit zoom size from the original JS: do not force max-width here. */
.aqz-overlay .aqz-visual { overflow: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; }
.aqz-overlay .aqz-toolbar { display: flex; flex-wrap: wrap; align-items: stretch; gap: 12px; min-width: 0; }
.aqz-overlay .aqz-toolbar button, .aqz-overlay .aqz-toolbar [role="button"], .aqz-overlay .aqz-quick-undo { min-height: 48px; min-width: 48px; max-width: 100%; touch-action: manipulation; }
.aqz-overlay .aqz-toolbar button { flex: 0 1 auto; overflow-wrap: anywhere; }
.aqz-overlay .aqz-quick-undo { white-space: normal; }
.aqz-overlay .aqz-selection-help { display: none !important; }
/* 48x48 accessible hit target; small visible 24px badge. */
.aqz-overlay .aqz-quick-delete { width: 48px !important; height: 48px !important; padding: 0 !important; background: transparent !important; border: 0 !important; box-shadow: none !important; display: grid; place-items: center; font-size: 0 !important; position: absolute; z-index: 35; transform: translate(-50%, -50%); touch-action: manipulation; cursor: pointer; }
.aqz-overlay .aqz-quick-delete::before { content: '×'; display: grid; place-items: center; width: 24px; height: 24px; border: 1.5px solid #fff; border-radius: 50%; background: #d91c29; color: #fff; font: 700 18px/1 Arial,sans-serif; box-shadow: 0 1px 5px #0005; }
.aqz-overlay .aqz-quick-delete[hidden] { display: none !important; }
.aqz-overlay .aqz-quick-delete:focus-visible { outline: 3px solid #156ab1; outline-offset: 2px; }
@media (hover: none), (pointer: coarse) { .aqz-overlay .aqz-toolbar button:hover, .aqz-overlay .aqz-quick-delete:hover { transform: none; } .aqz-overlay .aqz-quick-delete:hover { transform: translate(-50%, -50%); } }
@media (max-width: 767px) {
  .aqz-overlay .aqz-panel { width: calc(100% - 8px); max-height: calc(100dvh - 8px); padding-inline: clamp(8px, 3vw, 16px); }
  .aqz-overlay .aqz-layout { display: flex; flex-direction: column; gap: 12px; }
  .aqz-overlay .aqz-toolbar { gap: 12px; }
  .aqz-overlay .aqz-toolbar button { flex: 1 1 calc(50% - 12px); font-size: clamp(12px, 3.4vw, 15px); }
  .aqz-overlay .aqz-toolbar [data-aq-pc="validate"] { flex-basis: 100%; }
  .aqz-overlay .aqz-top, .aqz-overlay .aqz-steps { min-width: 0; }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .aqz-overlay .aqz-panel { width: min(calc(100% - 24px), 940px); padding-inline: clamp(12px, 2vw, 24px); }
  .aqz-overlay .aqz-toolbar button { font-size: clamp(13px, 1.5vw, 16px); }
}
@media (prefers-reduced-motion: reduce) { .aqz-overlay *, .aqz-overlay *::before, .aqz-overlay *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; } }
