/* ============================================================
   Nexsora Studio — стили, специфичные для WordPress
   (не входили в исходный статический макет)
   ============================================================ */

/* ---------- Доступность ---------- */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}
.skip-link:focus {
	clip: auto;
	clip-path: none;
	height: auto;
	width: auto;
	left: 16px;
	top: 16px;
	z-index: 100000;
	padding: 10px 16px;
	background: var(--color-acid-lime);
	color: var(--color-on-accent);
	border-radius: var(--radius-md);
	font-size: 14px;
}

/* ---------- Активный пункт меню ---------- */
.nav-links a.active { color: var(--color-paper); background: var(--surface-hover); }

/* ---------- Админ-бар WordPress ---------- */
.admin-bar .nav { top: 32px; }
@media screen and (max-width: 782px) {
	.admin-bar .nav { top: 46px; }
}

/* ---------- Широкая статья без бокового меню ---------- */
.doc-article-wide { max-width: 860px; margin-inline: auto; }
.doc-thumb { margin: 24px 0; }
.doc-thumb img { border-radius: var(--radius-xl); border: 1px solid var(--color-graphite); }

/* ---------- Оглавление документа ---------- */
.doc-toc a { font-size: 12.5px; }

/* ---------- Контент из редактора блоков ---------- */
.wp-content h2,
.wp-content h3,
.wp-content h4 { color: var(--color-paper); letter-spacing: -0.02em; }
.wp-content h2 { font-size: 26px; margin: 40px 0 14px; font-weight: 510; }
.wp-content h3 { font-size: 20px; margin: 30px 0 10px; font-weight: 510; }
.wp-content p { margin: 0 0 14px; line-height: 1.7; font-size: 15px; color: var(--color-fog); }
.wp-content img { border-radius: var(--radius-md); height: auto; }
.wp-content figure { margin: 24px 0; }
.wp-content figcaption { margin-top: 8px; font-size: 12.5px; color: var(--color-ash); text-align: center; }
.wp-content ul,
.wp-content ol { margin: 0 0 16px 0; padding-left: 20px; }
.wp-content ol li,
.wp-content ul li { margin-bottom: 8px; color: var(--color-fog); line-height: 1.65; }
.wp-content ul { list-style: none; padding-left: 0; }
.wp-content ul li { position: relative; padding-left: 20px; }
.wp-content ul li::before {
	content: "";
	position: absolute;
	left: 4px; top: 10px;
	width: 5px; height: 5px;
	border-radius: 50%;
	background: var(--color-acid-lime);
}
.wp-content blockquote {
	margin: 24px 0;
	padding: 16px 20px;
	border-left: 2px solid var(--color-acid-lime);
	background: var(--surface-soft);
	border-radius: 0 var(--radius-md) var(--radius-md) 0;
}
.wp-content blockquote p:last-child { margin-bottom: 0; }
.wp-content code {
	font-family: var(--font-mono);
	font-size: 13px;
	background: var(--surface-tag);
	padding: 2px 6px;
	border-radius: var(--radius-badge);
	color: var(--color-mist);
}
.wp-content pre {
	background: var(--color-obsidian);
	border: 1px solid var(--color-graphite);
	border-radius: var(--radius-md);
	padding: 16px;
	overflow: auto;
	font-family: var(--font-mono);
	font-size: 13px;
	line-height: 1.6;
	margin: 0 0 20px;
}
.wp-content pre code { background: none; padding: 0; }
.wp-content table {
	width: 100%;
	border-collapse: collapse;
	margin: 0 0 24px;
	font-size: 14px;
}
.wp-content th,
.wp-content td {
	padding: 10px 12px;
	border: 1px solid var(--color-graphite);
	text-align: left;
}
.wp-content th { background: var(--surface-soft); color: var(--color-paper); font-weight: 510; }
.wp-content .alignwide { max-width: min(100%, 1000px); margin-inline: auto; }
.wp-content .alignfull { max-width: 100%; }
.wp-content .aligncenter { margin-inline: auto; }
.wp-content .alignleft { float: left; margin: 0 20px 16px 0; }
.wp-content .alignright { float: right; margin: 0 0 16px 20px; }

/* ---------- Список записей ---------- */
.post-list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
	gap: 14px;
	margin: 28px 0;
}
.post-card {
	display: block;
	padding: var(--card-padding);
	background: var(--color-carbon);
	border: 1px solid var(--color-graphite);
	border-radius: var(--radius-xl);
	transition: border-color .18s ease, background .18s ease, transform .18s ease;
}
.post-card:hover {
	border-color: var(--color-smoke);
	background: var(--surface-hover);
	transform: translateY(-2px);
}
.post-date {
	display: block;
	font-family: var(--font-mono);
	font-size: 11px;
	letter-spacing: .05em;
	text-transform: uppercase;
	color: var(--color-ash);
	margin-bottom: 10px;
}
.post-card h3 { font-size: 17px; font-weight: 510; color: var(--color-paper); margin-bottom: 8px; letter-spacing: -0.015em; }
.post-card p { font-size: 13.5px; color: var(--color-fog); line-height: 1.6; }

/* ---------- Пагинация ---------- */
.doc-pagination { margin: 32px 0 0; }
.doc-pagination .nav-links { display: flex; gap: 6px; flex-wrap: wrap; }
.doc-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 36px;
	height: 36px;
	padding: 0 10px;
	border: 1px solid var(--color-graphite);
	border-radius: var(--radius-md);
	color: var(--color-fog);
	font-size: 13px;
	background: transparent;
}
.doc-pagination .page-numbers:hover { border-color: var(--color-smoke); color: var(--color-paper); }
.doc-pagination .page-numbers.current {
	background: var(--color-acid-lime);
	border-color: var(--color-acid-lime);
	color: var(--color-on-accent);
}

/* ---------- Форма поиска ---------- */
.nexsora-search { display: flex; gap: 8px; margin-top: 16px; }
.nexsora-search .ord-input { max-width: 320px; }

/* ---------- Комментарии ---------- */
.comments-area {
	margin-top: 48px;
	padding-top: 32px;
	border-top: 1px solid var(--color-graphite);
}
.comments-area .comment-list { list-style: none; padding: 0; }
.comments-area .comment-body {
	padding: 16px 0;
	border-bottom: 1px solid var(--color-graphite);
}
.comments-area .comment-author { font-size: 14px; color: var(--color-paper); }
.comments-area .comment-metadata { font-size: 12px; color: var(--color-ash); margin-bottom: 8px; }
.comments-area input[type="text"],
.comments-area input[type="email"],
.comments-area input[type="url"],
.comments-area textarea {
	width: 100%;
	padding: 11px 14px;
	background: var(--color-carbon);
	border: 1px solid var(--color-graphite);
	border-radius: var(--radius-md);
	color: var(--color-mist);
	font-family: var(--font-sans);
	font-size: 14px;
}
.comments-area .submit {
	background: var(--color-acid-lime);
	color: var(--color-on-accent);
	border: 0;
	border-radius: var(--radius-md);
	padding: 11px 18px;
	font-size: 14px;
	font-weight: 510;
	cursor: pointer;
}

/* ---------- Значки статусов заявок в админке не влияют на фронт ---------- */
.page-links { margin: 20px 0; font-size: 13px; color: var(--color-fog); }
