/* ════════════════════════════════════════
   CSS VARIABLES — all themeable
════════════════════════════════════════ */
:root{
  --black:#191919;--white:#FAFAFA;--accent:#1A8917;
  --g100:#F2F2F2;--g200:#E6E6E6;--g400:#9E9E9E;--g600:#6B6B6B;--g800:#292929;
  --serif:'Source Serif 4',Georgia,serif;
  --display:'Playfair Display',Georgia,serif;
  --sans:'DM Sans',-apple-system,sans-serif;
  --nav-h:57px;--max-w:1280px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:var(--sans);background:var(--white);color:var(--black);-webkit-font-smoothing:antialiased;line-height:1.6;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
button{cursor:pointer;border:none;background:none;font-family:inherit}
ul,ol{list-style:none}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* ════════════════════════════════════════
   READING PROGRESS BAR
════════════════════════════════════════ */
#prog{position:fixed;top:var(--nav-h);left:0;z-index:999;height:2px;width:0%;background:var(--accent);transition:width .1s linear;pointer-events:none}

/* ════════════════════════════════════════
   HEADER
════════════════════════════════════════ */
.site-header{
  top:0;z-index:1000;
  background:var(--white);
  border-bottom:1px solid var(--g200);
  width:100%;position:relative;
}
.site-header--sticky{position:sticky;top:0}
.nav-bar{width:100%;height:var(--nav-h);display:flex;align-items:center}
.nav-inner{
  width:100%;max-width:var(--max-w);
  margin:0 auto;padding:0 20px;
  display:flex;align-items:center;gap:10px;height:100%;
}

/* LOGO */
.nav-logo{font-family:var(--display);font-size:1.5rem;font-weight:700;letter-spacing:-.5px;white-space:nowrap;flex-shrink:0}
.nav-logo em{font-style:normal;color:var(--accent)}
.custom-logo-link img{height:40px;width:auto}
.nav-div{width:1px;height:22px;background:var(--g200);flex-shrink:0}

/* DESKTOP TOPICS */
.nav-topics{display:flex;align-items:center;overflow-x:auto;flex:1;scrollbar-width:none;gap:2px}
.nav-topics::-webkit-scrollbar{display:none}
.nav-topic{padding:5px 12px;font-size:0.8rem;font-weight:400;color:var(--g600);white-space:nowrap;border-radius:100px;transition:background .15s,color .15s}
.nav-topic:hover,.nav-topic.active{background:var(--g100);color:var(--black)}

/* PAGES DROPDOWN */
.nav-pages-wrap{position:relative;flex-shrink:0}
.nav-pages-btn{display:flex;align-items:center;gap:4px;padding:5px 12px;font-size:0.8rem;font-weight:500;color:var(--black);border-radius:100px;background:var(--g100);cursor:pointer;white-space:nowrap;transition:background .15s;border:none}
.nav-pages-btn:hover{background:var(--g200)}
.nav-pages-btn svg{width:11px;height:11px;transition:transform .2s}
.nav-pages-btn.open svg{transform:rotate(180deg)}
.pages-dd{position:absolute;top:calc(100% + 8px);left:0;background:var(--white);border:1px solid var(--g200);border-radius:8px;box-shadow:0 8px 30px rgba(0,0,0,.12);min-width:200px;z-index:600;padding:6px 0;display:none}
.pages-dd.open{display:block;animation:fadeDown .15s ease}
@keyframes fadeDown{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
.pages-dd a{display:flex;align-items:center;gap:10px;padding:9px 16px;font-size:0.83rem;color:var(--black);transition:background .1s}
.pages-dd a:hover{background:var(--g100)}

/* SEARCH BUTTON — visible on ALL screen sizes, right-aligned */
.nav-search-btn{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--g600);transition:background .15s,color .15s;flex-shrink:0}
.nav-search-btn:hover{background:var(--g100);color:var(--black)}
.nav-search-btn svg{width:18px;height:18px}

/* SEARCH BAR */
.search-bar{position:absolute;top:var(--nav-h);left:0;right:0;background:var(--white);border-bottom:1px solid var(--g200);padding:10px 20px;display:none;z-index:999;box-shadow:0 4px 20px rgba(0,0,0,.08)}
.search-bar.open{display:flex;animation:slideDown .2s ease}
@keyframes slideDown{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
.search-form{max-width:var(--max-w);margin:0 auto;width:100%;display:flex;align-items:center;gap:10px}
.search-input{flex:1;padding:10px 16px;border:1.5px solid var(--g200);border-radius:100px;font-family:var(--sans);font-size:0.95rem;color:var(--black);background:var(--white);outline:none;transition:border-color .15s}
.search-input:focus{border-color:var(--black)}
.search-input::placeholder{color:var(--g400)}
.search-submit{padding:9px 20px;background:var(--black);color:var(--white);border-radius:100px;font-size:0.85rem;font-weight:500;transition:background .15s;white-space:nowrap}
.search-submit:hover{background:var(--g800)}
.search-close{padding:6px;color:var(--g600);border-radius:50%;transition:color .15s,background .15s}
.search-close:hover{color:var(--black);background:var(--g100)}
.search-close svg{width:18px;height:18px}

/* RIGHT ACTIONS (Desktop) */
.nav-right{display:flex;align-items:center;gap:8px;flex-shrink:0}
.nav-write-btn{display:flex;align-items:center;gap:5px;font-size:0.8rem;color:var(--g600);padding:5px 10px;border-radius:100px;transition:color .15s,background .15s}
.nav-write-btn svg{width:16px;height:16px}
.nav-write-btn:hover{color:var(--black);background:var(--g100)}
.nav-signin-btn{font-size:0.8rem;padding:6px 14px;border:1px solid var(--g200);border-radius:100px;color:var(--black);transition:border-color .15s,background .15s}
.nav-signin-btn:hover{border-color:var(--black);background:var(--g100)}
.nav-getstarted-btn{font-size:0.8rem;padding:7px 15px;background:var(--black);color:var(--white);border-radius:100px;transition:background .15s}
.nav-getstarted-btn:hover{background:var(--g800)}

/* HAMBURGER (mobile only) */
.hamburger{display:none;width:36px;height:36px;align-items:center;justify-content:center;border-radius:6px;color:var(--black);transition:background .15s;flex-shrink:0}
.hamburger:hover{background:var(--g100)}
.hamburger svg{width:22px;height:22px}

/* MOBILE DRAWER */
.mobile-drawer{position:fixed;top:0;right:-100%;width:min(320px,90vw);height:100vh;background:var(--white);z-index:2000;box-shadow:-4px 0 30px rgba(0,0,0,.15);display:flex;flex-direction:column;transition:right .28s cubic-bezier(.4,0,.2,1);overflow-y:auto}
.mobile-drawer.open{right:0}
.drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:1999;display:none;opacity:0;transition:opacity .28s}
.drawer-overlay.open{display:block;opacity:1}
.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--g200);flex-shrink:0}
.drawer-logo{font-family:var(--display);font-size:1.3rem;font-weight:700}
.drawer-logo em{font-style:normal;color:var(--accent)}
.drawer-close{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--g600);transition:background .15s}
.drawer-close:hover{background:var(--g100)}
.drawer-close svg{width:18px;height:18px}
.drawer-search{padding:12px 18px;border-bottom:1px solid var(--g100)}
.drawer-search-inner{display:flex;align-items:center;gap:8px;background:var(--g100);border-radius:100px;padding:8px 14px}
.drawer-search-inner svg{width:16px;height:16px;color:var(--g400);flex-shrink:0}
.drawer-search-input{flex:1;border:none;background:none;font-family:var(--sans);font-size:0.88rem;color:var(--black);outline:none}
.drawer-search-input::placeholder{color:var(--g400)}
.drawer-auth{display:flex;gap:8px;padding:14px 18px;border-bottom:1px solid var(--g200)}
.drawer-signin{flex:1;padding:9px 0;border:1px solid var(--g200);border-radius:100px;font-size:0.85rem;font-weight:500;text-align:center;transition:border-color .15s,background .15s;color:var(--black)}
.drawer-signin:hover{border-color:var(--black);background:var(--g100)}
.drawer-getstarted{flex:1;padding:9px 0;background:var(--black);color:var(--white);border-radius:100px;font-size:0.85rem;font-weight:500;text-align:center}
.drawer-section-title{font-size:0.72rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--g400);padding:12px 18px 6px}
.drawer-link{display:flex;align-items:center;gap:10px;padding:10px 18px;font-size:0.9rem;color:var(--black);transition:background .1s}
.drawer-link:hover{background:var(--g100)}
.drawer-link span{font-size:1rem;flex-shrink:0}
.drawer-write-link{display:flex;align-items:center;gap:10px;padding:10px 18px;font-size:0.9rem;color:var(--black);font-weight:500;transition:background .1s;border-top:1px solid var(--g100);margin-top:4px}
.drawer-write-link:hover{background:var(--g100)}
.drawer-write-link svg{width:18px;height:18px;color:var(--accent)}
.drawer-divider{height:1px;background:var(--g200);margin:8px 0}

/* ════════════════════════════════════════
   HERO
════════════════════════════════════════ */
.hero{border-bottom:1px solid var(--black);overflow:hidden}
.hero-inner{max-width:var(--max-w);margin:0 auto;padding:40px 20px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.hero-text h1{font-family:var(--display);font-size:clamp(2.8rem,6.5vw,5.5rem);font-weight:400;line-height:1.05;letter-spacing:-2px}
.hero-text h1 em{font-style:italic;color:var(--accent)}
.hero-sub{font-family:var(--serif);font-size:1.05rem;font-weight:300;color:var(--g600);margin-top:14px;max-width:400px;line-height:1.7}
.hero-cta{display:inline-flex;align-items:center;gap:7px;margin-top:24px;padding:11px 26px;background:var(--black);color:var(--white);border-radius:100px;font-size:0.95rem;font-weight:500;transition:transform .2s,box-shadow .2s}
.hero-cta:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.15)}
.hero-cta svg{width:15px;height:15px}
.hero-badge{display:inline-block;background:var(--accent);color:var(--white);padding:3px 11px;border-radius:100px;font-size:0.7rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;margin-bottom:12px}
.hero-img-wrap{width:300px;height:240px;flex-shrink:0;border-radius:8px;overflow:hidden}
.hero-img-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.hero-img-wrap:hover img{transform:scale(1.04)}

/* ════════════════════════════════════════
   BREADCRUMB
════════════════════════════════════════ */
.breadcrumb-bar{max-width:var(--max-w);margin:0 auto;padding:10px 20px;display:flex;align-items:center;gap:6px;font-size:0.76rem;color:var(--g400);flex-wrap:wrap}
.breadcrumb-bar a{color:var(--g400);transition:color .15s}
.breadcrumb-bar a:hover{color:var(--black);text-decoration:underline}
.bc-sep{color:var(--g200)}
.bc-current{color:var(--g600);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}

/* ════════════════════════════════════════
   AD SLOTS
════════════════════════════════════════ */
.ad-slot{max-width:var(--max-w);margin:0 auto;padding:4px 20px 8px;text-align:center}
.ad-slot-inner{display:block;min-height:0}
.feed-ad{padding:12px 0;border-top:1px solid var(--g200);border-bottom:1px solid var(--g200);text-align:center;margin:4px 0}
body.ad-preview .ad-slot-inner:empty::after,
body.ad-preview .feed-ad .ad-slot-inner:empty::after{content:attr(data-label);display:flex;align-items:center;justify-content:center;min-height:90px;background:var(--g100);border:1px dashed var(--g200);border-radius:4px;color:var(--g400);font-size:0.72rem;padding:10px;text-align:center}

/* ════════════════════════════════════════
   MAIN LAYOUT GRID
════════════════════════════════════════ */
.main-grid{max-width:var(--max-w);margin:0 auto;padding:24px 20px 60px;display:grid;grid-template-columns:1fr 300px;gap:64px;align-items:start}
.main-grid.full-width{grid-template-columns:1fr}

/* ════════════════════════════════════════
   FEED LABEL
════════════════════════════════════════ */
.feed-label{font-family:var(--display);font-size:0.8rem;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:var(--black);padding-bottom:12px;border-bottom:1px solid var(--black);margin-bottom:4px}

/* ════════════════════════════════════════
   ARTICLE CARD (homepage feed)
════════════════════════════════════════ */
.art-card{display:flex;justify-content:space-between;gap:16px;padding:20px 0;border-bottom:1px solid var(--g200)}
.art-card:first-of-type{padding-top:16px}

/* Featured card */
.art-card.featured{flex-direction:column}
.art-card.featured .art-thumb{width:100%;height:185px;border-radius:4px;overflow:hidden;order:-1}
.art-card.featured .art-thumb img{width:100%;height:100%;object-fit:cover}

/* Normal thumb */
.art-thumb{width:96px;height:72px;border-radius:4px;overflow:hidden;flex-shrink:0}
.art-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.art-card:hover .art-thumb img{transform:scale(1.04)}

/* Author row */
.card-author{display:flex;align-items:center;gap:7px;margin-bottom:8px}
.card-av{width:20px;height:20px;border-radius:50%;background:var(--g200);display:flex;align-items:center;justify-content:center;font-size:0.65rem;font-weight:700;flex-shrink:0;overflow:hidden}
.card-av img{width:100%;height:100%;object-fit:cover}
.card-author-name{font-size:0.8rem;font-weight:500}
.card-author-name:hover{text-decoration:underline}
.card-pub{font-size:0.75rem;color:var(--g400)}
.card-pub::before{content:'in ';color:var(--g400)}

/* Title */
.card-title{font-family:var(--display);font-size:1.05rem;font-weight:700;line-height:1.3;margin-bottom:6px}
.art-card.featured .card-title{font-size:1.25rem}
.card-title a:hover{text-decoration:underline}

/* Subtitle */
.card-sub{font-family:var(--serif);font-size:0.9rem;color:var(--g600);font-weight:300;line-height:1.55;margin-bottom:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* Meta — all in ONE row: tag · date · read time · clap · bookmark */
.card-meta{display:flex;align-items:center;justify-content:space-between;margin-top:6px}
.card-meta-main{display:flex;align-items:center;gap:6px;flex-wrap:wrap;flex:1}
.card-tag{font-size:0.72rem;padding:2px 10px;border:1px solid var(--g200);border-radius:100px;color:var(--g800);transition:border-color .15s,background .15s;white-space:nowrap}
.card-tag:hover{border-color:var(--black);background:var(--g100)}
.card-date,.card-time{font-size:0.75rem;color:var(--g400);white-space:nowrap}
.card-dot{width:2px;height:2px;background:var(--g400);border-radius:50%;flex-shrink:0}
.card-clap{display:flex;align-items:center;gap:3px;font-size:0.75rem;color:var(--g400);white-space:nowrap}
.card-clap svg{width:13px;height:13px;flex-shrink:0}
.card-bm{display:flex;align-items:center;justify-content:center;padding:4px;color:var(--g400);border-radius:50%;transition:color .15s,background .15s;flex-shrink:0}
.card-bm:hover{color:var(--black);background:var(--g100)}
.card-bm svg{width:15px;height:15px}

/* Pagination */
.pagination{margin:32px 0;display:flex;justify-content:center}
.pagination .nav-links{display:flex;gap:6px;align-items:center}
.pagination .page-numbers{padding:7px 14px;border:1px solid var(--g200);border-radius:100px;font-size:0.83rem;color:var(--black);transition:all .15s}
.pagination .page-numbers:hover{border-color:var(--black);background:var(--g100)}
.pagination .page-numbers.current{background:var(--black);color:var(--white);border-color:var(--black)}
.no-posts{padding:40px 0;color:var(--g400);text-align:center}

/* ════════════════════════════════════════
   SIDEBAR (homepage)
════════════════════════════════════════ */
.sidebar{position:sticky;top:calc(var(--nav-h) + 24px)}
.sb-widget{margin-bottom:28px;padding-bottom:28px;border-bottom:1px solid var(--g200)}
.sb-widget:last-child{border-bottom:none}
.sb-title{font-size:0.76rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--black);margin-bottom:12px}
.sb-post-link{display:block;margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid var(--g100)}
.sb-post-link:last-child{border-bottom:none}
.sb-post-author{display:flex;align-items:center;gap:7px;margin-bottom:5px}
.sb-av{width:20px;height:20px;border-radius:50%;background:var(--g200);display:flex;align-items:center;justify-content:center;font-size:0.65rem;font-weight:700;flex-shrink:0}
.sb-author-name{font-size:0.78rem;font-weight:500}
.sb-pub{font-size:0.73rem;color:var(--g400);margin-left:4px}
.sb-post-title{font-family:var(--display);font-size:0.9rem;font-weight:700;line-height:1.3;color:var(--black)}
.sb-post-link:hover .sb-post-title{text-decoration:underline}
.sb-post-meta{font-size:0.72rem;color:var(--g400);display:block;margin-top:4px}
.sb-topics{display:flex;flex-wrap:wrap;gap:7px}
.sb-topic-pill{background:var(--g100);padding:5px 14px;border-radius:100px;font-size:0.78rem;color:var(--black);transition:background .15s}
.sb-topic-pill:hover{background:var(--g200)}
.sb-more-link{font-size:0.85rem;font-weight:600;color:var(--black);display:block;margin-bottom:10px;line-height:1.4}
.sb-more-link:hover{text-decoration:underline}
.sb-ad-slot{min-height:250px;width:100%;display:flex;align-items:center;justify-content:center;font-size:0.72rem;color:var(--g400);text-align:center;background:var(--g100);border:1px dashed var(--g200);border-radius:4px}
body.ad-preview .sb-ad-slot:empty::after{content:attr(data-label)}

/* ════════════════════════════════════════
   ARTICLE PAGE
════════════════════════════════════════ */
.article-wrap{max-width:var(--max-w);margin:0 auto;padding:0 20px 60px;display:grid;grid-template-columns:1fr 300px;gap:64px;align-items:start}
.article{max-width:680px}

/* Article header */
.art-topic{display:inline-block;background:var(--g100);color:var(--g800);padding:3px 11px;border-radius:100px;font-size:0.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:18px;transition:background .15s}
.art-topic:hover{background:var(--g200)}
.art-title{font-family:var(--display);font-size:clamp(1.7rem,4vw,2.4rem);font-weight:700;line-height:1.2;letter-spacing:-.5px;margin-bottom:14px}
.art-subtitle{font-family:var(--serif);font-size:1.2rem;font-weight:300;color:var(--g600);line-height:1.65;margin-bottom:24px}

/* Author bar — with meta inline */
.author-bar{display:flex;align-items:center;gap:11px;padding:14px 0;border-top:1px solid var(--g200);border-bottom:1px solid var(--g200);margin-bottom:28px}
.author-av{width:44px;height:44px;border-radius:50%;background:var(--g200);display:flex;align-items:center;justify-content:center;font-size:1.3rem;flex-shrink:0;overflow:hidden}
.author-av img{width:100%;height:100%;object-fit:cover}
.author-info{flex:1}
.author-name{font-size:0.9rem;font-weight:600;display:block;margin-bottom:3px}
.author-name:hover{text-decoration:underline}
/* Meta row: date · read time · clap · bookmark — all inline */
.author-meta{font-size:0.78rem;color:var(--g400);display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.author-dot{width:2px;height:2px;background:var(--g400);border-radius:50%}
.clap-btn-inline{display:flex;align-items:center;gap:3px;font-size:0.76rem;color:var(--g400);cursor:pointer;padding:2px 4px;border-radius:4px;transition:color .15s,background .15s}
.clap-btn-inline:hover{color:var(--black);background:var(--g100)}
.clap-btn-inline.clapped{color:var(--black);font-weight:600}
.bm-btn-inline{display:flex;align-items:center;justify-content:center;padding:2px;color:var(--g400);border-radius:4px;transition:color .15s,background .15s}
.bm-btn-inline:hover{color:var(--black);background:var(--g100)}
.bm-btn-inline.active{color:var(--black)}
.author-actions{display:flex;align-items:center;gap:8px}
.btn-follow-inline{padding:5px 13px;border:1px solid var(--accent);border-radius:100px;font-size:0.76rem;font-weight:500;color:var(--accent);transition:background .15s,color .15s;flex-shrink:0}
.btn-follow-inline:hover{background:var(--accent);color:var(--white)}
.share-sm{width:32px;height:32px;border-radius:50%;border:1px solid var(--g200);display:flex;align-items:center;justify-content:center;color:var(--g600);transition:all .15s}
.share-sm:hover{border-color:var(--black);color:var(--black)}
.share-sm svg{width:15px;height:15px}

/* Hero image */
.art-hero{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:4px;margin-bottom:8px;background:var(--g100);overflow:hidden;display:block}
.art-hero img{width:100%;height:100%;object-fit:cover}
.art-caption{font-size:0.75rem;color:var(--g400);text-align:center;margin-bottom:32px;font-style:italic}

/* Article ads */
.art-ad,.art-mid-ad{border-radius:4px;padding:12px;text-align:center;min-height:90px;display:flex;align-items:center;justify-content:center;margin-bottom:32px}
body.ad-preview .art-ad:empty::after,
body.ad-preview .art-mid-ad:empty::after{content:attr(data-label);background:var(--g100);border:1px dashed var(--g200);border-radius:4px;padding:10px;font-size:0.72rem;color:var(--g400);width:100%}
.art-mid-ad{margin:40px 0}

/* Article body */
.art-body{font-family:var(--serif);font-size:1.15rem;line-height:1.85;color:var(--black);font-weight:300}
.art-body h2{font-family:var(--display);font-size:1.45rem;font-weight:700;margin:44px 0 14px;line-height:1.3}
.art-body h3{font-family:var(--display);font-size:1.15rem;font-weight:700;margin:32px 0 10px}
.art-body p{margin-bottom:26px}
.art-body strong{font-weight:600}
.art-body em{font-style:italic}
.art-body a{color:var(--black);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--g400)}
.art-body a:hover{text-decoration-color:var(--black)}
.art-body blockquote{border-left:3px solid var(--black);padding-left:22px;margin:32px 0;font-size:1.25rem;font-style:italic;color:var(--g800);line-height:1.7}
.art-body blockquote cite{display:block;font-size:0.82rem;font-style:normal;color:var(--g600);margin-top:7px}
.art-body pre{background:var(--g100);border-radius:6px;padding:18px 20px;overflow-x:auto;margin:32px 0;font-size:0.88rem;line-height:1.6;border-left:3px solid var(--accent)}
.art-body code{font-size:0.87em;background:var(--g100);padding:2px 6px;border-radius:3px}
.art-body pre code{background:none;padding:0}
.callout{background:#f0f7f0;border-left:4px solid var(--accent);padding:16px 20px;border-radius:0 6px 6px 0;margin:32px 0;font-size:0.98rem}
.wp-block-image{margin:32px 0}
.wp-block-image img{border-radius:4px}
.wp-block-image figcaption{font-size:0.75rem;color:var(--g400);text-align:center;margin-top:8px;font-style:italic}

/* Tags */
.art-tags{display:flex;flex-wrap:wrap;gap:7px;margin:36px 0 28px;padding-top:28px;border-top:1px solid var(--g200)}
.art-tag{background:var(--g100);color:var(--g800);padding:5px 14px;border-radius:100px;font-size:0.78rem;transition:background .15s}
.art-tag:hover{background:var(--g200)}

/* Reaction bar */
.reaction-bar{display:flex;align-items:center;gap:12px;padding:14px 0;border-top:1px solid var(--g200);border-bottom:1px solid var(--g200);margin-bottom:40px}
.clap-btn{display:flex;align-items:center;gap:5px;padding:7px 14px;border:1px solid var(--g200);border-radius:100px;font-size:0.82rem;color:var(--g600);transition:all .15s;user-select:none}
.clap-btn:hover{border-color:var(--black);color:var(--black)}
.clap-btn.clapped{background:var(--black);color:var(--white);border-color:var(--black)}
.clap-btn svg{width:17px;height:17px}
.rb-right{display:flex;align-items:center;gap:8px;margin-left:auto}
.share-btn{display:flex;align-items:center;gap:5px;padding:7px 13px;border:1px solid var(--g200);border-radius:100px;font-size:0.78rem;color:var(--g600);transition:all .15s}
.share-btn:hover{border-color:var(--black);color:var(--black)}
.share-btn svg{width:15px;height:15px}
.bm-btn{padding:7px;border:1px solid var(--g200);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--g600);transition:all .15s}
.bm-btn:hover{border-color:var(--black);color:var(--black)}
.bm-btn.active{background:var(--black);color:var(--white);border-color:var(--black)}
.bm-btn svg{width:17px;height:17px}

/* Float actions */
.float-actions{position:fixed;left:max(20px,calc((100vw - 1280px)/2 - 56px));top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;gap:14px;z-index:100}
.float-btn{width:42px;height:42px;border-radius:50%;border:1px solid var(--g200);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--g600);background:var(--white);transition:all .15s;font-size:0.68rem;gap:1px}
.float-btn:hover{border-color:var(--black);color:var(--black)}
.float-btn.active{background:var(--black);color:var(--white);border-color:var(--black)}
.float-btn svg{width:19px;height:19px}

/* Author card */
.author-card{background:var(--g100);border-radius:8px;padding:24px;margin-bottom:40px}
.ac-top{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.ac-av{width:52px;height:52px;border-radius:50%;background:var(--g200);display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0;overflow:hidden}
.ac-av img{width:100%;height:100%;object-fit:cover}
.ac-name{font-size:1rem;font-weight:600;display:block;margin-bottom:2px}
.ac-name:hover{text-decoration:underline}
.ac-followers{font-size:0.75rem;color:var(--g400)}
.ac-bio{font-family:var(--serif);font-size:0.92rem;color:var(--g600);line-height:1.65;margin-bottom:14px;font-weight:300}
.btn-follow-card{padding:7px 17px;background:var(--black);color:var(--white);border-radius:100px;font-size:0.8rem;font-weight:500;transition:background .15s}
.btn-follow-card:hover{background:var(--g800)}

/* Related */
.related{border-top:1px solid var(--g200);padding-top:28px;margin-bottom:40px}
.related-title{font-size:0.76rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin-bottom:20px}
.related-card{display:flex;gap:12px;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--g200)}
.related-card:last-child{border-bottom:none}
.related-thumb{width:76px;height:57px;border-radius:4px;background:var(--g100);flex-shrink:0;overflow:hidden;display:flex;align-items:center;justify-content:center;font-size:1.4rem}
.related-thumb img{width:100%;height:100%;object-fit:cover}
.related-card-title{font-family:var(--display);font-size:0.95rem;font-weight:700;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.related-card-title:hover{text-decoration:underline}
.related-meta{font-size:0.75rem;color:var(--g400);margin-top:5px;display:flex;gap:7px;align-items:center}
.related-dot{width:2px;height:2px;background:var(--g400);border-radius:50%}

/* Comments */
.comments{border-top:1px solid var(--g200);padding-top:28px;margin-top:20px}
.comments-title{font-size:1.05rem;font-weight:700;margin-bottom:18px}

/* WordPress comment form */
.comment-form input,.comment-form textarea{width:100%;padding:9px 14px;border:1px solid var(--g200);border-radius:6px;font-family:var(--sans);font-size:0.9rem;color:var(--black);background:var(--white);outline:none;margin-bottom:10px;transition:border-color .15s}
.comment-form input:focus,.comment-form textarea:focus{border-color:var(--black)}
.comment-form textarea{min-height:120px;resize:vertical}
.comment-form .submit{padding:9px 24px;background:var(--black);color:var(--white);border-radius:100px;font-size:0.88rem;font-weight:500;cursor:pointer;border:none;transition:background .15s}
.comment-form .submit:hover{background:var(--g800)}
.commentlist{margin-bottom:24px}
.comment{display:flex;gap:12px;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--g100)}
.comment .avatar{width:36px;height:36px;border-radius:50%;flex-shrink:0}
.comment-author,.comment-author a{font-size:0.85rem;font-weight:600}
.comment-metadata,.comment time{font-size:0.75rem;color:var(--g400)}
.comment-content p{font-size:0.9rem;margin-top:5px;color:var(--g800)}

/* Article sidebar */
.art-sidebar{position:sticky;top:calc(var(--nav-h) + 24px)}

/* ════════════════════════════════════════
   PAGE (static page)
════════════════════════════════════════ */
.page-wrap{max-width:var(--max-w);margin:0 auto;padding:32px 20px 60px}
.page-content{max-width:720px}
.page-title{font-family:var(--display);font-size:clamp(1.8rem,4vw,2.6rem);font-weight:700;margin-bottom:28px;line-height:1.2}

/* ════════════════════════════════════════
   FOOTER
════════════════════════════════════════ */
.footer{border-top:1px solid var(--g200);padding:18px 20px}
.footer-inner{max-width:var(--max-w);margin:0 auto;display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center}
.footer-links{display:flex;flex-wrap:wrap;gap:8px 12px}
.footer-link{font-size:0.74rem;color:var(--g400);transition:color .15s}
.footer-link:hover{color:var(--black)}
.footer-copy{font-size:0.74rem;color:var(--g400);margin-left:auto}

/* ════════════════════════════════════════
   RESPONSIVE
════════════════════════════════════════ */
@media(max-width:1100px){
  .main-grid{grid-template-columns:1fr 260px;gap:40px}
  .article-wrap{grid-template-columns:1fr 260px;gap:40px}
}

@media(max-width:960px){
  .main-grid{grid-template-columns:1fr}
  .sidebar{position:static;border-top:1px solid var(--g200);padding-top:24px;margin-top:8px}
  .article-wrap{grid-template-columns:1fr}
  .art-sidebar{position:static;margin-top:28px}
  .float-actions{display:none}
}

/* ── 768px — MOBILE HAMBURGER MODE ── */
@media(max-width:768px){
  /* Hide desktop nav items */
  .nav-div,
  .nav-topics,
  .nav-pages-wrap,
  .nav-right{display:none !important}

  /* Show hamburger */
  .hamburger{display:flex}

  /* Search button stays visible on right (before hamburger) */
  .nav-search-btn{display:flex}

  /* nav-inner: logo on left, search+hamburger on right */
  .nav-inner{justify-content:space-between}

  /* Hero */
  .hero-inner{flex-direction:column;padding:24px 16px;gap:20px}
  .hero-img-wrap{width:100%;height:190px}
  .hero-text h1{letter-spacing:-1px}

  .main-grid{padding:16px 16px 40px}
  .article-wrap{padding:0 16px 40px}
  .art-thumb{width:78px;height:60px}
  .art-card.featured .art-thumb{height:160px}
  .footer-copy{margin-left:0}
}

@media(max-width:480px){
  .nav-inner{padding:0 14px;gap:6px}
  .nav-logo{font-size:1.3rem}
  .art-title{font-size:1.55rem}
}

@media print{
  .site-header,.sidebar,.art-sidebar,.footer,.ad-slot,.feed-ad,.art-ad,.art-mid-ad,.float-actions,
  .comments,.hamburger,.mobile-drawer,.drawer-overlay,#prog{display:none}
}
