/* desktop-zoom.css
   Zoom global em desktop com trava anti-overflow horizontal.
   Remove compensações agressivas de largura e força autoajuste de header/rodapé.
*/

:root { --zoom-factor: 1; }

@media (min-width: 1024px) {
  html.zoom-global:not(.is-mobile):not([data-device-mode="mobile"]) {
    zoom: var(--zoom-factor);
    overflow-x: clip;
  }

  html.zoom-global:not(.is-mobile):not([data-device-mode="mobile"]),
  html.zoom-global:not(.is-mobile):not([data-device-mode="mobile"]) body,
  html.zoom-global:not(.is-mobile):not([data-device-mode="mobile"]) .global-layout,
  html.zoom-global:not(.is-mobile):not([data-device-mode="mobile"]) .global-page,
  html.zoom-global:not(.is-mobile):not([data-device-mode="mobile"]) .app-header,
  html.zoom-global:not(.is-mobile):not([data-device-mode="mobile"]) .app-header__inner,
  html.zoom-global:not(.is-mobile):not([data-device-mode="mobile"]) .footer-global,
  html.zoom-global:not(.is-mobile):not([data-device-mode="mobile"]) .footer-global__inner,
  html.zoom-global:not(.is-mobile):not([data-device-mode="mobile"]) .footer-global__bottom-inner {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }

  html.zoom-global:not(.is-mobile):not([data-device-mode="mobile"]) body,
  html.zoom-global:not(.is-mobile):not([data-device-mode="mobile"]) .global-layout,
  html.zoom-global:not(.is-mobile):not([data-device-mode="mobile"]) .global-page {
    overflow-x: hidden;
  }

  html.zoom-global:not(.is-mobile):not([data-device-mode="mobile"]) .global-layout,
  html.zoom-global:not(.is-mobile):not([data-device-mode="mobile"]) .global-page,
  html.zoom-global:not(.is-mobile):not([data-device-mode="mobile"]) .page-content {
    min-height: calc(100vh / var(--zoom-factor));
    min-height: calc(100dvh / var(--zoom-factor));
  }

  html.zoom-global:not(.is-mobile):not([data-device-mode="mobile"]) .global-page,
  html.zoom-global:not(.is-mobile):not([data-device-mode="mobile"]) .page-content {
    display: flex;
    flex-direction: column;
  }

  html.zoom-global:not(.is-mobile):not([data-device-mode="mobile"]) .footer-global,
  html.zoom-global:not(.is-mobile):not([data-device-mode="mobile"]) .site-footer {
    margin-top: auto;
  }

  /* Compactação automática quando zoom < 100% */
  html.zoom-global.zoom-out:not(.is-mobile):not([data-device-mode="mobile"]) .app-header__inner {
    padding: 3px 10px;
    gap: 8px;
  }

  html.zoom-global.zoom-out:not(.is-mobile):not([data-device-mode="mobile"]) .app-header__center {
    max-width: calc(100% - 280px);
  }

  html.zoom-global.zoom-out:not(.is-mobile):not([data-device-mode="mobile"]) .app-header__logo {
    height: 44px;
  }

  html.zoom-global.zoom-out:not(.is-mobile):not([data-device-mode="mobile"]) .app-header__page-name {
    font-size: 1.2rem;
  }

  html.zoom-global.zoom-out:not(.is-mobile):not([data-device-mode="mobile"]) .app-header__actions {
    gap: 8px;
  }

  html.zoom-global.zoom-out:not(.is-mobile):not([data-device-mode="mobile"]) .app-header__user {
    font-size: 12px;
    max-width: 34vw;
  }

  html.zoom-global.zoom-out:not(.is-mobile):not([data-device-mode="mobile"]) .app-header__back,
  html.zoom-global.zoom-out:not(.is-mobile):not([data-device-mode="mobile"]) .app-header__logout {
    padding: 7px 10px;
    font-size: 12px;
  }

  html.zoom-global.zoom-out:not(.is-mobile):not([data-device-mode="mobile"]) .footer-global {
    font-size: 11px;
  }

  html.zoom-global.zoom-out:not(.is-mobile):not([data-device-mode="mobile"]) .footer-global__inner {
    padding: 6px 12px;
    gap: 10px;
  }

  html.zoom-global.zoom-out:not(.is-mobile):not([data-device-mode="mobile"]) .footer-global__meta,
  html.zoom-global.zoom-out:not(.is-mobile):not([data-device-mode="mobile"]) .footer-global__contact-items {
    gap: 6px 10px;
  }

  html.zoom-global.zoom-out:not(.is-mobile):not([data-device-mode="mobile"]) .footer-global__bottom-inner {
    padding: 5px 12px;
    gap: 5px 10px;
  }

  html.zoom-global.zoom-out:not(.is-mobile):not([data-device-mode="mobile"]) .footer-global__title {
    font-size: 12px;
  }

  html.zoom-global.zoom-out:not(.is-mobile):not([data-device-mode="mobile"]) .footer-global__chip,
  html.zoom-global.zoom-out:not(.is-mobile):not([data-device-mode="mobile"]) .footer-global__contact-item,
  html.zoom-global.zoom-out:not(.is-mobile):not([data-device-mode="mobile"]) .footer-global__copyright,
  html.zoom-global.zoom-out:not(.is-mobile):not([data-device-mode="mobile"]) .footer-global__dev {
    font-size: 10px;
  }
}

/* Fallback para Firefox (sem propriedade zoom) */
@media (min-width: 1024px) {
  html.zoom-global.firefox:not(.is-mobile):not([data-device-mode="mobile"]) body {
    overflow-x: hidden;
  }

  html.zoom-global.firefox:not(.is-mobile):not([data-device-mode="mobile"]) .zoom-scale-root {
    display: flex;
    flex-direction: row;
    min-height: calc(100vh / var(--zoom-factor));
    align-items: stretch;
    box-sizing: border-box;
    transform: scale(var(--zoom-factor));
    transform-origin: top left;
    width: calc(100% / var(--zoom-factor));
    max-width: calc(100% / var(--zoom-factor));
    -webkit-font-smoothing: antialiased;
  }

  html.zoom-global.firefox:not(.is-mobile):not([data-device-mode="mobile"]) .zoom-scale-root,
  html.zoom-global.firefox:not(.is-mobile):not([data-device-mode="mobile"]) .zoom-scale-root > * {
    min-width: 0;
  }

  html.zoom-global.firefox:not(.is-mobile):not([data-device-mode="mobile"]) .zoom-scale-root > .sidebar {
    flex-shrink: 0;
  }

  html.zoom-global.firefox:not(.is-mobile):not([data-device-mode="mobile"]) .zoom-scale-root > .page-content {
    min-width: 0;
    display: flex;
    flex-direction: column;
  }

  html.zoom-global.firefox:not(.is-mobile):not([data-device-mode="mobile"]) .zoom-scale-root > .global-layout {
    min-width: 0;
    display: flex;
    min-height: calc(100vh / var(--zoom-factor));
    min-height: calc(100dvh / var(--zoom-factor));
  }

  html.zoom-global.firefox:not(.is-mobile):not([data-device-mode="mobile"]) .zoom-scale-root > .global-layout > .global-page {
    min-width: 0;
    display: flex;
    flex-direction: column;
    min-height: calc(100vh / var(--zoom-factor));
    min-height: calc(100dvh / var(--zoom-factor));
  }

  html.zoom-global.firefox:not(.is-mobile):not([data-device-mode="mobile"]) .zoom-scale-root > .page-content .site-footer {
    margin-top: auto;
  }

  html.zoom-global.firefox:not(.is-mobile):not([data-device-mode="mobile"]) .zoom-scale-root .footer-global {
    margin-top: auto;
  }
}

html.zoom-global.firefox:not(.is-mobile):not([data-device-mode="mobile"]),
html.zoom-global.firefox:not(.is-mobile):not([data-device-mode="mobile"]) body {
  max-width: 100%;
}

html.zoom-global.firefox:not(.is-mobile):not([data-device-mode="mobile"]) .zoom-scale-root .no-scale {
  transform: none !important;
}
