@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600;700;800;900&family=Open+Sans:wght@400;600;700&display=swap');
/*tp496r:start*/
/* tp496 reset: the site theme (Eduma, BetterDocs) styles bare tags; inside the article the page must look as in Claude Design.
   Prepended to app.css, so the bundle's own rules of equal weight still win; inline styles always win. */
.figma-make-app-wrapper .figma-make-app-root :is(p,h1,h2,h3,h4,h5,h6,ul,ol,dl,dd,blockquote,figure,hr,menu,pre,fieldset,legend,table,caption,td,th,tr,button,input,select,textarea){margin:revert;padding:revert}
.figma-make-app-wrapper .figma-make-app-root :is(button,input,select,textarea,optgroup){color:revert;font:revert;letter-spacing:revert;text-transform:revert;border:revert;border-radius:revert;background:revert;box-shadow:revert;overflow:revert;appearance:revert;cursor:revert;transition:revert;outline:revert;min-height:revert;height:revert;width:revert}
.figma-make-app-wrapper .figma-make-app-root :is(h1,h2,h3,h4,h5,h6){line-height:revert;color:revert;font-family:revert;font-size:revert;font-weight:revert;text-transform:revert;letter-spacing:revert}
.figma-make-app-wrapper .figma-make-app-root :is(b,strong){font-weight:revert}
.figma-make-app-wrapper .figma-make-app-root figure{max-width:revert}
.figma-make-app-wrapper .figma-make-app-root :is(table,td,th,tr){border:revert;width:revert;text-align:revert;font-weight:revert;background:revert;vertical-align:revert}
.figma-make-app-wrapper .figma-make-app-root a{color:revert;text-decoration:revert;transition:revert}
.figma-make-app-wrapper .figma-make-app-root :is(ul,ol,li){list-style:revert}
.figma-make-app-wrapper .figma-make-app-root img{max-width:revert;height:revert}
/*tp496r:end*/
.figma-make-app-wrapper{isolation:isolate}
/* tokens/fonts.css */
/* TPM Article Design System — Webfonts
 * Montserrat (headings) + Open Sans (body), loaded from Google Fonts — the
 * exact families the live article repos use (src/index.css). Montserrat
 * weights 400-800; Open Sans 400-700. */


/* tokens/colors.css */
/* TPM Article Design System — Palette
 * Exactly SEVEN semantic colour pairs (draw.io / Miro sticky scheme).
 * Light = fill, dark = border / icon / accent / heading-in-block.
 * The HEX values are the source of truth. HSL mirrors are derived from them.
 * Icons are ALWAYS coloured, never grayscale. One semantic hue per category —
 * colour encodes meaning, never decoration. NO inline hex in components other
 * than these exact values. */

.figma-make-app-wrapper .figma-make-app-root {
  /* ---- Solid (border / heading / icon / accent) ---- */
  --p-gray: #666666;
  --p-blue: #6c8ebf;
  --p-green: #82b366;
  --p-red: #b85450;
  --p-yellow: #d79b00;
  --p-purple: #9673a6;
  --p-darkblue: #23445d;

  /* ---- Light (fill / tinted container background) ---- */
  --p-gray-light: #f5f5f5;
  --p-blue-light: #ddeaff;
  --p-green-light: #d5e8d4;
  --p-red-light: #f8cecc;
  --p-yellow-light: #fff2cc;
  --p-purple-light: #e1d5e7;
  --p-darkblue-light: #bac8d3;

  /* ---- HSL mirrors (for shadcn-style hsl(var(--x)) consumers) ---- */
  --palette-gray: 0 0% 40%;
  --palette-gray-light: 0 0% 96%;
  --palette-blue: 210 33% 59%;
  --palette-blue-light: 217 100% 93%;
  --palette-green: 100 33% 55%;
  --palette-green-light: 100 38% 87%;
  --palette-red: 0 38% 52%;
  --palette-red-light: 0 65% 89%;
  --palette-yellow: 40 100% 42%;
  --palette-yellow-light: 45 100% 90%;
  --palette-purple: 273 22% 55%;
  --palette-purple-light: 273 30% 87%;
  --palette-darkblue: 207 44% 25%;
  --palette-darkblue-light: 207 22% 77%;

  /* ---- Semantic aliases ---- */
  --background: #ffffff;       /* page + card surface */
  --foreground: #334155;       /* body text (slate-700-ish) */
  --heading: var(--p-darkblue);/* all headings & titles */
  --border-default: var(--p-gray); /* default 2px border colour */
  --muted-foreground: #666666;
  --accent: var(--p-blue);     /* primary concept / interactive */
}

/* tokens/typography.css */
/* TPM Article Design System — Typography
 * Headings: Montserrat (font-heading). Titles font-extrabold, p-darkblue,
 *   with a single accent <u> underline on ONE key word.
 * Body: Open Sans (font-body / font-sans), 16px / leading-relaxed. */

.figma-make-app-wrapper .figma-make-app-root {
  --font-heading: 'Montserrat', system-ui, sans-serif;
  --font-body: 'Open Sans', system-ui, sans-serif;

  /* Type scale (px) — editorial long-form */
  --text-h1: 36px;   /* article title  (text-4xl, extrabold) */
  --text-h2: 24px;   /* section title  (text-2xl, bold) */
  --text-h3: 18px;   /* diagram / block title (text-lg, bold) */
  --text-h4: 16px;   /* card title (text-base, bold) */
  --text-body: 16px; /* body copy (text-base) */
  --text-sm: 14px;   /* secondary / card body / captions */
  --text-xs: 12px;   /* diagram labels */

  /* Weights */
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
  --weight-extrabold: 800;

  /* Line heights */
  --leading-tight: 1.2;
  --leading-relaxed: 1.65;
}

/* tokens/spacing.css */
/* TPM Article Design System — Layout, spacing, surfaces (HARD rules)
 * Single centred column, fixed 893px. Flat design: NO shadows, NO decorative
 * gradients. 2px borders. Outer containers rounded-2xl, inner blocks rounded-xl.
 * NO internal scroll anywhere. */

.figma-make-app-wrapper .figma-make-app-root {
  /* Container */
  --article-max-width: 893px;   /* HARD — never 4xl, never 1400px */
  --article-padding-x: 16px;    /* px-4 */
  --article-padding-y: 40px;    /* py-10 */
  --section-gap: 32px;          /* gap-8 between sections */
  --block-gap: 16px;            /* gap-4 within a section */

  /* Spacing scale (Tailwind-aligned, px) */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;

  /* Borders & radii */
  --border-width: 2px;          /* HARD — all borders 2px */
  --radius-outer: 16px;         /* rounded-2xl — outer containers */
  --radius-inner: 12px;         /* rounded-xl — inner blocks */
  --radius-sm: 8px;             /* rounded-lg — icon squares, chips */

  /* Flat — no shadow tokens by design. The only sanctioned depth is a subtle
   * lift on a floating/overlay element inside a diagram (see DESIGN_SYSTEM §3.4). */
  --lens-shadow: 0 8px 24px rgba(35, 68, 93, 0.12);
}

/* Article shell helper — single centred column, natural page scroll only. */
.figma-make-app-wrapper .figma-make-app-root .tpm-article {
  width: 100%;
  max-width: var(--article-max-width);
  margin-inline: auto;
  padding-inline: var(--article-padding-x);
  padding-block: var(--article-padding-y);
  display: flex;
  flex-direction: column;
  gap: var(--section-gap);
  font-family: var(--font-body);
  color: var(--foreground);
}

/* tokens/base.css */
/* TPM Article Design System — base element defaults.
 * Minimal resets so specimen cards and components paint correctly. */

.figma-make-app-wrapper .figma-make-app-root * {
  box-sizing: border-box;
}

.figma-make-app-wrapper .figma-make-app-root .body {
  margin: 0;
  background: var(--background);
  color: var(--foreground);
  font-family: var(--font-body);
  font-size: var(--text-body);
  line-height: var(--leading-relaxed);
  -webkit-font-smoothing: antialiased;
}

.figma-make-app-wrapper .figma-make-app-root h1, .figma-make-app-wrapper .figma-make-app-root h2, .figma-make-app-wrapper .figma-make-app-root h3, .figma-make-app-wrapper .figma-make-app-root h4, .figma-make-app-wrapper .figma-make-app-root h5, .figma-make-app-wrapper .figma-make-app-root h6 {
  font-family: var(--font-heading);
  color: var(--heading);
  margin: 0;
}

.figma-make-app-wrapper .figma-make-app-root p {
  margin: 0;
}

/* Article titles carry a single accent underline on one key word. */
.figma-make-app-wrapper .figma-make-app-root h1 u, .figma-make-app-wrapper .figma-make-app-root h2 u {
  text-decoration-thickness: 3px;
  text-underline-offset: 4px;
}

.figma-make-app-wrapper .figma-make-app-root a {
  color: var(--accent);
}

/* ---- article <style> block ---- */

  @keyframes accReveal { from{opacity:0;transform:translateY(-8px)} to{opacity:1;transform:none} }
  @keyframes cpmInputCycle{0%{opacity:0;transform:translateY(14px)}14%{opacity:1;transform:none}100%{opacity:1;transform:none}}
  @keyframes cpmCompCycle{0%, 20%{opacity:0;transform:translateY(10px)}40%{opacity:1;transform:none}100%{opacity:1;transform:none}}
  .figma-make-app-wrapper .figma-make-app-root [data-fig="cpm"].live [data-col="input"]{animation:cpmInputCycle 4s ease-in-out infinite}
  .figma-make-app-wrapper .figma-make-app-root [data-fig="cpm"].live [data-col="comp"]{animation:cpmCompCycle 4s ease-in-out infinite}
  .figma-make-app-wrapper .figma-make-app-root [data-fig="cpm"].live:hover [data-col="input"], .figma-make-app-wrapper .figma-make-app-root [data-fig="cpm"].live:hover [data-col="comp"]{animation-play-state:paused}
  @keyframes cpmAnchorPulse{0%, 100%{box-shadow:0 0 0 0 rgba(108,142,191,0)}50%{box-shadow:0 0 0 6px rgba(108,142,191,.38)}}
  .figma-make-app-wrapper .figma-make-app-root [data-fig="cpm"] [data-dossier-anchor]{animation:cpmAnchorPulse 1.8s ease-in-out infinite}
  .figma-make-app-wrapper .figma-make-app-root h2 u, .figma-make-app-wrapper .figma-make-app-root h3 u{ text-decoration-color:#D79B00; text-decoration-thickness:.12em; text-underline-offset:.15em; text-decoration-skip-ink:none }
  .figma-make-app-wrapper .figma-make-app-root a{ color:var(--p-blue); text-decoration:underline; text-underline-offset:2px }
  .figma-make-app-wrapper .figma-make-app-root a:hover{ color:var(--p-darkblue) }
  @keyframes floatIcon{0%, 100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
  @keyframes bnrSpin{to{transform:rotate(360deg)}}
  @keyframes bnrPulse{0%{transform:scale(1);opacity:.5}70%{transform:scale(1.4);opacity:0}100%{transform:scale(1.4);opacity:0}}
  @keyframes provPulse{0%, 100%{box-shadow:0 0 0 0 rgba(108,142,191,0)}50%{box-shadow:0 0 0 7px rgba(108,142,191,.32)}}
  @keyframes stepPulse{0%, 100%{box-shadow:0 0 0 0 rgba(184,84,80,0)}50%{box-shadow:0 0 0 6px rgba(184,84,80,.30)}}
  .figma-make-app-wrapper .figma-make-app-root [data-stepmap] [data-nd-active]{animation:stepPulse 1.9s ease-in-out infinite}
  .figma-make-app-wrapper .figma-make-app-root [data-fig="prov"] [data-prov-cell]{animation:provPulse 1.8s ease-in-out infinite}
  @keyframes tailRowIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
  @keyframes tailPop{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}
  @keyframes tailSoftIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
  @media (prefers-reduced-motion: reduce){ .figma-make-app-wrapper .figma-make-app-root *{animation:none !important;transition:none !important} }
  @container tproot (max-width: 1023px){
    .figma-make-app-wrapper .figma-make-app-root [data-screen-label]{max-width:100%}
    .figma-make-app-wrapper .figma-make-app-root figure img{max-width:100%;height:auto}
    .figma-make-app-wrapper .figma-make-app-root [data-watermark]{display:none !important}
    .figma-make-app-wrapper .figma-make-app-root [data-fig-scroll]{overflow-x:auto !important;-webkit-overflow-scrolling:touch}
  }
  @media (max-width: 599px){
    .figma-make-app-wrapper .figma-make-app-root [data-profaxis]{grid-template-columns:minmax(0,1fr) !important}
    .figma-make-app-wrapper .figma-make-app-root [data-stepcard]{flex-direction:column !important;gap:8px !important;padding:10px !important}
    .figma-make-app-wrapper .figma-make-app-root [data-stepcard-rail]{flex-direction:row !important}
    .figma-make-app-wrapper .figma-make-app-root [data-m="scrollhint"]{display:block !important;font-size:11px;color:#8a97a8;text-align:center;padding:6px 0 0}
    .figma-make-app-wrapper .figma-make-app-root [data-mobhide]{display:none !important}
    .figma-make-app-wrapper .figma-make-app-root [data-famgrid]{grid-template-columns:minmax(0,1fr) !important}
    .figma-make-app-wrapper .figma-make-app-root [data-famfig], .figma-make-app-wrapper .figma-make-app-root [data-fig="heat"], .figma-make-app-wrapper .figma-make-app-root [data-swmapfig], .figma-make-app-wrapper .figma-make-app-root [data-bflowfig], .figma-make-app-wrapper .figma-make-app-root [data-funnelfig]{padding:10px 8px !important}
    .figma-make-app-wrapper .figma-make-app-root [data-fx]{grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr) 16px minmax(0,1fr) !important;grid-template-rows:auto 26px auto 26px auto !important}
    .figma-make-app-wrapper .figma-make-app-root [data-fx] [data-fx-arr]{max-width:16px;height:auto}
    .figma-make-app-wrapper .figma-make-app-root [data-fnode]{padding:8px 4px !important;gap:5px !important}
    .figma-make-app-wrapper .figma-make-app-root [data-fnode] [data-fname]{font-size:11px !important}
    .figma-make-app-wrapper .figma-make-app-root [data-fnode] [data-fscore]{font-size:16px !important}
    .figma-make-app-wrapper .figma-make-app-root [data-fhot]{font-size:9px !important;padding:1px 5px !important;gap:2px !important;white-space:normal !important}
    .figma-make-app-wrapper .figma-make-app-root [data-fhot] svg{width:9px;height:9px}
    .figma-make-app-wrapper .figma-make-app-root [data-swmap]{grid-template-columns:minmax(0,1fr) !important;row-gap:6px !important}
    .figma-make-app-wrapper .figma-make-app-root [data-swmap-src]{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important}
    .figma-make-app-wrapper .figma-make-app-root [data-swmap-src] > div{padding:8px !important}
    .figma-make-app-wrapper .figma-make-app-root [data-swmap-src] > div > span:first-child{display:none !important}
    .figma-make-app-wrapper .figma-make-app-root [data-swmap-src] > div > span:last-child{font-size:11.5px !important}
    .figma-make-app-wrapper .figma-make-app-root [data-swmap-arr]{display:none !important}
    .figma-make-app-wrapper .figma-make-app-root [data-swmap-down]{display:flex !important}
    .figma-make-app-wrapper .figma-make-app-root [data-bflow]{flex-direction:column !important;align-items:stretch !important}
    .figma-make-app-wrapper .figma-make-app-root [data-bflow-arr]{transform:rotate(90deg);align-self:center !important}
    .figma-make-app-wrapper .figma-make-app-root [data-funnel] [data-fl-num]{font-size:18px !important}
    .figma-make-app-wrapper .figma-make-app-root [data-funnel] [data-fl]{padding-left:10% !important;padding-right:10% !important}
    .figma-make-app-wrapper .figma-make-app-root [data-strip="intro"], .figma-make-app-wrapper .figma-make-app-root [data-strip="gate1"]{overflow-x:auto !important;-webkit-overflow-scrolling:touch;flex-wrap:nowrap !important;justify-content:flex-start !important}
    .figma-make-app-wrapper .figma-make-app-root [data-strip="intro"] > div, .figma-make-app-wrapper .figma-make-app-root [data-strip="gate1"] > div{flex-shrink:0 !important}
    .figma-make-app-wrapper .figma-make-app-root [data-strip="intro"] > div:nth-child(even), .figma-make-app-wrapper .figma-make-app-root [data-strip="gate1"] > div:nth-child(even){min-width:76px !important}
    .figma-make-app-wrapper .figma-make-app-root [style*="gap: 18px"][style*="align-items: stretch"]{flex-direction:column !important;align-items:stretch !important}
    .figma-make-app-wrapper .figma-make-app-root [style*="width: 96px"][style*="height: 96px"]{margin-left:auto !important;margin-right:auto !important}
    .figma-make-app-wrapper .figma-make-app-root [style*="gap: 18px"][style*="align-items: flex-start"]{flex-direction:column !important;align-items:stretch !important}
    .figma-make-app-wrapper .figma-make-app-root [style*="width: 84px"][style*="height: 84px"]{margin-left:auto !important;margin-right:auto !important}
    .figma-make-app-wrapper .figma-make-app-root [style*="border-left: 4px solid"][style*="border-radius: 0px 12px 12px 0px"]{padding-left:5px !important}
    .figma-make-app-wrapper .figma-make-app-root [data-fig="prov"] [data-prov-panel] > div:first-child{display:none !important}
    .figma-make-app-wrapper .figma-make-app-root [data-fig="prov"] [data-prov-row]{flex-wrap:wrap !important;align-items:stretch !important;padding:7px 0 !important}
    .figma-make-app-wrapper .figma-make-app-root [data-fig="prov"] [data-prov-row] > div, .figma-make-app-wrapper .figma-make-app-root [data-fig="prov"] [data-prov-row] > button{flex:1 1 100% !important;min-width:0 !important}
    .figma-make-app-wrapper .figma-make-app-root [data-fig="prov"] [data-prov-cell-anim], .figma-make-app-wrapper .figma-make-app-root [data-fig="prov"] [data-prov-row] > div{font-size:12.5px !important}
    .figma-make-app-wrapper .figma-make-app-root [data-fig="prov"] [data-prov-row] [data-c="0"], .figma-make-app-wrapper .figma-make-app-root [data-fig="prov"] [data-prov-row] > div:first-child{font-weight:700 !important;color:#23445D !important;padding:0 12px 2px !important}
    .figma-make-app-wrapper .figma-make-app-root [data-fig="prov"] [data-prov-row] [data-c="1"], .figma-make-app-wrapper .figma-make-app-root [data-fig="prov"] [data-prov-row] > div:nth-child(2){padding:2px 12px !important}
    .figma-make-app-wrapper .figma-make-app-root [data-fig="prov"] [data-prov-row] > div:nth-child(3){padding:2px 12px !important}
    .figma-make-app-wrapper .figma-make-app-root [data-fig="prov"] [data-prov-cell]{margin:5px 12px 2px !important;padding:9px 11px !important;font-size:12.5px !important}
    .figma-make-app-wrapper .figma-make-app-root [data-fig="prov"] [data-prov-cell] svg{display:inline-block !important}
    .figma-make-app-wrapper .figma-make-app-root [data-fig="prov"] [data-prov-tabtitle]{font-size:13.5px !important}
    .figma-make-app-wrapper .figma-make-app-root [data-fig="handoff"]{grid-template-columns:1fr !important}
    .figma-make-app-wrapper .figma-make-app-root [data-fig="handoff"] [data-hc]{border-left:0 !important;border-right:0 !important}
    .figma-make-app-wrapper .figma-make-app-root [data-fig="handoff"] [data-bc]{border-left:0 !important;border-right:0 !important}
    .figma-make-app-wrapper .figma-make-app-root [data-fig="handoff"] [data-hc="0"]{order:1}
    .figma-make-app-wrapper .figma-make-app-root [data-fig="handoff"] [data-bc="0"]{order:2}
    .figma-make-app-wrapper .figma-make-app-root [data-fig="handoff"] [data-hc="1"]{order:3}
    .figma-make-app-wrapper .figma-make-app-root [data-fig="handoff"] [data-bc="1"]{order:4}
    .figma-make-app-wrapper .figma-make-app-root [data-fig="handoff"] [data-hc="2"]{order:5}
    .figma-make-app-wrapper .figma-make-app-root [data-fig="handoff"] [data-bc="2"]{order:6}
    .figma-make-app-wrapper .figma-make-app-root [data-bnr-cols]{flex-direction:column !important;flex-wrap:nowrap !important}
    .figma-make-app-wrapper .figma-make-app-root [data-bnr-col="left"], .figma-make-app-wrapper .figma-make-app-root [data-bnr-col="right"]{flex:1 1 auto !important;max-width:100% !important;padding-left:0 !important}
  }

/* ===== s117/s121 mobile laws (hooks present on this page only) ===== */
@media (max-width: 599px){
  .figma-make-app-wrapper .figma-make-app-root .figma-make-app-wrapper .figma-make-app-root div:has(> [data-m96]){flex-direction:column !important;align-items:stretch !important}
  .figma-make-app-wrapper .figma-make-app-root .figma-make-app-wrapper .figma-make-app-root [data-m96]{margin:auto !important}
  .figma-make-app-wrapper .figma-make-app-root .figma-make-app-wrapper .figma-make-app-root [data-macc]{flex-direction:column !important}
  .figma-make-app-wrapper .figma-make-app-root .figma-make-app-wrapper .figma-make-app-root [data-macc] > [data-m84]{margin:auto !important}
  .figma-make-app-wrapper .figma-make-app-root .figma-make-app-wrapper .figma-make-app-root [data-mcal]{padding-left:5px !important}
}
/*tp496:start*/
/* TPM transport layer s521 — article in the site column (rules: BUILD_RULES_s521_ru.md). Replaces tp496.css. */
/* figures: native layout at the column width; no forced design width, no scale */
.figma-make-app-wrapper .figma-make-app-root{overflow-x:clip;container-type:inline-size;container-name:tproot}
.figma-make-app-wrapper .figma-make-app-root figure{max-width:100%;box-sizing:border-box}
/* a figure listed in the build map (breaks in the column): lays out at its own width, scaled whole */
.figma-make-app-root figure[data-tp-wide]{width:var(--tp-w)!important;min-width:var(--tp-w)!important;max-width:none!important;margin-left:0!important;margin-right:0!important}
.figma-make-app-root figure[data-tp-wide][data-tp-scaled]{transform:scale(var(--tp-z))!important;transform-origin:0 0!important}
.figma-make-app-root figure[data-tp-wide][data-tp-scaled]>figcaption{transform:scale(var(--tp-zi))!important;transform-origin:0 0!important;width:calc(var(--tp-w) * var(--tp-z))!important;max-width:none!important;box-sizing:border-box}
/* body text = the size of the contents column of the site; headings below the page title */
.figma-make-app-root [data-tp-body]{font-size:15px!important;line-height:1.65!important}
.figma-make-app-root h2:not(figure h2){font-size:22px!important;line-height:1.25!important}
.figma-make-app-root h3:not(figure h3){font-size:18px!important;line-height:1.3!important}
.figma-make-app-root h4:not(figure h4),.figma-make-app-root h5:not(figure h5){font-size:16px!important;line-height:1.3!important}
/* «Определение ключевых терминов» */
.figma-make-app-root section[data-tp-terms]{gap:8px!important;padding-top:18px!important;padding-bottom:14px!important}
.figma-make-app-root section[data-tp-terms]>p{font-size:14px!important;line-height:1.5!important}
.figma-make-app-root [data-tp-termrow]>button{padding-top:7px!important;padding-bottom:7px!important;min-height:0!important;gap:10px!important}
.figma-make-app-root [data-tp-termrow]>button>span{font-size:14.5px!important;line-height:1.3!important}
.figma-make-app-root [data-tp-termrow]>button>span:first-child{height:18px!important}
.figma-make-app-root [data-tp-termrow]>button svg{width:18px!important;height:18px!important}
.figma-make-app-root [data-tp-termrow] p{font-size:14px!important;line-height:1.5!important}
/* term card */
.figma-make-app-root [data-tp-term]{padding:10px 14px!important;gap:14px!important;min-height:0!important}
.figma-make-app-root [data-tp-term] [data-tp-ticon]{width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;flex:0 0 48px!important;border-radius:10px!important}
.figma-make-app-root [data-tp-term] [data-tp-ticon] svg{width:24px!important;height:24px!important}
.figma-make-app-root [data-tp-term] [data-tp-ttitle]{font-size:17px!important;line-height:1.25!important}
.figma-make-app-root [data-tp-term] p{font-size:14.5px!important;line-height:1.45!important;margin-top:4px!important;margin-bottom:4px!important}
.figma-make-app-root [data-tp-tabbtn]{font-size:14px!important;padding-top:6px!important;padding-bottom:6px!important;min-height:0!important}
/* banner «Практика» and other two-column rows: side by side on desktop */
@media (min-width:760px){.figma-make-app-root [data-tp-unwrap]{flex-wrap:nowrap!important}.figma-make-app-root [data-tp-unwrap]>*{min-width:0!important}}
svg[data-tp-ring] [data-tp-ringline]{pointer-events:none}
/* hint bubbles that would cover the screen's own text in the column */
@media (min-width:760px){.figma-make-app-root [data-tp-callout]{display:none!important}}
.figma-make-app-root [data-tp-offcut]{visibility:hidden!important}
/*tp496:end*/
/*tp554:start*/
/* TPM transport layer s554 — replaces tp528, on top of tp521 (rules: BUILD_RULES_s554_ru.md). CM site reports 27.10 + 29.10. */
/* body text = the size of the article list in the left column of the site (14 px); headings keep their order */
.figma-make-app-root [data-tp-body]{font-size:14px!important;line-height:1.6!important}
.figma-make-app-root h2:not(figure h2){font-size:20px!important;line-height:1.25!important}
.figma-make-app-root h3:not(figure h3){font-size:16.5px!important;line-height:1.3!important}
.figma-make-app-root h4:not(figure h4),.figma-make-app-root h5:not(figure h5){font-size:15px!important;line-height:1.3!important}
/* «Определение ключевых терминов» is a block, not a section: its title sits below the section headings */
.figma-make-app-root section[data-tp-terms] h2,.figma-make-app-root [data-tp528-termhead]{font-size:16px!important;line-height:1.3!important}
.figma-make-app-root section[data-tp-terms]>p{font-size:13.5px!important}
.figma-make-app-root [data-tp-termrow]>button>span{font-size:14px!important}
/* «Путь проекта» strips: laid out at the width where every phase plate is square, then zoomed whole into the column */
.figma-make-app-root [data-tp528-strip]{width:var(--tp528-w)!important;min-width:var(--tp528-w)!important;max-width:none!important;zoom:var(--tp528-z)!important;flex-wrap:nowrap!important;overflow:visible!important}
.figma-make-app-root [data-tp528-strip]>*{flex-shrink:0!important}
.figma-make-app-root [data-tp528-strip]>[data-tp528-plate]{width:var(--tp528-p)!important;min-width:var(--tp528-p)!important;flex:0 0 var(--tp528-p)!important}
/* figure text: never above the body text; headings inside a figure step down by nesting */
.figma-make-app-root [data-tp528-fs]{font-size:var(--tp528-fs)!important;line-height:1.3!important}
/* tall figures: denser */
.figma-make-app-root figure img[data-tp528-img]{max-height:78vh!important;width:auto!important;max-width:100%!important;object-fit:contain!important;margin-left:auto!important;margin-right:auto!important;display:block!important}
/* s554: figures stay hidden until the layer has laid them out with the final fonts (max 1.5 s) — no visible re-layout */
html[data-tp554-wait] .figma-make-app-root figure{visibility:hidden!important}
/* s554: one type scale — term cards: title one step below the subsection heading, text below the body */
.figma-make-app-root [data-tp-term] [data-tp-ttitle]{font-size:15px!important;line-height:1.25!important}
.figma-make-app-root [data-tp-term] p{font-size:13.5px!important;line-height:1.45!important}
.figma-make-app-root [data-tp-termrow] p{font-size:13.5px!important}
/* s554: ring charts — the whole sector is the hover area (tp521 maps the pointer to the sector), not only its words */
.figma-make-app-root svg[data-tp554-ring]{pointer-events:auto!important;cursor:pointer}
.figma-make-app-root svg[data-tp554-ring] *{pointer-events:none!important}
/*tp554:end*/
