/* Pagina Livros (.lv-). Usa apenas tokens do :root (docs/02). Mobile-first. */
.lv{overflow-x:clip}
.lv-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.lv-head,.lv-all__head,.lv-h2--feat{max-width:var(--max-w);margin-inline:auto;padding-inline:var(--margin)}
.lv-head{padding-block:var(--space-l) var(--space-m)}
.lv-h1{font:300 var(--step-4)/var(--lh-display) var(--font-display);margin:0 0 var(--space-s)}
.lv-lede{font:var(--step-1)/1.45 var(--font-serif);color:var(--text-2);max-width:var(--measure);margin:0 0 var(--space-xs)}
.lv-h2{font:300 var(--step-3)/var(--lh-title) var(--font-display);margin:0}
.lv-h2--feat{padding-block:var(--space-m) var(--space-s)}
.lv a:focus-visible,.lv button:focus-visible,.lv input:focus-visible,.lv select:focus-visible,.lv summary:focus-visible,.lv-dlg :focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}

.lv-ano{font:400 var(--step-0) var(--font-serif);font-variant-numeric:lining-nums tabular-nums;color:var(--text-2)}

/* capas: o wrapper e o container (cqi nao resolve no proprio elemento) */
.lv-feat__cover,.lv-item__c,.lv-fc{container-type:inline-size;min-width:0}
.lv-cover{position:relative;aspect-ratio:var(--ar,var(--ar-cover));background:var(--surface);border:var(--border-w) solid var(--line);border-radius:var(--radius-0);overflow:hidden;width:100%}
.lv-cover picture{display:contents}
.lv-cover--miss img,.lv-cover--miss picture{display:none}
.lv-cover img{display:block;width:100%;height:100%;object-fit:contain}
.lv-cover--img{border:0;background:transparent;box-shadow:0 .5rem 1.25rem rgba(0,0,0,.4),0 .1rem .3rem rgba(0,0,0,.3)}
.lv-feat__cover .lv-cover--img{max-width:min(100%,calc(80vh*var(--r)));margin-inline:auto;box-shadow:0 .75rem 2rem rgba(0,0,0,.5),0 .15rem .5rem rgba(0,0,0,.35)}
.lv-item__c{align-self:start}
.lv-ph{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;padding:9cqi;color:var(--text);background:linear-gradient(155deg,var(--c1),var(--c2))}
.lv-t0{--c1:#2A2218;--c2:#12100C}.lv-t1{--c1:#2B2B29;--c2:#111110}.lv-t2{--c1:#231F17;--c2:#181612}
.lv-t3{--c1:#2E241B;--c2:#14110D}.lv-t4{--c1:#26251F;--c2:#0E0D0B}.lv-t5{--c1:#2B2822;--c2:#181612}
.lv-ph-y{font:400 max(13px,9cqi) var(--font-display);font-variant-numeric:lining-nums tabular-nums;color:var(--text-2)}
.lv-ph-r{display:block;width:22cqi;height:1px;background:var(--line-strong);margin-block:5cqi}
.lv-ph-t{font:italic 300 max(13px,12cqi)/1.05 var(--font-display);overflow-wrap:anywhere;flex:1}
.lv-mid .lv-ph-t{font-size:max(13px,10cqi)}.lv-long .lv-ph-t{font-size:max(13px,8cqi)}
@container (max-width:9rem){.lv-ph-t{font-size:max(13px,11cqi)}.lv-mid .lv-ph-t,.lv-long .lv-ph-t{font-size:max(13px,9cqi)}}

/* destaques: capa grande a esquerda, texto a direita; fundo alterna */
.lv-feat{background:var(--bg)}
.lv-feat--alt{background:var(--surface)}
.lv-feat__in{max-width:var(--max-w);margin-inline:auto;padding:var(--space-l) var(--margin);display:grid;gap:var(--space-m);scroll-margin-top:var(--space-m)}
.lv-feat__cover{max-width:30rem}
.lv-feat__cover:has(.lv-cover--img){max-width:none}
.lv-feat__cover .lv-cover{box-shadow:0 .75rem 2rem rgba(0,0,0,.5),0 .15rem .5rem rgba(0,0,0,.35)}
.lv-feat__t{font:italic 300 var(--step-3)/var(--lh-title) var(--font-display);color:var(--accent);margin:0 0 var(--space-xs);overflow-wrap:anywhere;text-wrap:balance}
.lv-feat__y{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-xs);margin:0 0 var(--space-2xs)}
.lv-feat__m{font:var(--step--1)/1.5 var(--font-sans);color:var(--text-2);margin:0 0 var(--space-s)}
.lv-feat__d{font:var(--step-0)/var(--lh-body) var(--font-serif);max-width:var(--measure);margin:0 0 var(--space-m)}
.lv-btn{display:inline-flex;align-items:center;min-height:2.75rem;padding:.5rem 1.5rem;font:500 var(--step--1) var(--font-sans);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--text);background:transparent;border:var(--border-w) solid var(--line-strong);border-radius:var(--radius-s);text-decoration:none;cursor:pointer;transition:color var(--dur-base),border-color var(--dur-base)}
.lv-btn:hover{color:var(--accent);border-color:var(--accent)}
@media (min-width:48rem){
  .lv-feat__in{grid-template-columns:minmax(0,48fr) minmax(0,52fr);gap:var(--space-l);align-items:center;padding-block:var(--space-l)}
  .lv-feat__cover,.lv-feat__cover:has(.lv-cover--img){max-width:none}
}

/* citacao do curador */
.lv-q{margin:var(--space-xs) 0 var(--space-m);padding-left:var(--space-s);border-left:2px solid var(--line-strong);max-width:var(--measure);font:italic var(--step-0)/var(--lh-body) var(--font-serif);color:var(--text-2)}
.lv-q p{margin:0 0 var(--space-2xs)}
.lv-q footer{font:normal var(--step--1)/1.4 var(--font-sans);color:var(--text-3)}

/* todos os livros */
.lv-all{padding-block:var(--space-l) var(--space-xl);background:var(--bg)}
.lv-all__head{padding-bottom:var(--space-s)}
.lv-all__sub{font:var(--step--1)/1.5 var(--font-sans);color:var(--text-2);margin:var(--space-2xs) 0 0}
.lv-all__sub a{color:var(--text);text-underline-offset:.2em;display:inline-block;padding-block:.75rem}
.lv-all__sub a:hover{color:var(--accent)}
.lv-bar{position:sticky;top:0;z-index:var(--z-header);background:var(--bg);border-block:var(--border-w) solid var(--line);padding:var(--space-2xs) max(var(--margin),calc((100% - var(--max-w))/2 + var(--margin)))}
.lv-bar[hidden]{display:none}
.lv-bar__top{display:flex;gap:var(--space-2xs);align-items:end}
.lv-f{display:flex;flex-direction:column;gap:.2rem;min-width:0}
.lv-f--q{flex:1}
.lv-f label{font:500 var(--step--1) var(--font-sans);color:var(--text-3)}
.lv-f input,.lv-f select{font:var(--step--1) var(--font-sans);color:var(--text);background:var(--surface);border:var(--border-w) solid var(--line-strong);border-radius:var(--radius-s);min-height:2.75rem;padding:0 .6rem;width:100%;max-width:100%}
.lv-toggle{min-height:2.75rem;padding:0 1rem;font:500 var(--step--1) var(--font-sans);color:var(--text);background:transparent;border:var(--border-w) solid var(--line-strong);border-radius:var(--radius-s);cursor:pointer}
.lv-fields{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2xs);padding-top:var(--space-2xs);max-height:50dvh;overflow:auto}
.lv-js .lv-fields[data-closed]{display:none}
.lv-count{font:var(--step--1) var(--font-sans);color:var(--text-2);margin:var(--space-2xs) 0 0}
.lv-list{list-style:none;margin:0 auto;padding:0 var(--margin);max-width:var(--max-w);display:grid;gap:0 var(--space-l)}
.lv-item{position:relative;display:grid;grid-template-columns:clamp(5.5rem,24vw,7.5rem) minmax(0,1fr);gap:var(--space-s);padding-block:var(--space-s);border-bottom:var(--border-w) solid var(--line);scroll-margin-top:7rem}
.lv-item[hidden]{display:none}
.lv-item__t{font:italic 400 var(--step-1)/1.15 var(--font-serif);margin:0 0 .25rem;overflow-wrap:anywhere}
.lv-item__a{color:var(--text);text-decoration:none}
.lv-item__a::after{content:"";position:absolute;inset:0}
.lv-item__a:hover{color:var(--accent);text-decoration:underline;text-underline-offset:.2em}
.lv-item__y{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2xs);margin:0 0 .25rem}
.lv-item__m{font:var(--step--1)/1.45 var(--font-sans);color:var(--text-2);margin:0}
.lv-item__d{font:var(--step--1)/1.5 var(--font-sans);color:var(--text-2);margin:.35rem 0 0;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.lv-item__a:focus-visible::after{outline:var(--focus-ring);outline-offset:-3px}
.lv-empty,.lv-miss{max-width:var(--max-w);margin:var(--space-m) auto;padding-inline:var(--margin);font:var(--step-0) var(--font-serif)}
.lv-empty[hidden],.lv-miss[hidden]{display:none}
@media (min-width:64rem){
  .lv-list{grid-template-columns:1fr 1fr}
  .lv-bar{display:flex;flex-wrap:wrap;align-items:end;gap:var(--space-xs)}
  .lv-bar__top{flex:1.4 1 14rem}
  .lv-fields,.lv-js .lv-fields[data-closed]{display:contents;max-height:none}
  .lv-fields .lv-f{flex:1 1 8rem}
  .lv-js .lv-toggle{display:none}
  .lv-count{margin:0;min-height:2.75rem;display:flex;align-items:center;white-space:nowrap}
}

/* ficha */
.lv-dlg{border:var(--border-w) solid var(--line);background:var(--bg);color:var(--text);padding:0;width:min(100% - 1rem,56rem);max-width:none;max-height:calc(100dvh - 1rem);overscroll-behavior:contain}
.lv-dlg::backdrop{background:var(--overlay)}
.lv-dlg[open]{animation:lv-in var(--dur-base) var(--ease-out)}
@keyframes lv-in{from{opacity:0}to{opacity:1}}
.lv-dlg__in{position:relative;padding:var(--space-m) var(--space-s) var(--space-s)}
.lv-dlg__x{position:sticky;top:0;float:right;z-index:1;min-height:2.75rem;padding:0 1rem;font:500 var(--step--1) var(--font-sans);color:var(--text);background:var(--surface);border:var(--border-w) solid var(--line-strong);border-radius:var(--radius-s);cursor:pointer}
.lv-dlg__x:hover{color:var(--accent);border-color:var(--accent)}
.lv-dlg__body{display:grid;gap:var(--space-s);clear:both}
.lv-fc{max-width:14rem}
.lv-fe{font:500 var(--step--1) var(--font-sans);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--text-3);margin:0 0 .25rem}
.lv-ft{font:italic 300 var(--step-2)/var(--lh-title) var(--font-display);color:var(--accent);margin:0 0 var(--space-2xs);outline:0}
.lv-fd{font:var(--step-0)/var(--lh-body) var(--font-serif);margin:var(--space-xs) 0}
.lv-dl{margin:0;font:var(--step--1)/1.5 var(--font-sans)}
.lv-dl div{padding-block:var(--space-2xs);border-top:var(--border-w) solid var(--line)}
.lv-dl dt{color:var(--text-3)}.lv-dl dd{margin:0;color:var(--text)}
html.lv-lock{overflow:hidden}
@media (min-width:40rem){.lv-dlg__body{grid-template-columns:14rem minmax(0,1fr);gap:var(--space-m)}.lv-dlg__in{padding:var(--space-m)}}
@media (prefers-reduced-motion:reduce){.lv-dlg[open]{animation:none}.lv-btn{transition:none}}
@media (forced-colors:active){.lv-btn{border-color:ButtonText}}
