/* ============================================================
   PSL Dental — Blog kit v2. Обгортка тіла статті: <article class="psl-article"> … </article>
   Scoped по класу .psl-article — решту сайту НЕ чіпає (тема має власний <article>).
   Підключення: wp_enqueue_style на постах (assets/css/blog.css у дочірній темі).
   Токени бренду зведені з еталонних статей PSL.
   ============================================================ */
.psl-article{
  --pd:#5c3d2e; --pd2:#3d2616; --ac:#C8A96E;
  --bg:#FAF5EC; --bg2:#F5EDE6; --bd:#E0D0C8; --bd2:#DCC8BC;
  --tx:#2c1810; --mut:#8a7a72;
  --ok:#2e6b38; --warn:#B85C00; --bad:#B03030; --info:#1A3E8F;
  color:#3d2616; font-size:17px; line-height:1.7;
  /* ширину задає контейнер теми — щоб збігалося з рештою статей блогу */
  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
}

/* ── захист від глобальних стилів теми (ul,li{}, li{width:100%}, тощо) ── */
.psl-article ul{list-style:disc}
.psl-article ol{list-style:decimal}
.psl-article ul,.psl-article ol{padding-left:22px;margin:0 0 16px}
.psl-article li{width:auto;float:none;margin:0 0 8px}
.psl-article img{max-width:100%}
/* власні списки без маркерів */
.psl-article .psl-tldr ul{list-style:none;padding-left:0;margin:0}
.psl-article .psl-timeline{list-style:none;padding-left:0}

/* ── типографіка ── */
.psl-article h2{color:var(--pd);font-size:26px;line-height:1.25;margin:34px 0 14px}
.psl-article h3{color:var(--pd);font-size:20px;margin:24px 0 10px}
.psl-article p{margin:0 0 16px}
.psl-article a{color:var(--pd);text-decoration:underline;text-underline-offset:2px;white-space:normal;overflow-wrap:break-word;word-break:break-word}
.psl-article ul,.psl-article ol{margin:0 0 16px;padding-left:22px}
.psl-article li{margin:0 0 8px}
.psl-article strong,.psl-article b{color:var(--tx)}

/* ── E-E-A-T: автор + рецензент ── */
.psl-eeat{border:1.5px solid var(--bd);border-radius:12px;padding:20px 24px;margin:24px 0;background:#fff}
.psl-eeat .head{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:4px;margin-bottom:18px}
.psl-eeat .head .t{font-size:14px;font-weight:700;color:var(--tx)}
.psl-eeat .head .upd{font-size:12px;color:var(--mut)}
.psl-eeat .people{display:flex;gap:24px;flex-wrap:wrap}
.psl-eeat .person{display:flex;gap:12px;align-items:flex-start;flex:1 1 300px;min-width:260px}
.psl-article .psl-eeat .person img{width:100px!important;height:100px!important;max-width:100px!important;border-radius:8px;object-fit:cover;flex-shrink:0}
.psl-eeat .role{font-size:10px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--mut)}
.psl-eeat .name{font-size:15px;font-weight:700;color:var(--pd);margin:4px 0}
.psl-eeat .cred{font-size:12px;color:#5a3d30;line-height:1.5;margin-bottom:10px}
.psl-eeat .cred em{color:var(--mut);font-style:italic}
.psl-eeat .links{display:flex;gap:8px;flex-wrap:wrap}
.psl-eeat .links a{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border-radius:6px;font-size:11px;font-weight:600;text-decoration:none;background:var(--bg2);color:var(--pd);border:1px solid var(--bd2)}

/* ── TL;DR «Головне» ── */
.psl-tldr{background:var(--bg);border:1.5px solid var(--bd2);border-left:5px solid var(--pd);border-radius:0 10px 10px 0;padding:16px 20px;margin:24px 0}
.psl-tldr .lbl{display:block;font-size:11px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--pd);margin:0 0 10px}
.psl-tldr ul{list-style:none;padding:0;margin:0}
.psl-article .psl-tldr li{position:relative;padding:3px 0 3px 22px!important;font-size:14.5px;color:#1c1c1e;line-height:1.5;list-style:none;margin:0 0 4px}
.psl-article .psl-tldr li:before{content:"✓"!important;position:absolute;left:0;color:var(--ok)!important;font-weight:800;background:none!important;width:auto!important;height:auto!important}

/* ── ВИЗНАЧЕННЯ (зелений фон + фірмовий бордер) ── */
.psl-def{background:#e8f7ec;border:1.5px solid var(--pd);border-radius:12px;padding:16px 20px;margin:22px 0}
.psl-def .lbl{display:block;font-size:11px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--ok);margin:0 0 6px}
.psl-def p{margin:0}

/* ── ПРОТИПОКАЗАННЯ (червоний фон + фірмовий бордер) ── */
.psl-contra{background:#fbeaea;border:1.5px solid var(--pd);border-radius:12px;padding:16px 20px;margin:22px 0}
.psl-contra .lbl{display:block;font-size:11px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--bad);margin:0 0 6px}
.psl-contra p{margin:0}

/* ── ВРІЗКИ (лівий акцент) ── */
.psl-note,.psl-warn,.psl-danger,.psl-info{border-radius:8px;padding:12px 16px;margin:16px 0;font-size:15px;line-height:1.55}
.psl-note{background:var(--bg);border-left:4px solid var(--ac);color:var(--pd)}
.psl-warn{background:#FFF4E8;border-left:4px solid var(--warn);color:#8a4400}
.psl-danger{background:#FFF2F2;border-left:4px solid var(--bad);color:#8a2020}
.psl-info{background:#EDF4FC;border-left:4px solid var(--info);color:var(--info)}

/* ── ТАБЛИЦІ ── */
.psl-article .psl-table{overflow-x:auto;margin:18px 0;border-radius:10px;border:1px solid var(--bd)}
.psl-article table{width:100%;border-collapse:collapse;font-size:15px}
.psl-article thead th{background:var(--pd);color:#fff;font-weight:700;padding:10px 14px;text-align:left}
.psl-article tbody td{padding:9px 14px;border-bottom:1px solid #F0E4DC;vertical-align:top}
.psl-article tbody tr:nth-child(even){background:var(--bg2)}
.psl-article tbody tr:last-child td{border-bottom:none}
.psl-article .c-ok{color:var(--ok);font-weight:600}
.psl-article .c-amber{color:var(--warn);font-weight:600}
.psl-article .c-bad{color:var(--bad);font-weight:600}

/* ── ТАЙМЛАЙН №1: стандартний (текст) ── */
.psl-timeline{list-style:none;counter-reset:s;margin:22px 0;padding:0;position:relative}
.psl-article .psl-timeline>li{counter-increment:s;position:relative;padding:0 0 20px 56px!important;min-height:44px;list-style:none;margin:0}
.psl-article .psl-timeline>li:before{content:counter(s)!important;position:absolute;left:0;top:0;width:40px!important;height:40px!important;border-radius:50%!important;background:var(--pd)!important;color:#fff!important;font-weight:800;font-size:15px;display:flex;align-items:center;justify-content:center;list-style:none}
.psl-timeline>li:after{content:"";position:absolute;left:19px;top:44px;bottom:0;width:2px;background:linear-gradient(var(--pd),var(--bd2))}
.psl-timeline>li:last-child:after{display:none}
.psl-timeline b{display:block;color:var(--pd);margin-bottom:2px}

/* ── ТАЙМЛАЙН №2: з зображеннями ── */
.psl-steps{position:relative;margin:22px 0}
.psl-steps:before{content:"";position:absolute;left:19px;top:0;bottom:0;width:2px;background:linear-gradient(var(--pd),var(--bd2));border-radius:2px}
.psl-steps .step{display:flex;gap:16px;margin-bottom:18px;align-items:flex-start}
.psl-steps .step:last-child{margin-bottom:0}
.psl-steps .step .num{flex-shrink:0;width:40px;height:40px;border-radius:50%;background:var(--pd);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;position:relative;z-index:1}
.psl-steps .step .body{flex:1;display:flex;gap:14px;background:#fff;border:1px solid var(--bd);border-radius:10px;padding:14px 16px;align-items:flex-start}
.psl-steps .step:nth-child(even) .body{background:var(--bg)}
.psl-steps .step .txt{flex:1}
.psl-steps .step .txt b{display:block;color:var(--pd);margin-bottom:4px;font-size:14px}
.psl-steps .step .txt div{font-size:13.5px;color:var(--pd2);line-height:1.6}
.psl-article .psl-steps .step img{flex-shrink:0;width:110px!important;height:80px!important;max-width:110px!important;object-fit:cover;border-radius:8px;background:var(--bg2)}
.psl-steps .step.hl .body{border:2px solid var(--ac)}
.psl-steps .step.hl .num{background:var(--ac)}

/* ── ВІЗУАЛЬНІ КАРТКИ (з фото) ── */
.psl-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:22px 0}
.psl-cards .card{border:1.5px solid var(--bd2);border-radius:12px;overflow:hidden;background:#fff;display:flex;flex-direction:column}
.psl-article .psl-cards .card img{width:100%;height:150px!important;object-fit:cover;display:block;background:var(--bg2)}
.psl-cards .card .in{padding:14px 16px}
.psl-cards .card h3{margin:0 0 6px;font-size:17px;color:var(--pd)}
.psl-cards .card p{margin:0;font-size:14.5px}

/* ── ПРОСТІ ТЕКСТ-КАРТКИ ── */
.psl-dcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin:22px 0}
.psl-dcards>div{border:1.5px solid var(--bd2);border-radius:12px;padding:16px 18px;background:#fff}
.psl-dcards h3{margin:0 0 6px;font-size:16px;color:var(--pd)}
.psl-dcards p{margin:0;font-size:14.5px}

/* ── FAQ (чистий <details>-акордеон) ── */
.psl-faq{border:1.5px solid var(--bd2);border-radius:12px;margin:0 0 12px;background:#fff}
.psl-faq>summary{list-style:none;cursor:pointer;padding:16px 48px 16px 18px;font-weight:700;color:var(--tx);position:relative}
.psl-faq>summary::-webkit-details-marker{display:none}
.psl-faq>summary:after{content:"+";position:absolute;right:18px;top:12px;font-size:22px;color:var(--ac)}
.psl-faq[open]>summary:after{content:"–"}
.psl-faq>div{padding:0 18px 16px;font-size:15.5px}

/* ── КОМЕНТАР АВТОРА (фінальний) ── */
.psl-comment{background:var(--bg2);border:1.5px solid var(--bd2);border-radius:12px;padding:24px;margin:30px 0}
.psl-comment .row{display:flex;gap:18px;align-items:flex-start;flex-wrap:wrap}
.psl-article .psl-comment img{width:90px!important;height:90px!important;max-width:90px!important;border-radius:50%;object-fit:cover;border:3px solid var(--bd2);flex-shrink:0}
.psl-comment .lbl{display:block;font-size:10px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:#7a5240;margin-bottom:4px}
.psl-comment .who{display:block;font-size:13px;font-weight:700;color:var(--pd);margin-bottom:12px}
.psl-comment p{margin:0;font-size:14px;line-height:1.7;font-style:italic;color:var(--pd2)}

/* ── МЕДИЧНИЙ ДИСКЛЕЙМЕР ── */
.psl-disclaimer{background:#fff4e8;border:1px solid #f1d8c2;border-radius:10px;padding:20px;margin:28px 0;display:flex;gap:14px;align-items:flex-start}
.psl-disclaimer .ic{flex-shrink:0;color:var(--warn);font-weight:700;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:2px solid var(--warn);border-radius:50%}
.psl-disclaimer .lbl{margin:0 0 8px;color:var(--warn);font-weight:700;font-size:14px;text-transform:uppercase;letter-spacing:.6px}
.psl-disclaimer p{margin:0;font-size:13px;color:var(--pd);line-height:1.6}

/* ── НАУКОВІ ДЖЕРЕЛА ── */
.psl-sources{margin:24px 0;overflow-wrap:anywhere;word-break:break-word}
.psl-sources h3{margin:0 0 12px}
.psl-sources ol{padding-left:18px;margin:0}
.psl-sources li{margin-bottom:8px;font-size:13.5px}
.psl-article .psl-sources a{white-space:normal!important;overflow-wrap:anywhere;word-break:break-word}
/* страховка від горизонтального зсуву на мобільному */
.psl-article{overflow-wrap:break-word}

/* ── CTA на послугу ── */
.psl-cta{background:var(--pd);border-radius:14px;padding:22px 24px;margin:28px 0;text-align:center}
.psl-cta p{margin:0 0 14px;color:#f4ece7}
.psl-cta a{display:inline-block;background:#fff;color:var(--pd)!important;text-decoration:none;font-weight:700;border-radius:10px;padding:12px 28px}
.psl-cta a:hover{background:var(--bg)}
/* вторинне посилання під кнопкою — відкриває попап онлайн-консультації (popmake-1351) */
.psl-cta a.sec{display:block;max-width:100%;box-sizing:border-box;white-space:normal;overflow-wrap:break-word;background:transparent;color:#f0e5dd!important;text-decoration:underline;text-underline-offset:2px;font-weight:600;font-size:14px;padding:0;margin-top:14px;line-height:1.45}
.psl-cta a.sec:hover{background:transparent;color:#fff!important}

/* ── адаптив ── */
@media(max-width:600px){
  .psl-article{font-size:16px}
  .psl-article h2{font-size:22px}
  .psl-article table{font-size:14px}
  .psl-steps .step img{width:84px;height:64px}
  .psl-cards{grid-template-columns:1fr}
}