/* ============================================================
   content-blocks.css — дизайн-система инфо-блоков статей
   kirillov-rod.ru | v1.0 | 2026-10-25
   ------------------------------------------------------------
   Возвращает оформление блокам, у которых при переезде с WordPress
   потерялись индивидуальные CSS: табы, диаграммы, карточки
   политиков/персон/стран, цитаты, аккордеоны, футербары и т.д.
   Палитра темы: пурпур #651998 / тёмный пурпур #4d1373,
   текст #272626, фон #ffffff, светлая подложка #f7f5fa.
   ============================================================ */

/* ---------- 0. Базовые цвета (локальные переменные) ---------- */
.entry-content{
  --cb-purple:#651998;
  --cb-purple-dark:#4d1373;
  --cb-border:#e6e0ef;
  --cb-bg-soft:#f7f5fa;
  --cb-shadow:0 4px 18px rgba(77,19,115,.07);
}

/* ---------- 1. Табы (raspad-sssr, lica-zameshchayushchie) ---------- */
.page-container,
.page-wrapper{margin:26px 0}

/* ряды кнопок главных табов */
.main-tabs-nav-row,
.main-tabs-buttons{
  display:flex;flex-wrap:wrap;gap:10px;margin:0 0 12px;padding:0;
}

/* чип-кнопки: во всех четырёх реализациях кнопка = <p> */
.main-tabs-nav-row p,
.main-tabs-buttons p,
.internal-tabs-nav p,
.tab-buttons p{
  margin:0;padding:9px 16px;
  background:#f3eff9;border:1px solid #ddd2ec;border-radius:10px;
  font-size:14px;font-weight:600;line-height:1.35;color:#4d1373;
  cursor:pointer;user-select:none;
  transition:background .15s ease,box-shadow .15s ease,transform .15s ease;
}
.main-tabs-nav-row p:hover,
.main-tabs-buttons p:hover,
.internal-tabs-nav p:hover,
.tab-buttons p:hover{background:#e9def6;transform:translateY(-1px)}
.main-tabs-nav-row p:focus-visible,
.main-tabs-buttons p:focus-visible,
.internal-tabs-nav p:focus-visible,
.tab-buttons p:focus-visible{outline:2px solid #651998;outline-offset:2px}
.main-tabs-nav-row p.active,
.main-tabs-buttons p.active,
.internal-tabs-nav p.active,
.tab-buttons p.active{
  background:linear-gradient(135deg,#651998,#4d1373);color:#fff;
  border-color:transparent;box-shadow:0 4px 12px rgba(101,25,152,.35);
}

/* панели главных табов */
.main-tab-content{
  background:#fff;border:1px solid #e6e0ef;border-radius:14px;
  padding:20px 22px;margin:0 0 16px;
  box-shadow:0 4px 18px rgba(77,19,115,.06);
}
.main-tab-content > h2:first-child{margin-top:0}

/* внутренние группы табов */
.internal-tabs-container,
.tab-container{
  background:#f7f5fa;border:1px solid #e6e0ef;border-radius:12px;
  padding:16px 18px;margin:16px 0;
}
.internal-tabs-nav,
.tab-buttons{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}
.internal-tabs-nav p,
.tab-buttons p{padding:7px 14px;font-size:13.5px}
.internal-tab-content,
.tab-content{
  background:#fff;border:1px solid #ece6f4;border-radius:10px;
  padding:16px 18px;margin:0 0 12px;
}
.internal-tab-content > h3:first-child,
.tab-content > h3:first-child{margin-top:0}

/* Скрытие неактивных панелей включается ТОЛЬКО скриптом
   (класс km-tabs-on ставит JS): без JS весь текст виден — SEO и no-JS не страдают */
.km-tabs-on .main-tab-content{display:none}
.km-tabs-on .main-tab-content.active{display:block}
.km-tabs-on .internal-tab-content{display:none}
.km-tabs-on .internal-tab-content.active{display:block}
.km-tabs-on .tab-content{display:none}
.km-tabs-on .tab-content.active{display:block}
.km-tabs-on .internal-tabs-container{margin:0 0 12px}
.km-tabs-on .internal-tab-content:last-child{margin-bottom:0}
.km-tabs-on .tab-container{margin:0 0 12px}
.km-tabs-on .tab-content:last-child{margin-bottom:0}

/* ---------- 2. Аккордеон (lica-zameshchayushchie) ---------- */
.accordion{margin:18px 0}
.accordion-item{
  background:#fff;border:1px solid #e6e0ef;border-radius:12px;
  margin:0 0 10px;overflow:hidden;box-shadow:0 2px 10px rgba(77,19,115,.05);
}
.accordion-header{
  position:relative;padding:13px 52px 13px 18px;margin:0;
  background:linear-gradient(135deg,#f4eefa,#faf8fd);
  font-weight:700;color:#4d1373;font-size:15.5px;cursor:pointer;user-select:none;
  transition:background .15s ease;
}
.accordion-header:hover{background:#ece2f6}
.accordion-header p{margin:0}
.accordion-header::after{
  content:"+";position:absolute;right:16px;top:50%;transform:translateY(-50%);
  width:26px;height:26px;line-height:24px;text-align:center;
  background:#651998;color:#fff;border-radius:50%;font-size:17px;font-weight:700;
  transition:transform .2s ease,background .2s ease;
}
.accordion-item.open .accordion-header::after{
  content:"–";background:#4d1373;transform:translateY(-50%) rotate(180deg);
}
.accordion-content{padding:6px 18px 14px}
.accordion-content-inner{padding-top:8px}
/* без JS аккордеон раскрыт; закрытие неактивных — только при km-acc-on */
.km-acc-on .accordion-content{display:none}
.km-acc-on .accordion-item.open .accordion-content{display:block}

/* ---------- 3. Диаграммы-столбцы (raspad-sssr) ---------- */
.charts-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
  gap:18px;margin:24px 0;
}
.chart-container{
  background:#faf9fc;border:1px solid #e6e0ef;border-radius:12px;
  padding:16px;box-shadow:0 2px 10px rgba(77,19,115,.05);
}
.chart-title{font-weight:700;font-size:15px;color:#4d1373;text-align:center;margin:0 0 14px}
.chart-title p{margin:0}
.bar-chart{
  display:flex;align-items:flex-end;gap:12px;height:240px;
  padding:0 8px;border-bottom:2px solid #d8d2e3;
}
.bar-item{
  flex:1;min-width:0;height:100%;
  display:flex;flex-direction:column;align-items:center;justify-content:flex-end;
}
.bar-value{font-size:12.5px;font-weight:700;color:#272626;margin-bottom:6px;white-space:nowrap}
.bar-value p{margin:0}
.bar{
  width:100%;max-width:58px;min-height:4px;
  border-radius:6px 6px 0 0;box-shadow:inset 0 -3px 6px rgba(0,0,0,.12);
}
.bar.green{background:linear-gradient(180deg,#5fbf7a,#2e9e57)}
.bar.red{background:linear-gradient(180deg,#e57373,#c62828)}
.bar.orange{background:linear-gradient(180deg,#ffb74d,#ef8f00)}
.bar-label{margin-top:8px;font-size:12.5px;font-weight:600;color:#666;text-align:center}
.bar-label p{margin:0}

/* пустые оболочки WP-опросов (либерализм и др.) не разъезжаются */
.chart-container > h3{margin:0 0 6px}

/* ---------- 4. Карточки политиков (raspad-sssr) ---------- */
.politician-cards-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
  gap:20px;margin:24px 0;
}
.politician-card{
  background:#fff;border:1px solid #e6e0ef;border-radius:14px;overflow:hidden;
  box-shadow:0 4px 18px rgba(77,19,115,.07);
}
.politician-header{
  display:flex;align-items:center;gap:14px;padding:16px 18px;
  background:linear-gradient(135deg,#f4eefa,#faf8fd);
}
.politician-photo-placeholder{
  flex:0 0 72px;width:72px;height:72px;border-radius:50%;overflow:hidden;
  border:3px solid rgba(101,25,152,.25);background:#eee;
}
.politician-photo-placeholder img{
  width:100%;height:100%;object-fit:cover;display:block;
}
.politician-info{min-width:0}
.politician-info h3{margin:0 0 6px;font-size:17px;line-height:1.3;color:#272626}
.politician-info p{margin:0}
.role{
  display:inline-block;background:#651998;color:#fff;
  font-size:12px;font-weight:600;line-height:1.4;
  padding:3px 10px;border-radius:20px;
}
.details-section{padding:13px 18px;font-size:14.5px;line-height:1.6}
.details-section + .details-section{border-top:1px dashed #e6e0ef}
.details-section p{margin:0 0 8px}
.details-section p:last-child{margin-bottom:0}

/* ---------- 5. Двухконтурная система СССР (финансы + EN-зеркало) ---------- */
.ussr-dual-circuit-container{
  background:linear-gradient(145deg,#1f2937,#111827);color:#e5e7eb;
  border-radius:14px;padding:26px 22px;margin:26px 0;
  box-shadow:0 8px 30px rgba(0,0,0,.18);
}
.ussr-dual-circuit-container h3{
  color:#fff;text-align:center;font-size:20px;line-height:1.3;margin:0 0 4px;
}
.ussr-dual-circuit-container > p{
  text-align:center;color:#9ca3af;font-size:14px;margin:0 0 20px;
}
.ussr-dual-circuit-wrapper{display:flex;flex-wrap:wrap;gap:18px}
.ussr-dual-circuit-box{
  flex:1;min-width:260px;text-align:center;
  background:rgba(255,255,255,.05);border:1px solid #4b5563;border-radius:12px;
  padding:22px 18px;
}
.ussr-dual-circuit-box .icon{margin-bottom:10px}
.ussr-dual-circuit-box .icon p{font-size:42px;line-height:1;margin:0}
.ussr-dual-circuit-box h3{color:#fff;font-size:18px;margin:0 0 2px}
.ussr-dual-circuit-box h3 + p{color:#9ca3af;font-size:13.5px;margin:0 0 12px}
.ussr-dual-circuit-box p{color:#d1d5db;font-size:14px;line-height:1.65;margin:0 0 8px}
.money-type-block{margin:4px auto 12px}
.money-type-block p{
  display:inline-block;margin:0;padding:10px 18px;
  background:linear-gradient(135deg,#651998,#4d1373);color:#fff;
  font-weight:700;font-size:15px;border-radius:10px;
  box-shadow:0 4px 14px rgba(101,25,152,.45);
}

/* ---------- 6. Финансовые контуры fs-* (финансы, коды, EN) ----------
   Карточки несут inline-стили тёмной темы; добираем текст и детали */
.fs-grid{margin:26px 0}
.fs-circuit-icon:empty{display:none}
.fs-circuit h3{color:#fff;font-size:19px;margin:0 0 2px}
.fs-circuit h3 + p{color:#9ca3af;font-size:13.5px;margin:0 0 12px;text-align:center}
.fs-circuit p{color:#e5e7eb;font-size:14px;line-height:1.65;text-align:left}
.fs-circuit .fs-asset p{
  text-align:center;color:#fff;font-size:1.25em;font-weight:600;margin:0;
}
.fs-analogy p{margin:0;font-size:13.5px;color:#9ca3af;text-align:left}
.fs-analogy a{color:#c9a6e0;text-decoration:underline}

/* ---------- 7. Карточки персон (lica-zameshchayushchie) ---------- */
.person-cards,
.country-cards{display:grid;gap:20px;margin:24px 0}
.person-card,
.country-card{
  background:#fff;border:1px solid #e6e0ef;border-radius:14px;overflow:hidden;
  box-shadow:0 4px 18px rgba(77,19,115,.07);
}
.person-header,
.country-header{
  display:flex;align-items:center;gap:14px;padding:14px 18px;
  background:linear-gradient(135deg,#f4eefa,#faf8fd);
}
.person-avatar{
  flex:0 0 64px;width:64px;height:64px;border-radius:50%;
  object-fit:cover;border:3px solid rgba(101,25,152,.25);background:#eee;
}
.person-info h3,
.country-header h3{margin:0;font-size:17px;line-height:1.3;color:#272626}
.person-info p{margin:2px 0 0;color:#666;font-size:13.5px}
.country-flag{
  width:38px;height:auto;border-radius:4px;flex:0 0 38px;
  box-shadow:0 1px 4px rgba(0,0,0,.18);
}
.person-content,
.country-content{padding:14px 18px;font-size:14.5px;line-height:1.6}
.person-content blockquote{margin:12px 0 0}

/* ---------- 8. Уровень поддержки (support-meter) ---------- */
.support-meter{
  background:#f7f5fa;border:1px solid #e6e0ef;border-radius:10px;
  padding:12px 14px;margin:0 0 14px;
}
.support-label p{margin:0 0 8px;font-size:13px;font-weight:700;color:#4d1373}
.support-bar{
  height:10px;background:#e6e0ef;border-radius:6px;overflow:hidden;
}
.support-level{
  height:100%;border-radius:6px;
  background:linear-gradient(90deg,#651998,#8b4cb8);
}
.support-level.support-high{background:linear-gradient(90deg,#2e9e57,#5fbf7a)}
.support-level.support-medium{background:linear-gradient(90deg,#ef8f00,#ffb74d)}
.reaction-date p{margin:8px 0 0;font-size:12px;color:#888;font-style:italic}

/* ---------- 9. Цитаты: source-quote / icon-quote / quote / author ---------- */
.source-quote{
  background:#f9f8fc;border-left:4px solid #651998;border-radius:0 10px 10px 0;
  padding:12px 16px;margin:12px 0;
}
.quote-text p{margin:0;font-style:italic;color:#3d3a45;font-size:14.5px;line-height:1.6}
.quote-source p{margin:8px 0 0;font-size:12.5px;font-weight:600;color:#888}
.quote-source p a{color:#651998}
.icon-quote{
  position:relative;
  background:linear-gradient(135deg,#f4eefa,#faf8fd);
  border:1px solid #e0d2ee;border-radius:14px;
  padding:18px 22px;margin:18px 0;
}
.icon-quote > p{
  margin:0 0 10px;font-size:15.5px;font-style:italic;line-height:1.65;color:#3d2a52;
}
.author p{
  margin:0;font-size:13px;font-weight:600;color:#888;text-align:right;font-style:normal;
}
.quote{
  background:#faf9fc;border-left:4px solid #c9a6e0;border-radius:0 10px 10px 0;
  padding:12px 16px;margin:14px 0;
}
.quote p{margin:0;font-style:italic;color:#3d3a45;font-size:14.5px;line-height:1.6}

/* ---------- 10. Правовые карточки: law-card / law-meta / law-impact ---------- */
.law-card{
  background:#fff;border:1px solid #e6e0ef;border-left:4px solid #651998;
  border-radius:0 12px 12px 0;padding:14px 18px;margin:14px 0;
  box-shadow:0 2px 10px rgba(77,19,115,.05);
}
.law-card h3{margin:0 0 6px;font-size:16px;color:#4d1373;line-height:1.35}
.law-meta p{margin:0 0 8px;font-size:12.5px;color:#888;font-style:italic}
.law-card > p{font-size:14.5px;line-height:1.6;color:#3d3a45}
.law-impact{
  margin-top:10px;background:#fff8e8;border:1px solid #f0e0b0;border-radius:8px;
  padding:8px 12px;font-size:13.5px;font-weight:600;color:#7a5b00;
}
.law-impact p{margin:0}

/* ---------- 11. Факт/Анализ, Теории, Врезки, Вывод ---------- */
.fact-analysis{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:14px;margin:16px 0;
}
.fact-box,
.analysis-box{border-radius:12px;padding:14px 16px}
.fact-box{background:#eef7ee;border:1px solid #cfe6cf}
.fact-box h3{margin:0 0 6px;font-size:15px;color:#1b5e20}
.fact-box p{margin:0;font-size:14px;line-height:1.6;color:#2e4d2e}
.analysis-box{background:#eef3fb;border:1px solid #c9d8ef}
.analysis-box h3{margin:0 0 6px;font-size:15px;color:#1a4a8f}
.analysis-box p{margin:0;font-size:14px;line-height:1.6;color:#2d4160}
.theory-block{
  background:#fff;border:1px solid #e6e0ef;border-left:4px solid #ab47bc;
  border-radius:0 12px 12px 0;padding:14px 18px;margin:14px 0;
}
.theory-block h3{margin:0 0 6px;font-size:16px;color:#6a1b9a;line-height:1.35}
.theory-block p{font-size:14.5px;line-height:1.6;color:#3d3a45}
.highlight-box{
  background:#f4eefa;border:1px solid #dcc8ef;border-radius:12px;
  padding:14px 18px;margin:14px 0;
}
.highlight-box h3{margin:0 0 8px;font-size:15.5px;color:#4d1373}
.highlight-box ul{margin:0;padding-left:20px}
.highlight-box li{font-size:14px;line-height:1.6;margin:0 0 4px}
.conclusion-block{
  background:linear-gradient(135deg,#4d1373,#651998);color:#fff;
  border-radius:14px;padding:18px 22px;margin:18px 0;
  box-shadow:0 6px 20px rgba(77,19,115,.25);
}
.conclusion-block p{margin:0;color:#f3e9fb;font-size:14.5px;line-height:1.65}

/* ---------- 12. Последствия: consequences-diagram ---------- */
.consequences-diagram{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
  gap:16px;margin:22px 0;
}
.consequence-item{
  background:#fff;border:1px solid #e6e0ef;border-radius:12px;
  padding:16px;box-shadow:0 2px 10px rgba(77,19,115,.05);
}
.consequence-area{
  display:inline-block;font-size:11.5px;text-transform:uppercase;
  letter-spacing:.5px;font-weight:700;color:#fff;
  background:#651998;padding:3px 10px;border-radius:20px;
}
.consequence-item.economy .consequence-area{background:#2e7d32}
.consequence-item.law .consequence-area{background:#1565c0}
.consequence-item.international .consequence-area{background:#ef6c00}
.consequence-item h3{font-size:15.5px;line-height:1.35;color:#4d1373;margin:10px 0 6px}
.consequence-item p{font-size:14px;line-height:1.6;color:#444;margin:0 0 6px}

/* ---------- 13. Сценарии: scenario-cards ---------- */
.scenario-cards{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
  gap:16px;margin:22px 0;
}
.scenario-card{
  background:#fff;border:1px solid #e6e0ef;border-radius:12px;overflow:hidden;
  box-shadow:0 2px 10px rgba(77,19,115,.05);
}
.scenario-header{padding:12px 16px}
.scenario-header h3{margin:0;font-size:15.5px;line-height:1.35;color:#fff}
.scenario-1 .scenario-header{background:linear-gradient(135deg,#c62828,#e57373)}
.scenario-2 .scenario-header{background:linear-gradient(135deg,#1565c0,#42a5f5)}
.scenario-3 .scenario-header{background:linear-gradient(135deg,#2e7d32,#66bb6a)}
.scenario-4 .scenario-header{background:linear-gradient(135deg,#6a1b9a,#ab47bc)}
.scenario-content{padding:14px 16px}
.scenario-content p{font-size:14px;line-height:1.6;color:#444;margin:0 0 6px}
.scenario-probability{
  height:8px;background:#eee;border-radius:4px;overflow:hidden;margin:12px 0 8px;
}
.scenario-probability-bar{
  display:block;height:100%;width:38%;border-radius:4px;
  background:linear-gradient(90deg,#651998,#ab47bc);
}

/* ---------- 14. Таймлайн (оба варианта) ---------- */
.timeline{margin:20px 0}
.timeline-content p{margin:0 0 8px;font-size:14.5px;line-height:1.6}
.timeline-content p:last-child{margin-bottom:0}
.timeline-container{position:relative;margin:24px 0}
.timeline-line{
  position:absolute;left:17px;top:8px;bottom:8px;width:3px;
  background:linear-gradient(180deg,#651998,#c9a6e0);border-radius:2px;
}
.timeline-container .timeline-item{
  grid-template-columns:1fr;gap:0;position:relative;
  padding-left:40px;margin:0 0 16px;
}
.timeline-container .timeline-dot{
  position:absolute;left:10px;top:6px;width:16px;height:16px;
  border-radius:50%;background:#651998;border:3px solid #e9d8f5;
  box-shadow:0 0 0 2px rgba(101,25,152,.2);
}
.timeline-container .timeline-content{
  background:#faf9fc;border:1px solid #e6e0ef;border-radius:0 12px 12px 12px;
  padding:12px 16px;
}
.timeline-container .timeline-content > p{margin:0;font-size:14.5px;line-height:1.6}

/* ---------- 15. FAQ (rank-math) ---------- */
.wp-block-rank-math-faq-block{margin:20px 0}
.rank-math-faq-item{
  background:#faf9fc;border:1px solid #e6e0ef;border-left:4px solid #651998;
  border-radius:0 12px 12px 0;padding:14px 18px;margin:0 0 12px;
}
.rank-math-faq-item > p{
  margin:0 0 8px;font-weight:700;font-size:15.5px;color:#4d1373;
}
.rank-math-answer{border-top:1px dashed #e0d6ec;padding-top:8px}
.rank-math-answer p{margin:0 0 6px;font-size:14.5px;line-height:1.6;color:#444}
.rank-math-answer p:last-child{margin-bottom:0}

/* ---------- 17. Коны Мироздания (сетка карточек) ---------- */
.kon-block-wrapper{
  margin:34px 0;padding:26px 22px;
  background:linear-gradient(135deg,#f7f5fa,#f0e9f8);
  border:1px solid #e6e0ef;border-radius:16px;
}
.kon-block-wrapper > h2:first-child{margin-top:0;text-align:center;color:#4d1373}
.kon-grid-container{
  display:grid;grid-template-columns:repeat(2,1fr);
  gap:18px;margin:20px 0 0;
}
.kon-card{
  display:flex;flex-direction:column;
  background:#fff;border:1px solid #e6e0ef;border-radius:14px;
  overflow:hidden;box-shadow:0 4px 18px rgba(77,19,115,.07);
  transition:transform .2s ease,box-shadow .2s ease;
}
.kon-card:hover{transform:translateY(-3px);box-shadow:0 8px 26px rgba(77,19,115,.15)}
.kon-image{
  display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;
  border-bottom:1px solid #e6e0ef;
}
.kon-card-content{padding:14px 16px 4px;flex:1 0 auto}
.kon-card-content h3{margin:0 0 6px;font-size:16.5px;line-height:1.35;color:#4d1373}
.kon-card-content p{margin:0;font-size:14px;color:#6b6468}
.kon-card > p{margin:0;padding:12px 16px 16px}
.kon-button{
  display:inline-block;padding:8px 18px;
  background:linear-gradient(135deg,#651998,#4d1373);color:#fff !important;
  border-radius:9px;font-size:13.5px;font-weight:600;text-decoration:none;
  box-shadow:0 3px 10px rgba(101,25,152,.3);
  transition:filter .15s ease,transform .15s ease;
}
.kon-button:hover{filter:brightness(1.12);transform:translateY(-1px);color:#fff}
.kon-button:focus-visible{outline:2px solid #651998;outline-offset:2px}

/* ---------- 18. Светлые табы: нейтрализация тёмной темы WP ----------
   global.css темы содержит тёмный дизайн табов (фон #111, оверлей
   #000000bf, display:none панелей, белый текст). Он написан для страниц,
   где кнопки — <button> (фото-фоны). У СВЕТЛЫХ групп кнопки — <p>;
   через :has() находим их прямого родителя и перекрываем тему.          */
.entry-content :has(> .tab-buttons > p){
  color:inherit;font-family:inherit;overflow:visible;
}
.entry-content :has(> .tab-buttons > p) > .tab-buttons{
  background:transparent;padding:0 0 12px;z-index:auto;list-style:none;
}
.entry-content :has(> .tab-buttons > p) > .tab-content{
  display:block;position:static;min-height:0;
  background:#fff;background-image:none;background-size:auto;background-position:initial;
  color:#272626;padding:16px 18px;margin:0 0 12px;
  border:1px solid #ece6f4;border-radius:10px;
}
.entry-content :has(> .tab-buttons > p) > .tab-content:before{content:none}
.entry-content :has(> .tab-buttons > p) > .tab-content p{
  color:#272626;position:static;z-index:auto;font-size:16px;line-height:1.65;
}
.entry-content :has(> .tab-buttons > p) > .tab-content a{
  color:#651998;text-decoration:underline;
}
/* JS-режим: прятать неактивные панели (специфичность равна базовой выше,
   правила идут позже — потому побеждают; .active — последним) */
:has(> .tab-buttons > p).km-tabs-on > .tab-content{display:none}
:has(> .tab-buttons > p).km-tabs-on > .tab-content.active{display:block}

/* ---------- 19. Колонки Gutenberg (карточка автора и др.) ---------- */
.wp-block-columns.is-layout-flex{
  display:flex;flex-wrap:wrap;gap:26px;align-items:flex-start;
}
.wp-block-columns.is-layout-flex > .wp-block-column{flex-grow:1;min-width:0}
.wp-block-columns.is-layout-flex > .wp-block-column[style*="flex-basis:25%"]{flex-basis:25%;flex-grow:0;min-width:170px}
.wp-block-columns.is-layout-flex > .wp-block-column[style*="flex-basis:75%"]{flex-basis:calc(75% - 26px)}
.wp-block-image img{height:auto}
.wp-block-buttons.is-layout-flex{display:flex;flex-wrap:wrap;gap:12px}
.wp-block-button .wp-block-button__link{
  display:inline-block;padding:10px 22px;border-radius:10px;
  background:linear-gradient(135deg,#651998,#4d1373);color:#fff !important;
  font-weight:600;text-decoration:none;box-shadow:0 3px 10px rgba(101,25,152,.28);
  transition:filter .15s ease;
}
.wp-block-button .wp-block-button__link:hover{filter:brightness(1.12)}

/* ---------- 20. Адаптив ---------- */
@media (max-width:640px){
  .main-tab-content{padding:16px 14px}
  .internal-tabs-container,.tab-container{padding:12px 12px}
  .internal-tab-content,.tab-content{padding:12px 14px}
  .main-tabs-nav-row p,.main-tabs-buttons p{flex:1 1 auto;text-align:center;padding:8px 10px;font-size:13px}
  .bar-chart{height:200px;gap:8px}
  .bar-value{font-size:11.5px}
  .ussr-dual-circuit-container{padding:20px 14px}
  .ussr-dual-circuit-box{min-width:100%}
  .accordion-header{padding:12px 46px 12px 14px;font-size:14.5px}
  .politician-header,.person-header,.country-header{padding:12px 14px}
  .details-section,.person-content,.country-content{padding:12px 14px}
  .conclusion-block{padding:14px 16px}
  .kon-block-wrapper{padding:18px 12px}
  .kon-grid-container{gap:12px}
  .kon-card-content h3{font-size:14.5px}
  .kon-button{padding:7px 14px;font-size:12.5px}
  .entry-content :has(> .tab-buttons > p) > .tab-content{padding:12px 14px}
  .wp-block-columns.is-layout-flex > .wp-block-column[style*="flex-basis:25%"]{flex-basis:38%;min-width:120px}
  .wp-block-columns.is-layout-flex > .wp-block-column[style*="flex-basis:75%"]{flex-basis:calc(62% - 26px)}
}
@media (max-width:560px){
  .kon-grid-container{grid-template-columns:1fr}
}
