/* Shared controls for sponsor and testimonial rotations. */
.iac-rotation-controls, .iac-rotation-navigation { display: flex; align-items: center; flex-wrap: wrap; gap: calc(.75rem * var(--iac-ui-scale, 1)); }
.iac-rotation-controls { justify-content: space-between; margin-top: calc(1rem * var(--iac-ui-scale, 1)); }
.iac-rotation-navigation { justify-content: flex-end; max-width: 100%; flex-shrink: 0; }
/* Reserve both counter and action-label widths to prevent phone layout shifts. */
.iac-rotation-position { min-width: 5ch; flex-shrink: 0; text-align: center; white-space: nowrap; color: var(--iac-rotation-muted, var(--ast-global-color-3)); font: 600 1rem/1.5 'Courier New', monospace; }
.iac-rotation-controls > button { min-width: min(calc(6rem * var(--iac-ui-scale, 1)), 100%); }
.iac-rotation-controls button {
  min-height: 44px;
  max-width: 100%;
  padding: calc(.625rem * var(--iac-ui-scale, 1)) calc(.875rem * var(--iac-ui-scale, 1));
  border: 1px solid var(--iac-rotation-ink, var(--ast-global-color-2));
  border-radius: .25rem;
  background: transparent;
  color: var(--iac-rotation-ink, var(--ast-global-color-2));
  font: 600 1rem/1.5 'Raleway', sans-serif;
  white-space: normal;
  cursor: pointer;
}
.iac-rotation-controls button:hover { background: var(--iac-rotation-paper, var(--ast-global-color-5)); }
.iac-rotation-controls button:focus-visible { outline: 3px solid var(--iac-accent); outline-offset: 4px; }
@media print { .iac-rotation-controls { display: none; } }
