/* Polimento: acessibilidade, legibilidade e detalhes. Carregado por último em todas as páginas. */

/* Cores de texto com contraste mínimo WCAG AA (4,5:1) sobre o creme */
:root{--muted:#625d57;--accent-text:#7d5f1c;--accent-strong:#86661f}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
::selection{background:#a9853533;color:var(--ink)}
h1,h2,h3{text-wrap:balance}
.article-body p,.feature-article-body p,.comment p,.hero-summary,.order-instructions{text-wrap:pretty}

/* Pular para o conteúdo (teclado e leitores de tela) */
.skip-link{position:absolute;left:12px;top:-64px;z-index:200;background:var(--ink);color:#fff;padding:12px 18px;border-radius:999px;font:600 13px var(--sans);text-decoration:none;transition:top .2s}
.skip-link:focus{top:12px;outline:2px solid #e6d4a2;outline-offset:2px}
main:focus{outline:none}

/* Foco visível em tudo que se clica */
a:focus-visible,button:focus-visible,[role=tab]:focus-visible,summary:focus-visible{outline:2px solid var(--accent-text);outline-offset:3px;border-radius:3px}
input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent-text);outline-offset:1px}
.wordmark:focus-visible{border-radius:4px}

/* Dourado em texto pequeno: versão escura (o dourado original fica para títulos grandes e detalhes) */
body .eyebrow,body .feature-kicker,body .hero-kicker,body .more-date,body .article-meta,body .more-articles h2,body .comments-count,body .main-nav a.active,body .back-top,body .admin-footer-link,body .product-meta span:last-child,body .my-ebooks-empty a,body .order-note a,body .comment-status,body .preview-note{color:var(--accent-text)}
body .eyebrow i,body .eyebrow-dot{background:var(--accent)}
body .read-link,body .order-read,body .editor-bar .editor-save,body .tab-badge,body .header-tools .cart-trigger span{background:var(--accent-strong);border-color:var(--accent-strong)}
body .read-link:hover,body .order-read:hover{background:#6f5418;border-color:#6f5418}

/* Cinzas de apoio que não passavam no contraste */
body .product-meta,body .product-buy small,body .more-articles .more-all,body .feature-index,body .site-footer small{color:var(--muted)}

/* Tamanho mínimo dos textos pequenos (rótulos): 11px */
body .eyebrow,body .feature-eyebrow,body .feature-kicker,body .hero-kicker,body .more-date,body .article-meta,body .comments-head .eyebrow{font-size:11px}
body .site-footer .wordmark .brand-blog,body .wordmark .brand-blog{font-size:max(10px,.8em)}
body .site-footer small,body .site-footer .back-top,body .site-footer .admin-footer-link,body .product-meta,body .product-buy small,body .preview-note,body #ebook-status{font-size:11px}
body .feature-index{font-size:10px}
body .product-buy button,body .read-link,body .logout-btn,body .cancel-edit,body .delete-post,body .admin-post button,body .admin-post span,body .link-btn{font-size:11px}
body .post-form label,body .login-form label,body .comment-form label,body .image-fields label{font-size:12px}
body .product-meta span,body .preview-note span{font-size:inherit}

/* Alvos de toque confortáveis */
.main-nav a{padding:14px 6px}
.site-footer .back-top,.site-footer .admin-footer-link{display:inline-block;padding:10px 4px}
.admin-post button,.link-btn{padding-top:8px;padding-bottom:8px}
.logout-btn,.cancel-edit,.delete-post{min-height:38px}

/* Pequenos refinamentos de interação */
.product-buy button:active,.pix-copy-btn:active,.comment-submit:active,.feature-button:active{transform:translateY(1px)}
.ebook-product,.more-articles li a,.archive-list li a{-webkit-tap-highlight-color:transparent}

/* Celular: campos com 16px (o iPhone não dá zoom ao focar) */
@media(max-width:750px){input,select,textarea{font-size:16px!important}}

/* Respeita quem pede menos movimento */
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* Ajustes da segunda auditoria de contraste */
body .about-link span,body .text-link span,body .read-more span,body .contact-home span,body .product-buy button span,body .email-field button,body .admin-post>span,body .eyebrow span{color:var(--accent-text)}
body .new-post,body .auth-button.is-gold{background:var(--accent-strong);border-color:var(--accent-strong)}
body .ebook-signup p{color:var(--muted)}
body .ebook-signup small,body #ebook-status{color:var(--muted)}
body .preview-note span{color:var(--accent-text)}

/* Celular: o link "administração" do cabeçalho some (há "Área administrativa" no rodapé e o botão em Conta) */
@media(max-width:420px){.header-tools [data-admin-only]{display:none!important}}

/* Painel: as abas quebram de linha em vez de estourar a tela */
.admin-tabs{flex-wrap:wrap}
.admin-tabs button{min-height:40px}

/* Mais área de toque em links de texto */
.article-back a,.contact-home{display:inline-block;padding:10px 0}
.more-all{padding-top:14px;padding-bottom:10px}
.comment-delete{padding:8px 12px}

/* Painel: nada passa da largura da tela (campo de arquivo tem largura própria enorme) */
.admin-layout>*,.post-form,.post-form label,.image-fields,.access-grid>*{min-width:0}
.post-form input[type=file],.post-form input,.post-form textarea,.post-form select{max-width:100%}
.post-form input[type=file]{width:100%;font-size:13px}
.admin-post,.admin-post h3,.admin-post p,.access-list,.subs-list,.subs-box{min-width:0;overflow-wrap:anywhere}
.grant-form input,.grant-form select{min-width:0;max-width:100%;width:100%}
.site-footer .legal-links{display:flex;gap:16px;flex-wrap:wrap}.site-footer .legal-links a{color:var(--muted);font:11px var(--sans);text-decoration:none;padding:10px 2px}.site-footer .legal-links a:hover{color:var(--accent-text);text-decoration:underline}
.nl-consent{display:block;margin-top:6px;color:var(--muted);font:11px/1.5 var(--sans)}.nl-consent a{color:var(--accent-text)}.seller-line{display:block;width:100%;color:var(--muted);font:11px/1.5 var(--sans)}.seller-line:empty{display:none}

/* Rodapé refinado */
body .site-footer{grid-template-columns:1fr auto;row-gap:18px;column-gap:16px;padding:34px 0 26px}
body .site-footer .back-top,body .site-footer .admin-footer-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;border:1px solid color-mix(in srgb,var(--accent-text) 45%,transparent);border-radius:999px;background:transparent;color:var(--accent-text);font:600 12px/1 var(--sans);letter-spacing:.04em;text-decoration:none;white-space:nowrap;transition:background .2s,color .2s,border-color .2s,transform .2s}
body .site-footer .back-top:hover,body .site-footer .back-top:focus-visible,body .site-footer .admin-footer-link:hover,body .site-footer .admin-footer-link:focus-visible{background:var(--accent-text);border-color:var(--accent-text);color:#fff;transform:translateY(-1px)}
body .site-footer .admin-footer-link[hidden]{display:none}
body .site-footer .admin-footer-link{grid-column:1/-1;justify-self:start}
body .site-footer .legal-links{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:2px 0;margin:0}
body .site-footer .legal-links a{display:inline-flex;align-items:center;min-height:40px;padding:0 14px 0 0;margin-right:14px;font:500 13px/1 var(--sans);color:#5d574f;text-decoration:none;border-right:1px solid var(--line)}
body .site-footer .legal-links a:last-child{border-right:0;margin-right:0}
body .site-footer .legal-links a:hover,body .site-footer .legal-links a:focus-visible{color:var(--accent-text);text-decoration:underline;text-underline-offset:4px}
body .site-footer>small{font-size:12px;letter-spacing:.02em;color:#7a736a}
body .site-footer .seller-line{border-top:0;padding-top:0;font-size:12px;line-height:1.6;text-align:left}
@media(max-width:520px){body .site-footer .wordmark{font-size:22px}body .site-footer .back-top{padding:0 14px}}
@media(prefers-reduced-motion:reduce){body .site-footer .back-top,body .site-footer .admin-footer-link{transition:none}}
body .wordmark .brand-blog,body .site-footer .wordmark .brand-blog{font:600 10px/1 var(--sans);letter-spacing:.16em;margin-left:8px;padding:3px 0 0;color:var(--muted)}
@media(min-width:351px) and (max-width:420px){body .site-header .wordmark .brand-blog{display:inline-block;font-size:9px;letter-spacing:.14em;margin-left:6px}}
body .site-footer .wordmark{font-size:30px}body .site-footer .wordmark .brand-blog{font-size:11px;margin-left:9px}@media(max-width:520px){body .site-footer .wordmark{font-size:28px}}@media(max-width:350px){body .site-footer .wordmark{font-size:24px}}
@media(max-width:520px){body .site-footer{column-gap:10px}body .site-footer .wordmark{font-size:27px}body .site-footer .wordmark .brand-blog{font-size:10px;margin-left:7px}body .site-footer .back-top{padding:0 12px;font-size:11px;gap:6px}}@media(max-width:350px){body .site-footer .wordmark{font-size:23px}}
#env-ribbon{position:sticky;top:0;z-index:9999;background:#8a1f1f;color:#fff;text-align:center;font:700 11px/1 var(--sans);letter-spacing:.12em;padding:8px 12px}
