

/* Start:/local/components/skbpa/manual/templates/.default/style.css?179012299319531*/
/* skbpa:manual — full single-page manual UX (v2, 2026-08-19). Uses
   tokens from docs.center/style.css. Scoped to /manuals/* only, so the
   html-level scroll-behavior below can never leak onto the rest of the
   site. prefers-reduced-motion is honored here AND in the template's
   own JS (which does the header-offset-corrected scroll) -- belt and
   suspenders, since a bare CSS anchor jump (no JS, e.g. JS disabled)
   should still respect it. */
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

.skbpa-docs-manual { max-width: 1220px; margin: 0 auto; padding: 0 32px 100px; }

/* --- Breadcrumbs (§25) -------------------------------------------------
   Главная → Центр документации → семейство прибора → Руководство / Быстрый старт.
   Rendered by the components themselves because /manuals/* is one physical
   file serving three document types, so the theme's own navigation chain
   cannot tell them apart. */
.skbpa-docs-crumbs {
  padding: 22px 0 0;
  font-size: 13px;
  color: var(--skbpa-ink-faint);
  line-height: 1.6;
  overflow-wrap: break-word;
}
.skbpa-docs-crumbs a { color: var(--skbpa-ink-soft); }
.skbpa-docs-crumbs a:hover, .skbpa-docs-crumbs a:focus-visible { color: var(--skbpa-accent-dark); text-decoration: underline; }
.skbpa-docs-crumbs-sep { margin: 0 7px; opacity: .5; }
.skbpa-docs-crumbs-current { color: var(--skbpa-ink-faint); }

/* --- Return navigation (§26) ------------------------------------------
   Built from the manual↔product relation, so a РЭ covering two models lists
   both instead of silently choosing one. */
.skbpa-docs-head-nav { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; min-width: 0; }

.skbpa-docs-productlinks {
  display: flex; align-items: center; gap: 8px; flex-wrap: wrap;
  font-size: 13.5px; min-width: 0;
}
.skbpa-docs-productlinks-label { color: var(--skbpa-ink-faint); }
.skbpa-docs-productlinks-item {
  display: inline-block;
  padding: 4px 11px;
  border: 1px solid var(--skbpa-line);
  border-radius: 4px;
  color: var(--skbpa-ink-soft);
  overflow-wrap: anywhere;
}
.skbpa-docs-productlinks-item:hover,
.skbpa-docs-productlinks-item:focus-visible {
  border-color: var(--skbpa-accent); color: var(--skbpa-accent-dark); text-decoration: none;
}
/* In the narrow sidebar the same block stacks instead of sitting in a row. */
.skbpa-docs-toc-extra .skbpa-docs-productlinks { flex-direction: column; align-items: stretch; gap: 4px; margin-top: 6px; }
.skbpa-docs-toc-extra .skbpa-docs-productlinks-label {
  font-size: 11px; text-transform: uppercase; letter-spacing: .06em; padding: 0 12px;
}
.skbpa-docs-toc-extra .skbpa-docs-productlinks-item { font-size: 12.5px; }

.skbpa-docs-manual-head { padding: 26px 0 28px; border-bottom: 1px solid var(--skbpa-line); margin-bottom: 36px; }
.skbpa-docs-manual-head-top { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 14px; margin-bottom: 24px; }

.skbpa-docs-manual-head-main { display: flex; justify-content: space-between; align-items: flex-end; gap: 20px; flex-wrap: wrap; }
/* Flexbox default: a flex item won't shrink below its content's
   max-content width unless min-width is overridden -- without this, long
   product names force the row (and the whole page) to overflow
   horizontally on narrow viewports instead of the heading wrapping. */
.skbpa-docs-manual-head-titleblock { min-width: 0; flex: 1 1 auto; }
.skbpa-docs-manual-head-titleblock h1 { font-size: 30px; margin: 0 0 10px; letter-spacing: -.01em; line-height: 1.2; overflow-wrap: break-word; }
.skbpa-docs-manual-head-meta { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.skbpa-docs-manual-head-kind { font-size: 13.5px; color: var(--skbpa-ink-soft); }
.skbpa-docs-revision-pill {
  font-size: 12.5px; color: var(--skbpa-accent-dark); background: var(--skbpa-important-bg);
  border-radius: 4px; padding: 3px 12px; font-weight: 600;
}
.skbpa-docs-revision-pill em { font-style: normal; font-weight: 400; opacity: .8; }

.skbpa-docs-pdf-link {
  font-size: 13.5px; font-weight: 600; border: 1px solid var(--skbpa-line); border-radius: 4px;
  padding: 8px 18px; white-space: nowrap; flex-shrink: 0;
}
.skbpa-docs-pdf-link:hover, .skbpa-docs-pdf-link:focus-visible { border-color: var(--skbpa-accent); color: var(--skbpa-accent-dark); text-decoration: none; }

.skbpa-docs-manual-body { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 64px; align-items: start; }

/* --- TOC --- */
/* CONFIRMED DEFECT FIX (2026-08-26): the desktop TOC grew a horizontal
   scrollbar on long nested section titles (seen on УВП-280 at ~1366px).

   Root cause was a combination, not one property:
     * `overflow-y: auto` on the sticky box makes the computed overflow-x
       `auto` as well (CSS Overflow: a non-visible value on one axis forces
       the other), so ANY overshoot became a real scrollbar;
     * nested list indentation used `margin-left`, which subtracts from the
       usable width at every level while the <a> keeps its full 12px
       horizontal padding;
     * long unbroken technical tokens in РЭ headings — «УВП-280А.01»,
       «КГПШ 407374.001-01», «HART-MODBUS» — offer no soft break
       opportunity, and the default `overflow-wrap: normal` refuses to break
       them, so they simply stuck out.

   Fixed by making the content genuinely FIT rather than clipping it:
   `min-width: 0` lets the box shrink inside its grid track, `overflow-wrap:
   anywhere` gives long tokens a break opportunity, and indentation moved to
   padding. `overflow-x: hidden` is only the backstop that follows — with the
   rules above there is nothing left for it to clip.

   This lives in the SHARED manual stylesheet, so MUX8, УВП-280 and every
   manual added later inherit the fix; it is not a УВП-only patch. */
.skbpa-docs-toc {
  font-size: 13.5px;
  min-width: 0;
  overflow-wrap: anywhere;
  word-break: normal;
  hyphens: auto;
}
.skbpa-docs-toc--sticky {
  position: sticky;
  top: 24px;
  max-height: calc(100vh - 48px);
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior: contain;
}
.skbpa-docs-toc-label { font-size: 11px; text-transform: uppercase; letter-spacing: .07em; color: var(--skbpa-ink-faint); font-weight: 700; margin-bottom: 10px; }
.skbpa-docs-toc-list { list-style: none; margin: 0; padding: 0; min-width: 0; }
/* Indentation via padding on the nested LIST rather than margin: padding is
   inside the box, so a wrapped second line still aligns under the first and
   the levels do not each subtract from the usable width. 14px keeps the
   hierarchy legible while leaving room for four levels of РЭ numbering. */
.skbpa-docs-toc-list .skbpa-docs-toc-list { margin-left: 0; padding-left: 14px; }
/* The Aspro theme's global CSS injects a "-" via ::before on generic
   <li> elements sitewide (not scoped to its own content) -- neutralize
   it here since list-style:none alone only suppresses the native marker,
   not a theme-added ::before glyph. */
.skbpa-docs-toc-item::before,
.skbpa-docs-toc-item *::before,
.skbpa-docs-section-index li::before { content: none !important; }
.skbpa-docs-toc-item { min-width: 0; }
.skbpa-docs-toc-item a {
  display: block; padding: 6px 12px; color: var(--skbpa-ink-soft);
  border-left: 2px solid transparent; border-radius: 0 6px 6px 0; line-height: 1.4;
  min-width: 0;
  white-space: normal;
  overflow-wrap: anywhere;
}
/* Keyboard users need to see where they are in a 100-entry TOC. */
.skbpa-docs-toc-item a:focus-visible {
  outline: 2px solid var(--skbpa-accent);
  outline-offset: -2px;
  color: var(--skbpa-accent-dark);
}
.skbpa-docs-toc-item .skbpa-docs-toc-list .skbpa-docs-toc-item-label { font-weight: 400; }
.skbpa-docs-toc-item a:hover { color: var(--skbpa-ink); background: var(--skbpa-surface-2); text-decoration: none; }
.skbpa-docs-toc-item--active > a {
  color: var(--skbpa-accent-dark); font-weight: 600; border-left-color: var(--skbpa-accent);
  background: var(--skbpa-important-bg);
}

.skbpa-docs-toc-mobile { display: none; margin-bottom: 20px; border: 1px solid var(--skbpa-line); border-radius: 10px; background: var(--skbpa-surface); }
.skbpa-docs-toc-mobile summary { padding: 13px 16px; font-weight: 600; font-size: 14px; cursor: pointer; list-style: none; }
.skbpa-docs-toc-mobile summary::-webkit-details-marker { display: none; }
.skbpa-docs-toc-mobile summary::after { content: '▾'; float: right; color: var(--skbpa-ink-faint); }
.skbpa-docs-toc-mobile[open] summary::after { content: '▴'; }
.skbpa-docs-toc-mobile .skbpa-docs-toc { padding: 0 16px 16px; }

/* Sticky/mobile sidebar's secondary actions -- deliberately just four
   links (top of doc / Quick Start / product card / all manuals), not a
   second menu: the sidebar's job is in-document navigation first. */
.skbpa-docs-toc-extra { display: flex; flex-direction: column; gap: 2px; margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--skbpa-line-soft); }
.skbpa-docs-toc-extra a { display: block; padding: 6px 12px; font-size: 12.5px; font-weight: 500; color: var(--skbpa-ink-faint); border-radius: 0 6px 6px 0; }
.skbpa-docs-toc-extra a:hover, .skbpa-docs-toc-extra a:focus-visible { color: var(--skbpa-accent-dark); background: var(--skbpa-surface-2); text-decoration: none; }
.skbpa-docs-toc-mobile .skbpa-docs-toc-extra { margin: 0 16px 16px; }

/* --- Chapter content: one long document, one <section> per node --- */
.skbpa-docs-chapter { max-width: 760px; min-width: 0; } /* grid child: same shrink-below-content fix as the head title */
.skbpa-docs-chapter-section {
  scroll-margin-top: 24px; /* native anchor-jump offset; JS applies the same 24px for the corrected/animated path */
  padding-top: 44px; margin-top: 4px; border-top: 1px solid var(--skbpa-line-soft);
}
.skbpa-docs-chapter-section:first-child { padding-top: 0; margin-top: 0; border-top: none; }
.skbpa-docs-chapter h2 { font-size: 25px; margin: 0 0 20px; letter-spacing: -.01em; overflow-wrap: break-word; }

/* --- ONE TYPE SCALE FOR BOTH DOCUMENT SURFACES (V2, 2026-09-23) --------
   MEASURED IN THE BROWSER, not assumed: the manual's body copy computed to
   18px with a 21px line box — leading of 1.17 — while Quick Start, the other
   half of the same documentation, ran 17px/1.6. The declaration below set a
   size on the CONTAINER only, so the theme's own `p { font-size:18px;
   line-height:21px }` won inside it and РЭ prose was set tighter than the
   theme's own body text, on pages that are nothing but long prose.
   The scale is now declared where it applies — on the elements themselves —
   and matches Quick Start: 17px/1.6 desktop, 16px/1.6 below 480px. */
.skbpa-docs-chapter-text { font-size: 17px; color: var(--skbpa-ink); }
.skbpa-docs-chapter-text p,
.skbpa-docs-chapter-text li,
.skbpa-docs-chapter-text blockquote {
  font-size: 17px;
  line-height: 1.6;
}
.skbpa-docs-chapter-text p { margin: 0 0 15px; }
.skbpa-docs-chapter-text ul,
.skbpa-docs-chapter-text ol { margin: 0 0 15px; padding-left: 22px; }
.skbpa-docs-chapter-text li { margin: 0 0 6px; }
.skbpa-docs-chapter-text h3 { font-size: 19px; line-height: 1.3; margin: 28px 0 12px; letter-spacing: -.005em; }
.skbpa-docs-chapter-empty { color: var(--skbpa-ink-faint); font-style: italic; }

.skbpa-docs-section-intro { font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; color: var(--skbpa-ink-faint); margin: 0 0 14px; }
.skbpa-docs-section-index { list-style: none; margin: 0 0 20px; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.skbpa-docs-section-index li a {
  display: flex; align-items: baseline; gap: 14px; padding: 15px 18px; border: 1px solid var(--skbpa-line); border-radius: 8px;
  color: var(--skbpa-ink);
}
.skbpa-docs-section-index li a:hover { border-color: var(--skbpa-accent); background: var(--skbpa-surface-2); text-decoration: none; }
.skbpa-docs-section-index li a:hover .skbpa-docs-section-index-name { color: var(--skbpa-accent-dark); }
.skbpa-docs-section-index-num { flex-shrink: 0; font-size: 13px; font-weight: 700; color: var(--skbpa-accent-dark); font-variant-numeric: tabular-nums; min-width: 2.4em; }
.skbpa-docs-section-index-name { font-weight: 600; font-size: 15px; }

/* --- Figures (V2, 2026-09-23) -----------------------------------------
   Three things were wrong and are fixed together here.

   1. SIZE. A figure was rendered at column width whatever it was, so a
      portrait А4 appendix plate (e.g. УВП-280 Приложение 3, 1128×1565)
      became ~1050px tall and pushed the next section off the screen, while
      a 560px menu screenshot was stretched 1.35× past its native pixels
      and went soft. One semantic scale now caps each by what it IS
      (skbpaDocsFigureRole(), from the file's own intrinsic pixels):
        plate    portrait drawing/scan  -> height-capped, centred
        wide     ≥900px scheme/screenshot -> column width
        strip    very wide crop         -> column width
        inline   small screenshot       -> never upscaled past native
      Bodies written before the scale carry no role class and keep the
      generic cap, which is the conservative case.

   2. CAPTION. There was no figcaption rule at all in the manual, so a
      caption inherited body type and read as another paragraph.

   3. ZOOM. Detail inside a scheme is unreadable at column width and the
      manual had no way to enlarge it; the badge markup is shared with
      Quick Start (skbpaDocsAddFigureZoom()) and is styled here because
      the manual page does not load the Quick Start stylesheet. */
.skbpa-docs-figure { margin: 0 0 24px; }
.skbpa-docs-figure img {
  max-width: 100%; height: auto; border-radius: 8px;
  border: 1px solid var(--skbpa-line); display: block;
  max-height: 78vh; width: auto; /* generic cap: nothing taller than the viewport */
}
.skbpa-docs-figure--plate img { max-height: 70vh; margin-inline: auto; }
.skbpa-docs-figure--wide img,
.skbpa-docs-figure--strip img { width: 100%; max-height: none; }
.skbpa-docs-figure--inline img { max-width: min(100%, 620px); max-height: none; }

.skbpa-docs-chapter figcaption,
.skbpa-docs-figure figcaption {
  margin-top: 9px; font-size: 13.5px; line-height: 1.45;
  color: var(--skbpa-ink-faint);
}

/* A section whose body is nothing but the plate (a РЭ appendix drawing) has
   no prose to read first, so its caption moves ABOVE the picture: §12 — the
   reader must know what the drawing is before looking at it. */
.skbpa-docs-chapter-section--plate .skbpa-docs-figure { display: flex; flex-direction: column; }
.skbpa-docs-chapter-section--plate .skbpa-docs-figure figcaption {
  order: -1; margin: 0 0 10px; font-weight: 600; color: var(--skbpa-ink);
}

.skbpa-docs-chapter .skbpa-docs-qs-visual-zoom { position: relative; display: block; width: fit-content; max-width: 100%; cursor: zoom-in; }
.skbpa-docs-chapter .skbpa-docs-qs-visual-zoom-badge {
  position: absolute; right: 10px; bottom: 10px;
  padding: 4px 9px; border-radius: 6px;
  font-size: 12px; font-weight: 600; line-height: 1;
  color: #fff; background: rgba(23, 28, 36, .72);
  opacity: 0; transition: opacity .15s ease;
  pointer-events: none;
}
.skbpa-docs-chapter .skbpa-docs-qs-visual-zoom:hover .skbpa-docs-qs-visual-zoom-badge,
.skbpa-docs-chapter .skbpa-docs-qs-visual-zoom:focus-visible .skbpa-docs-qs-visual-zoom-badge { opacity: 1; }
@media (hover: none) {
  /* No hover on touch: show it permanently so the affordance still exists. */
  .skbpa-docs-chapter .skbpa-docs-qs-visual-zoom-badge { opacity: .9; }
}

/* --- Wide РЭ tables ---------------------------------------------------
   Modbus register maps, terminal pinouts and the УВП-280 НС code table are
   genuinely wider than a phone. Narrowing them would drop columns from a
   normative document, so instead each table gets its OWN horizontal scroll
   box (skbpaDocsWrapTables()). The page and the TOC never scroll sideways;
   only the table does, and only when it actually has to. */
.skbpa-docs-tablewrap {
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-x: contain;
  margin: 0 0 20px;
  border: 1px solid var(--skbpa-line);
  border-radius: 8px;
}
.skbpa-docs-tablewrap:focus-visible { outline: 2px solid var(--skbpa-accent); outline-offset: 2px; }
.skbpa-docs-tablewrap > table { margin: 0; border: 0; }

.skbpa-docs-chapter-text table {
  border-collapse: collapse;
  width: 100%;
  font-size: 14px;
  line-height: 1.45;
}
.skbpa-docs-chapter-text th,
.skbpa-docs-chapter-text td {
  border: 1px solid var(--skbpa-line);
  padding: 8px 11px;
  text-align: left;
  vertical-align: top;
}
.skbpa-docs-chapter-text th { background: var(--skbpa-surface-2); font-weight: 600; }

/* A code block or a long URL must not widen the column either. */
.skbpa-docs-chapter-text pre {
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.skbpa-docs-chapter-text { overflow-wrap: break-word; }

/* Inline <code> carries designation strings and formulas straight out of the
   РЭ — «Вычислитель УВП-280Б.01 – 2 КГПШ 407374.001-01», «(Gп1+Gп2-Gсн)*…».
   Those have no spaces, so with the default white-space handling they were
   the actual cause of the 390px page overflow on the УВП-280 manual (measured:
   400px and 354px boxes pushing the document to 448px). Wrapping them is
   correct here — the value stays fully readable, it just occupies two lines. */
.skbpa-docs-chapter-text code,
.skbpa-docs-chapter-text kbd,
.skbpa-docs-chapter-text samp {
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: normal;
  white-space: normal;
}

.skbpa-docs-provenance { font-size: 12px; color: var(--skbpa-ink-faint); border-top: 1px dashed var(--skbpa-line); padding-top: 12px; margin-top: 28px; }
.skbpa-docs-provenance--link { display: block; }
.skbpa-docs-provenance--link:hover, .skbpa-docs-provenance--link:focus-visible { color: var(--skbpa-accent-dark); text-decoration: underline; }
.skbpa-docs-provenance-arrow { display: inline-block; }

@media (max-width: 860px) {
  .skbpa-docs-manual-body { grid-template-columns: 1fr; }
  .skbpa-docs-toc--sticky { display: none; }
  .skbpa-docs-toc-mobile { display: block; }
  .skbpa-docs-manual-head-main { flex-direction: column; align-items: flex-start; }
  .skbpa-docs-manual-head-titleblock h1 { font-size: 24px; }
  .skbpa-docs-chapter { max-width: none; }
  .skbpa-docs-chapter-section { padding-top: 32px; }
}

@media (max-width: 480px) {
  /* Same step down Quick Start takes at this width, so the two halves of the
     documentation still read as one document on a phone. */
  .skbpa-docs-chapter-text,
  .skbpa-docs-chapter-text p,
  .skbpa-docs-chapter-text li,
  .skbpa-docs-chapter-text blockquote { font-size: 16px; line-height: 1.6; }
  .skbpa-docs-chapter h2 { font-size: 21px; line-height: 1.25; }
  .skbpa-docs-chapter-text h3 { font-size: 18px; }
  .skbpa-docs-figure--plate img { max-height: 60vh; }
}

/* End */
/* /local/components/skbpa/manual/templates/.default/style.css?179012299319531 */
