/* Immediate direct manipulation: no decorative zoom animation or inertia. */
.tior-asset-modal__stage.tior-image-zoom { touch-action: none; overscroll-behavior: contain; }
.tior-image-zoom > img { transform-origin: center; user-select: none; -webkit-user-drag: none; }
.tior-image-zoom.is-zoomed { cursor: grab; }
.tior-image-zoom.is-dragging { cursor: grabbing; }
.tior-image-zoom__controls {
  position: absolute; z-index: 2; inset: auto auto 12px; display: flex; align-items: center;
  gap: 2px; padding: 3px; border: 0; isolation: isolate;
  color: #fff; cursor: default;
}
.tior-image-zoom__controls::before {
  content: ''; position: absolute; z-index: -1; inset: 50% 0 auto; height: 34px;
  transform: translateY(-50%); border: 1px solid rgb(255 255 255 / .25); border-radius: 18px;
  background: rgb(24 24 24 / .38); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
  box-shadow: 0 2px 8px rgb(0 0 0 / .12); pointer-events: none;
}
.tior-image-zoom__controls > button {
  display: grid; place-items: center; width: 28px; height: 28px; min-width: 28px; padding: 0;
  border: 0; border-radius: 50%; background: transparent; color: inherit;
  font: 500 12px/1 var(--font-ui, sans-serif); font-variant-numeric: tabular-nums; cursor: pointer;
}
.tior-image-zoom__controls > [data-zoom-reset] { width: 44px; border-radius: 14px; }
.tior-image-zoom__controls svg { width: 14px; height: 14px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; }
.tior-image-zoom__controls > button:disabled { opacity: .38; cursor: default; }
.tior-image-zoom:focus-visible { outline: 2px solid var(--text, currentColor); outline-offset: -3px; }
.tior-image-zoom__controls > button:focus-visible { outline: 2px solid currentColor; outline-offset: -2px; }
.tior-image-zoom__controls > button:active:not(:disabled) { background: color-mix(in srgb, currentColor 12%, transparent); }
@media (hover: hover) and (pointer: fine) { .tior-image-zoom__controls > button:hover:not(:disabled) { background: color-mix(in srgb, currentColor 8%, transparent); } }
@media (any-pointer: coarse) { .tior-image-zoom__controls > button { width: 44px; height: 44px; min-width: 44px; } }
@media (prefers-reduced-transparency: reduce), (prefers-contrast: more) {
  .tior-image-zoom__controls { color: var(--text); }
  .tior-image-zoom__controls::before { background: var(--surface); border-color: var(--line); -webkit-backdrop-filter: none; backdrop-filter: none; }
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .tior-image-zoom__controls { color: #fff; }
  .tior-image-zoom__controls::before { background: #333; }
}
@media (forced-colors: active) {
  .tior-image-zoom__controls { color: CanvasText; }
  .tior-image-zoom__controls::before { background: Canvas; border-color: ButtonText; box-shadow: none; -webkit-backdrop-filter: none; backdrop-filter: none; }
}
