/* Performance & layout fixes — ПКО НР Капитал (подключается в конце body, после стилей Gamma) */

html {
  overflow-x: hidden !important;
  overflow-y: auto !important;
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  height: auto !important;
  min-height: 100dvh;
}

body {
  overflow: auto !important;
  overflow-x: hidden !important;
  -webkit-overflow-scrolling: touch;
  --editor-width: 100% !important;
  max-width: 100%;
  height: auto !important;
  min-height: 100dvh;
  position: relative !important;
}

#__next,
.simple-editor-root,
.document-content,
.doc-content-wrapper {
  max-width: 100%;
  overflow-x: clip;
}

/* Телефоны и планшеты */
@media screen and (max-width: 768px) {
  .document-content,
  .simple-editor-root {
    --viewport-scale-factor: 1 !important;
  }

  .card-wrapper {
    --card-width: 100% !important;
    --card-inner-padding-x: calc(1.25em / var(--counter-scale, 1)) !important;
    --card-inner-padding-top: calc(1.75em / var(--counter-scale, 1)) !important;
    --card-inner-padding: calc(1.75em / var(--counter-scale, 1)) var(--card-inner-padding-x) !important;
    --card-outer-padding-x: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .card-body,
  .card-layout,
  .css-q1jnko,
  .css-tiu1p0,
  .css-1o98gfm,
  .css-1umqk94 {
    width: 100% !important;
    max-width: 100% !important;
  }

  .card-body {
    padding-inline-start: max(12px, env(safe-area-inset-left, 0px)) !important;
    padding-inline-end: max(12px, env(safe-area-inset-right, 0px)) !important;
  }

  /* Герой: колонка вместо 62% / 38% */
  .css-q1jnko > .card-content > [data-node-view-content-inner="card"],
  .card-content > [data-node-view-content-inner="card"] {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto !important;
    grid-template-areas: "body" "accent" !important;
    min-height: auto !important;
  }

  .node-cardAccentLayoutItem [data-layout-cut="right"],
  .node-cardAccentLayoutItem [data-layout-cut="left"] {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .node-cardAccentLayoutItem .card-layout-cell-bg {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    min-height: 200px;
  }

  /* Реквизиты, документы */
  .css-z1fkfg,
  .block-gridLayout .grid-col-controls {
    grid-template-columns: 1fr !important;
  }

  /* О компании, FAQ */
  .block-smartLayout > div > .themed-shape-outside-text,
  .css-1azkfln,
  .css-luv9ey {
    grid-template-columns: 1fr !important;
  }

  .block-smartLayout .grid-item,
  .css-1xexl9k,
  .css-cpw5g3,
  .css-16fgfqz,
  .css-q5i1h,
  .css-1jr302m {
    grid-column: 1 / -1 !important;
  }

  .block-smartLayout .styled-grid-cell {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .block-smartLayout .styled-grid-cell > div:first-child,
  .css-11jb576 {
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
  }
}

@media screen and (max-width: 480px) {
  .doc-content-wrapper .block-heading .heading[level="1"],
  .doc-content-wrapper [data-font-size="h1"] {
    font-size: 1.65em !important;
  }

  .doc-content-wrapper .block-heading .heading[level="2"],
  .doc-content-wrapper [data-font-size="h2"] {
    font-size: 1.35em !important;
  }

  .block-gallery [data-node-view-content-inner="gallery"] {
    grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)) !important;
  }

  .block-buttonGroup .button,
  .block-buttonGroup .chakra-button {
    min-width: 100% !important;
    width: 100% !important;
  }
}

@media screen and (min-width: 769px) and (max-width: 1024px) {
  .document-content {
    --viewport-scale-factor: 1.05 !important;
  }
}

@media screen and (min-width: 1400px) {
  body {
    --editor-width: min(100%, 1600px) !important;
  }
}

#pko-logo {
  position: fixed;
  top: 16px;
  left: 20px;
  z-index: 9000;
  pointer-events: none;
  line-height: 0;
}

#pko-logo img {
  height: 40px;
  width: auto;
  max-width: 160px;
  object-fit: contain;
  display: block;
  filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.4));
}

@media (max-width: 640px) {
  #pko-logo {
    top: 12px;
    left: 12px;
  }

  #pko-logo img {
    height: 32px;
    max-width: 120px;
  }
}

.simple-editor-root .node-card:nth-child(n+2) {
  content-visibility: auto;
  contain-intrinsic-size: auto 600px;
}

.pko-documents-card .block-gallery [data-node-view-content-inner="gallery"] {
  justify-content: start !important;
}

.pko-documents-card .block-gallery .gallery.css-qmexx8,
.pko-documents-card .block-gallery .gallery-content {
  align-items: stretch !important;
  width: 100%;
}

.block-image.pko-policy-link {
  cursor: pointer;
}

aside.gml-callout.pko-pdf-link {
  cursor: pointer;
}

.pko-pdf-link:focus-visible {
  outline: 2px solid #60a5fa;
  outline-offset: 3px;
}

.block-image.pko-policy-link [data-testid="zoom-click-capture"] {
  pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
