/*
Theme Name: zzhgod
Description: A quiet, warm journal for interests, research notes, and everyday life.
Version: 1.0.2
Requires at least: 6.6
Requires PHP: 8.3
Author: zzhgod
Text Domain: zzhgod
License: GPL-2.0-or-later
*/
:root{--zz-border:#dedfd6;--zz-muted:#747b70;--zz-green:#3b675a;--zz-paper:#f7f6f2;--zz-ink:#26372e}
html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}a{transition:color .18s ease,background .18s ease}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #c1688c;outline-offset:5px}::selection{background:#dce9df;color:#26372e}img{max-width:100%;height:auto}button,input{font:inherit}.wp-site-blocks{padding-top:0;padding-bottom:0}.wp-site-blocks>header,.wp-site-blocks>main,.wp-site-blocks>footer{margin-block-start:0}.zz-shell{padding-inline:clamp(20px,4.5vw,56px)}.zz-header{padding-top:22px;padding-bottom:22px;border-bottom:1px solid var(--zz-border)}.zz-header-inner{max-width:1120px;margin-inline:auto!important;gap:28px}.zz-header .wp-block-site-title{font-size:23px;font-weight:750;line-height:1.2;letter-spacing:-.9px}.zz-header .wp-block-site-title a{text-decoration:none;display:inline-flex;align-items:center;gap:11px}.zz-header .wp-block-site-title a:before{content:'';width:33px;height:33px;background:url('assets/mark.svg') center/contain no-repeat;display:block}.zz-header .wp-block-navigation{font-size:14px;font-weight:550;gap:27px}.zz-header .wp-block-navigation-item__content{text-decoration:none;text-underline-offset:7px}.zz-header .current-menu-item>.wp-block-navigation-item__content,.zz-header .wp-block-navigation-item__content:hover{color:var(--zz-green);text-decoration:underline}.zz-header .wp-block-search{width:40px!important;max-width:190px}.zz-header .wp-block-search__inside-wrapper{padding:0;border:none;background:transparent}.zz-header .wp-block-search__button{background:transparent;color:var(--zz-ink);border:none;border-radius:50%;padding:6px;margin:0}.zz-header .wp-block-search__input{min-width:90px;border-bottom:1px solid var(--zz-border);background:transparent;padding:6px}.zz-header-tools{gap:24px}.zz-main{padding-top:0;padding-bottom:75px}.zz-home-content{max-width:1120px!important}.zz-hero{position:relative;padding-top:82px;padding-bottom:60px;margin-top:0!important;gap:42px!important}.zz-hero-copy{flex-basis:65%!important}.zz-eyebrow{font-size:11px!important;font-weight:700;letter-spacing:.19em;line-height:1.5;text-transform:uppercase;color:var(--zz-green);margin-bottom:20px!important}.zz-eyebrow:before{content:'';display:inline-block;background:#97ad80;width:6px;height:6px;border-radius:50%;margin-right:10px;vertical-align:2px}.zz-hero h1{font-size:clamp(40px,5.4vw,68px);line-height:1.3;font-weight:650;letter-spacing:-.055em;margin-top:0!important;margin-bottom:23px!important}.zz-hero h1 em{color:var(--zz-green);font-style:normal}.zz-hero-description{max-width:510px;font-size:16px;line-height:1.95;color:#697066}.zz-hero .wp-block-buttons{margin-top:27px}.zz-hero .wp-block-button__link{font-size:13px;font-weight:600;padding:12px 21px}.zz-hero-art{flex-basis:35%!important;display:flex;align-items:center;justify-content:flex-end}.zz-hero-art figure{margin:0;max-width:325px;width:100%}.zz-hero-art img{width:100%;display:block}.zz-section{margin-top:64px!important}.zz-section-heading{align-items:center;gap:20px;margin-bottom:24px!important}.zz-section-heading h2{font-size:23px;font-weight:650;letter-spacing:-.04em;margin:0}.zz-section-heading>p{font-size:12px;color:var(--zz-muted);margin:0}.zz-section-heading a{color:var(--zz-muted);text-decoration:none}.zz-section-heading a:hover{color:var(--zz-green)}.zz-category-grid{gap:18px!important}.zz-category-card{position:relative;background:#efefe7;border:1px solid #e3e3d9;border-radius:8px;padding:27px!important;min-height:214px;transition:transform .2s ease,border-color .2s ease}.zz-category-card:hover{transform:translateY(-3px);border-color:#9eaf9f}.zz-category-card.zz-card-research{background:#edf1eb;border-color:#dde5dc}.zz-category-card.zz-card-notes{background:#f1ede5;border-color:#e8e0d3}.zz-category-index{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px!important;font-weight:600;letter-spacing:.12em;color:#7a8271;margin-top:0!important;margin-bottom:31px!important}.zz-category-card h3{font-size:21px;font-weight:650;letter-spacing:-.03em;margin-bottom:9px!important}.zz-category-card h3 a{text-decoration:none;color:var(--zz-ink)}.zz-category-card h3 a:after{content:'';position:absolute;inset:0}.zz-category-card h3 a:before{content:'↗';font-size:21px;position:absolute;top:24px;right:26px;font-weight:400;color:#7e8a75}.zz-category-card>p:last-child{font-size:13px;line-height:1.8;color:#6e756b;margin:0}.zz-post-list{list-style:none;padding:0!important}.zz-post-list>li{margin:0!important;padding:27px 0!important;border-top:1px solid var(--zz-border)}.zz-post-list>li:last-child{border-bottom:1px solid var(--zz-border)}.zz-post-list .wp-block-post-title{font-size:23px;font-weight:620;letter-spacing:-.035em;line-height:1.5;margin-top:10px;margin-bottom:10px}.zz-post-list .wp-block-post-title a{text-decoration:none}.zz-post-list .wp-block-post-title a:hover{color:var(--zz-green)}.zz-post-list .wp-block-post-excerpt{margin-top:10px;max-width:800px;color:#6e756b;font-size:14px;line-height:1.9}.zz-post-list .wp-block-post-excerpt__excerpt{margin:0}.zz-post-meta{gap:12px!important;align-items:center;color:#788073;font-size:11px}.zz-post-meta .wp-block-post-terms a{text-decoration:none;font-size:10px;letter-spacing:.03em;background:#e9ede4;border-radius:3px;padding:4px 8px;color:#536b55}.zz-post-meta .wp-block-post-terms__separator{display:none}.zz-post-list .wp-block-post-excerpt__more-link{display:inline-block;margin-top:4px;font-size:12px;color:var(--zz-green)}.zz-journal-note{margin-top:48px!important;padding-top:10px;font-size:12px;text-align:center;color:#949a8e;letter-spacing:.02em}.zz-page-main{padding-top:65px;padding-bottom:90px;min-height:64vh}.zz-page-heading{margin-bottom:44px!important}.zz-page-heading h1,.zz-article-title{font-size:clamp(32px,4.4vw,48px);font-weight:620;letter-spacing:-.045em;line-height:1.4}.zz-page-heading p{font-size:15px;color:#747b70}.zz-article-header{margin-bottom:45px!important}.zz-article-title{margin:18px 0 22px!important}.zz-prose{font-size:18px;line-height:1.9;overflow-wrap:anywhere}.zz-prose p{margin-top:1.4em;margin-bottom:1.4em}.zz-prose h2{font-size:28px;line-height:1.5;margin-top:2em!important;letter-spacing:-.025em}.zz-prose h3{font-size:23px;line-height:1.5}.zz-prose a{text-underline-offset:4px;text-decoration-thickness:1px}.zz-prose ul,.zz-prose ol{padding-inline-start:1.5em}.zz-prose blockquote{border-left:3px solid #9aac8e;background:#eff1e9;padding:12px 24px;margin-inline:0}.zz-prose figure{margin-inline:0}.zz-prose figcaption{font-size:12px;line-height:1.7;color:#83887d;text-align:center}.zz-prose .wp-block-image img{border-radius:6px}.zz-prose pre,.zz-prose .hcb_wrap{max-width:100%;overflow:auto}.zz-prose pre{border-radius:6px;font-size:14px;line-height:1.7;padding:20px}.zz-prose code{font-family:ui-monospace,SFMono-Regular,Consolas,'Liberation Mono',monospace}.zz-prose :not(pre)>code{background:#eceee6;border-radius:3px;padding:.1em .35em;font-size:.87em}.zz-prose .katex-display{overflow-x:auto;overflow-y:hidden;padding:8px 0}.zz-prose .katex-eq{max-width:100%;overflow-x:auto}.zz-prose table{display:block;overflow-x:auto;width:100%}.zz-prose .wp-block-file{padding:18px 20px;border:1px solid var(--zz-border);border-radius:6px;background:#f0f1e9;font-size:14px}.zz-post-navigation{gap:25px;margin-top:62px!important;padding-top:25px;border-top:1px solid var(--zz-border);font-size:13px}.zz-post-navigation>div{max-width:47%}.zz-footer{border-top:1px solid var(--zz-border);padding-top:28px;padding-bottom:32px}.zz-footer-inner{max-width:1120px;margin-inline:auto!important;gap:24px}.zz-footer p{font-size:11px;color:#838a7d;margin:0}.zz-footer strong{color:#56664f;font-weight:650}.zz-footer a{color:#69775f;text-decoration:none}.zz-footer a:hover{text-decoration:underline}.zz-footer-links{gap:22px!important}.wp-block-query-pagination{gap:20px;font-size:13px;margin-top:30px!important}.wp-block-query-pagination a{color:var(--zz-green)}.wp-block-search__inside-wrapper{border-color:var(--zz-border);border-radius:6px;padding:5px}.wp-block-search__input{background:transparent;border:none;padding:10px 14px}.wp-block-search__button{background:var(--zz-green);color:white;border:0;border-radius:4px;padding:10px 20px}.wp-block-query-no-results{padding:40px 0;color:var(--zz-muted)}.zz-not-found{padding-block:55px}.zz-not-found h1{font-size:clamp(60px,12vw,120px);letter-spacing:-.06em;color:#8ca082;margin-bottom:15px}.zz-not-found p{max-width:480px}.editor-styles-wrapper{background:var(--zz-paper)}.editor-styles-wrapper .zz-hero-art{min-height:240px}
@media(max-width:900px){.zz-hero{padding-top:60px;gap:20px!important}.zz-hero-art figure{max-width:260px}.zz-category-card{padding:23px!important}.zz-category-card h3{font-size:19px}.zz-header .wp-block-navigation{gap:18px}.zz-header-tools{gap:15px}}
@media(max-width:781px){.zz-hero{padding-top:45px;padding-bottom:34px;gap:0!important}.zz-hero-copy{flex-basis:100%!important}.zz-hero-art{display:none!important}.zz-hero h1{font-size:48px}.zz-hero-description{font-size:15px;max-width:520px}.zz-section{margin-top:43px!important}.zz-category-grid{gap:12px!important}.zz-category-card{min-height:0;padding:23px 25px!important}.zz-category-index{margin-bottom:14px!important}.zz-category-card h3{font-size:21px}.zz-category-card>p:last-child{font-size:13px}.zz-category-card h3 a:before{top:27px}.zz-post-list .wp-block-post-title{font-size:21px}.zz-page-main{padding-top:40px;padding-bottom:60px}.zz-article-header{margin-bottom:32px!important}.zz-prose{font-size:17px}.zz-prose h2{font-size:25px}.zz-footer-inner{align-items:flex-start!important}.zz-main{padding-bottom:48px}}
@media(max-width:599px){.zz-header{padding-block:18px}.zz-header-inner{gap:15px}.zz-header .wp-block-site-title{font-size:21px}.zz-header .wp-block-site-title a:before{width:29px;height:29px}.zz-header-tools{gap:13px}.zz-header .wp-block-navigation__responsive-container.is-menu-open{padding:30px 25px;background:var(--zz-paper);color:var(--zz-ink)}.zz-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{gap:25px;font-size:22px;align-items:flex-start}.zz-header .wp-block-navigation__responsive-container-content{padding-top:65px!important}.zz-header .wp-block-search{width:34px!important}.zz-hero h1{font-size:40px}.zz-hero{padding-top:38px}.zz-hero-description{font-size:14px}.zz-hero .wp-block-buttons{gap:10px}.zz-hero .wp-block-button__link{font-size:12px;padding:11px 17px}.zz-section-heading h2{font-size:21px}.zz-section-heading>p{font-size:11px}.zz-post-list>li{padding-block:23px!important}.zz-post-list .wp-block-post-title{font-size:20px}.zz-post-list .wp-block-post-excerpt{font-size:13px}.zz-footer-inner{flex-direction:column;gap:15px!important}.zz-journal-note{font-size:11px;line-height:1.9}.zz-post-navigation{font-size:12px;gap:15px}.zz-prose pre{font-size:12px;padding:15px}.zz-article-title{font-size:31px}.zz-page-heading{margin-bottom:30px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.zz-category-card:hover{transform:none}}

/* WordPress can portal its open mobile menu outside the header. */
@media(max-width:599px){.wp-block-navigation__responsive-container.is-menu-open{background:var(--zz-paper)!important;color:var(--zz-ink)!important;padding:30px 25px}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{align-items:stretch!important;padding-top:65px!important}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{align-items:flex-start!important;width:100%;gap:25px!important;font-size:22px}}

/* Keep the expanded header search inside the viewport on narrow screens. */
.zz-header-tools{position:relative}.zz-header .wp-block-search:not(.wp-block-search__searchfield-hidden) .wp-block-search__inside-wrapper{position:absolute;right:0;top:calc(100% + 16px);width:min(320px,calc(100vw - 40px));max-width:none;padding:8px;border:1px solid var(--zz-border);border-radius:6px;background:var(--zz-paper);box-shadow:0 10px 24px #26372e14;z-index:30}.zz-header .wp-block-search:not(.wp-block-search__searchfield-hidden) .wp-block-search__input{min-width:0;width:100%;flex:1;border:0;padding:8px 10px}.zz-header .wp-block-search:not(.wp-block-search__searchfield-hidden) .wp-block-search__button{flex:none}
