/**
 * Coplost Solstice (a68) — global mobile / touch fixes.
 */

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body.a68-body {
  overflow-x: clip;
}

body.a68-body .a68-main {
  overflow-x: clip;
}

body.a68-body.has-sc-dial .a68-main {
  padding-bottom: max(0.5rem, env(safe-area-inset-bottom));
}

@media (max-width: 820px) {
  body.a68-body.has-sc-dial .a68-main > [class$="-loom"],
  body.a68-body.has-sc-dial .a68-main > [class$="-deck"],
  body.a68-body.has-sc-dial .a68-main > [class$="-world"],
  body.a68-body.has-sc-dial .a68-main > .sc-dash,
  body.a68-body.has-sc-dial .a68-main > .a68-wrap,
  body.a68-body.has-sc-dial .a68-main > .pl-shell {
    padding-bottom: max(5.75rem, calc(4.75rem + env(safe-area-inset-bottom)));
  }
}

@media (max-width: 768px) {
  body.a68-body input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),
  body.a68-body textarea,
  body.a68-body select {
    font-size: max(16px, 1rem);
  }

  body.a68-body button,
  body.a68-body [role="button"],
  body.a68-body .sc-dial-toggle,
  body.a68-body .sc-dial-node {
    min-height: 44px;
  }

  body.a68-body .sc-dial-toggle {
    min-width: 44px;
  }

  body.a68-body .ce-ft-subscribe-row {
    grid-template-columns: 1fr !important;
    gap: 0.65rem;
  }

  body.a68-body .ce-ft-subscribe-row input[type="email"] {
    width: 100%;
    min-width: 0;
  }

  body.a68-body .ce-ft-subscribe-row button {
    width: 100%;
  }

  body.a68-body .ce-ft-meta,
  body.a68-body .ce-ft-disclaimer {
    line-height: 1.55;
  }

  body.a68-body .a68-monogram {
    top: max(0.75rem, env(safe-area-inset-top, 0px));
    left: max(0.75rem, env(safe-area-inset-left, 0px));
    max-width: calc(100vw - 6rem);
  }

  body.a68-body [class*="-topbar"],
  body.a68-body [class*="-mast"] {
    flex-wrap: wrap;
    gap: 0.65rem;
  }

  body.a68-body.page-shop .lm-board,
  body.a68-body.page-shop .lm-warp,
  body.a68-body.page-shop .lm-deck,
  body.a68-body.page-shop .lm-weft,
  body.a68-body.page-shop .lm-loom {
    min-width: 0;
    max-width: 100%;
  }

  body.a68-body.page-shop .lm-command {
    width: 100%;
    max-width: 100%;
  }

  body.a68-body table {
    display: block;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  body.a68-body img,
  body.a68-body video,
  body.a68-body iframe {
    max-width: 100%;
    height: auto;
  }

  body.a68-body pre,
  body.a68-body code {
    max-width: 100%;
    overflow-x: auto;
    word-break: break-word;
  }
}

@media (max-width: 380px) {
  body.a68-body .sc-dial-track {
    width: min(18rem, calc(100vw - 1.25rem));
    right: max(0.65rem, env(safe-area-inset-right, 0px));
  }

  body.a68-body .sc-dial {
    right: max(0.65rem, env(safe-area-inset-right, 0px));
    bottom: max(0.85rem, env(safe-area-inset-bottom, 0px));
  }
}
