/* Текст страницы проекта — оформлен как тело записи блога (.ab-prose): тот же шрифт, размер,
   межстрочный интервал, списки, цитаты и плавное появление блоков (blur + сдвиг + fade). */
.pj-prose{
	--pj-ease:cubic-bezier(.2,.7,.1,1);
	--pj-yl:#ffd60a;
	--pj-mu:color-mix(in oklab,var(--color-content-base) 55%,transparent);
	--pj-ln:color-mix(in oklab,var(--color-content-base) 14%,transparent);
	max-width:720px;margin:0 auto;
	font-family:"Onest","General Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
	font-size:clamp(17px,.35vw + 15.5px,19px);line-height:1.72;letter-spacing:0;font-weight:400;
	color:var(--color-title-1);text-wrap:pretty;overflow-wrap:break-word;-webkit-font-smoothing:antialiased;
}
.pj-prose--intro{margin:0}
.pj-prose>*{margin:0}
.pj-prose>*+*{margin-top:1.3em}
.pj-prose :is(p,li,td,th,dd,dt,div,blockquote,figcaption){font-size:inherit;line-height:inherit;color:inherit}
.pj-prose strong,.pj-prose b{font-weight:650}
.pj-prose :is(h2,h3,h4){font-family:inherit;font-weight:700;color:var(--color-title-1);text-wrap:balance;scroll-margin-top:90px}
.pj-prose h2{margin-top:0;font-size:clamp(26px,3vw,36px);line-height:1.15;letter-spacing:-.03em}
.pj-prose h3{margin-top:1.8em;font-size:clamp(21px,2.1vw,26px);line-height:1.22;letter-spacing:-.025em;font-weight:600}
.pj-prose h4{margin-top:1.5em;font-size:1.1em;line-height:1.3;font-weight:600}
.pj-prose>:is(h2,h3,h4):first-child{margin-top:0}
.pj-prose :is(h2,h3,h4)+*{margin-top:.7em}
.pj-prose a{font-weight:500;color:inherit;text-decoration:underline;text-decoration-color:var(--pj-yl);text-decoration-thickness:.12em;text-underline-offset:.22em;transition:background-color .2s,text-decoration-color .2s}
.pj-prose a:hover{background:rgba(255,214,10,.35);text-decoration-color:transparent}
.pj-prose ul,.pj-prose ol{margin-left:0;padding-left:0;list-style:none}
.pj-prose ul>li,.pj-prose ol>li{position:relative;padding-left:2em;margin:0}
.pj-prose li+li{margin-top:.55em}
.pj-prose li>:is(p,ul,ol){margin:0}
.pj-prose li>:is(ul,ol){margin-top:.55em}
.pj-prose li>p+p{margin-top:.4em}
.pj-prose :is(p,ul,ol,table,blockquote)+:is(ul,ol){margin-top:.9em}
.pj-prose ul>li::before{content:"";position:absolute;left:.5em;top:.72em;width:.42em;height:.42em;border-radius:50%;background:var(--pj-yl);box-shadow:0 0 0 .14em rgba(255,214,10,.25)}
.pj-prose ol{counter-reset:pj-ol}
.pj-prose ol>li{counter-increment:pj-ol;padding-left:2.6em}
.pj-prose ol>li::before{content:counter(pj-ol);position:absolute;left:0;top:.18em;display:grid;place-items:center;width:1.7em;height:1.7em;border-radius:50%;background:var(--color-title-1);color:var(--color-section-1,#fff);font-size:.78em;font-weight:650;line-height:1}
.pj-prose blockquote{margin-inline:0;padding:.2em 0 .2em 1.4em;border-left:3px solid var(--pj-yl);font-size:1.12em;line-height:1.55;font-weight:500}
.pj-prose img,.pj-prose video,.pj-prose iframe{display:block;max-width:100%;height:auto;border-radius:22px}
.pj-prose figcaption{margin-top:12px;font-size:14px;text-align:center;color:var(--pj-mu)}
.pj-prose pre{padding:20px 22px;border-radius:18px;background:var(--pj-ln);overflow-x:auto;font-size:15px;line-height:1.55}
.pj-prose code{padding:2px 6px;border-radius:6px;background:var(--pj-ln);font-size:.88em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.pj-prose pre code{padding:0;background:none}
.pj-prose table{width:100%;display:block;overflow-x:auto;border-collapse:collapse;font-size:16px}
.pj-prose th,.pj-prose td{padding:12px;border-bottom:1px solid var(--pj-ln);text-align:left;vertical-align:top;line-height:1.5}
.pj-prose th{font-size:.8em;font-weight:650;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}
.pj-prose hr{height:1px;border:0;background:var(--pj-ln);margin:3em 0}
.pj-prose mark{padding:.05em .25em;border-radius:.25em;background:rgba(255,214,10,.45);color:inherit}

/* Плавное появление — как в блоге */
.pj-js .pj-prose>*{opacity:0;transform:translateY(34px) scale(.985);filter:blur(8px);transition:opacity 1s var(--pj-ease),transform 1.1s var(--pj-ease),filter 1s var(--pj-ease);transition-delay:var(--d,0ms)}
.pj-js .pj-prose>*.in{opacity:1;transform:none;filter:none}
@media (prefers-reduced-motion:reduce){.pj-js .pj-prose>*{opacity:1;transform:none;filter:none;transition:none}}

/* Подписи под картинками, видео и галереями */
.pj-cap{margin-top:14px;font-family:"Onest","General Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:14px;line-height:1.5;text-align:center;color:color-mix(in oklab,var(--color-content-base) 60%,transparent);text-wrap:balance}
.pj-cap a{color:inherit;text-decoration:underline;text-underline-offset:.2em}


/* Как в блоге (.ab-prose): цитаты, шрифт и вставки из Google Docs / Word / ChatGPT */
.pj-prose blockquote p+p{margin-top:.8em}
.pj-prose blockquote cite{display:block;margin-top:.8em;font-size:.8em;font-style:normal;font-weight:400;color:var(--pj-mu)}
.pj-prose figure{margin-inline:0}
.pj-prose .wp-block-pullquote blockquote{border-left:3px solid var(--pj-yl)}
.pj-prose :is(p,li,ul,ol,td,th,dd,dt,blockquote,figcaption,span,strong,em,b,i,a,div,h2,h3,h4,h5,h6){font-family:"Onest","General Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
.pj-prose :is(p,li,blockquote,span,strong,em,b,i,a,div)[style]{font-family:inherit !important;font-size:inherit !important;line-height:inherit !important;letter-spacing:inherit !important;color:inherit !important}
.pj-prose :is(h2,h3,h4,h5,h6)[style]{font-family:inherit !important;color:inherit !important;letter-spacing:-.03em !important;line-height:1.18 !important}
.pj-prose h2[style]{font-size:clamp(26px,3vw,36px) !important}
.pj-prose h3[style]{font-size:clamp(21px,2.1vw,26px) !important}
.pj-prose :is(h4,h5,h6)[style]{font-size:1.1em !important}

/* Цитата — строго как в блоге: жёлтая линия слева (в т.ч. для блока WP «Цитата» и вставленного HTML) */
.pj-prose blockquote,
.pj-prose blockquote.wp-block-quote,
.pj-prose .wp-block-pullquote blockquote{
	margin-inline:0;padding:.2em 0 .2em 1.4em;
	border:0;border-left:3px solid var(--pj-yl);
	font-size:1.12em;line-height:1.55;font-weight:500;letter-spacing:0;text-align:left;
}
.pj-prose blockquote>p{margin:0;font-size:inherit;line-height:inherit;font-weight:inherit}
.pj-prose blockquote>p+p{margin-top:.8em}
@media (max-width:640px){.pj-prose blockquote{padding-left:1.1em}}
