/* ============================================================
   Balance Codex — /ru/calculator/  (2.12.0)
   ------------------------------------------------------------
   Уникальный слой страницы калькулятора (calcpro-* +
   calculator-shortcode-slot - ПРОЗРАЧНАЯ область вывода плагина:
   без рамок, теней и собственного фона - калькулятор читается
   как часть страницы, а не встроенный виджет (2.12.1). Грузится ТОЛЬКО на этом
   URL через bcc_enqueue_page_css() (лист пути 'calculator',
   обслужит и будущую EN-версию /calculator/).
   Правила статичного мока формы из прототипа (форма, пол,
   кнопки) в тему не переносились: разметки мока на странице
   нет, вместо неё - шорткод плагина.
   ============================================================ */
.calcpro-hero{padding:42px 0 72px;background:linear-gradient(180deg,var(--paper) 0%,var(--paper-soft) 100%);border-bottom:1px solid var(--line)}
.calcpro-breadcrumbs{display:flex;align-items:center;gap:10px;margin-bottom:42px;font-family:var(--sans);font-size:var(--type-label);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.calcpro-breadcrumbs a:hover{color:var(--oxide)}
.calcpro-heading{display:grid;grid-template-columns:minmax(0,.92fr) minmax(420px,.68fr);gap:70px;align-items:end;margin-bottom:46px}
.calcpro-kicker{margin-bottom:22px;font-family:var(--sans);font-size:var(--type-label);letter-spacing:.12em;text-transform:uppercase;color:var(--oxide)}
.calcpro-heading h1{margin:0;font-family:var(--serif);font-size:var(--type-display);font-weight:400;line-height:.96;letter-spacing:-.045em}
.calcpro-heading p{margin:0;color:var(--muted);font-size:var(--type-lead);line-height:1.65}
.calcpro-seo{padding:108px 0;background:var(--white)}
.calcpro-section-head{display:grid;grid-template-columns:minmax(320px,.76fr) minmax(0,1.24fr);gap:84px;align-items:start;margin-bottom:58px}
.calcpro-section-head h2{margin:0;font-family:var(--serif);font-size:var(--type-section);font-weight:400;line-height:1;letter-spacing:-.035em}
.calcpro-section-head p{margin:0;color:var(--muted);font-size:var(--type-lead);line-height:1.65}
.calcpro-explain-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.calcpro-explain-card{min-height:360px;padding:42px;background:var(--paper);border:1px solid var(--line)}
.calcpro-explain-card:nth-child(1){border-top:4px solid var(--blue)}
.calcpro-explain-card:nth-child(2){border-top:4px solid var(--oxide)}
.calcpro-explain-card small{font-family:var(--sans);font-size:var(--type-label);letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.calcpro-explain-card h3{margin:26px 0 18px;font-family:var(--serif);font-size:var(--type-card);font-weight:400}
.calcpro-explain-card p{margin:0;color:var(--muted);font-size:var(--type-body);line-height:1.68}
.calcpro-free{padding:100px 0;background:var(--blue-slate);color:var(--white)}
.calcpro-free-grid{display:grid;grid-template-columns:minmax(0,.72fr) minmax(600px,1.28fr);gap:78px;align-items:center}
.calcpro-free-copy h2{margin:0 0 26px;font-family:var(--serif);font-size:var(--type-section);font-weight:400;line-height:1}
.calcpro-free-copy p{font-size:var(--type-lead);line-height:1.65;color:var(--blue-tint)}
.calcpro-free-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.calcpro-free-card{min-height:185px;padding:28px;background:var(--paper);color:var(--ink);border:1px solid var(--on-dark-line)}
.calcpro-free-card small{font-family:var(--sans);font-size:var(--type-label);letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.calcpro-free-card h3{margin:20px 0 10px;font-family:var(--serif);font-size:var(--type-card);font-weight:400}
.calcpro-free-card p{margin:0;color:var(--muted);font-size:var(--type-small);line-height:1.55}
.calcpro-read{padding:106px 0;background:var(--paper-soft)}
.calcpro-read-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.calcpro-read-card{min-height:290px;padding:34px 30px;background:var(--white);border:1px solid var(--line);display:flex;flex-direction:column}
.calcpro-read-card:nth-child(1){border-top:4px solid var(--blue)}
.calcpro-read-card:nth-child(2){border-top:4px solid var(--teal)}
.calcpro-read-card:nth-child(3){border-top:4px solid var(--oxide)}
.calcpro-read-card:nth-child(4){border-top:4px solid var(--blue-muted)}
.calcpro-read-card small{font-family:var(--sans);font-size:var(--type-label);letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.calcpro-read-card h3{margin:26px 0 14px;font-family:var(--serif);font-size:var(--type-card);font-weight:400}
.calcpro-read-card p{margin:0 0 24px;color:var(--muted);font-size:var(--type-body);line-height:1.62}
.calcpro-read-card a{margin-top:auto;font-family:var(--sans);font-size:var(--type-label);letter-spacing:.08em;text-transform:uppercase;color:var(--blue)}
.calcpro-full{padding:96px 0;background:var(--oxide);color:var(--white)}
.calcpro-full-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(520px,1.18fr);gap:78px;align-items:center}
.calcpro-full-copy h2{margin:0 0 24px;font-family:var(--serif);font-size:var(--type-section);font-weight:400;line-height:1}
.calcpro-full-copy p{font-size:var(--type-lead);line-height:1.65;color:var(--on-dark)}
.calcpro-full-steps{display:grid;gap:12px}
.calcpro-full-step{display:grid;grid-template-columns:54px 1fr;gap:18px;align-items:start;padding:24px;background:var(--paper);color:var(--ink)}
.calcpro-full-step b{display:flex;align-items:center;justify-content:center;width:42px;height:42px;background:var(--blue-slate);color:var(--white);font-family:var(--serif);font-weight:400}
.calcpro-full-step h3{margin:0 0 7px;font-family:var(--serif);font-size:24px;font-weight:400}
.calcpro-full-step p{margin:0;color:var(--muted);font-size:var(--type-small);line-height:1.55}
.calcpro-faq{padding:104px 0;background:var(--white)}
.calcpro-faq-list{max-width:1000px;margin-left:auto}
.calcpro-faq details{border-top:1px solid var(--line)}
.calcpro-faq details:last-child{border-bottom:1px solid var(--line)}
.calcpro-faq summary{display:flex;justify-content:space-between;gap:30px;align-items:center;padding:24px 0;cursor:pointer;list-style:none;font-family:var(--serif);font-size:var(--type-card)}
.calcpro-faq summary::-webkit-details-marker{display:none}
.calcpro-faq summary::after{content:"+";font-family:var(--sans);font-size:24px;color:var(--oxide)}
.calcpro-faq details[open] summary::after{content:"−"}
.calcpro-faq details p{max-width:820px;margin:0;padding:0 0 24px;color:var(--muted);font-size:var(--type-body);line-height:1.68}
@media(max-width:1100px){
.calcpro-heading,.calcpro-form-layout,.calcpro-reading,.calcpro-free-grid,.calcpro-full-grid{grid-template-columns:1fr}
.calcpro-locks-head,.calcpro-section-head{grid-template-columns:1fr;gap:24px}
.calcpro-read-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
.calcpro-hero{padding-top:28px}
.calcpro-breadcrumbs{margin-bottom:34px}
.calcpro-heading{gap:24px}
.calcpro-heading h1{line-height:.98;letter-spacing:-.035em}
.calcpro-fields,.calcpro-pair-fields,.calcpro-axes,.calcpro-explain-grid,.calcpro-free-cards,.calcpro-read-grid{grid-template-columns:1fr}
.calcpro-free,.calcpro-seo,.calcpro-read,.calcpro-full,.calcpro-faq{padding:78px 0}
.calcpro-faq-list{margin-left:0}
}
/* 2.12.1 - слот без «коробки»: калькулятор = часть страницы.
   Внешняя ширина слота равна нижним секциям автоматически: он лежит
   в том же .container. Контракт внутренних ширин для вывода плагина
   задан токенами ниже - плагин (или наши точечные оверрайды по его
   классам) читает их напрямую:
     --calc-result-max : общая ширина результата;
     --calc-copy-max   : авторский текст;
   пирамида, таблица и заголовки - на всю --calc-result-max.
   Цвета вывода - только глобальные токены темы (--ink, --muted,
   --blue, --oxide, --teal, --paper, --paper-soft, --white, --line). */
.calculator-shortcode-slot{
  margin:0;
  padding:0;
  background:transparent;
  border:0;
  box-shadow:none;
  --calc-result-max:1120px;
  --calc-copy-max:720px;
}

/* ── PLUGIN OVERRIDES (заготовка) ─────────────────────────────
   Точечные правила по классам вывода плагина добавляются сюда,
   когда придёт его отрендеренный HTML: снять фоны/рамки/тени с
   внутренних карточек, выставить max-width по токенам выше,
   не зажимать форму и результат в общий bordered-контейнер.
   Вслепую по *-селекторам не пишем, чтобы не сломать состояния
   формы и фокус плагина. */
@media(max-width:760px){
.calculator-shortcode-slot{padding:0}
}
