/* PT Plan Writer: article blocks. Colours follow the Practical Textile topic colour (--c family) with safe fallbacks. */
.ptpw-quick,.ptpw-takeaways,.ptpw-fig,.ptpw-pc,.ptpw-related{--pc:var(--c,#202878);--pd:var(--cd,#202878);--pt:var(--ct,#E5E7F4);--pl:var(--cl,#CBD0EA);--pi:var(--ink,#1B1F3B);--pb:var(--body,#2A2E45);--pm:var(--muted,#4A4F66);--pline:var(--line,#E4E7EF);margin:28px 0;font-size:16px;line-height:1.6}

/* Quick answer */
.ptpw-quick{background:var(--pt);border-radius:14px;padding:18px 22px 16px;position:relative;border:1px solid var(--pl)}
.ptpw-quick-label{margin:0 0 6px;font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--pd)}
.ptpw-quick-text{margin:0;font-size:18px;line-height:1.55;color:var(--pi);font-weight:500}

/* Key takeaways */
.ptpw-takeaways{border:1px solid var(--pline);border-radius:14px;padding:16px 22px 8px;background:#fff}
.ptpw-takeaways-label{margin:0 0 8px;font-weight:800;color:var(--pi);font-size:15px}
.ptpw-takeaways ul{margin:0;padding:0;list-style:none}
.ptpw-takeaways li{position:relative;padding:0 0 10px 28px;margin:0;color:var(--pb)}
.ptpw-takeaways li::before{content:"";position:absolute;left:2px;top:.45em;width:14px;height:8px;border-left:2.5px solid var(--pc);border-bottom:2.5px solid var(--pc);transform:rotate(-45deg)}

/* Figures (diagrams) */
.ptpw-fig{border:1px solid var(--pline);border-radius:16px;background:#fff;padding:20px 20px 16px;overflow:hidden}
.ptpw-fig-head{display:flex;flex-direction:column;gap:2px;margin:0 0 16px;text-align:left}
.ptpw-fig-kicker{font-size:11.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--pc)}
.ptpw-fig-title{font-size:19px;font-weight:800;color:var(--pi);line-height:1.3;text-wrap:balance}
.ptpw-fig-note{margin:14px 0 0;font-size:14px;color:var(--pm)}
.ptpw-fig-small{margin:10px 0 0;font-size:12.5px;color:var(--pm)}

/* Steps: a numbered flow, horizontal on wide screens */
.ptpw-flow{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;counter-reset:none}
.ptpw-flow li{position:relative;margin:0;padding:16px 14px 14px;background:var(--pt);border-radius:12px;display:flex;flex-direction:column;gap:6px;min-width:0}
.ptpw-flow li b{color:var(--pi);font-size:15.5px;line-height:1.3}
.ptpw-flow li span:not(.ptpw-n){font-size:14px;color:var(--pb);line-height:1.5}
.ptpw-n{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--pc);color:#fff;font-weight:800;font-size:14px}
.ptpw-flow li:not(:last-child)::after{content:"";position:absolute;right:-12px;top:28px;width:10px;height:10px;border-top:2.5px solid var(--pc);border-right:2.5px solid var(--pc);transform:rotate(45deg);opacity:.55}
@media (max-width:640px){.ptpw-flow{grid-template-columns:1fr}.ptpw-flow li{flex-direction:row;flex-wrap:wrap;align-items:center}.ptpw-flow li span:not(.ptpw-n){flex-basis:100%}.ptpw-flow li:not(:last-child)::after{right:auto;left:26px;top:auto;bottom:-11px;transform:rotate(135deg)}}

/* Five or more steps: a vertical timeline */
.ptpw-flow-long{grid-template-columns:1fr;gap:0}
.ptpw-flow-long li{display:grid;grid-template-columns:30px 1fr;column-gap:14px;row-gap:2px;background:none;border-radius:0;padding:0 0 18px}
.ptpw-flow-long li .ptpw-n{grid-row:1/3;align-self:start}
.ptpw-flow-long li b{padding-top:4px}
.ptpw-flow-long li span:not(.ptpw-n){grid-column:2}
.ptpw-flow-long li:not(:last-child)::after{content:"";left:14px;right:auto;top:34px;bottom:2px;width:0;height:auto;border:0;border-left:2px dashed var(--pl);transform:none;opacity:1}
@media (max-width:640px){.ptpw-flow-long li{display:grid;flex-direction:initial}.ptpw-flow-long li:not(:last-child)::after{left:14px;bottom:2px;transform:none}}

/* Troubleshoot: problem -> cause -> fix */
.ptpw-fix{display:flex;flex-direction:column;gap:10px}
.ptpw-fix-head,.ptpw-fix-row{display:grid;grid-template-columns:1fr 1.2fr 1.3fr;gap:10px}
.ptpw-fix-head span{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--pm);padding:0 12px}
.ptpw-fix-row span{border-radius:10px;padding:12px;font-size:14.5px;line-height:1.5;position:relative;min-width:0}
.ptpw-fix-row .p{background:#FFF1F0;color:#7A1C14;font-weight:700}
.ptpw-fix-row .c{background:#FFF8E6;color:#5E4300}
.ptpw-fix-row .f{background:#ECF8F0;color:#14532D}
.ptpw-fix-row .p::after,.ptpw-fix-row .c::after{content:"";position:absolute;right:-9px;top:50%;width:8px;height:8px;margin-top:-4px;border-top:2px solid var(--pm);border-right:2px solid var(--pm);transform:rotate(45deg);opacity:.5}
@media (max-width:640px){.ptpw-fix-head{display:none}.ptpw-fix-row{grid-template-columns:1fr;gap:4px;padding-bottom:6px;border-bottom:1px dashed var(--pline)}.ptpw-fix-row .p::after,.ptpw-fix-row .c::after{display:none}.ptpw-fix-row .c::before{content:"Cause: ";font-weight:700}.ptpw-fix-row .f::before{content:"Fix: ";font-weight:700}}

/* Versus: two sides */
.ptpw-vs-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin-bottom:10px}
.ptpw-vs-head .l,.ptpw-vs-head .r{border-radius:10px;padding:10px 12px;font-weight:800;text-align:center;color:#fff}
.ptpw-vs-head .l{background:var(--pc)}
.ptpw-vs-head .r{background:var(--pi)}
.ptpw-vs-head .x{font-weight:800;color:var(--pm);font-size:13px;text-transform:uppercase}
.ptpw-vs dl{margin:0;display:flex;flex-direction:column;gap:8px}
.ptpw-vs-row{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;border-top:1px solid var(--pline);padding-top:8px}
.ptpw-vs-row dt{grid-column:1/-1;text-align:center;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--pm);margin:0}
.ptpw-vs-row dd{margin:0;border-radius:10px;padding:10px 12px;font-size:14.5px;line-height:1.5;min-width:0}
.ptpw-vs-row dd.l{background:var(--pt)}
.ptpw-vs-row dd.r{background:#F1F2F7}
.ptpw-vs-row .lbl{display:none;font-weight:700}
@media (max-width:520px){.ptpw-vs-row{grid-template-columns:1fr}.ptpw-vs-row .lbl{display:inline}}

/* Scale */
.ptpw-scale-axis{display:grid;grid-template-columns:minmax(110px,30%) 1fr;gap:12px;align-items:end;margin-bottom:6px}
.ptpw-scale-axis .m{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--pm)}
.ptpw-scale-axis .ticks{display:flex;justify-content:space-between;font-size:12px;color:var(--pm);font-weight:700}
.ptpw-scale-row{display:grid;grid-template-columns:minmax(110px,30%) 1fr;gap:4px 12px;align-items:center;padding:8px 0;border-top:1px solid var(--pline)}
.ptpw-scale-row .name{font-weight:700;color:var(--pi);font-size:15px}
.ptpw-scale-row .track{position:relative;height:26px;background:#F1F2F7;border-radius:99px;overflow:hidden}
.ptpw-scale-row .fill{position:absolute;inset:0 auto 0 0;background:linear-gradient(90deg,var(--pl),var(--pc));border-radius:99px}
.ptpw-scale-row .val{position:relative;display:block;padding:0 12px;line-height:26px;font-size:12.5px;font-weight:800;color:var(--pi)}
.ptpw-scale-row .note{grid-column:2;font-size:13.5px;color:var(--pb)}
@media (max-width:520px){.ptpw-scale-axis,.ptpw-scale-row{grid-template-columns:1fr}.ptpw-scale-axis .m{display:none}.ptpw-scale-row .note{grid-column:1}}

/* Pros and cons */
.ptpw-pc{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ptpw-pc>div{border-radius:14px;padding:14px 18px 6px;min-width:0}
.ptpw-pros{background:#ECF8F0;border:1px solid #CDEBD6}
.ptpw-cons{background:#FFF4EC;border:1px solid #FBDDB8}
.ptpw-pc h3{margin:0 0 8px!important;font-size:16px!important}
.ptpw-pros h3{color:#17652F}.ptpw-cons h3{color:#8A4600}
.ptpw-pc ul{margin:0 0 8px;padding-left:20px}
.ptpw-pc li{margin:0 0 6px;font-size:15px}
@media (max-width:600px){.ptpw-pc{grid-template-columns:1fr}}

/* Amazon button (when no AAWP box) */
.ptpw-buy{margin:12px 0 18px}
.ptpw-buy a{display:inline-flex;align-items:center;gap:8px;background:#FFD814;color:#0F1111!important;border:1px solid #FCD200;border-radius:99px;padding:10px 20px;font-weight:700;text-decoration:none!important;font-size:15px}
.ptpw-buy a:hover{background:#F7CA00}
.ptpw-buy a:focus-visible{outline:3px solid var(--c,#202878);outline-offset:2px}

/* Read next */
.ptpw-related{border-top:3px solid var(--pc);background:var(--pt);border-radius:0 0 14px 14px;padding:16px 22px 8px}
.ptpw-related-label{margin:0 0 8px;font-weight:800;color:var(--pd);font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.ptpw-related ul{margin:0;padding:0;list-style:none}
.ptpw-related li{margin:0 0 10px;font-weight:700}
.ptpw-related a{color:var(--pi);text-decoration:none;border-bottom:2px solid var(--pl)}
.ptpw-related a:hover{border-color:var(--pc)}
.ptpw-disclosure{font-size:14px;color:#5B6075}
@media (prefers-reduced-motion:reduce){.ptpw-buy a{transition:none}}

/* ===== Buying-guide blocks (approved premium design) ===== */
.ptpw-win,.ptpw-tw,.ptpw-rev,.ptpw-final,.ptpw-faq{--pc:var(--c,#202878);--pd:var(--cd,#202878);--pt:var(--ct,#E5E7F4);--pl:var(--cl,#CBD0EA);--pi:var(--ink,#1B1F3B);--pb:var(--body,#2A2E45);--pm:var(--muted,#4A4F66);--pline:var(--line,#E4E7EF);--psoft:var(--bg,#F7F8FB)}
.ptpw-img{display:grid;place-items:center;aspect-ratio:1/1;background:#fff;border:1px solid var(--pline,#E4E7EF);border-radius:12px;overflow:hidden;padding:8px;max-width:100%}
.ptpw-img img{width:100%;height:100%;object-fit:contain;margin:0!important;border-radius:0!important;box-shadow:none!important}
.ptpw-img svg{width:70%;height:auto}
.ptpw-btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;background:#FFD814;border:1px solid #FCD200;color:#0F1111!important;border-radius:99px;padding:10px 18px;font-weight:700;font-size:15px;line-height:1.3;text-decoration:none!important;text-align:center}
.ptpw-btn:hover{background:#F7CA00}
.ptpw-btn:focus-visible{outline:3px solid var(--c,#202878);outline-offset:2px}
.ptpw-btn.ghost{background:transparent;border-color:var(--line,#E4E7EF);color:var(--ink,#1B1F3B)!important}
.ptpw-btn.sm{padding:7px 13px;font-size:13.5px;white-space:nowrap}

/* Top picks */
.ptpw-win{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:26px 0}
.ptpw-w{background:#fff;border:1px solid var(--pline);border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:10px;min-width:0}
.ptpw-w.top{border:2px solid var(--pc);box-shadow:0 12px 30px -20px var(--pc)}
.ptpw-badge{align-self:flex-start;font-size:11.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;background:var(--pt);color:var(--pd);padding:4px 10px;border-radius:99px}
.ptpw-w.top .ptpw-badge{background:var(--pc);color:#fff}
.ptpw-w-name{margin:0;font-size:17px;font-weight:800;color:var(--pi);line-height:1.3}
.ptpw-w ul{margin:0;padding-left:18px;font-size:14px;line-height:1.5}
.ptpw-w li{margin:0 0 4px}
.ptpw-w .ptpw-btn{margin-top:auto}

/* At a glance */
.ptpw-tw{overflow-x:auto;border:1px solid var(--pline);border-radius:14px;background:#fff;margin:18px 0 26px}
table.ptpw-glance{border-collapse:collapse;width:100%;min-width:620px;font-size:14.5px;margin:0!important;border:0!important}
.ptpw-glance th,.ptpw-glance td{padding:10px 12px;border:0;border-bottom:1px solid var(--pline);text-align:left;vertical-align:middle;background:none}
.ptpw-glance th{font-size:11.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--pm);background:var(--pt)}
.ptpw-glance tr:last-child td{border-bottom:0}
.ptpw-glance b{color:var(--pi)}
.ptpw-mini{width:72px}
.ptpw-mini .ptpw-img{width:58px;padding:4px;border-radius:8px}
.ptpw-rk{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--pt);color:var(--pd);font-weight:800;font-size:13px}

/* Review card */
.ptpw-rev{background:#fff;border:1px solid var(--pline);border-radius:18px;overflow:hidden;margin:18px 0 22px}
.ptpw-rev-head{display:flex;align-items:center;gap:10px;padding:12px 18px;background:linear-gradient(90deg,var(--pc),var(--pd));color:#fff}
.ptpw-rev-head .n{font-size:22px;font-weight:900;line-height:1}
.ptpw-rev-head span:last-child{font-weight:800;letter-spacing:.03em}
.ptpw-rev-top{display:grid;grid-template-columns:210px 1fr;gap:20px;padding:18px}
.ptpw-rev-name{margin:0 0 4px;font-size:24px;font-weight:800;color:var(--pi);line-height:1.25}
.ptpw-bestfor{margin:0 0 10px;font-size:14px;font-weight:700;color:var(--pd)}
.ptpw-verdict{margin:0 0 12px;font-size:16px}
.ptpw-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px!important;padding:0!important;list-style:none!important}
.ptpw-chips li{font-size:12.5px;border:1px solid var(--pline);border-radius:99px;padding:4px 10px;background:var(--psoft);margin:0!important}
.ptpw-chips li::before{display:none}
.ptpw-chips b{color:var(--pi)}
.ptpw-ctas{display:flex;flex-wrap:wrap;gap:8px}
.ptpw-fit{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:0 18px 16px}
.ptpw-fit div{background:var(--psoft);border:1px solid var(--pline);border-radius:10px;padding:8px 10px;font-size:12.5px}
.ptpw-fit b{display:block;color:var(--pi);font-size:13.5px}
.ptpw-pc2{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 18px 16px}
.ptpw-pc2>div{border-radius:12px;padding:12px 16px 4px;min-width:0}
.ptpw-pc2 .p{background:#ECF8F0}.ptpw-pc2 .c{background:#FFF4EC}
.ptpw-pc2 .t{margin:0 0 6px;font-size:15px;font-weight:800}
.ptpw-pc2 .p .t{color:#17652F}.ptpw-pc2 .c .t{color:#8A4600}
.ptpw-pc2 ul{margin:0 0 8px;padding-left:18px;font-size:14.5px;line-height:1.55}
.ptpw-skip{margin:0 18px 18px!important;font-size:14.5px;border-top:1px dashed var(--pline);padding-top:12px}
.ptpw-skip b{color:var(--pi)}

/* Final verdict */
.ptpw-final{background:#fff;border:2px solid var(--pc);border-radius:18px;padding:18px 20px 8px;margin:18px 0 22px}
.ptpw-final-label{margin:0 0 4px;font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--pd)}
.ptpw-final-row{display:grid;grid-template-columns:64px 1fr auto;gap:12px;align-items:center;padding:10px 0;border-top:1px solid var(--pline)}
.ptpw-final-row:first-of-type{border-top:0}
.ptpw-final-row p{margin:0;font-size:15px}
.ptpw-final-row b{color:var(--pi)}
.ptpw-final .ptpw-mini{width:auto}

/* FAQ accordion */
.ptpw-faq{margin:14px 0 26px}
.ptpw-faq details{border:1px solid var(--pline);border-radius:12px;background:#fff;padding:12px 16px;margin:8px 0}
.ptpw-faq summary{cursor:pointer;font-weight:700;color:var(--pi);list-style:none;display:flex;justify-content:space-between;gap:12px}
.ptpw-faq summary::-webkit-details-marker{display:none}
.ptpw-faq summary::after{content:"+";font-size:20px;line-height:1;color:var(--pc);font-weight:800}
.ptpw-faq details[open] summary::after{content:"\2212"}
.ptpw-faq p{margin:8px 0 0;font-size:15.5px}

@media (max-width:720px){.ptpw-win{grid-template-columns:1fr}.ptpw-rev-top{grid-template-columns:1fr}.ptpw-rev-top .ptpw-img{max-width:240px}.ptpw-pc2{grid-template-columns:1fr}.ptpw-fit{grid-template-columns:1fr 1fr}.ptpw-final-row{grid-template-columns:56px 1fr}.ptpw-final-row .ptpw-btn{grid-column:1/-1}}

/* ===== Single column, no side contents list (plan posts only) ===== */
body.ptpw-post .pt-toc,body.ptpw-post .pt-toc-m{display:none!important}
body.ptpw-post .pt-layout{grid-template-columns:minmax(0,760px)!important;gap:0!important}
.ptpw-toc{border:1px solid var(--line,#E4E7EF);border-radius:12px;background:#fff;margin:0 0 26px;padding:0}
.ptpw-toc summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;font-weight:800;color:var(--ink,#1B1F3B)}
.ptpw-toc summary::-webkit-details-marker{display:none}
.ptpw-toc summary::after{content:"Show";font-size:13px;font-weight:700;color:var(--cd,#202878);border:1px solid var(--cl,#CBD0EA);border-radius:99px;padding:3px 12px}
.ptpw-toc[open] summary::after{content:"Hide"}
.ptpw-toc-count{margin-left:auto;font-size:13px;font-weight:600;color:var(--muted,#4A4F66)}
.ptpw-toc ol{margin:0;padding:4px 16px 14px 40px;columns:2;column-gap:28px;border-top:1px solid var(--line,#E4E7EF)}
.ptpw-toc li{break-inside:avoid;margin:8px 0;font-size:15px;line-height:1.4}
.ptpw-toc a{color:var(--body,#2A2E45);text-decoration:none}
.ptpw-toc a:hover{color:var(--cd,#202878);text-decoration:underline}
@media (max-width:640px){.ptpw-toc ol{columns:1}}
/* fixes after preview */
.ptpw-faq details{padding:12px 16px!important}
.ptpw-faq summary{padding:0!important;margin:0!important}
.ptpw-toc li{margin:0 0 10px}
.ptpw-toc ol{padding-top:14px}
@media (max-width:720px){
.ptpw-w{display:grid;grid-template-columns:108px 1fr;grid-template-areas:"badge badge" "img name" "img list" "btn btn";column-gap:14px;row-gap:8px;align-items:start}
.ptpw-w .ptpw-badge{grid-area:badge}
.ptpw-w .ptpw-img{grid-area:img}
.ptpw-w .ptpw-w-name{grid-area:name}
.ptpw-w ul{grid-area:list}
.ptpw-w .ptpw-btn{grid-area:btn;margin-top:4px}
.ptpw-glance th:nth-child(5),.ptpw-glance td:nth-child(5){display:none}
table.ptpw-glance{min-width:0}
.ptpw-glance th,.ptpw-glance td{padding:8px}
}
@media (max-width:720px){
.ptpw-w .ptpw-badge{justify-self:start}
table.ptpw-glance,.ptpw-glance tbody{display:block;width:100%;min-width:0!important}
.ptpw-glance thead{display:none}
.ptpw-glance tr{display:grid;grid-template-columns:30px 62px minmax(0,1fr);grid-template-areas:"rk img name" "rk img best" "btn btn btn";column-gap:10px;row-gap:4px;padding:12px;border-bottom:1px solid var(--pline)}
.ptpw-glance tr:last-child{border-bottom:0}
.ptpw-glance td{display:block;padding:0!important;border:0!important;min-width:0}
.ptpw-glance td:nth-child(1){grid-area:rk}
.ptpw-glance td:nth-child(2){grid-area:img;width:auto}
.ptpw-glance td:nth-child(3){grid-area:name}
.ptpw-glance td:nth-child(4){grid-area:best;font-size:13.5px;color:var(--pm)}
.ptpw-glance td:nth-child(6){grid-area:btn;padding-top:6px!important}
.ptpw-glance td:nth-child(6) .ptpw-btn{display:flex;width:100%}
.ptpw-tw{overflow:visible}
}
