/* netlove.net.br: a camada de leitura moderna sobre o acervo de 1999-2006.
   A paleta vem do site original: creme #FFCC99 e marrom #663300. */

:root{
  --papel:#faf6ef;
  --papel2:#fffdfa;
  --tinta:#2a2320;
  --tinta2:#6f6157;
  --linha:#e6dccc;
  --marca:#9c4a22;
  --marca2:#b3801f;
  --realce:#f4ebdb;
  --sombra:0 1px 2px rgba(80,55,30,.06), 0 8px 24px rgba(80,55,30,.06);
  --serif:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,"Times New Roman",serif;
  --sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}

@media (prefers-color-scheme:dark){
  :root:not([data-tema="claro"]){
    --papel:#16120f;
    --papel2:#1e1915;
    --tinta:#ece3d7;
    --tinta2:#a4968a;
    --linha:#35291f;
    --marca:#e2916a;
    --marca2:#d2a851;
    --realce:#241d16;
    --sombra:0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.35);
  }
}

:root[data-tema="escuro"]{
  --papel:#16120f;
  --papel2:#1e1915;
  --tinta:#ece3d7;
  --tinta2:#a4968a;
  --linha:#35291f;
  --marca:#e2916a;
  --marca2:#d2a851;
  --realce:#241d16;
  --sombra:0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.35);
}

*{box-sizing:border-box}

body{
  margin:0;
  background:var(--papel);
  color:var(--tinta);
  font-family:var(--sans);
  font-size:17px;
  line-height:1.7;
  -webkit-text-size-adjust:100%;
}

a{color:var(--marca);text-decoration:none}
a:hover{text-decoration:underline}

.env{max-width:44rem;margin:0 auto;padding-left:20px;padding-right:20px}
.env.largo{max-width:66rem}

/* ------------------------------------------------------------- cabecalho */

.topo{
  border-bottom:1px solid var(--linha);
  background:var(--papel2);
  position:sticky;top:0;z-index:20;
  backdrop-filter:saturate(1.4) blur(6px);
}
.topo .env{display:flex;align-items:center;gap:1.1rem;padding-block:.7rem}
.marca{
  font-family:var(--serif);
  font-size:1.22rem;
  font-weight:600;
  letter-spacing:.01em;
  color:var(--tinta);
  white-space:nowrap;
}
.marca:hover{text-decoration:none;color:var(--marca)}
.marca b{color:var(--marca);font-weight:600}
.topo nav{margin-left:auto;display:flex;align-items:center;gap:1.1rem;font-size:.9rem}
.topo nav a{color:var(--tinta2)}
.topo nav a:hover{color:var(--marca)}
.btema{
  border:1px solid var(--linha);background:transparent;color:var(--tinta2);
  border-radius:999px;width:32px;height:32px;cursor:pointer;font-size:.95rem;
  line-height:1;display:inline-flex;align-items:center;justify-content:center;
}
.btema:hover{color:var(--marca);border-color:var(--marca)}

@media (max-width:33rem){
  .topo nav a.some{display:none}
  .marca{font-size:1.05rem}
}

/* ------------------------------------------------------------------ home */

.capa{padding-block:3.4rem 2.2rem;text-align:center}
.logoantigo{
  display:block;margin:0 auto 1.4rem;max-width:180px;height:auto;
  image-rendering:auto;opacity:.92;
}
.lema{
  font-family:var(--serif);font-style:italic;color:var(--marca2);
  margin:-.2rem 0 1.2rem;font-size:1.02rem;letter-spacing:.02em;
}
.logoluar{max-width:320px;width:100%;height:auto;border-radius:10px;box-shadow:var(--sombra)}
.capa h1{
  font-family:var(--serif);
  font-size:clamp(2.2rem,7vw,3.4rem);
  line-height:1.12;
  margin:0 0 .5rem;
  font-weight:600;
  letter-spacing:-.01em;
}
.capa h1 span{color:var(--marca)}
.capa .lede{
  font-family:var(--serif);
  font-size:clamp(1.02rem,2.4vw,1.2rem);
  color:var(--tinta2);
  max-width:34rem;margin:0 auto 1.6rem;
  line-height:1.62;
}
.numeros{
  display:flex;justify-content:center;flex-wrap:wrap;gap:.6rem 2.2rem;
  color:var(--tinta2);font-size:.86rem;letter-spacing:.04em;text-transform:uppercase;
}
.numeros b{display:block;font-family:var(--serif);font-size:1.55rem;color:var(--tinta);
  text-transform:none;letter-spacing:0;font-weight:600}

.buscacx{margin:2.2rem auto 0;max-width:32rem;display:flex;gap:.5rem}
.buscacx input{
  flex:1;min-width:0;font:inherit;font-size:1rem;padding:.7rem .95rem;
  border:1px solid var(--linha);border-radius:10px;background:var(--papel2);color:var(--tinta);
}
.buscacx input:focus{outline:2px solid var(--marca);outline-offset:1px;border-color:var(--marca)}
.buscacx button{
  font:inherit;font-size:.95rem;padding:.7rem 1.15rem;border:0;border-radius:10px;
  background:var(--marca);color:#fff;cursor:pointer;
}
.buscacx button:hover{filter:brightness(1.08)}

/* ---------------------------------------------------------------- secoes */

.secoes{
  display:grid;gap:1rem;
  grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));
  margin:0 0 3rem;padding:0;list-style:none;
}
.cartao{
  display:block;padding:1.15rem 1.25rem;border:1px solid var(--linha);
  border-radius:12px;background:var(--papel2);box-shadow:var(--sombra);
  transition:transform .12s ease, border-color .12s ease;
}
.cartao:hover{text-decoration:none;transform:translateY(-2px);border-color:var(--marca)}
.cartao h3{
  font-family:var(--serif);font-size:1.14rem;margin:0 0 .25rem;
  font-weight:600;color:var(--tinta);
}
.cartao p{margin:0;font-size:.88rem;color:var(--tinta2);line-height:1.55}
.cartao .qtd{color:var(--marca2);font-size:.8rem;letter-spacing:.05em;text-transform:uppercase}

/* ----------------------------------------------------------------- lista */

h2.titsec{
  font-family:var(--serif);font-size:1.5rem;font-weight:600;
  margin:2.6rem 0 .3rem;
}
.sub{color:var(--tinta2);font-size:.92rem;margin:0 0 1.4rem}

h3.titsub{
  font-family:var(--serif);font-size:1.12rem;font-weight:600;margin:2rem 0 .5rem;
  padding-bottom:.35rem;border-bottom:1px solid var(--linha);color:var(--tinta2);
}
h3.titsub span{color:var(--marca2);font-size:.78rem;font-family:var(--sans);
  letter-spacing:.05em;text-transform:uppercase;margin-left:.4rem}

ul.itens{list-style:none;margin:0 0 1.2rem;padding:0;columns:2;column-gap:2.4rem}
ul.itens li{margin:.22rem 0;break-inside:avoid;font-size:.95rem;line-height:1.5}
ul.itens li a{color:var(--tinta)}
ul.itens li a:hover{color:var(--marca)}
@media (max-width:44rem){ul.itens{columns:1}}

/* --------------------------------------------------------------- leitura */

article.leitura{padding-block:2.4rem 1rem}
.trilha{font-size:.84rem;color:var(--tinta2);letter-spacing:.03em;margin:0 0 .7rem}
.trilha a{color:var(--tinta2)}
.trilha a:hover{color:var(--marca)}
article.leitura h1{
  font-family:var(--serif);font-size:clamp(1.7rem,5vw,2.3rem);line-height:1.2;
  font-weight:600;margin:0 0 1.6rem;letter-spacing:-.005em;
}
.corpo{font-family:var(--serif);font-size:1.14rem;line-height:1.78;overflow-wrap:break-word}
.corpo p{margin:0 0 1.15rem}
.corpo b,.corpo strong{font-weight:600}
.corpo a{text-decoration:underline;text-underline-offset:2px}
.corpo img{max-width:100%;height:auto;border-radius:6px;margin:.5rem 0}
.corpo hr{border:0;border-top:1px solid var(--linha);margin:2rem 0}
.corpo blockquote{
  margin:1.5rem 0;padding-left:1.1rem;border-left:3px solid var(--marca2);
  color:var(--tinta2);font-style:italic;
}
.corpo ul,.corpo ol{margin:0 0 1.15rem;padding-left:1.4rem}
.corpo li{margin:.3rem 0}
.corpo div,.corpo span{max-width:100%}
.corpo table{
  width:100%;border-collapse:collapse;margin:1.2rem 0;font-size:1rem;
}
.corpo td,.corpo th{padding:.35rem .6rem;vertical-align:top;text-align:left}
.rolar{overflow-x:auto;-webkit-overflow-scrolling:touch}
.corpo center{display:block}

.pe{
  margin:3rem 0 0;padding:1.2rem 1.3rem;border:1px solid var(--linha);
  border-radius:12px;background:var(--realce);font-size:.88rem;color:var(--tinta2);
  line-height:1.6;
}
.pe b{color:var(--tinta);font-weight:600}
.pe code{
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85em;
  background:var(--papel2);padding:.1rem .35rem;border-radius:4px;border:1px solid var(--linha);
  overflow-wrap:anywhere;
}

.vizinhos{display:flex;gap:1rem;justify-content:space-between;margin:2rem 0 0;font-size:.92rem}
.vizinhos a{max-width:48%}
.vizinhos .dir{margin-left:auto;text-align:right}

/* ----------------------------------------------------------------- busca */

#resultados{margin:1.6rem 0 3rem;padding:0;list-style:none}
#resultados li{padding:1rem 0;border-bottom:1px solid var(--linha)}
#resultados h3{font-family:var(--serif);font-size:1.1rem;margin:0 0 .2rem;font-weight:600}
#resultados .ondefica{font-size:.8rem;color:var(--marca2);letter-spacing:.04em;text-transform:uppercase}
#resultados .trecho{font-size:.92rem;color:var(--tinta2);margin:.3rem 0 0;line-height:1.55}
#resultados mark{background:rgba(178,128,31,.28);color:inherit;border-radius:2px;padding:0 .1em}

/* ---------------------------------------------------------------- rodape */

footer.rodape{
  border-top:1px solid var(--linha);margin-top:3.5rem;padding-block:2rem 2.6rem;
  color:var(--tinta2);font-size:.86rem;line-height:1.7;
}
footer.rodape a{color:var(--tinta2);text-decoration:underline;text-underline-offset:2px}
footer.rodape a:hover{color:var(--marca)}
footer.rodape p{margin:0 0 .6rem}

.aviso{
  background:var(--realce);border:1px solid var(--linha);border-radius:12px;
  padding:1.1rem 1.25rem;margin:0 0 2rem;font-size:.92rem;color:var(--tinta2);line-height:1.65;
}
.aviso b{color:var(--tinta)}
