/*
Theme Name: Чистим лук
Theme URI: https://chistimluk.ru
Author: Чистим лук
Description: Блоковая тема личного блога об идеях, полезных находках и своих проектах.
Version: 1.0.3
Requires at least: 6.7
Requires PHP: 8.5
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: chistimluk
*/

:root { color-scheme: light; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 2rem; }
body { margin: 0; }
a { text-underline-offset: 0.2em; text-decoration-thickness: 1px; }
a, button, input, textarea { -webkit-tap-highlight-color: transparent; }
:where(a, button, input, textarea, select):focus-visible { outline: 3px solid #b14f2b; outline-offset: 5px; }
img { max-width: 100%; height: auto; }
.wp-site-blocks > * + * { margin-block-start: 0; }
.site-header { padding-block: 0.85rem; border-bottom: 1px solid var(--wp--preset--color--line); gap: 1.5rem; }
.site-brand { display: flex; align-items: center; gap: 0.7rem; white-space: nowrap; }
.site-brand::before { content: ""; display: block; flex: 0 0 40px; width: 40px; height: 40px; background: url("assets/logo.png") center / contain no-repeat; }
.site-header .wp-block-navigation__container { gap: clamp(1rem, 2.5vw, 2rem); }
.site-header .wp-block-navigation-item__content:hover { text-decoration: underline; }
.eyebrow { font-size: 0.75rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.16em; line-height: 1.5; }
.hero { padding-block: clamp(1.5rem, 3.5vw, 3rem); }
.hero-columns { gap: clamp(1.5rem, 3vw, 3rem); align-items: center !important; }
.hero-title { font-size: clamp(2.5rem, 4.6vw, 4rem); line-height: 1.06; letter-spacing: -0.045em; margin-block: 0.85rem 1.1rem; }
.hero-lead { max-width: 36rem; font-size: 1.125rem !important; line-height: 1.65; }
.hero-actions { margin-top: 1.25rem !important; gap: 0.65rem; }
.wp-block-button.is-style-outline > .wp-block-button__link { border-width: 1px; background: transparent; }
.wp-block-button.is-style-outline > .wp-block-button__link:hover { background: var(--wp--preset--color--soft); color: var(--wp--preset--color--ink); }
.hero-art { position: relative; isolation: isolate; min-height: 330px; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; gap: 0.25rem; padding-bottom: 0.5rem; background: url("assets/logo.png") center 8px / min(82%, 260px) auto no-repeat; }
.hero-art::before { content: ""; position: absolute; inset: 0; border: 1px solid var(--wp--preset--color--line); border-radius: 48% 48% 2rem 2rem; transform: rotate(4deg); z-index: -1; }
.hero-art p { background: var(--wp--preset--color--paper); padding-inline: 0.6rem; margin-block: 0; }
.hero-art .art-caption { font-family: Georgia, serif; font-style: italic; font-size: 1rem; line-height: 1.3; }
.topic-strip { padding-block: 0.85rem; border-top: 1px solid var(--wp--preset--color--line); border-bottom: 1px solid var(--wp--preset--color--line); gap: 0.65rem 1.5rem; justify-content: space-between; }
.topic-strip p { font-size: 0.8125rem; margin: 0; }
.topic-strip p::before { content: "✳"; margin-right: 0.75rem; color: var(--wp--preset--color--orange); }
.section { padding-block: clamp(2rem, 4vw, 3rem); }
.section-heading { align-items: flex-end !important; gap: 1rem; margin-bottom: 1.5rem; }
.section-heading h2 { font-size: clamp(1.8rem, 3vw, 2.5rem); margin-block: 0.4rem 0; }
.section-heading > p { margin-block: 0; }
.text-link { font-size: 0.95rem; white-space: nowrap; }
.text-link a { display: inline-flex; align-items: center; gap: 0.45rem; vertical-align: middle; text-decoration: none; border-bottom: 1px solid currentColor; padding-bottom: 0.25rem; }
.article-grid { gap: 1.25rem !important; }
.article-grid > li { padding-bottom: 1rem; border-bottom: 1px solid var(--wp--preset--color--line); }
.article-grid .wp-block-post-featured-image { margin-bottom: 0.85rem; overflow: hidden; border-radius: 0.5rem; background: var(--wp--preset--color--soft); }
.article-grid .wp-block-post-featured-image img { transition: transform 200ms ease; }
.article-grid .wp-block-post-featured-image a:hover img { transform: scale(1.025); }
.article-grid .wp-block-post-title { font-size: clamp(1.5rem, 2vw, 1.85rem); line-height: 1.2; margin-block: 0.65rem; }
.article-grid .wp-block-post-excerpt__more-link { color: var(--wp--preset--color--ink); }
.article-grid .wp-block-post-terms { margin-top: 0.5rem; }
.empty-posts { padding: clamp(1.5rem, 3vw, 2.5rem); background: var(--wp--preset--color--soft); border-radius: 0.75rem; }
.empty-posts h3 { margin-block: 0 1rem; }
.empty-posts p { max-width: 45rem; }
.project-card { position: relative; overflow: hidden; border-radius: 1rem; padding: clamp(1.5rem, 3vw, 2.5rem); }
.project-card .wp-block-columns { gap: 2rem; }
.project-card h2 { font-size: clamp(2.1rem, 3.5vw, 3rem); margin-block: 0.6rem 1rem; }
.project-card p { max-width: 35rem; }
.project-card .wp-block-button__link { background: var(--wp--preset--color--paper); color: var(--wp--preset--color--ink); }
.project-card .wp-block-button__link:hover { background: var(--wp--preset--color--sage); color: var(--wp--preset--color--ink); }
.garden-art { min-height: 250px; background: url("assets/svoyapolza.png") center / min(85%, 250px) auto no-repeat; }
.project-note { color: #c1cfbc; font-size: 0.875rem; margin-top: 1.1rem !important; }
.channel-grid { gap: 1.5rem !important; }
.channel-card { height: 100%; border-top: 1px solid var(--wp--preset--color--ink); padding-top: 1rem; }
.channel-card h3 { font-family: var(--wp--preset--font-family--body); font-size: 1.3rem; letter-spacing: -0.03em; font-weight: 500; margin-block: 0 0.65rem; }
.channel-card h3 a { display: flex; justify-content: flex-start; align-items: center; gap: 1rem; text-decoration: none; }
.channel-card p { color: var(--wp--preset--color--muted); font-size: 0.95rem; margin-block: 0.65rem 0; }
.channel-logo { display: block; flex: 0 0 76px; width: 76px; height: 76px; background-position: center; background-size: contain; background-repeat: no-repeat; }
.channel-logo--boosty { background-image: url("assets/boosty.svg"); background-size: auto 150%; }
.channel-logo--max { background-image: url("assets/max.svg"); }
.channel-logo--telegram { background-image: url("assets/telegram.svg"); }
.article-end .wp-block-button__link { display: inline-flex; align-items: center; gap: 0.55rem; }
.article-end .channel-logo { flex-basis: 30px; width: 30px; height: 30px; }
.text-link .channel-logo { flex-basis: 24px; width: 24px; height: 24px; }
.about-section { border-top: 1px solid var(--wp--preset--color--line); padding-block: clamp(2rem, 4vw, 3rem); }
.about-section .wp-block-columns { gap: 2rem; }
.about-section h2 { font-size: clamp(1.8rem, 3vw, 2.5rem); }
.site-footer { padding-block: 1.15rem; border-top: 1px solid var(--wp--preset--color--line); color: var(--wp--preset--color--muted); font-size: 0.875rem; gap: 1.5rem; }
.site-footer p { margin: 0; }
.footer-links { gap: 1.5rem; }
.footer-links a { text-decoration: none; }
.page-intro { padding-block: clamp(2rem, 4vw, 3rem) 1.75rem; }
.page-intro h1 { font-size: clamp(2.35rem, 4.5vw, 3.5rem); margin-block: 0.5rem 1rem; max-width: 1060px; }
.page-intro p { max-width: 45rem; }
.posts-main { padding-bottom: 3rem; }
.wp-block-query-pagination { margin-top: 1.75rem; gap: 1rem; }
.wp-block-query-pagination-numbers { display: flex; gap: 0.5rem; }
.wp-block-query-pagination .page-numbers { display: inline-flex; justify-content: center; min-width: 2.5rem; padding: 0.35rem 0.75rem; text-decoration: none; }
.wp-block-query-pagination .current { border-radius: 50%; background: var(--wp--preset--color--ink); color: var(--wp--preset--color--paper); }
.article-header { padding-top: clamp(2rem, 4vw, 3rem); padding-bottom: 1.75rem; }
.article-header .wp-block-post-title { font-size: clamp(2.25rem, 4vw, 3.5rem); line-height: 1.12; max-width: 1080px; }
.article-meta { gap: 1.25rem; margin-top: 1rem; }
.article-cover { margin-bottom: 1.75rem !important; }
.article-cover img { border-radius: 0.75rem; }
.article-body { font-size: 1.125rem; line-height: 1.75; overflow-wrap: break-word; }
.article-body h2 { font-size: clamp(1.8rem, 3vw, 2.5rem); margin-top: 2rem; }
.article-body h3 { font-size: clamp(1.5rem, 2.5vw, 1.85rem); margin-top: 1.5rem; }
.article-body li + li { margin-top: 0.5rem; }
.article-body pre { overflow-x: auto; padding: 1.25rem; background: var(--wp--preset--color--soft); border-radius: 0.5rem; font-size: 0.875rem; }
.article-body table { width: 100%; border-collapse: collapse; }
.article-body td, .article-body th { padding: 0.7rem; border: 1px solid var(--wp--preset--color--line); text-align: left; }
.article-body .wp-block-image { margin-block: 1.5rem; }
.article-body figcaption { color: var(--wp--preset--color--muted); font-size: 0.875rem; text-align: center; }
.article-end { margin-top: 2.5rem !important; margin-bottom: 3rem !important; padding-top: 1.5rem; border-top: 1px solid var(--wp--preset--color--line); }
.article-navigation { align-items: flex-start !important; gap: 2rem; }
.article-navigation > div { max-width: 48%; }
.article-navigation .post-navigation-link-next { text-align: right; }
.page-content { padding-bottom: 3rem; }
.error-page { min-height: 45vh; padding-block: clamp(2rem, 4vw, 3rem); }
.error-page h1 { font-size: clamp(2.35rem, 4.5vw, 3.5rem); }
.wp-block-search__input { background: var(--wp--preset--color--white); color: var(--wp--preset--color--ink); padding: 0.8rem 1rem; font: inherit; }
.wp-block-search__button { border: 0; border-radius: 8px; font: inherit; }
.wp-block-navigation__responsive-container.is-menu-open { padding: 2rem; background: var(--wp--preset--color--paper); }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { align-items: flex-start; font-size: 1.5rem; gap: 1.5rem; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { align-items: flex-start; }
@media (min-width: 782px) {
    .hero-copy { flex-basis: 65% !important; }
    .hero-visual { flex-basis: 35% !important; }
}
@media (max-width: 781px) {
    .hero { padding-top: 1.75rem; }
    .hero-art { min-height: 250px; max-width: 280px; width: 100%; margin-inline: auto !important; background-position: center 8px; background-size: min(70%, 180px) auto; }
    .hero-columns { gap: 1.5rem; }
    .topic-strip { display: grid !important; grid-template-columns: 1fr 1fr; gap: 1rem; }
    .section-heading { flex-wrap: wrap; }
    .garden-art { min-height: 210px; background-size: min(85%, 210px) auto; }
    .project-card .wp-block-columns { gap: 1.5rem; }
    .channel-grid { gap: 1.25rem !important; }
    .channel-logo { flex-basis: 56px; width: 56px; height: 56px; }
    .site-footer { align-items: flex-start !important; }
    .article-grid { grid-template-columns: 1fr !important; }
    .article-grid .wp-block-post-featured-image { max-height: 400px; }
    .site-header { padding-block: 0.75rem; }
}
@media (max-width: 420px) {
    .site-brand { font-size: 1.6rem !important; }
    .topic-strip p { font-size: 0.75rem; }
    .topic-strip p::before { margin-right: 0.4rem; }
    .hero-title { font-size: 2.35rem; }
    .footer-links { gap: 1rem; }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; }
}
