/* Blue Sky UI Scale + Yekan — 0.11.34
   - Public storefront/auth stay at 100% width (no document zoom).
   - Admin workspace can still scale 10%; sidebar stays untouched.
   - Yekan is the primary font across public and admin surfaces.
   Note: CSS zoom on an RTL body leaves a permanent empty strip on the
   physical left (desktop + mobile). Do not re-enable it on public pages.
*/
:root {
  --blue-sky-ui-scale: .9;
  --blue-sky-ui-scale-inverse: 111.111111%;
}

html, body, body *, body *::before, body *::after {
  font-family: Yekan, "B Yekan", "Yekan Bakh", "YekanBakh", Tahoma, "Segoe UI", sans-serif !important;
}

pre, code, kbd, samp, .mono {
  font-family: ui-monospace, SFMono-Regular, Consolas, monospace !important;
}

/* Public pages: force 100%. Zoom on RTL body creates the left gutter. */
body:not(.panel-body) {
  zoom: 1 !important;
  transform: none !important;
  width: auto !important;
  min-height: auto;
  transform-origin: unset;
}

/* Chromium/Edge: optional 90% scaling for admin workspace only. */
@supports (zoom: 1) {
  body.panel-body .panel-main {
    zoom: var(--blue-sky-ui-scale);
  }

  body.panel-body:not(.panel-nova) .panel-main {
    height: calc(100svh / var(--blue-sky-ui-scale)) !important;
  }

  body.panel-body.panel-nova .panel-main {
    height: calc((100dvh - 28px) / var(--blue-sky-ui-scale)) !important;
  }

  body.panel-body .command-palette,
  body.panel-body #modalRoot .modal,
  body.panel-body #modalRoot .drawer,
  body.panel-body .toast-wrap {
    zoom: var(--blue-sky-ui-scale);
  }
}

@media (max-width: 820px) {
  @supports (zoom: 1) {
    body.panel-body.panel-nova .panel-main {
      height: calc((100dvh - 16px) / var(--blue-sky-ui-scale)) !important;
    }
  }
}

@media (max-width: 590px) {
  @supports (zoom: 1) {
    body.panel-body.panel-nova .panel-main {
      height: calc((100dvh - 10px) / var(--blue-sky-ui-scale)) !important;
    }
  }
}

/* Standards-based fallback for engines without CSS zoom (admin only). */
@supports not (zoom: 1) {
  body.panel-body .panel-main {
    width: var(--blue-sky-ui-scale-inverse);
    height: calc(100svh / var(--blue-sky-ui-scale));
    transform: scale(var(--blue-sky-ui-scale));
    transform-origin: top right;
  }
}

@media print {
  body,
  body.panel-body .panel-main,
  body.panel-body .command-palette,
  body.panel-body #modalRoot .modal,
  body.panel-body #modalRoot .drawer,
  body.panel-body .toast-wrap {
    zoom: 1 !important;
    transform: none !important;
  }
}
