/* Сброс классов body, которые совпадают с классами макета. */

body.page {
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	min-height: 0 !important;
	box-shadow: none !important;
	background: #eef0ed;
}

body.search {
	position: static;
	display: block;
	width: auto;
	height: auto;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: #eef0ed;
	color: inherit;
	cursor: auto;
}

body.search::before,
body.search::after {
	content: none !important;
	display: none !important;
}

body.category {
	font-size: 1rem;
	line-height: normal;
	letter-spacing: normal;
}

.nav {
	overflow-x: auto;
	scrollbar-width: none;
}

.nav::-webkit-scrollbar {
	display: none;
}

img.avatar {
	background-image: none;
	object-fit: cover;
}

img.thumb {
	width: 100%;
	display: block;
	object-fit: cover;
	background-image: none;
}

/* Атрибуты width/height у миниатюры задают высоту в пикселях и ломают карточку. */
a.feed-card > img {
	width: 100%;
	max-width: 100%;
	height: auto !important;
	min-height: 0;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	object-position: center;
}

@media (min-width: 480px) {
	a.feed-card > img {
		aspect-ratio: 16 / 10;
	}
}

.author-stats,
.author-card .stats {
	grid-template-columns: repeat(auto-fit, minmax(92px, 1fr));
}

.author-platform-card.is-custom {
	--platform-accent: #70bd3d;
	--platform-soft: #f3f8ef;
}

.platform-card-link {
	margin: 0 !important;
	align-self: center !important;
}

.article-main > .ad.al-ad-slot {
	height: auto;
	min-height: 0;
	margin-bottom: 20px;
	padding: 0;
	border: 0;
	background: transparent;
	display: block;
	color: inherit;
}

.desktop-ad.al-ad-slot {
	position: static;
	height: auto;
	min-height: 0;
	padding: 0;
	overflow: visible;
	border-radius: 0;
	background: transparent;
	color: inherit;
	display: block;
}

.desktop-ad.al-ad-slot::before,
.desktop-ad.al-ad-slot::after {
	content: none;
	display: none;
}

.al-ad-slot img,
.al-ad-slot iframe,
.al-ad-slot video {
	max-width: 100%;
}

.article-content img,
.static-content img {
	max-width: 100%;
	height: auto;
}

.article-content img,
.static-content img {
	cursor: zoom-in;
}

.article-content a img,
.static-content a img,
.article-content .al-ad-slot img,
.static-content .al-ad-slot img {
	cursor: pointer;
}

.article-content blockquote,
.static-content blockquote {
	position: relative;
	margin: 18px 0;
	padding: 2px 0 2px 29px;
	border: 0;
	background: transparent;
	color: #394138;
	font-size: 1rem;
	line-height: 1.62;
}

.article-content blockquote::before,
.static-content blockquote::before {
	content: "“";
	position: absolute;
	left: 0;
	top: 1px;
	color: #70bd3d;
	font-family: Georgia, serif;
	font-size: 36px;
	line-height: .8;
	font-weight: 700;
}

.article-content blockquote p,
.static-content blockquote p {
	margin: 0 0 8px;
	color: #394138;
}

.al-empty {
	margin: 8px 0 28px;
	color: #6d746b;
	font-size: 1rem;
	line-height: 1.5;
}

.pagination span.page-arrow,
.pagination span.page-numbers {
	min-width: 38px;
	height: 38px;
	display: grid;
	place-items: center;
	border: 1px solid #e0e5dd;
	border-radius: 10px;
	background: #fafbfa;
	color: #bec4bc;
	box-sizing: border-box;
}

.pagination span.page-numbers.current {
	border-color: #70bd3d;
	background: #70bd3d;
	color: #fff;
}

.pagination span.page-numbers.dots {
	min-width: 24px;
	border: 0;
	background: transparent;
	color: #929990;
}

a.comment-reply {
	text-decoration: none;
}

.comment-children {
	margin: 0;
}

.comment-awaiting,
.comment-notes,
.logged-in-as,
.must-log-in {
	margin: 0 0 12px;
	color: #727970;
	font-size: .85rem;
	line-height: 1.45;
}

.comments #respond {
	margin-top: 10px;
	padding: 16px;
	border: 1px solid #e4e9e1;
	border-radius: 12px;
	background: #fafbf9;
	scroll-margin-top: 84px;
}

.comments #respond .comment-form {
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

/* Desktop grid is two columns for name and email.
   Notes, the logged-in line, the comment itself and the button stay full width. */
.comments .comment-form > .comment-notes,
.comments .comment-form > .logged-in-as,
.comments .comment-form > .must-log-in,
.comments .comment-form > .subscribe-to-comments,
.comments .comment-form > .field:has(textarea),
.comments .comment-form > .submit,
.comments .comment-form > .form-submit {
	grid-column: 1 / -1;
}

.comments .comment-form > .field {
	min-width: 0;
}

.footer-bottom .footer-legal {
	text-decoration: none;
}

.comments #reply-title {
	margin: 0 0 8px;
	font-size: 1rem;
	line-height: 1.3;
	font-weight: 700;
	color: #272d26;
}

#cancel-comment-reply-link {
	margin-left: 10px;
	color: #5b9837;
	font-size: .8rem;
	font-weight: 600;
	text-decoration: none;
}

.comment-list #respond {
	margin: 14px 0 16px;
}

.media-lightbox-nav[hidden] {
	display: none !important;
}

.media-lightbox-tools {
	display: flex;
	align-items: center;
	gap: 8px;
}

.media-lightbox-zoom {
	width: 48px;
	height: 48px;
	border: 1px solid rgba(255, 255, 255, .16);
	border-radius: 50%;
	background: rgba(255, 255, 255, .16);
	color: #fff;
	font-size: 1.7rem;
	line-height: 1;
	display: grid;
	place-items: center;
	cursor: pointer;
	box-shadow: 0 5px 18px rgba(0, 0, 0, .22);
}

.media-lightbox-zoom:hover,
.media-lightbox-zoom:focus-visible {
	background: rgba(255, 255, 255, .25);
	outline: none;
}

.media-lightbox-zoom:disabled {
	opacity: .38;
	cursor: default;
}

.media-lightbox-visual {
	touch-action: none;
}

.media-lightbox-visual img.lightbox-demo {
	transform-origin: center center;
	cursor: zoom-in;
	user-select: none;
	-webkit-user-drag: none;
}

.media-lightbox-visual.is-zoomed img.lightbox-demo {
	cursor: zoom-out;
}

.media-lightbox-visual.is-panning img.lightbox-demo {
	cursor: grabbing;
}

body.admin-bar .media-lightbox {
	top: 32px;
}

body.admin-bar .media-lightbox-panel {
	height: calc(100dvh - 48px) !important;
	max-height: calc(100dvh - 48px) !important;
}

@media (max-width: 782px) {
	body.admin-bar .media-lightbox {
		top: 46px;
	}

	body.admin-bar .media-lightbox-panel {
		height: calc(100dvh - 46px) !important;
		max-height: calc(100dvh - 46px) !important;
	}
}

body.al-lock {
	overflow: hidden;
}

body.admin-bar .header,
body.admin-bar .desktop-header {
	top: 32px;
}

body.admin-bar .mobile-search,
body.admin-bar .search-backdrop {
	top: 86px;
}

body.admin-bar .drawer {
	top: 32px;
}

@media (max-width: 782px) {
	body.admin-bar .header,
	body.admin-bar .desktop-header,
	body.admin-bar .drawer {
		top: 46px;
	}

	body.admin-bar .mobile-search,
	body.admin-bar .search-backdrop {
		top: 100px;
	}
}

@media (max-width: 359px) {
	.pagination span.page-arrow,
	.pagination span.page-numbers {
		min-width: 34px;
		height: 36px;
	}
}

@media (min-width: 900px) {
	.article-main > .ad.al-ad-slot {
		display: none;
	}

	.pagination span.page-arrow,
	.pagination span.page-numbers {
		min-width: 40px;
		height: 40px;
	}

	.pagination span.page-numbers.dots {
		min-width: 24px;
	}
}
