/*
Theme Name: ForProMen — зеркало
Description: Облегчённое внутреннее представление семейства тем ForProMen.
Version: 1.0.0
Requires at least: 7.0.2
Tested up to: 7.0.2
Requires PHP: 8.3
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: forpromen-mirror
Tags: blog, news, custom-logo, featured-images, translation-ready, accessibility-ready
*/

:root {
	--mirror-ink: #171a18;
	--mirror-paper: #f2f0e8;
	--mirror-surface: #fffef8;
	--mirror-line: #aeb0a8;
	--mirror-accent: #c9f34a;
	--mirror-muted: #64675f;
	--mirror-width: 76rem;
	--mirror-font: Inter, "Segoe UI", Arial, sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; background: var(--mirror-paper); color: var(--mirror-ink); font-family: var(--mirror-font); line-height: 1.55; }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-underline-offset: 0.18em; }
a:hover { text-decoration-thickness: 0.14em; }
a:focus-visible { outline: 0.2rem solid var(--mirror-ink); outline-offset: 0.18rem; background: var(--mirror-accent); }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.screen-reader-text:focus { top: 0.5rem; left: 0.5rem; z-index: 100000; width: auto; height: auto; padding: 0.75rem; clip: auto; background: var(--mirror-surface); }

.site-main { width: min(100% - 2rem, var(--mirror-width)); min-height: 60vh; margin-inline: auto; padding-block: 1.5rem; }
.homepage-main { display: grid; gap: 1.25rem; }
.content-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(13rem, 0.5fr); gap: 1.5rem; }
.content-primary, .primary-sidebar { min-width: 0; padding: 1rem; border: 1px solid var(--mirror-line); background: var(--mirror-surface); overflow-wrap: anywhere; }
.primary-sidebar { font-family: ui-monospace, Consolas, monospace; font-size: 0.76rem; }
.mirror-lead-row { margin-bottom: 0.25rem; }

.home-section { padding: 1.25rem; border: 1px solid var(--mirror-line); background: var(--mirror-surface); }
.home-section:nth-of-type(even) { background: #e6e5dd; }
.section-heading { margin-bottom: 0.85rem; border-bottom: 2px solid var(--mirror-ink); }
.section-heading h2 { margin: 0 0 0.5rem; font-size: clamp(1.25rem, 3vw, 2rem); }
.home-hero__mast { margin-bottom: 0.75rem; font-family: ui-monospace, Consolas, monospace; font-size: 0.65rem; text-transform: uppercase; }
.post-collection__items { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 1.25rem; }
.post-card { display: grid; grid-template-columns: 4.75rem minmax(0, 1fr); align-items: center; gap: 0.8rem; padding-block: 0.75rem; border-bottom: 1px solid var(--mirror-line); }
.post-card__image, .post-card__placeholder { width: 4.75rem; aspect-ratio: 1; overflow: hidden; background: #cdd0c5; }
.post-card__image img { width: 100%; height: 100%; object-fit: cover; }
.post-card__body { min-width: 0; }
.post-card__marker { display: flex; gap: 0.45rem; color: var(--mirror-muted); font-family: ui-monospace, Consolas, monospace; font-size: 0.57rem; text-transform: uppercase; }
.post-card__title { margin: 0.3rem 0 0; font-size: 0.95rem; line-height: 1.25; }
.post-card__excerpt { display: none; }
.home-hero .post-card { grid-template-columns: 6.5rem minmax(0, 1fr); border-top: 2px solid var(--mirror-ink); }
.home-hero .post-card__image, .home-hero .post-card__placeholder { width: 6.5rem; }
.home-hero .post-card__title { font-size: clamp(1.1rem, 2vw, 1.45rem); }

.archive-title, .entry-title { margin: 0 0 1rem; font-size: clamp(1.7rem, 5vw, 3.2rem); line-height: 1.05; }
.category-post-list { margin: 0; padding: 0; border-top: 1px solid var(--mirror-ink); list-style: none; }
.category-post-list li { padding: 0.65rem 0; border-bottom: 1px solid var(--mirror-line); }
.category-post-list a { font-weight: 700; text-decoration: none; }
.entry-featured-image { max-width: 42rem; margin: 1rem 0; }
.entry-summary { max-width: 44rem; }
.eyebrow { margin: 0 0 0.5rem; font-family: ui-monospace, Consolas, monospace; font-size: 0.7rem; font-weight: 800; }
.empty-state { padding: 1rem; border: 1px dashed var(--mirror-line); }

@media (max-width: 48rem) {
	.content-layout, .post-collection__items { grid-template-columns: 1fr; }
	.post-card { grid-template-columns: 4rem minmax(0, 1fr); }
	.post-card__image, .post-card__placeholder { width: 4rem; }
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}
