/* Minuto de Fé — folha de estilos */

@font-face{font-family:"Cormorant Garamond";src:url(/assets/fonts/cormorant-garamond.woff2) format("woff2");font-weight:300 700;font-style:normal;font-display:swap}
@font-face{font-family:"Cormorant Garamond";src:url(/assets/fonts/cormorant-garamond-italic.woff2) format("woff2");font-weight:300 700;font-style:italic;font-display:swap}
@font-face{font-family:"Manrope";src:url(/assets/fonts/manrope.woff2) format("woff2");font-weight:200 800;font-style:normal;font-display:swap}

:root{
  --bg:#FAF6EF; --surface:#FFFCF6; --raise:#F4EEE3;
  --ink:#26231F; --ink-2:#4A443C; --muted:#6F685F;
  --line:#E7E0D3; --line-2:#D8CFBF;
  --olive:#5A664D; --blue:#56697A; --terra:#B57E62; --gold:#A98B52;
  --veu:rgba(20,18,15,.42);
  --serif:"Cormorant Garamond","Cormorant",Georgia,"Times New Roman",serif;
  --sans:"Manrope",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --largura:1160px;
  --lateral:22px;
  --t-cor:400ms ease;
  color-scheme:light;
}
[data-theme="dark"]{
  --bg:#15191B; --surface:#1B2023; --raise:#222829;
  --ink:#EBE5DB; --ink-2:#CFC8BC; --muted:#A39C92;
  --line:#2B3134; --line-2:#3A4145;
  --olive:#9AA986; --blue:#93A7B6; --terra:#C99478; --gold:#C3A469;
  --veu:rgba(5,7,8,.62);
  color-scheme:dark;
}
html{font-size:100%;-webkit-text-size-adjust:100%;scroll-padding-top:96px}
html[data-fonte="p"]{font-size:92.5%}
html[data-fonte="g"]{font-size:112.5%}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:1rem;line-height:1.6;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;transition:background var(--t-cor),color var(--t-cor)}
img{max-width:100%;display:block}
a{color:var(--blue);text-decoration:none;transition:color 200ms ease}
a:hover{color:var(--terra)}
button{font:inherit;color:inherit;cursor:pointer}
h1,h2,h3{font-weight:400}
p{margin:0}
::selection{background:var(--raise);color:var(--ink)}
:focus-visible{outline:2px solid var(--olive);outline-offset:3px;border-radius:2px}
.principal:focus{outline:none}
[hidden]{display:none!important}
.so-leitor{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pular{position:absolute;left:12px;top:-60px;z-index:100;background:var(--ink);color:var(--bg);padding:10px 16px;border-radius:999px;font-size:.875rem}
.pular:focus{top:12px;color:var(--bg)}

@keyframes suave{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes girar{to{transform:rotate(360deg)}}

/* ---------- logo: coroa de 60 marcas (uma volta por mensagem) + cruz */
.logo{display:block;flex:none;overflow:visible}
.logo .coroa{fill:none;stroke:currentColor;stroke-opacity:.55;stroke-width:11.6;stroke-dasharray:1.86 5.92;transform-box:view-box;transform-origin:80px 80px}
.logo .cruz{fill:#D09A3C}
@media (prefers-reduced-motion:no-preference){.logo .coroa{animation:girar 60s linear infinite}}
/* em tamanhos pequenos as marcas ficam mais largas (mesmas 60 marcas) para não sumirem */
.logo-topo .coroa,.logo-rodape .coroa,.logo-ct .coroa{stroke-dasharray:3.1 4.68;stroke-width:13;stroke-opacity:.62}
.logo-topo{width:38px;height:38px}
.logo-rodape{width:30px;height:30px}
.logo-ct{width:34px;height:34px;color:var(--muted)}

/* ---------- rótulos e textos */
.rotulo{display:block;margin:0 0 .75rem;font-family:var(--sans);font-size:.6875rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}
.rotulo-caps{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.sobrelinha{font-size:.6875rem;letter-spacing:.26em;text-transform:uppercase;color:var(--muted);margin:0 0 1.375rem}
.sobrelinha-esq{margin-bottom:.75rem}
.texto{color:var(--ink-2);line-height:1.78;max-width:62ch;text-wrap:pretty}
.texto + .texto{margin-top:1rem}
.nota{font-size:.75rem;color:var(--muted)}
.vazio{color:var(--muted);font-size:.875rem;padding:1.5rem 0}
.link-sutil{background:none;border:0;padding:0;font-size:.8125rem;color:var(--muted)}
.link-sutil:hover{color:var(--ink)}

/* ---------- botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:11px 18px;border:1px solid var(--line-2);border-radius:999px;background:none;color:var(--ink-2);font-size:.8125rem;letter-spacing:.03em;line-height:1.2;text-align:center;transition:border-color 200ms ease,background 200ms ease,color 200ms ease,opacity 200ms ease}
.btn:hover{border-color:var(--ink);color:var(--ink)}
.btn[aria-pressed="true"]{border-color:var(--terra);color:var(--ink)}
.btn-cheio{background:var(--ink);border-color:var(--ink);color:var(--bg)}
.btn-cheio:hover{opacity:.88;color:var(--bg)}
.btn-contorno{border-color:var(--ink);color:var(--ink);padding:13px 26px;letter-spacing:.06em}
.btn-contorno:hover{background:var(--ink);color:var(--bg)}
.pilula{background:none;border:1px solid var(--line-2);border-radius:999px;padding:8px 14px;min-height:38px;font-size:.75rem;letter-spacing:.06em;color:var(--muted);transition:color 200ms ease,border-color 200ms ease}
.pilula:hover{color:var(--ink);border-color:var(--ink)}

/* ---------- cabeçalho */
.topo{position:sticky;top:0;z-index:40;background:var(--bg);border-bottom:1px solid var(--line);transition:background var(--t-cor)}
.topo-in{max-width:var(--largura);margin:0 auto;padding:14px var(--lateral);display:flex;align-items:center;gap:24px}
.marca{display:flex;align-items:center;gap:12px;color:var(--ink)}
.marca-txt{display:flex;flex-direction:column;gap:2px}
.marca:hover{color:var(--ink)}
.marca-nome{font-family:var(--serif);font-size:1.5rem;line-height:1.1;letter-spacing:.01em}
.marca-sub{font-size:.625rem;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}
.nav{display:none;margin-left:auto;align-items:center;gap:2px}
.nav a{display:flex;flex-direction:column;align-items:center;gap:5px;padding:8px 12px;font-size:.875rem;color:var(--ink-2)}
.nav a::after{content:"";width:14px;height:1px;background:var(--terra);opacity:0;transition:opacity 200ms ease}
.nav a:hover{color:var(--ink)}
.nav a[aria-current="page"]::after{opacity:1}
.ferramentas{display:flex;align-items:center;gap:6px;margin-left:auto}
.link-espaco{display:none;font-size:.875rem;color:var(--ink-2);padding:8px 10px}
.link-espaco[aria-current="page"]{color:var(--ink);text-decoration:underline;text-decoration-color:var(--terra);text-underline-offset:6px}
.so-largo{display:none}
.menu-movel{border-top:1px solid var(--line);padding:6px var(--lateral) 18px;max-width:var(--largura);margin:0 auto}
.menu-movel nav{display:grid}
.menu-movel nav a{padding:12px 2px;font-size:1rem;color:var(--ink-2);border-bottom:1px solid var(--line)}
.menu-movel nav a[aria-current="page"]{color:var(--ink)}
.menu-acoes{display:flex;flex-wrap:wrap;gap:8px;padding-top:16px}

/* ---------- estrutura */
.principal{max-width:var(--largura);margin:0 auto;padding:0 var(--lateral) 104px}
.pagina{padding-top:44px}
.pagina h1,.heroi h1{font-family:var(--serif);font-weight:300;font-size:clamp(2.5rem,1.7rem + 3.2vw,3.75rem);line-height:1.08;letter-spacing:-.01em;margin:0 0 .75rem;text-wrap:balance}
.pagina-sub{color:var(--muted);max-width:52ch;margin:0 0 2.125rem}
.pagina-intro{color:var(--ink-2);max-width:62ch;line-height:1.8;margin:0 0 2.25rem;font-size:1.0625rem}
.voltar{display:inline-block;font-size:.8125rem;color:var(--muted);margin-bottom:1.625rem;padding:6px 0}
.voltar:hover{color:var(--ink)}
.secao{margin-top:5.5rem}
.secao > h2,.secao-cab h2,.bloco h2{font-family:var(--serif);font-weight:400;font-size:1.625rem;line-height:1.2;margin:0 0 .5rem}
.secao-cab{display:flex;align-items:baseline;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);padding-bottom:14px}
.secao-cab h2{margin:0}
.secao-sub{margin:0 0 1.625rem;color:var(--muted);font-size:.875rem}
.secao-titulo-linha{border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:1.625rem!important}

/* ---------- herói */
.heroi{padding-top:44px;text-align:center;max-width:720px;margin:0 auto}
.heroi h1{margin-bottom:1.125rem}
.heroi-sub{margin:0 auto;max-width:460px;color:var(--muted);font-size:.9375rem}

/* ---------- cartão principal da mensagem */
.cartao{position:relative;overflow:hidden;margin:2.75rem auto 0;max-width:860px;background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:34px 22px;transition:background var(--t-cor),border-color var(--t-cor)}
.cartao-pagina{margin-top:0}
.progresso{position:absolute;left:0;top:0;right:0;height:2px}
.progresso span{display:block;height:100%;width:0;background:var(--terra);opacity:.5;transition:width 1s linear}
.cartao-corpo{transition:opacity 340ms ease,transform 340ms ease}
.cartao-corpo.saindo,.contemplacao-corpo.saindo{opacity:0;transform:translateY(10px)}
html.js .cartao-corpo.esperando{opacity:0}
.cartao-cab{text-align:center;border-bottom:1px solid var(--line);padding-bottom:1.625rem}
.cartao-nome{font-family:var(--serif);font-weight:400;font-size:1.625rem;line-height:1.2;margin:0 0 .375rem;letter-spacing:.01em}
.cartao-nome a{color:var(--ink)}
.cartao-nome a:hover{color:var(--terra)}
.cartao-frase{margin:0;padding:2.5rem 0}
.frase{font-family:var(--serif);font-weight:300;font-style:italic;font-size:2.25rem;line-height:1.24;text-align:center;margin:0;letter-spacing:-.005em;text-wrap:balance}
.frase.tam-m{font-size:1.875rem;line-height:1.28}
.frase.tam-l{font-size:1.5rem;line-height:1.36}
.fonte{margin-top:1.125rem;text-align:center;font-size:.75rem;letter-spacing:.08em;color:var(--muted)}
.cartao-extra{display:grid;gap:2.125rem;border-top:1px solid var(--line);padding-top:1.875rem}
.palavra{max-width:560px;margin:0 auto;text-align:center}
.palavra .rotulo,.reflexao .rotulo{text-align:center}
.palavra-ref{margin:0 0 .625rem;font-size:.8125rem;letter-spacing:.08em;color:var(--olive)}
.palavra-txt{font-family:var(--serif);font-size:1.1875rem;line-height:1.5;color:var(--ink-2);text-wrap:pretty}
.reflexao{max-width:600px;margin:0 auto;border-top:1px solid var(--line);padding-top:1.875rem;width:100%}
.reflexao p{color:var(--ink-2);line-height:1.78;text-wrap:pretty}
.reflexao p + p{margin-top:1rem}
.reflexao-link{margin-top:1.5rem!important;text-align:center;font-size:.8125rem}
.reflexao-link a{color:var(--muted)}
.reflexao-link a:hover{color:var(--terra)}

/* ---------- controles */
.controles{max-width:860px;margin:1.375rem auto 0;display:flex;flex-wrap:wrap;align-items:center;gap:12px 10px}
.relogio{display:flex;align-items:baseline;gap:10px;margin-right:auto}
.relogio .rotulo{margin:0;letter-spacing:.18em}
.relogio-num{font-family:var(--serif);font-size:1.625rem;font-variant-numeric:tabular-nums;color:var(--ink)}
.controles-botoes{display:flex;flex-wrap:wrap;gap:8px}
.controles-pagina{justify-content:space-between}
.controles-pagina .chips{margin:0}

/* ---------- mensagens que passaram */
.passadas{list-style:none;margin:0;padding:0}
.passada{display:grid;grid-template-columns:52px 1fr;gap:16px;align-items:start;border-bottom:1px solid var(--line);padding:22px 4px;color:var(--ink);transition:background 200ms ease}
.passada:hover{background:var(--raise);color:var(--ink)}
.passada-hora{font-size:.8125rem;color:var(--muted);font-variant-numeric:tabular-nums;padding-top:3px}
.passada-txt{display:grid;gap:6px}
.passada-txt .rotulo{margin:0;letter-spacing:.12em;font-size:.75rem}
.passada-frase{font-family:var(--serif);font-style:italic;font-weight:300;font-size:1.3125rem;line-height:1.35}

/* ---------- chips de tema */
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:10px 17px;background:var(--surface);border:1px solid var(--line);border-radius:999px;font-size:.875rem;color:var(--ink-2);transition:border-color 200ms ease,color 200ms ease}
.chip:hover{border-color:var(--ink);color:var(--ink)}
.chip[aria-current="page"]{border-color:var(--terra);color:var(--ink)}
.chip-ponto{width:5px;height:5px;border-radius:50%;background:var(--olive);opacity:.7;flex:none}
.chip-p{min-height:36px;padding:7px 14px;font-size:.75rem;background:none;border-color:var(--line-2)}
span.chip-p:hover{border-color:var(--line-2);color:var(--ink-2)}

/* ---------- blocos */
.duas-colunas{display:grid;gap:22px}
.bloco{background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:34px 24px;transition:background var(--t-cor)}
.bloco h2{font-size:1.6875rem}
.bloco-tom{background:var(--raise)}
.bloco-centro{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}
.bloco-centro .secao-sub{margin-bottom:1.5rem}
textarea,.campo{width:100%;background:var(--surface);border:1px solid var(--line-2);border-radius:3px;padding:13px 16px;font-family:var(--sans);font-size:.9375rem;color:var(--ink);line-height:1.6;min-height:44px}
textarea{resize:vertical;display:block}
textarea::placeholder,.campo::placeholder{color:var(--muted);opacity:.85}
textarea:focus-visible,.campo:focus-visible{outline:2px solid var(--olive);outline-offset:1px}
[data-sentimento] .btn{margin-top:14px}
.bloco-dia{text-align:center;padding:34px 22px}
.bloco-dia .rotulo{font-family:var(--sans);font-size:.6875rem;letter-spacing:.24em;margin-bottom:1.25rem}
.frase-dia{font-family:var(--serif);font-weight:300;font-style:italic;font-size:2.125rem;line-height:1.26;margin:0 auto 1.25rem;max-width:660px;text-wrap:balance}
.frase-dia.tam-l{font-size:1.5rem}
.dia-autor{font-size:.8125rem;letter-spacing:.1em}
.dia-autor a{color:var(--muted)}
.dia-autor a:hover{color:var(--terra)}

/* ---------- santo */
.santo-grade{display:grid;gap:36px;align-items:start}
.retrato{margin:0;width:100%;max-width:300px;aspect-ratio:3/4;background:var(--raise);border:1px solid var(--line);overflow:hidden}
.retrato-fig{margin:0;width:100%;max-width:300px}
.retrato-fig .retrato{max-width:none}
.retrato-credito{margin-top:10px;font-size:.6875rem;line-height:1.5;color:var(--muted)}
.retrato-credito a{color:var(--muted);text-decoration:underline;text-decoration-color:var(--line-2);text-underline-offset:3px}
.retrato-credito a:hover{color:var(--terra)}
.cartao-santo-mini{display:block;width:60px;aspect-ratio:3/4;overflow:hidden;border:1px solid var(--line);background:var(--raise)}
.cartao-santo-mini img{width:100%;height:100%;object-fit:cover}
.retrato img{width:100%;height:100%;object-fit:cover}
.retrato-vazio{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:linear-gradient(180deg,var(--raise),var(--surface))}
.retrato-inicial{font-family:var(--serif);font-weight:300;font-size:7.5rem;line-height:1;color:var(--terra);opacity:.55}
.retrato-nome{font-size:.625rem;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);text-align:center;padding:0 18px}
.santo-nome{font-family:var(--serif);font-weight:400;font-size:2.125rem;line-height:1.15;margin:0 0 .25rem}
.santo-h1{margin-bottom:.375rem!important}
.santo-titulo{margin:0 0 .25rem;font-size:.8125rem;letter-spacing:.06em;color:var(--olive)}
.santo-meta{margin:0 0 1.625rem;font-size:.8125rem;color:var(--muted)}
[data-santo-dia] .santo-titulo{margin-bottom:1.375rem}
[data-santo-dia] .texto{margin-bottom:1.625rem}
.santo-grade .chips{margin-bottom:2rem}
.santo-grade .rotulo{margin-top:1.75rem}
[data-santo-dia] .rotulo{margin-top:0}
.citacoes{display:grid;gap:18px;max-width:60ch;margin-bottom:1.625rem}
.citacao{border-left:1px solid var(--line-2);padding-left:20px}
.citacao .rotulo{margin:0 0 .375rem!important;letter-spacing:.2em}
.citacao-frase{font-family:var(--serif);font-style:italic;font-size:1.375rem;line-height:1.35}
.citacao-oracao{max-width:60ch}

/* ---------- listas e grades */
.filtros{display:flex;flex-wrap:wrap;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:22px}
.filtros .campo{flex:1 1 240px}
.letras{display:flex;flex-wrap:wrap;gap:2px;padding:18px 0 30px}
.letra{background:none;border:0;border-bottom:1px solid var(--line);min-width:40px;height:40px;padding:0 8px;font-size:.8125rem;color:var(--ink-2);opacity:.5}
.letra:hover{background:var(--raise);opacity:1}
.letra[aria-pressed="true"]{opacity:1;border-bottom-color:var(--terra);color:var(--ink)}
.grade-santos{display:grid;grid-template-columns:1fr;gap:18px}
.cartao-santo{display:grid;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:26px 24px;color:var(--ink);transition:background 200ms ease,border-color 200ms ease}
.cartao-santo:hover{background:var(--raise);border-color:var(--line-2);color:var(--ink)}
.cartao-santo-inicial{font-family:var(--serif);font-size:2.5rem;line-height:1;color:var(--terra);opacity:.55}
.cartao-santo-nome{font-family:var(--serif);font-size:1.4375rem;line-height:1.2}
.cartao-santo-titulo{font-size:.75rem;letter-spacing:.08em;color:var(--muted)}
.cartao-santo-festa{font-size:.75rem;color:var(--olive)}
.grade-2{display:grid;grid-template-columns:1fr;gap:18px}
.cartao-msg{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:30px 26px;color:var(--ink);transition:background 200ms ease,border-color 200ms ease}
.cartao-msg:hover{background:var(--raise);border-color:var(--line-2);color:var(--ink)}
.cartao-msg .rotulo{letter-spacing:.12em;font-size:.75rem;margin-bottom:.875rem}
.cartao-msg-frase{font-family:var(--serif);font-style:italic;font-weight:300;font-size:1.5rem;line-height:1.3;margin-bottom:1rem;text-wrap:pretty}
.cartao-msg-ref{margin-top:auto;font-size:.75rem;letter-spacing:.06em;color:var(--olive)}
.grade-temas{display:grid;grid-template-columns:1fr;gap:18px;margin-top:2.75rem}
.cartao-tema{display:grid;gap:10px;align-content:start;background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:28px 26px;color:var(--ink);transition:background 200ms ease,border-color 200ms ease}
.cartao-tema:hover{background:var(--raise);border-color:var(--line-2);color:var(--ink)}
.cartao-tema-nome{font-family:var(--serif);font-size:1.75rem;line-height:1.15}
.cartao-tema-intro{font-size:.875rem;color:var(--ink-2);line-height:1.7;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.cartao-tema-qtd{font-size:.75rem;color:var(--olive);letter-spacing:.06em}
.lista-msgs{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.linha-msg{display:grid;grid-template-columns:1fr;gap:10px;align-items:baseline;border-bottom:1px solid var(--line);padding:26px 4px;color:var(--ink);transition:background 200ms ease}
.linha-msg:hover{background:var(--raise);color:var(--ink)}
.linha-msg-meta{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:baseline}
.linha-msg-meta .rotulo{margin:0;letter-spacing:.12em;font-size:.75rem}
.linha-msg-tema{font-size:.75rem;color:var(--olive)}
.linha-msg-frase{font-family:var(--serif);font-style:italic;font-weight:300;font-size:1.5rem;line-height:1.3;text-wrap:pretty}
.apoio{margin-top:2.75rem;border-left:2px solid var(--terra);padding:4px 0 4px 20px;max-width:64ch}
.apoio p{color:var(--ink-2);font-size:.9375rem;line-height:1.7}

/* ---------- bíblia */
.biblia-grade{display:grid;gap:34px;align-items:start}
.biblia-filtros{display:grid;gap:26px;border-bottom:1px solid var(--line);padding-bottom:26px}
.filtro-lista{display:flex;flex-wrap:wrap;gap:6px}
.filtro-item{background:none;border:1px solid var(--line);border-radius:999px;padding:8px 14px;min-height:40px;font-size:.8125rem;color:var(--ink-2);opacity:.75;text-align:left}
.filtro-item:hover{opacity:1;border-color:var(--line-2)}
.filtro-item[aria-pressed="true"]{opacity:1;border-color:var(--terra);color:var(--ink)}
.caps{display:flex;flex-wrap:wrap;gap:4px}
.caps button{background:none;border:1px solid var(--line);min-width:40px;height:40px;font-size:.8125rem;color:var(--ink-2);opacity:.6}
.caps button:hover{border-color:var(--ink);opacity:1}
.caps button[aria-pressed="true"]{opacity:1;border-color:var(--terra);color:var(--ink)}
.passagens{display:grid;gap:0}
.passagem{border-bottom:1px solid var(--line);padding:0 0 2.25rem;margin-bottom:2.25rem}
.passagem-ref{font-family:var(--serif);font-weight:400;font-size:1.75rem;margin:0 0 1rem}
.passagem-txt{font-family:var(--serif);font-size:1.4375rem;line-height:1.5;color:var(--ink);max-width:56ch;margin-bottom:1.625rem;text-wrap:pretty}
.relacionadas{list-style:none;margin:0;padding:0}
.relacionadas a{display:grid;gap:4px;padding:12px 0;border-top:1px solid var(--line);color:var(--ink)}
.relacionadas a:hover{color:var(--terra)}
.relacionadas .rotulo{margin:0;letter-spacing:.1em;font-size:.6875rem}
.rel-frase{font-family:var(--serif);font-style:italic;font-size:1.25rem;line-height:1.35}
.nota-biblia{max-width:60ch}

/* ---------- seu espaço */
.abas{display:flex;gap:4px;border-bottom:1px solid var(--line);overflow-x:auto}
.abas button{background:none;border:0;padding:14px 14px 0;font-size:.875rem;color:var(--ink-2);display:grid;gap:12px;justify-items:center;white-space:nowrap;min-height:48px}
.abas button::after{content:"";width:100%;height:1px;background:var(--terra);opacity:0}
.abas button[aria-selected="true"]{color:var(--ink)}
.abas button[aria-selected="true"]::after{opacity:1}
.painel{padding-top:2.25rem}
.colecoes{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:2.25rem}
.colecao{background:none;border:1px solid var(--line-2);border-radius:999px;padding:9px 16px;min-height:40px;font-size:.8125rem;color:var(--ink-2)}
.colecao[aria-pressed="true"]{border-color:var(--terra);color:var(--ink)}
.colecao-nova{border-style:dashed;color:var(--muted)}
.form-colecao{display:flex;flex-wrap:wrap;gap:8px;margin:-1.25rem 0 2.25rem}
.form-colecao .campo{flex:1 1 220px;max-width:320px}
.fav{position:relative}
.fav-acoes{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px}
.fav-acoes select{width:auto;min-height:40px;padding:8px 12px;font-size:.8125rem}
.grupo-hist + .grupo-hist{margin-top:2.75rem}
.linha-hist{display:grid;grid-template-columns:52px 1fr;gap:16px;border-bottom:1px solid var(--line);padding:18px 4px;color:var(--ink)}
.linha-hist:hover{background:var(--raise);color:var(--ink)}
.prefs{max-width:640px}
.pref{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 20px;padding:22px 0;border-bottom:1px solid var(--line)}
.pref-txt{display:grid;gap:4px}
.pref-txt strong{font-weight:500;font-size:.9375rem}
.pref-txt span{font-size:.8125rem;color:var(--muted)}
.segmentos{display:flex;flex-wrap:wrap;gap:4px}
.segmentos button{background:none;border:1px solid var(--line-2);border-radius:999px;padding:9px 15px;min-height:44px;font-size:.8125rem;color:var(--ink-2);opacity:.6}
.segmentos button:hover{opacity:1}
.segmentos button[aria-pressed="true"]{opacity:1;border-color:var(--terra);color:var(--ink)}

/* ---------- páginas de texto */
.pagina-texto{max-width:720px}
.prosa h2{font-family:var(--serif);font-weight:400;font-size:1.625rem;margin:2.5rem 0 .75rem}
.prosa p{color:var(--ink-2);line-height:1.8;margin:0 0 1rem;max-width:65ch}

/* ---------- rodapé */
.rodape{border-top:1px solid var(--line);background:var(--surface);transition:background var(--t-cor)}
.rodape-in{max-width:var(--largura);margin:0 auto;padding:56px var(--lateral) 120px;display:grid;gap:34px;align-items:start}
.rodape-marca{display:flex;align-items:center;gap:10px;font-family:var(--serif);font-size:1.625rem;margin:0 0 .75rem}
.rodape-txt{color:var(--muted);font-size:.875rem;margin:0 0 .25rem}
.rodape-assinatura{color:var(--muted);font-size:.8125rem;font-style:italic}
.rodape-dir{display:grid;gap:14px}
.rodape-links{display:flex;flex-wrap:wrap;gap:6px 18px}
.rodape-links a{font-size:.875rem;color:var(--ink-2);padding:6px 0}
.rodape-links a:hover{color:var(--terra)}
.rodape-aux{color:var(--muted);font-size:.75rem;line-height:1.7;max-width:56ch}

/* ---------- navegação inferior (celular) */
.nav-inferior{position:fixed;left:0;right:0;bottom:0;z-index:45;display:grid;grid-template-columns:repeat(5,1fr);align-items:end;padding:6px 6px calc(10px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line);transition:background var(--t-cor)}
.nav-inferior a{display:grid;justify-items:center;gap:6px;padding:8px 2px;min-height:52px;font-size:.6875rem;letter-spacing:.04em;color:var(--ink-2)}
.nav-inferior a span:last-child{opacity:.65}
.nav-inferior a[aria-current="page"] span:last-child{opacity:1;color:var(--ink)}
.nav-inferior .ponto{display:block;width:6px;height:6px;border-radius:50%;border:1px solid var(--line-2)}
.nav-inferior a[aria-current="page"] .ponto{background:var(--ink);border-color:var(--ink)}
.nav-inferior .centro .ponto{width:10px;height:10px;background:var(--terra);border-color:var(--terra)}
.nav-inferior .centro span:last-child{opacity:1}

/* ---------- modo contemplação */
.contemplacao{position:fixed;inset:0;z-index:80;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:9vh 7vw 4vh;animation:suave 600ms ease;overflow:auto}
.contemplacao-topo{position:absolute;top:20px;right:20px;display:flex;gap:8px;transition:opacity 600ms ease}
.contemplacao-topo .pilula{min-height:44px}
.contemplacao.quieta{cursor:none}
.contemplacao.quieta .contemplacao-topo{opacity:0}
.contemplacao-corpo{text-align:center;max-width:1000px;margin:auto 0;transition:opacity 340ms ease,transform 340ms ease}
.ct-santo{font-family:var(--serif);font-size:1.5rem;letter-spacing:.02em;color:var(--ink-2);margin-bottom:.5rem}
.ct-titulo{font-size:.6875rem;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin-bottom:2.875rem}
.ct-frase{font-family:var(--serif);font-weight:300;font-style:italic;font-size:clamp(1.875rem,7.5vh,2.5rem);line-height:1.16;letter-spacing:-.01em;margin-bottom:2.875rem;text-wrap:balance}
.ct-frase.tam-m{font-size:clamp(1.625rem,6vh,2.25rem)}
.ct-frase.tam-l{font-size:clamp(1.375rem,4.6vh,1.875rem);line-height:1.3}
.ct-ref{font-size:.75rem;letter-spacing:.14em;color:var(--olive);margin-bottom:.375rem}
.ct-vers{font-family:var(--serif);font-size:1.25rem;line-height:1.5;color:var(--ink-2);max-width:60ch;margin-inline:auto}
.ct-rodape{padding-top:2.5rem;display:flex;align-items:center;justify-content:center;gap:12px}
.ct-relogio{font-family:var(--serif);font-size:1.375rem;font-variant-numeric:tabular-nums;color:var(--muted)}

/* ---------- compartilhar */
.compartilhar{position:fixed;inset:0;z-index:90;display:flex;align-items:flex-end;justify-content:center}
.compartilhar-fundo{position:absolute;inset:0;background:var(--veu)}
.compartilhar-folha{position:relative;width:100%;max-width:560px;max-height:92vh;overflow:auto;background:var(--surface);border-top:1px solid var(--line);border-radius:6px 6px 0 0;padding:26px 24px calc(26px + env(safe-area-inset-bottom));animation:suave 320ms ease}
.compartilhar-cab{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:18px}
.compartilhar-cab .rotulo{margin:0}
.compartilhar-cab .link-sutil{min-height:44px;padding:0 4px}
.previa{border:1px solid var(--line-2);border-radius:3px;padding:26px 22px;text-align:center;background:var(--bg);margin-bottom:14px}
.previa-santo{font-size:.6875rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:.75rem}
.previa-frase{font-family:var(--serif);font-style:italic;font-weight:300;font-size:1.5rem;line-height:1.28;margin-bottom:1.125rem;text-wrap:balance}
.previa-marca{font-family:var(--serif);font-size:.9375rem;letter-spacing:.04em;color:var(--muted)}
.compartilhar .nota{margin-bottom:10px}
.alvos{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
.alvos button{text-align:left;background:none;border:0;border-top:1px solid var(--line);padding:14px 2px;min-height:48px;font-size:.9375rem;color:var(--ink-2)}
.alvos button:hover{color:var(--ink)}

/* ---------- aviso (toast) */
.aviso{position:fixed;left:50%;bottom:92px;z-index:95;transform:translate(-50%,12px);opacity:0;pointer-events:none;background:var(--ink);color:var(--bg);padding:11px 18px;border-radius:999px;font-size:.8125rem;max-width:calc(100vw - 32px);text-align:center;transition:opacity 300ms ease,transform 300ms ease}
.aviso.visivel{opacity:1;transform:translate(-50%,0)}

/* ---------- telas maiores */
@media (min-width:600px){
  .so-largo{display:inline-flex;align-items:center}
  .menu-acoes{display:none}
  .grade-santos{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
  .grade-temas{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
}
@media (min-width:820px){
  .principal{padding-bottom:40px}
  .pagina{padding-top:86px}
  .heroi{padding-top:86px}
  .cartao{padding:54px 64px}
  .cartao-frase{padding:3.5rem 0}
  .frase{font-size:3.375rem}
  .frase.tam-m{font-size:2.625rem}
  .frase.tam-l{font-size:2rem}
  .frase-dia{font-size:3rem}
  .frase-dia.tam-l{font-size:2rem}
  .bloco{padding:38px 34px}
  .bloco-dia{padding:54px 64px}
  .secao{margin-top:6rem}
  .secao > h2,.secao-cab h2{font-size:1.875rem}
  .passada,.linha-hist{grid-template-columns:64px 1fr;gap:20px}
  .linha-msg{grid-template-columns:200px 1fr;gap:24px}
  .linha-msg-meta{display:grid;gap:5px}
  .linha-msg-frase{font-size:1.625rem}
  .nav-inferior{display:none}
  .rodape-in{padding-bottom:56px}
  .aviso{bottom:32px}
  .ct-frase{font-size:clamp(2.375rem,10vh,4.875rem)}
  .ct-frase.tam-m{font-size:clamp(2.125rem,8vh,3.75rem)}
  .ct-frase.tam-l{font-size:clamp(1.75rem,5.6vh,2.75rem)}
  .contemplacao-topo{top:26px;right:26px}
  .compartilhar{align-items:center}
  .compartilhar-folha{border-radius:6px;border:1px solid var(--line)}
}
@media (min-width:1000px){
  .nav{display:flex}
  .link-espaco{display:inline-block}
  .menu-btn{display:none}
  .menu-movel{display:none!important}
  .ferramentas{margin-left:10px}
  .logo-topo{width:42px;height:42px}
}
@media (min-width:1080px){
  .duas-colunas,.grade-2{grid-template-columns:1fr 1fr}
  .santo-grade{grid-template-columns:300px 1fr}
  .biblia-grade{grid-template-columns:240px 1fr}
  .biblia-filtros{border-bottom:0;border-right:1px solid var(--line);padding:0 26px 0 0;position:sticky;top:110px}
  .filtro-lista{display:grid;gap:1px}
  .filtro-item{border:0;border-bottom:1px solid var(--line);border-radius:0;padding:9px 4px}
  .filtro-item[aria-pressed="true"]{border-bottom-color:var(--terra)}
  .rodape-in{grid-template-columns:1fr 1fr}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important;scroll-behavior:auto!important}
  .cartao-corpo.saindo,.contemplacao-corpo.saindo{transform:none}
}
@media print{
  .topo,.nav-inferior,.controles,.rodape,.progresso{display:none!important}
  body{background:#fff;color:#000}
}
.secao-cab .link-sutil{white-space:nowrap}
