/* Refúgio das Páginas — um caderno de leitura aberto: papel creme, sálvia, rosa antigo, madeira.
   Ornamentos só em cantos, cabeçalhos e fitas washi. */
:root{
  --paper:#F5F0E6; --paper-2:#EDE5D6; --card:#FBF8F2;
  --ink:#2E2925; --ink-soft:#6B6158; --line:#D8CEBD;
  --sage:#6E8B5E; --sage-soft:#DCE4D3; --rose:#D4A39B; --rose-ink:#9E5A51; --rose-soft:#F1DDD8;
  --wood:#7A5A40; --gold:#C9A04A; --gold-soft:#F3E7C8; --erro:#A63D32;
  --f-display:"Cormorant Garamond", "Garamond", "Times New Roman", serif;
  --f-body:"Lora", Georgia, serif;
  --f-type:"Courier Prime", "Courier New", monospace;
  --f-script:"Pinyon Script", "Snell Roundhand", cursive;
  color-scheme:light;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --paper:#1E1B18; --paper-2:#26221E; --card:#2B2621;
  --ink:#EEE7DB; --ink-soft:#B4A998; --line:#40392F;
  --sage:#98B387; --sage-soft:#2F3A2A; --rose:#C9918A; --rose-ink:#E5A79E; --rose-soft:#3D2C29;
  --wood:#B48D6B; --gold:#D9B868; --gold-soft:#3A3122; --erro:#F0907F; color-scheme:dark;}}
:root[data-theme="dark"]{
  --paper:#1E1B18; --paper-2:#26221E; --card:#2B2621;
  --ink:#EEE7DB; --ink-soft:#B4A998; --line:#40392F;
  --sage:#98B387; --sage-soft:#2F3A2A; --rose:#C9918A; --rose-ink:#E5A79E; --rose-soft:#3D2C29;
  --wood:#B48D6B; --gold:#D9B868; --gold-soft:#3A3122; --erro:#F0907F; color-scheme:dark;}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{background:var(--paper);color:var(--ink);font-family:var(--f-body);font-size:16.5px;line-height:1.65;margin:0;min-height:100vh}
.wrap{max-width:1080px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
h1,h2,h3,h4{font-family:var(--f-display);font-weight:600;line-height:1.1;text-wrap:balance;margin:0}
p{margin:0}
a{color:var(--rose-ink)}
img{max-width:100%}
[hidden]{display:none!important}
.label{font-family:var(--f-type);font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft)}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--rose-ink);outline-offset:3px;border-radius:2px}
.small{font-size:13.5px;color:var(--ink-soft)}
.vazio{font-style:italic;color:var(--ink-soft)}
.erro{color:var(--erro);font-family:var(--f-type);font-size:13px}
.ok{color:var(--sage);font-family:var(--f-type);font-size:13px}

/* topo */
nav.top{position:sticky;top:0;z-index:9;background:color-mix(in srgb,var(--paper) 92%,transparent);backdrop-filter:blur(6px);border-bottom:1px solid var(--line)}
nav.top .wrap{display:flex;align-items:center;gap:20px;padding-block:10px}
.brand{font-family:var(--f-display);font-style:italic;font-size:21px;white-space:nowrap;text-decoration:none;color:var(--ink)}
.navlinks{display:flex;gap:18px;overflow-x:auto;scrollbar-width:none;min-width:0;flex:1}
.navlinks::-webkit-scrollbar{display:none}
.navlinks a{font-family:var(--f-type);font-size:13px;color:var(--ink-soft);text-decoration:none;white-space:nowrap;padding-block:4px}
.navlinks a:hover,.navlinks a[aria-current="page"]{color:var(--rose-ink)}
.quem-sou{display:flex;align-items:center;gap:14px;font-family:var(--f-type);font-size:12.5px;color:var(--ink-soft);white-space:nowrap}
.linkbtn{background:none;border:0;padding:0;cursor:pointer;color:var(--rose-ink);font-family:var(--f-type);font-size:12.5px;text-decoration:underline}

.washi{height:24px;margin:60px auto;max-width:620px;transform:rotate(-1.2deg);opacity:.85;
  background:
   radial-gradient(circle at 12px 12px,var(--rose) 0 4.5px,transparent 5px),
   radial-gradient(ellipse 5px 2.4px at 26px 7px,var(--sage) 0 99%,transparent 100%),
   radial-gradient(ellipse 5px 2.4px at 26px 17px,var(--sage) 0 99%,transparent 100%),
   var(--rose-soft);
  background-size:36px 24px;
  -webkit-mask:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent);mask:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}
.washi.alt{transform:rotate(.9deg)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--ink);background:transparent;padding:10px 16px;font-family:var(--f-type);font-size:13.5px;letter-spacing:.04em;cursor:pointer;text-decoration:none;color:var(--ink);border-radius:2px;transition:background .15s,color .15s}
.btn:hover{background:var(--ink);color:var(--paper)}
.btn.solid{background:var(--ink);color:var(--paper)}
.btn.solid:hover{background:var(--rose-ink);border-color:var(--rose-ink)}
.btn.mini{padding:5px 10px;font-size:12px}
.btn:disabled,.btn[aria-disabled="true"]{opacity:.5;cursor:default;pointer-events:none}
.btn.perigo{border-color:var(--erro);color:var(--erro)}
.btn.perigo:hover{background:var(--erro);color:var(--paper)}

/* formulários */
form{display:grid;gap:14px}
.field{display:grid;gap:5px;min-width:0}
.field > label,.field > span.lbl,fieldset > legend{font-family:var(--f-type);font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);padding:0}
input[type=text],input[type=password],input[type=date],input[type=time],input[type=url],select,textarea{width:100%;background:var(--paper);border:1px solid var(--line);border-radius:2px;padding:10px 12px}
input:focus,select:focus,textarea:focus{border-color:var(--ink-soft);outline:none}
fieldset{border:0;padding:0;margin:0;display:grid;gap:6px;min-width:0}
.radios{display:flex;gap:8px;flex-wrap:wrap}
.radios label,.checks label{display:flex;align-items:center;gap:8px;border:1px solid var(--line);padding:8px 12px;cursor:pointer;border-radius:2px;background:var(--paper);font-size:15px}
.radios input,.checks input{accent-color:var(--rose-ink)}
.checks{display:grid;gap:6px}
.linha{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:560px){.linha{grid-template-columns:1fr}}

/* página de rosto */
.rosto{position:relative;margin-top:28px;border:1px solid var(--line);background:var(--card);padding:60px 24px 48px;overflow:hidden}
.rosto::after{content:"";position:absolute;inset:12px;border:1px dashed var(--line);pointer-events:none}
.corner{position:absolute;width:230px;height:200px;pointer-events:none}
.corner.tl{top:-6px;left:-10px}
.corner.br{bottom:-8px;right:-12px;transform:rotate(180deg)}
.rosto .inner{position:relative;z-index:1;display:grid;gap:16px;justify-items:center;text-align:center;max-width:520px;margin:0 auto}
.rosto h1{font-size:clamp(44px,9vw,84px);font-weight:500;letter-spacing:-.01em}
.rosto h1 em{font-style:italic;color:var(--rose-ink)}
.convidada{font-family:var(--f-display);font-style:italic;font-size:21px;color:var(--rose-ink)}
.dente{width:70px;height:86px}
.quote{font-family:var(--f-type);font-size:14px;color:var(--ink-soft)}
.login-box{width:100%;max-width:360px;text-align:left;border-top:1px solid var(--line);padding-top:22px}

section{scroll-margin-top:70px}
.sec-head{display:grid;gap:6px;margin-bottom:26px}
.sec-head h2{font-size:clamp(32px,5vw,44px);font-weight:500}
.sec-head p{color:var(--ink-soft);max-width:62ch}

/* encontro */
.recanto{display:grid;grid-template-columns:1.1fr 1fr;border:1px solid var(--line);background:var(--card)}
.recanto > div{min-width:0;padding:28px 26px}
.recanto .info{border-right:1px solid var(--line);display:grid;gap:16px;align-content:start}
@media (max-width:760px){.recanto{grid-template-columns:1fr}.recanto .info{border-right:0;border-bottom:1px solid var(--line)}.recanto > div{padding:22px 18px}}
.data-grande{font-family:var(--f-display);font-size:clamp(28px,4vw,36px);font-weight:600;line-height:1.1}
.contagem{font-family:var(--f-type);font-size:13px;color:var(--ink-soft)}
.contagem b{font-family:var(--f-display);font-size:30px;color:var(--rose-ink);font-weight:600;vertical-align:-3px;margin-right:4px}
dl.det{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;margin:0}
dl.det dt{font-family:var(--f-type);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);padding-top:3px}
dl.det dd{margin:0}
.vagas{display:flex;gap:5px;flex-wrap:wrap}
.vagas i{width:16px;height:22px;border:1.3px solid var(--ink-soft);border-radius:1px;display:block}
.vagas i.on{background:var(--rose);border-color:var(--rose)}
.pessoas{display:flex;flex-wrap:wrap;gap:8px}
.pessoa{font-size:14px;padding:4px 10px;background:var(--rose-soft);border-radius:2px}
.pessoa small{font-family:var(--f-type);font-size:11px;color:var(--ink-soft);margin-left:4px}

/* votação */
.urna{border:1.5px dashed var(--line);padding:30px 22px;text-align:center;display:grid;gap:12px;justify-items:center}
.urna h3{font-size:27px;font-weight:500}
.urna p{max-width:52ch;color:var(--ink-soft)}
.candidatos{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}
.cand{display:grid;grid-template-columns:110px 1fr;gap:16px;background:var(--card);border:1px solid var(--line);padding:16px;position:relative}
.cand > div{min-width:0;display:grid;gap:6px;align-content:start}
.cand img{width:110px;aspect-ratio:2/3;object-fit:cover;box-shadow:3px 4px 0 -1px var(--paper-2),3px 4px 0 0 var(--line)}
.cand h3{font-size:23px}
.cand .aut{font-family:var(--f-type);font-size:13px;color:var(--ink-soft)}
.cand .chamada{font-family:var(--f-display);font-style:italic;font-size:17px;color:var(--rose-ink);line-height:1.25}
.cand.meu{border-color:var(--rose-ink);box-shadow:0 0 0 3px var(--rose-soft)}
.cand.venceu{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-soft)}
.fita{position:absolute;top:-10px;right:14px;background:var(--gold);color:#2A2008;font-family:var(--f-type);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;padding:3px 10px}
.fita.rosa{background:var(--rose-ink);color:#fff}

/* acervo */
.filtros{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}
.filtro{border:1px solid var(--line);background:var(--card);padding:6px 12px;border-radius:20px;font-family:var(--f-type);font-size:12.5px;cursor:pointer;color:var(--ink-soft)}
.filtro[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.filtro span{opacity:.7;margin-left:4px}
.acervo{display:grid;grid-template-columns:repeat(auto-fill,minmax(186px,1fr));gap:28px 20px}
@media (max-width:440px){.acervo{grid-template-columns:1fr 1fr;gap:22px 14px}}
.livro{display:grid;gap:7px;align-content:start;min-width:0}
.livro .capa-box{position:relative}
.livro img{width:100%;aspect-ratio:2/3;object-fit:cover;display:block;box-shadow:4px 5px 0 -1px var(--paper-2),4px 5px 0 0 var(--line)}
.sem-capa{width:100%;aspect-ratio:2/3;border:1.5px dashed var(--line);display:grid;place-items:center;padding:12px;text-align:center;font-family:var(--f-display);font-size:20px}
.livro .meta{font-family:var(--f-type);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--rose-ink);margin-top:6px;line-height:1.4}
.livro h3{font-size:21px;line-height:1.12}
.livro .aut{font-size:14px;color:var(--ink-soft)}
.livro .chamada{font-family:var(--f-display);font-style:italic;font-size:16.5px;line-height:1.3}
.livro details{font-size:14px;line-height:1.55}
.livro summary{font-family:var(--f-type);font-size:12px;letter-spacing:.06em;cursor:pointer;color:var(--ink-soft);list-style:none}
.livro summary::-webkit-details-marker{display:none}
.livro summary::before{content:"+ "}
.livro details[open] summary::before{content:"− "}
.livro details p{margin-top:6px}
.aviso{font-family:var(--f-type);font-size:11px;background:var(--rose-soft);padding:2px 7px;border-radius:2px;justify-self:start}
.selo{position:absolute;left:8px;top:8px;font-family:var(--f-type);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;padding:2px 7px;background:var(--card);border:1px solid var(--line)}
.selo.esc{background:var(--gold);border-color:var(--gold);color:#2A2008}

/* livro do mês */
.livro-mes{display:grid;grid-template-columns:220px 1fr;gap:36px;align-items:start}
.livro-mes > div{min-width:0;display:grid;gap:12px;align-content:start}
.livro-mes img{width:100%;aspect-ratio:2/3;object-fit:cover;box-shadow:6px 8px 0 -2px var(--paper-2),6px 8px 0 -1px var(--line)}
.livro-mes h3{font-size:clamp(32px,5vw,42px);font-weight:500}
@media (max-width:700px){.livro-mes{grid-template-columns:1fr}.livro-mes .capa-col{max-width:200px}}

/* mural pautado */
.mural-grid{display:grid;grid-template-columns:320px 1fr;gap:30px;align-items:start;margin-top:30px}
.mural-grid > *{min-width:0}
@media (max-width:820px){.mural-grid{grid-template-columns:1fr}}
.form-nota{border:1px solid var(--line);background:var(--card);padding:20px}
.pautado{--lh:30px;background-color:var(--card);background-image:repeating-linear-gradient(to bottom,transparent 0 calc(var(--lh) - 1px),var(--line) calc(var(--lh) - 1px) var(--lh));background-position:0 14px;border:1px solid var(--line);padding:14px 20px 22px 46px;position:relative;line-height:var(--lh);min-height:180px}
.pautado::before{content:"";position:absolute;top:0;bottom:0;left:32px;width:1px;background:var(--rose)}
.onde{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px}
.onde select{width:auto}
.notas{list-style:none;margin:0;padding:0}
.nota{padding:0 0 var(--lh)}
.nota .quem{font-family:var(--f-type);font-size:12.5px;color:var(--ink-soft)}
.nota .quem b{color:var(--ink);font-weight:700}
.nota .txt{white-space:pre-wrap;overflow-wrap:anywhere}
.nota.cit .txt{font-family:var(--f-display);font-style:italic;font-size:21px}
.nota.cit .txt::before{content:"“"}.nota.cit .txt::after{content:"”"}
.nota.oculta .txt{filter:blur(5px);user-select:none}
.revelar{font-family:var(--f-type);font-size:12px;background:var(--rose-soft);border:0;padding:2px 8px;cursor:pointer;border-radius:2px;margin-left:6px}

/* calendário */
.cal{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:18px}
.slot{border:1.5px dashed var(--line);padding:14px;display:grid;gap:6px;align-content:start}
.slot .m{font-family:var(--f-script);font-size:32px;line-height:1.05}
.slot .when{font-family:var(--f-type);font-size:12.5px;color:var(--ink-soft)}
.slot.proximo{border-style:solid;border-color:var(--rose);background:var(--rose-soft)}
.slot.passado{border-style:solid;background:var(--card)}
.slot img{width:70px;aspect-ratio:2/3;object-fit:cover}

/* estante */
.estante-scroll{overflow-x:auto;padding-bottom:6px}
.estante{min-width:640px;padding:0 10px}
.prateleira{display:flex;align-items:flex-end;gap:5px;padding:0 70px 0 56px;height:210px;position:relative}
.tabua{height:16px;background:var(--wood);border-radius:2px;box-shadow:0 5px 0 -1px color-mix(in srgb,var(--wood) 60%,var(--paper))}
.lombada{flex:0 0 auto;width:44px;border:1.5px solid var(--ink-soft);border-bottom:0;background:var(--card);position:relative;display:flex;align-items:center;justify-content:center;border-radius:2px 2px 0 0}
.lombada span.t{writing-mode:vertical-rl;transform:rotate(180deg);font-family:var(--f-type);font-size:11px;letter-spacing:.06em;white-space:nowrap;overflow:hidden;max-height:82%}
.lombada .mes{position:absolute;bottom:4px;left:0;right:0;text-align:center;font-family:var(--f-type);font-size:9.5px;color:var(--ink-soft)}
.lombada.lida{background:var(--sage);border-color:var(--sage)}
.lombada.lida span.t,.lombada.lida .mes{color:var(--paper)}
.lombada.lendo{background:linear-gradient(to top,var(--rose) 45%,var(--card) 45%);border-color:var(--rose)}
.planta{position:absolute;bottom:16px}
.planta.l{left:6px}.planta.r{right:12px}

.regras{columns:2 300px;column-gap:44px}
.regra{break-inside:avoid;margin-bottom:22px}
.regra h3{font-size:23px;margin-bottom:4px}
.regra p{font-size:15.5px}

/* modal */
.modal{position:fixed;inset:0;background:color-mix(in srgb,var(--ink) 45%,transparent);display:grid;place-items:center;padding:16px;z-index:50}
.modal > div{background:var(--card);border:1px solid var(--line);padding:28px 24px;max-width:420px;width:100%;display:grid;gap:14px}
.modal h2{font-size:30px;font-weight:500}

/* painel */
.tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--line);margin:28px 0 26px}
.tab{border:1px solid transparent;border-bottom:0;background:none;padding:9px 14px;font-family:var(--f-type);font-size:13px;cursor:pointer;color:var(--ink-soft);margin-bottom:-1px;border-radius:2px 2px 0 0}
.tab[aria-selected="true"]{border-color:var(--line);background:var(--paper);color:var(--ink)}
.painel-grid{display:grid;grid-template-columns:360px 1fr;gap:30px;align-items:start}
.painel-grid > *{min-width:0}
@media (max-width:860px){.painel-grid{grid-template-columns:1fr}}
.caixa{border:1px solid var(--line);background:var(--card);padding:20px;display:grid;gap:14px;align-content:start}
.caixa h3{font-size:24px;font-weight:500}
.tabela-wrap{overflow-x:auto}
table{border-collapse:collapse;width:100%;font-size:14.5px}
th,td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:top}
th{font-family:var(--f-type);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);font-weight:400}
td .acoes{display:flex;gap:6px;flex-wrap:wrap}
.chip{font-family:var(--f-type);font-size:11.5px;padding:2px 8px;border-radius:20px;border:1px solid var(--line);white-space:nowrap}
.chip.verde{background:var(--sage-soft);border-color:var(--sage)}
.chip.rosa{background:var(--rose-soft);border-color:var(--rose)}
.msg-zap{white-space:pre-wrap;font-family:var(--f-type);font-size:13px;background:var(--paper);border:1px dashed var(--line);padding:12px}
.placar{display:grid;gap:8px}
.placar .barra{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}
.placar .barra div{height:10px;background:var(--rose);border-radius:2px}

footer{border-top:1px solid var(--line);margin-top:80px}
footer .wrap{padding-block:28px 40px;display:flex;flex-wrap:wrap;gap:12px 28px;justify-content:space-between;align-items:center}
.theme-btn{border:1px solid var(--line);background:transparent;padding:5px 10px;font-family:var(--f-type);font-size:12px;cursor:pointer;border-radius:2px}
img.capa-db{background:var(--paper-2)}
.mini-capa{width:44px;aspect-ratio:2/3;object-fit:cover;display:block}
.capa-envio{display:grid;grid-template-columns:96px 1fr;gap:14px;align-items:start}
.capa-previa{width:96px;aspect-ratio:2/3;border:1.5px dashed var(--line);display:grid;place-items:center;text-align:center;overflow:hidden;background:var(--paper)}
.capa-previa img{width:100%;height:100%;object-fit:cover;display:block}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.visually-hidden:focus-visible + label{outline:2px solid var(--rose-ink);outline-offset:3px}
.carregando{padding:80px 0;text-align:center;font-family:var(--f-type);color:var(--ink-soft)}
@media (max-width:560px){#nomeTopo{display:none}nav.top .wrap{gap:12px}}

/* especiais */
.esp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}
.esp-card{display:grid;grid-template-columns:110px 1fr;gap:18px;padding:16px;border:1px solid var(--line);background:var(--card);text-decoration:none;color:var(--ink);transition:border-color .15s}
.esp-card:hover{border-color:var(--rose-ink)}
.esp-card .esp-txt{display:grid;gap:6px;align-content:start;min-width:0}
.esp-card h3{font-size:25px}
.esp-card p{font-size:15px;color:var(--ink-soft)}
.esp-ler{font-family:var(--f-type);font-size:12.5px;color:var(--rose-ink)}
.esp-foto img,.esp-foto .sem-capa{width:100%;aspect-ratio:2/3;object-fit:cover;display:block;box-shadow:4px 5px 0 -1px var(--paper-2),4px 5px 0 0 var(--line)}
.esp-view{position:fixed;inset:0;z-index:40;background:var(--paper);overflow-y:auto;padding-block:max(20px,env(safe-area-inset-top,0px)) 60px}
.esp-artigo{max-width:860px;display:grid;gap:8px}
.esp-artigo > .btn{justify-self:start;margin-bottom:18px}
.esp-cabeca{display:grid;grid-template-columns:220px 1fr;gap:34px;align-items:end;padding-bottom:28px;border-bottom:1px dashed var(--line)}
.esp-cabeca > div{min-width:0;display:grid;gap:10px}
@media (max-width:640px){.esp-cabeca{grid-template-columns:1fr}.esp-foto.grande{max-width:180px}}
.esp-script{font-family:var(--f-script);font-size:46px;line-height:1;color:var(--rose-ink)}
.esp-cabeca h1{font-size:clamp(40px,7vw,64px);font-weight:500}
.esp-chamada{font-family:var(--f-display);font-style:italic;font-size:22px;line-height:1.3}
.esp-bloco{margin-top:36px;display:grid;gap:12px}
.esp-bloco h2{font-size:32px;font-weight:500}
.esp-bloco > p{max-width:66ch}
.tempo{list-style:none;margin:0;padding:0 0 0 18px;border-left:1.5px solid var(--rose);display:grid;gap:14px}
.tempo li{display:grid;grid-template-columns:90px 1fr;gap:14px;position:relative}
.tempo li::before{content:"";position:absolute;left:-24px;top:9px;width:9px;height:9px;border-radius:50%;background:var(--card);border:1.5px solid var(--rose-ink)}
.tempo .ano{font-family:var(--f-type);font-size:14px;color:var(--rose-ink)}
@media (max-width:480px){.tempo li{grid-template-columns:1fr;gap:2px}}
.esp-livros{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:22px 18px}
.curios{margin:0;padding-left:20px;display:grid;gap:8px;max-width:66ch}
.curios li::marker{color:var(--rose-ink)}
.esp-links{list-style:none;margin:0;padding:0;display:grid;gap:8px}

/* cópia de segurança */
.backup{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;justify-content:space-between;border:1px solid var(--line);background:var(--card);padding:14px 18px}
.backup > div{min-width:0;flex:1 1 260px;display:grid;gap:2px}
.backup.atrasado{border-color:var(--rose-ink);background:var(--rose-soft)}

/* menu: no celular vira um botão que abre um painel com os itens */
.btn-menu{display:none;align-items:center;gap:8px;margin-left:auto;border:1px solid var(--line);background:var(--card);padding:8px 12px;border-radius:2px;cursor:pointer;font-family:var(--f-type);font-size:13px;color:var(--ink)}
.hamb{display:grid;gap:3px;width:16px}
.hamb i{display:block;height:1.5px;background:var(--ink);transition:transform .2s,opacity .2s}
nav.top.aberto .hamb i:nth-child(1){transform:translateY(4.5px) rotate(45deg)}
nav.top.aberto .hamb i:nth-child(2){opacity:0}
nav.top.aberto .hamb i:nth-child(3){transform:translateY(-4.5px) rotate(-45deg)}
.menu-conta{display:none}
.navlinks a[aria-current]{color:var(--rose-ink)}
@media (max-width:760px){
  nav.top .wrap{position:relative;gap:12px}
  .btn-menu{display:inline-flex}
  nav.top .quem-sou{display:none}
  .navlinks{display:none;position:absolute;top:100%;left:0;right:0;overflow:visible;
    grid-template-columns:1fr 1fr;gap:8px;background:var(--paper);border-bottom:1px solid var(--line);
    box-shadow:0 14px 24px -14px color-mix(in srgb,var(--ink) 35%,transparent);
    padding:12px max(16px,env(safe-area-inset-right,0px)) 16px max(16px,env(safe-area-inset-left,0px))}
  nav.top.aberto .navlinks{display:grid}
  .navlinks a{font-size:15px;color:var(--ink);padding:13px 12px;border:1px solid var(--line);background:var(--card);border-radius:2px;white-space:normal}
  .navlinks a[aria-current]{border-color:var(--rose-ink);color:var(--rose-ink)}
  #linkPainel{grid-column:1/-1;text-align:center;background:var(--rose-soft)}
  .menu-conta{display:flex;grid-column:1/-1;justify-content:space-between;align-items:center;padding:8px 2px 0;font-family:var(--f-type);font-size:13px;color:var(--ink-soft);border-top:1px dashed var(--line);margin-top:4px}
  .menu-conta .linkbtn{font-size:14px;padding:6px 0}
}
