/* Supplemental preview and picker layout. Printed number positions stay intact. */
.pick-dialog-actions > .pick-actions-info {
  grid-column: 1;
  grid-row: 1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 12px;
  min-width: 0;
}
.pick-actions-info #pick-count { flex-shrink: 0; }
.pick-dialog-actions .pick-actions-info p {
  grid-area: auto;
  width: auto;
  margin: 0;
  min-width: 0;
}

@media (max-width: 820px), (max-width: 1100px) and (max-height: 540px) {
  html:has(dialog.draw-dialog[open]) { scrollbar-gutter: auto; }
  dialog.draw-dialog {
    --dialog-top: max(8px, env(safe-area-inset-top, 0px));
    --dialog-bottom: max(8px, env(safe-area-inset-bottom, 0px));
    position: fixed;
    inset: var(--dialog-top) max(8px, env(safe-area-inset-right, 0px)) auto max(8px, env(safe-area-inset-left, 0px));
    width: auto;
    max-width: none;
    height: calc(100vh - var(--dialog-top) - var(--dialog-bottom));
    height: calc(100dvh - var(--dialog-top) - var(--dialog-bottom));
    max-height: calc(100vh - var(--dialog-top) - var(--dialog-bottom));
    max-height: calc(100dvh - var(--dialog-top) - var(--dialog-bottom));
    margin: 0;
    border-radius: 16px;
  }
  .draw-dialog-header {
    gap: 12px;
    padding: 14px 16px;
  }
  .draw-dialog-header h2 { font-size: 1.15rem; line-height: 1.35; }
  .draw-dialog-header .section-kicker { font-size: .625rem; }
  .draw-dialog-body {
    display: block;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior-y: contain;
    scroll-padding-block: 12px;
  }
  .preview-stage {
    gap: 12px;
    padding: 12px 8px 16px;
    overflow: visible;
  }
  /* Keep zoom available before the paper; the canvas remains the pan region. */
  .preview-stage-footer {
    order: -1;
    flex-direction: column;
    justify-content: center;
    gap: 6px;
    min-height: 0;
    padding-inline: 52px;
  }
  .preview-stage-note,
  .draw-navigation-note {
    order: 1;
    font-size: .6875rem;
    line-height: 1.45;
    text-align: center;
  }
  .preview-zoom-controls { padding: 3px; border-radius: 11px; }
  .preview-nav {
    top: 16px;
    bottom: auto;
    width: 44px;
    height: 44px;
    transform: none;
  }
  .preview-previous { left: 12px; }
  .preview-next { right: 12px; }
  .preview-nav > span { font-size: 1.8rem; }
  .preview-canvas {
    flex: none;
    padding: 4px;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    overscroll-behavior-y: auto;
    scroll-padding-inline: 8px;
    -webkit-overflow-scrolling: touch;
  }
  .preview-canvas > .play-slip { margin: 0 auto; }
  .preview-inspector {
    padding: 20px 16px;
    overflow: visible;
    border-left: 0;
    border-top: 1px solid #dde6de;
  }
  .draw-dialog button:not(.play-slip-cell) { min-height: 44px; }
  .pick-paste-row input { font-size: 1rem; }
  .pick-dialog-actions {
    display: grid;
    grid-template-columns: 74px minmax(0, 1fr);
    align-items: center;
    gap: 8px 10px;
    padding: 10px 14px;
  }
  .pick-dialog-actions > .pick-actions-info {
    grid-column: 1 / -1;
    grid-row: 1;
    display: grid;
    grid-template-columns: max-content minmax(0, 1fr);
    align-items: center;
    gap: 10px;
  }
  .pick-dialog-actions .pick-actions-info p {
    font-size: .75rem;
    line-height: 1.45;
  }
  .pick-actions-info #pick-count { justify-self: start; }
  #pick-void { grid-column: 1; grid-row: 2; }
  #pick-save { grid-column: 2; grid-row: 2; min-width: 0; padding: 10px 12px; }
  .pick-void-confirm { scroll-margin-block: 12px; }
  .pick-void-confirm .button-row > button { min-width: 0; white-space: normal; }
}

@media (max-width: 1100px) and (max-height: 540px) {
  .draw-dialog-header { padding-block: 8px; }
  .draw-dialog-header .section-kicker { display: none; }
  .draw-dialog-header h2 { font-size: 1.0625rem; }
  .draw-dialog-header p { margin-top: 3px; font-size: .75rem; }
  .preview-stage { padding-top: 8px; gap: 8px; }
  .preview-nav { top: 12px; }
  .preview-stage-note,
  .draw-navigation-note { display: none; }
  .pick-dialog-actions { padding-block: 8px; gap: 6px 10px; }
}

@media (max-width: 350px) {
  .preview-canvas:not(.is-zoomed) .play-slip-super .play-slip-grid { column-gap: 2.5px; }
}
