body{font-family:var(--font-editorial);line-height:var(--body-line-height)}
a{color:var(--color-link, var(--color-accent))}
a:focus-visible,button:focus-visible{outline:2px dashed var(--color-accent);outline-offset:2px}
.container-wide{max-width:var(--max-wide);padding-inline:var(--global-px)}
.site-main{padding-top:var(--space-md)}

.site-header{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--color-header-bg) calc(var(--header-opacity) * 100%), transparent);border-bottom:1px solid var(--color-border);backdrop-filter:blur(10px)}
.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--header-gap,1rem);min-height:var(--header-height);padding-block:var(--header-py);max-width:var(--header-inner-max);margin-inline:auto}
.site-branding{display:flex;align-items:center;gap:var(--brand-gap,.5rem)}
.site-branding.align-center{text-align:center}
.site-branding__text{display:flex;flex-direction:column}
.site-branding__text.is-hidden{display:none}
.custom-logo-link img{max-width:var(--logo-width-desktop,180px);height:auto}
.site-logo-fallback{font-family:var(--font-ui);font-weight:700}
.site-title{text-decoration:none;color:var(--color-ink);font-family:var(--font-ui);font-weight:700}
.site-tagline{font-size:var(--text-xs);color:var(--color-ink-muted);margin:0}
.menu-toggle{display:none;align-items:center;justify-content:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:999px;padding:.45rem;width:42px;height:42px;cursor:pointer;transition:all var(--transition-fast)}
.menu-toggle:hover{border-color:var(--color-accent);box-shadow:0 8px 18px rgba(0,0,0,.08)}
.menu-toggle__icon{display:flex;flex-direction:column;gap:4px}
.menu-toggle__icon span{display:block;width:16px;height:2px;background:var(--color-ink);border-radius:99px}
.site-nav ul{display:flex;gap:var(--space-sm);list-style:none;padding:0;margin:0}
.site-nav a{text-decoration:none;color:var(--color-ink);font-family:var(--font-ui);font-size:var(--text-sm)}
.site-nav a:hover{color:var(--color-accent)}
.reading-progress{height:2px;background:var(--color-accent);width:0}

.breaking-ticker{display:flex;align-items:center;gap:var(--space-sm);background:var(--ticker-bg);color:var(--ticker-color);overflow:hidden;font-family:var(--font-ui);font-size:var(--text-sm);height:var(--ticker-height,36px);border-bottom:1px solid rgba(255,255,255,.15)}
.breaking-ticker__label{flex-shrink:0;font-weight:800;font-size:var(--text-xs);letter-spacing:.1em;padding:0 var(--space-sm);background:rgba(0,0,0,.18);height:100%;display:flex;align-items:center}
.breaking-ticker__track{flex:1;overflow:hidden;height:100%;display:flex;align-items:center}
.breaking-ticker__text{display:inline-block;white-space:nowrap;padding-left:100%;animation:ticker-slide var(--ticker-speed,18s) linear infinite}

.single-layout .entry-title{font-size:var(--text-4xl);font-weight:var(--h1-weight);line-height:var(--head-line-height);letter-spacing:-.02em;margin:0 0 var(--space-md);max-width:var(--max-content)}
.breadcrumbs{font-size:var(--text-sm);color:var(--color-ink-muted);margin-bottom:var(--space-sm)}
.breadcrumbs a{color:var(--color-accent);text-decoration:none}
.breadcrumb-sep{margin:0 .4rem;opacity:.4}
.breadcrumb-current{color:var(--color-ink-muted)}
.entry-meta-top{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap;margin-bottom:var(--title-meta-gap);font-size:var(--text-sm);font-family:var(--font-ui)}
.entry-category{background:var(--color-category, var(--color-accent));color:#fff;padding:.25rem .75rem;border-radius:3px;font-weight:700;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;text-decoration:none}
.entry-reading-time,.entry-date{color:var(--color-ink-muted)}
.entry-byline{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-md);padding:var(--space-sm) 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}
.entry-author{display:flex;align-items:center;gap:.6rem;font-family:var(--font-ui);font-size:var(--text-sm);font-weight:600}
.avatar-img{border-radius:50%;width:36px;height:36px}
.share-btn{display:flex;align-items:center;gap:.4rem;background:none;border:1px solid var(--color-border);border-radius:4px;padding:.4rem .85rem;font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-ink-muted);cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast)}
.share-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}

.entry-featured{margin:var(--title-featured-gap) 0 var(--featured-bottom-gap);max-width:var(--featured-max)}
.entry-featured img{width:100%;height:auto;display:block;border-radius:var(--featured-radius);aspect-ratio:var(--featured-ratio,16/9);object-fit:cover}
.entry-caption{margin-top:.6rem;font-size:var(--text-sm);color:var(--color-ink-muted);font-style:italic;text-align:center}

.single-body-wrap{display:grid;grid-template-columns:minmax(0,1fr) var(--sidebar-width);gap:var(--layout-gap)}
.single-body-wrap--no-sidebar{grid-template-columns:1fr}
.entry-content p{font-size:var(--text-base);line-height:var(--body-line-height);max-width:var(--max-content);margin-bottom:var(--space-sm)}
.entry-content>p:first-of-type{font-size:calc(var(--text-base) + .15rem);font-weight:500;color:var(--color-ink-muted);max-width:calc(var(--max-content) - 20px)}
.entry-content h2{font-size:var(--text-3xl);font-weight:700;padding-bottom:.25rem;position:relative}
.entry-content h2::after{content:'';position:absolute;left:0;bottom:-4px;width:48px;height:2px;background:var(--color-accent);border-radius:99px}
.entry-content h3{font-size:var(--text-2xl);font-weight:600;margin-top:var(--space-lg)}
.entry-content h4{font-size:var(--text-xl);font-weight:600;font-style:italic}

.site-sidebar__sticky{position:sticky;top:86px}
.site-sidebar__sticky.no-sticky{position:relative;top:0}
.sidebar-section-title{font-size:var(--text-sm);font-family:var(--font-ui);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-ink-muted);margin-bottom:var(--space-sm);padding-bottom:.5rem;border-bottom:2px solid var(--color-accent)}
.related-sidebar__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-sm)}
.related-sidebar__item{display:flex;gap:.85rem;align-items:flex-start;padding:.35rem 0;border-bottom:1px dashed var(--color-border)}
.related-sidebar__thumb img{width:80px;height:60px;object-fit:cover;border-radius:4px;flex-shrink:0}
.related-sidebar__thumb-fallback{display:block;width:80px;height:60px;border-radius:4px;background:linear-gradient(145deg,#ececec,#dcdcdc)}
.related-sidebar__title{font-size:var(--text-sm);font-weight:600;color:var(--color-ink);text-decoration:none;line-height:1.4;display:block}
.related-sidebar__title:hover{color:var(--color-accent)}
.related-sidebar__meta{font-size:var(--text-xs);color:var(--color-ink-muted);margin-top:.25rem;display:block}

.archive-wrap{padding-inline:var(--global-px)}
.archive-title{font-size:var(--text-3xl);margin:0 0 var(--space-md)}
.archive-grid{display:grid;grid-template-columns:repeat(var(--archive-col-desktop,3),minmax(0,1fr));gap:var(--archive-gap)}
.post-card{background:var(--color-surface);box-shadow:0 10px 30px rgba(0,0,0,.06);border:1px solid color-mix(in srgb,var(--color-border) 75%, transparent);border-radius:var(--card-radius);overflow:hidden;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}
.post-card:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(0,0,0,.1)}
.post-card__thumb{display:block}
.post-card__thumb img{width:100%;aspect-ratio:var(--thumb-ratio);object-fit:cover;height:auto;display:block}
.post-card__skeleton{aspect-ratio:var(--thumb-ratio);background:#eceae3}
.post-card__skeleton--fallback{display:grid;place-items:center}
.post-card__fallback-text{font:600 var(--text-xs)/1 var(--font-ui);letter-spacing:.08em;color:var(--color-ink-muted);text-transform:uppercase}
.post-card__content{padding:var(--card-padding)}
.post-card__title{margin:.55rem 0;font-size:1.2rem;line-height:1.35}
.post-card__title a{text-decoration:none;color:var(--color-ink)}
.post-card__title a:hover{color:var(--color-accent)}
.post-card__excerpt{margin:0 0 .8rem;color:var(--color-ink-muted);font-size:var(--text-sm);line-height:1.65}
.post-card__meta{display:flex;gap:.4rem;align-items:center;font-size:var(--text-xs);font-family:var(--font-ui);color:var(--color-ink-muted);margin:0}

.pagination{display:flex;justify-content:center;align-items:center;gap:.5rem;padding:var(--space-lg) 0;font-family:var(--font-ui)}
.page-numbers{padding:.5rem .9rem;border:1px solid var(--color-border);border-radius:4px;color:var(--color-ink);text-decoration:none;font-size:var(--text-sm);transition:all var(--transition-fast)}
.page-numbers:hover,.page-numbers.current{background:var(--color-accent);border-color:var(--color-accent);color:#fff}

.site-footer{background:var(--color-footer-bg);border-top:1px solid var(--color-border);padding:var(--footer-padding) 0;margin-top:var(--space-xl);font-family:var(--font-ui)}
.footer-container{max-width:var(--footer-max-width)}
.site-footer__inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-sm)}
.footer-copy{font-size:var(--text-sm);color:var(--color-ink-muted);display:flex;gap:.35rem;flex-wrap:wrap;line-height:1.7}
.footer-nav ul{display:flex;gap:var(--space-md);list-style:none;padding:0;margin:0}
.footer-nav a{font-size:var(--text-sm);color:var(--color-ink-muted);text-decoration:none}
.footer-nav a:hover{color:var(--color-accent)}

.not-found{padding:var(--space-xl) 0;text-align:center}
.button{display:inline-block;background:var(--color-accent);color:#fff;padding:.75rem 1.75rem;border-radius:4px;font-family:var(--font-ui);font-weight:700;text-decoration:none;margin-top:var(--space-md)}
.button:hover{opacity:.88}
.related-grid{margin-top:var(--space-xl);padding-top:var(--space-lg);border-top:1px solid var(--color-border)}
.related-grid h2{font-size:var(--text-2xl);margin-bottom:var(--space-md)}
.post-card--empty{border-style:dashed}

@media (max-width:1024px){.archive-grid{grid-template-columns:repeat(var(--archive-col-tablet,2),minmax(0,1fr))}.single-body-wrap{grid-template-columns:1fr}}
@media (max-width:820px){.menu-toggle{display:inline-flex}.site-nav{display:block;position:absolute;left:var(--global-px);right:var(--global-px);top:calc(100% + 6px);background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 22px 40px rgba(0,0,0,.15);padding:var(--space-sm);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-8px);transition:opacity var(--transition-fast),transform var(--transition-fast),visibility var(--transition-fast);z-index:120}.site-nav.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.site-nav ul{flex-direction:column;gap:.35rem}.site-nav a{display:block;padding:.6rem .45rem;border-radius:8px}.site-nav a:hover{background:var(--color-accent-light)}.custom-logo-link img{max-width:var(--logo-width-mobile,140px)}.site-header.is-compact .site-header__inner{justify-content:space-between}body.mobile-menu-open{overflow:hidden}}
@media (max-width:700px){.archive-grid{grid-template-columns:repeat(var(--archive-col-mobile,1),minmax(0,1fr))}.site-footer__inner{justify-content:center;text-align:center}}

@keyframes ticker-slide{0%{transform:translateX(0)}100%{transform:translateX(-100%)}}

/* Dark mode — respeita prefers-color-scheme sem destruir identidade */
@media (prefers-color-scheme: dark) {
  :root {--color-paper:#141417;--color-surface:#1c1c20;--color-border:#2a2a30;--color-accent-light:rgba(224,155,45,.14)}
  .site-header { background: color-mix(in srgb,var(--color-header-bg) 78%, #101014); }
  .lumen-ad-skeleton { background: linear-gradient(90deg, #2a2a2c 25%, #333335 50%, #2a2a2c 75%); background-size: 200% 100%; }
  .post-card { background: var(--color-surface); border-color: var(--color-border); }
  .post-card__skeleton { background: #2a2a2c; }
}
