/* Universal Apple safe-area + compact helpers (pages without full jms.css) */
:root {
  --safe-top: env(safe-area-inset-top, 0px);
  --safe-right: env(safe-area-inset-right, 0px);
  --safe-bottom: env(safe-area-inset-bottom, 0px);
  --safe-left: env(safe-area-inset-left, 0px);
  --page-gutter: clamp(1.25rem, 4vw, 2.5rem);
  --touch-min: 44px;
}

/* Safe-area once on gutters — not body horizontal + width calc */
body {
  padding-bottom: var(--safe-bottom);
}

main,
.wrap {
  padding-left: max(var(--page-gutter), var(--safe-left));
  padding-right: max(var(--page-gutter), var(--safe-right));
  box-sizing: border-box;
}

html.device-mobile.is-touch a.btn,
html.device-mobile.is-touch button,
html.device-mobile.is-touch input[type="submit"] {
  min-height: var(--touch-min);
}

html.device-desktop main,
html.device-wide main,
html.device-desktop .wrap,
html.device-wide .wrap {
  max-width: min(42rem, 100%);
  margin-inline: auto;
}