:root{
  --fundo:#0b0a08;--sup:#16130d;--sup2:#211c13;--borda:#3a3120;
  --texto:#f6eedd;--suave:#c4b8a1;--fraco:#9a8e78;
  --ouro:#f1d48a;--ouro2:#c79a3b;--azul:#8fc6ee;--azul2:#3e6f94;
  --serif:"Playfair Display",Georgia,serif;--sans:"Nunito",system-ui,sans-serif;
  --seguro:env(safe-area-inset-bottom,0px);--nav:68px;
  --sai:cubic-bezier(.16,1,.3,1);
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html{background:var(--fundo);color-scheme:dark;scrollbar-color:var(--ouro2) var(--fundo);scrollbar-width:thin}
body{margin:0;background:var(--fundo);color:var(--texto);font:400 17px/1.55 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
::selection{background:var(--ouro);color:#1a1408}
:focus-visible{outline:2px solid var(--ouro);outline-offset:3px;border-radius:6px}
::-webkit-scrollbar{width:9px;height:0}
::-webkit-scrollbar-thumb{background:var(--borda);border-radius:9px}
::-webkit-scrollbar-thumb:hover{background:var(--ouro2)}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.14;margin:0;text-wrap:balance;letter-spacing:-.01em}
p{margin:0}
button,a{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;text-decoration:none}
img{display:block;width:100%;height:100%;object-fit:cover}
img.sem{visibility:hidden}
svg.ic{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}

/* navegacao */
#nav{position:fixed;left:0;right:0;bottom:0;z-index:30;display:grid;grid-template-columns:repeat(5,1fr);height:calc(var(--nav) + var(--seguro));padding-bottom:var(--seguro);background:rgba(13,11,8,.96);border-top:1px solid var(--borda)}
#nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:12.5px;font-weight:700;color:var(--fraco);transition:color .2s}
#nav a.on{color:var(--ouro)}
#tela{min-height:100dvh;padding-bottom:calc(var(--nav) + var(--seguro) + 24px)}

/* topo */
.topo{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:calc(env(safe-area-inset-top,0px) + 14px) 18px 8px}
.topo h1{font-size:25px}
.topo h1 em{font-style:italic;color:var(--ouro);font-weight:500}
.redondo{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--sup);border:1px solid var(--borda);color:var(--ouro);transition:background .2s,border-color .2s;flex:none}
.redondo:hover{border-color:var(--ouro2);background:var(--sup2)}

/* cabecalho da linha */
.cola{position:sticky;top:0;z-index:12;background:rgba(11,10,8,.97);border-bottom:1px solid #2a2418}
.eras{display:flex;gap:6px;overflow-x:auto;padding:8px 14px 6px;scrollbar-width:none}
.eras::-webkit-scrollbar{display:none}
.eras button{flex:none;padding:9px 14px;border-radius:99px;font-size:14.5px;font-weight:700;color:var(--suave);background:var(--sup);white-space:nowrap;transition:background .25s,color .25s}
.eras button.on{background:var(--ouro);color:#1c1508}
.lados{display:grid;grid-template-columns:1fr 26px 1fr;padding:2px 12px 8px;font-size:13.5px;font-weight:800;letter-spacing:.02em}
.lados b:first-child{color:var(--ouro);text-align:center}
.lados b:last-child{color:var(--azul);text-align:center;grid-column:3}

/* A LINHA */
.linha{position:relative;padding:0 10px;max-width:1040px;margin:0 auto}
.eixo{position:absolute;top:0;bottom:0;left:50%;width:3px;margin-left:-1.5px;background:#3a3120;border-radius:3px}
.eixo i{position:absolute;left:0;top:0;width:100%;height:var(--enche,0px);background:linear-gradient(180deg,var(--ouro2),var(--ouro));border-radius:3px}
.era{position:relative;z-index:2;margin:30px 0 24px;border-radius:18px;overflow:hidden;background:var(--sup);aspect-ratio:16/8.4;display:block;width:100%;text-align:left}
.era:first-of-type{margin-top:14px}
.era img{position:absolute;inset:0}
.era::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,10,8,.05) 25%,rgba(11,10,8,.92) 96%)}
.era div{position:absolute;z-index:1;left:18px;right:18px;bottom:15px}
.era h2{font-size:clamp(28px,8vw,44px);color:#fff}
.era p{color:#f0e6d0;font-size:15.5px;margin-top:3px}
.fila{position:relative;z-index:1;display:grid;grid-template-columns:1fr 26px 1fr;align-items:start;margin-bottom:16px}
.no{grid-column:2;grid-row:1;justify-self:center;margin-top:26px;width:15px;height:15px;border-radius:50%;background:var(--fundo);border:3px solid var(--borda);transition:border-color .35s,background .35s,box-shadow .35s;z-index:2}
.fila.on .no{border-color:var(--ouro);background:var(--ouro);box-shadow:0 0 0 5px rgba(241,212,138,.16)}
.fato{position:relative;display:block;text-align:left;border-radius:14px;overflow:hidden;background:var(--sup2);width:100%;transition:transform .35s var(--sai),box-shadow .35s}
.fato:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(0,0,0,.5)}
.fato.b{grid-column:1;grid-row:1;aspect-ratio:4/5}
.fato.m{grid-column:3;grid-row:1;aspect-ratio:1/1;outline:1px solid var(--azul2);outline-offset:-1px}
.fato img{position:absolute;inset:0;transition:transform .6s var(--sai)}
.fato:hover img{transform:scale(1.05)}
.fato::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 34%,rgba(8,7,5,.94) 92%)}
.fato span{position:absolute;z-index:1;left:10px;right:9px;bottom:9px}
.fato strong{display:block;font:600 17.5px/1.17 var(--serif);color:#fff;text-wrap:balance}
.fato small{display:block;margin-top:3px;font-size:12.8px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ouro)}
.fato.m strong{font-size:15.5px}.fato.m small{color:var(--azul)}
.aqui{position:absolute;z-index:2;top:8px;left:8px;background:var(--ouro);color:#1c1508;font-size:12px;font-weight:800;padding:3px 9px;border-radius:99px}
.ano{grid-row:1;align-self:center;font:500 italic 21px/1.15 var(--serif);color:#b3a281;padding:0 10px;font-variant-numeric:tabular-nums}
.ano.dir{grid-column:3}.ano.esq{grid-column:1;text-align:right}

/* folha de detalhe */
#folha{position:fixed;inset:0;z-index:40;background:var(--fundo);overflow-y:auto;overscroll-behavior:contain;transform:translateY(102%);visibility:hidden;transition:transform .42s var(--sai),visibility 0s .42s}
#folha.on{transform:none;visibility:visible;transition:transform .42s var(--sai)}
.capa{position:relative;height:min(56dvh,560px);overflow:hidden;background:var(--sup2)}
.capa.pan{height:min(58dvh,560px)}
.capa.pan img{animation:pan 22s ease-in-out infinite alternate}
@keyframes pan{from{object-position:0% 50%}to{object-position:100% 50%}}
.capa img{animation:zoom 16s ease-out both}
@keyframes zoom{from{transform:scale(1.1)}to{transform:scale(1)}}
.capa::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,10,8,.42),transparent 26%,transparent 52%,var(--fundo) 99%)}
.volta{position:fixed;z-index:44;top:calc(env(safe-area-inset-top,0px) + 12px);left:14px;background:rgba(11,10,8,.82)}
.corpo{position:relative;z-index:2;max-width:640px;margin:-64px auto 0;padding:0 20px 40px}
.quando{font-weight:800;font-size:15px;color:var(--ouro);font-variant-numeric:tabular-nums}
.quando.m{color:var(--azul)}
.corpo h1{font-size:clamp(35px,10vw,50px);margin:6px 0 14px}
.corpo>p.txt{font-size:18.5px;line-height:1.62;color:#efe6d4;max-width:65ch}
.ouvir{display:flex;align-items:center;gap:13px;width:100%;margin:6px 0 20px;padding:11px 14px 11px 11px;border-radius:99px;background:var(--ouro);color:#1c1508;font-weight:800;font-size:17px;transition:filter .2s}
.ouvir:hover{filter:brightness(1.06)}
.ouvir i{width:42px;height:42px;display:grid;place-items:center;background:#1c1508;color:var(--ouro);border-radius:50%;flex:none}
.ouvir u{flex:1;height:4px;border-radius:4px;background:rgba(28,21,8,.25);overflow:hidden;text-decoration:none}
.ouvir u b{display:block;height:100%;width:var(--p,0%);background:#1c1508}
.bloco{margin-top:32px}
.bloco>h2{font-size:24px;margin-bottom:12px}
.verso{position:relative;padding:18px 20px;border-radius:14px;background:var(--sup);border:1px solid var(--borda)}
.verso p{font:500 italic 20px/1.5 var(--serif);color:#fbf3e2}
.verso cite{display:block;margin-top:10px;font:800 14.5px var(--sans);color:var(--ouro)}
.verso.nt cite{color:var(--azul)}
.mini{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.mini .fato{aspect-ratio:1/1;grid-column:auto;grid-row:auto}
.mini .fato strong{font-size:15.5px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:7px 16px 7px 7px;border-radius:99px;background:var(--sup);border:1px solid var(--borda);font-weight:700;transition:border-color .2s}
.chip:hover{border-color:var(--ouro2)}
.chip img{width:34px;height:34px;border-radius:50%}
.chip.so{padding-left:16px}
.acoes{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:36px}
.acoes a,.botao{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:10px 14px;border-radius:13px;background:var(--sup);border:1px solid var(--borda);font-weight:800;text-align:center;transition:border-color .2s,background .2s}
.acoes a:hover,.botao:hover{border-color:var(--ouro2);background:var(--sup2)}
.botao.ouro{background:var(--ouro);border-color:var(--ouro);color:#1c1508;width:100%}
.botao.ouro:hover{background:#f7e0a3}
.botao:disabled{opacity:.55;cursor:default}

/* mapa */
.mapa{position:relative;border-radius:14px;overflow:hidden;background:#0f1b22;aspect-ratio:16/11;border:1px solid var(--borda)}
.mapa svg{display:block;width:100%;height:100%}
.mapa .terra{fill:#3a3021;stroke:#7a6541;stroke-width:1}
.mapa .lago{fill:#0f1b22}
.mapa .rio{fill:none;stroke:#3f7ca3;stroke-width:1.6}
.mapa .mar{fill:#5f8aa6;font-family:var(--serif);font-style:italic}
.mapa .rota{fill:none;stroke:var(--ouro);stroke-linecap:round;stroke-linejoin:round}
.mapa .rotaf{fill:none;stroke:#f1d48a44;stroke-linecap:round}
.mapa .lug{fill:#fff7e4;font-family:var(--sans);font-weight:800;paint-order:stroke;stroke:#0b0a08;stroke-linejoin:round}
.mapa .pin{fill:var(--ouro);stroke:#0b0a08}
.mapa .pulso{fill:none;stroke:var(--ouro)}
.mapa-rod{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;font-size:14px;color:var(--fraco)}
.mapa-rod button{color:var(--ouro);font-weight:800;min-height:40px;padding:0 4px}

/* titulos das abas */
.cab{padding:calc(env(safe-area-inset-top,0px) + 18px) 18px 12px;max-width:760px;margin:0 auto}
.cab h1{font-size:clamp(34px,9.5vw,50px)}
.cab p{color:var(--suave);margin-top:7px;font-size:17.5px;max-width:60ch}
.grade{max-width:1040px;margin:0 auto;padding:0 14px}

/* profecias */
.leque{max-width:760px;margin:0 auto;padding:0 8px}
.leque svg{display:block;width:100%;height:auto;overflow:visible}
.leque .arco{fill:none;stroke:var(--ouro);stroke-width:1.5;stroke-opacity:.72;stroke-dasharray:1;stroke-dashoffset:1;animation:traca 1.5s var(--sai) forwards}
.leque .arco.forte{stroke-width:3.4;stroke-opacity:1}
.leque .ponta{fill:var(--ouro)}
.leque .chao{stroke:var(--ouro2);stroke-width:2}
.leque text{fill:var(--suave);font:700 12.5px var(--sans)}
.leque text.jesus{fill:var(--azul)}
@keyframes traca{to{stroke-dashoffset:0}}
.lista{max-width:760px;margin:12px auto 0;padding:0 14px;display:grid;gap:8px}
.item{display:grid;grid-template-columns:62px 1fr auto;gap:12px;align-items:center;width:100%;min-height:78px;padding:8px 12px 8px 8px;text-align:left;border-radius:14px;background:var(--sup);border:1px solid #2a2418;transition:border-color .2s,background .2s}
.item:hover{border-color:var(--ouro2);background:var(--sup2)}
.item .th{width:62px;height:62px;border-radius:10px;overflow:hidden;background:var(--sup2)}
.item strong{display:block;font:600 19px/1.2 var(--serif)}
.item small{display:block;color:var(--suave);font-size:14.5px;margin-top:2px}
.item em{font:600 italic 17px var(--serif);color:var(--ouro);text-align:right;font-variant-numeric:tabular-nums;line-height:1.05}
.item em b{display:block;font:700 11.5px var(--sans);color:var(--fraco)}
.salto{display:flex;align-items:baseline;gap:10px;margin:0 0 18px;color:var(--ouro);font-family:var(--serif)}
.salto b{font-size:clamp(46px,13vw,66px);font-weight:700;line-height:1;font-variant-numeric:tabular-nums}
.salto span{font-size:20px;font-style:italic;color:var(--suave)}

/* visoes */
.visoes{display:grid;grid-template-columns:1fr;gap:10px}
.visoes h2{grid-column:1/-1;font-size:27px;margin-top:20px;color:var(--ouro)}
.vis{position:relative;display:block;aspect-ratio:16/9.4;border-radius:14px;overflow:hidden;background:var(--sup2);text-align:left}
.vis img{position:absolute;inset:0;transition:transform .7s var(--sai)}
.vis:hover img{transform:scale(1.05)}
.vis::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(8,7,5,.94) 94%)}
.vis strong{position:absolute;z-index:1;left:11px;right:10px;bottom:10px;font:600 18.5px/1.15 var(--serif);color:#fff;text-wrap:balance}
.nota{margin-top:12px;font-size:14.5px;color:var(--fraco)}

/* pessoas e mais */
.pessoas{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.pessoas .vis{aspect-ratio:3/4}
.tile{position:relative;display:flex;align-items:flex-end;width:100%;min-height:128px;border-radius:15px;overflow:hidden;background:var(--sup2);text-align:left;margin-bottom:10px}
.tile img{position:absolute;inset:0}
.tile::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,7,5,.94) 26%,rgba(8,7,5,.2))}
.tile div{position:relative;z-index:1;padding:14px 16px;max-width:76%}
.tile strong{display:block;font:600 24px/1.15 var(--serif);color:#fff}
.tile small{display:block;font-size:15px;color:#e7dcc5;margin-top:3px}

/* trajetoria de pessoa */
.traj{position:relative;padding-left:30px}
.traj::before{content:"";position:absolute;left:9px;top:12px;bottom:12px;width:3px;background:var(--ouro2);border-radius:3px}
.traj a{position:relative;display:grid;grid-template-columns:70px 1fr;gap:12px;align-items:center;min-height:82px;padding:6px 0}
.traj a::before{content:"";position:absolute;left:-26px;top:50%;margin-top:-7px;width:14px;height:14px;background:var(--ouro);border-radius:50%;box-shadow:0 0 0 4px var(--fundo)}
.traj .th{width:70px;height:70px;border-radius:11px;overflow:hidden;background:var(--sup2)}
.traj strong{display:block;font:600 19px/1.2 var(--serif)}
.traj small{color:var(--ouro);font-weight:700;font-size:14px}

/* plano */
.hoje{max-width:640px;margin:0 auto 18px;padding:0 14px}
.hoje article{padding:18px;border-radius:16px;background:var(--sup);border:1px solid var(--borda)}
.hoje h2{font-size:30px;margin:2px 0 4px}
.hoje .quando{display:flex;justify-content:space-between}
.hoje article>p{color:var(--suave);margin-bottom:14px}
.barra{height:6px;border-radius:6px;background:var(--borda);overflow:hidden;margin:12px 0}
.barra i{display:block;height:100%;width:var(--p,0%);background:var(--ouro);transition:width .6s var(--sai)}
.pontos{display:grid;grid-template-columns:repeat(auto-fill,minmax(19px,1fr));gap:5px;max-width:640px;margin:0 auto;padding:0 14px}
.pontos button{aspect-ratio:1;border-radius:50%;background:#2c2618;transition:background .35s,box-shadow .35s,transform .2s}
.pontos button:hover{transform:scale(1.25)}
.pontos button.lido{background:var(--ouro)}
.pontos button.sel{outline:2px solid var(--azul);outline-offset:1px}
.pontos button.marco{background:#59491f}
.pontos button.lido.marco{background:var(--ouro)}
.tira{display:flex;align-items:center;gap:12px;margin-top:12px;padding:8px;border-radius:12px;background:var(--sup2)}
.tira .th{width:58px;height:58px;border-radius:9px;overflow:hidden;flex:none}
.tira strong{display:block;font:600 17.5px/1.2 var(--serif)}
.tira small{color:var(--ouro);font-size:13.5px;font-weight:700}

/* arvore */
.arvore{max-width:620px;margin:0 auto;padding:0 18px;position:relative}
.arvore::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:3px;margin-left:-1.5px;background:linear-gradient(180deg,var(--ouro2),var(--ouro))}
.gent{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;margin:0}
.gent .port{width:100%;display:flex;flex-direction:column;align-items:center;padding:12px 0}
.gent .port i{width:92px;height:92px;border-radius:50%;overflow:hidden;border:3px solid var(--ouro);background:var(--sup2);display:block}
.gent .port strong{font:600 23px/1.2 var(--serif);margin-top:6px;background:var(--fundo);padding:0 10px}
.gent .port small{background:var(--fundo);padding:0 10px;color:var(--ouro);font-weight:700;font-size:14px}
.nomes{position:relative;background:var(--fundo);text-align:center;color:var(--suave);font:500 italic 16.5px/1.7 var(--serif);padding:7px 8px;margin:4px 0;max-width:92%}

/* cartas e livros */
.carta{border-radius:13px;background:var(--sup);border:1px solid #2a2418;overflow:hidden;margin-bottom:8px}
.carta>button{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:62px;padding:10px 14px;text-align:left}
.carta strong{font:600 19px var(--serif)}
.carta small{display:block;font-size:14.5px;color:var(--suave)}
.carta svg.ic{color:var(--ouro);transition:transform .3s}
.carta.on>button svg.ic{transform:rotate(180deg)}
.carta div{display:none;padding:0 14px 14px}
.carta.on div{display:block}
.carta q{display:block;quotes:none;font:500 italic 18px/1.5 var(--serif);margin-bottom:6px}
.carta cite{font-style:normal;font-weight:800;font-size:14px;color:var(--ouro)}
.carta div p{color:var(--suave);font-size:15.5px;margin-top:8px}
.troca{display:flex;gap:6px;overflow-x:auto;padding:0 0 12px;scrollbar-width:none}
.troca::-webkit-scrollbar{display:none}
.troca button{flex:none;min-height:44px;padding:0 15px;border-radius:99px;background:var(--sup);font-weight:800;font-size:15px;color:var(--suave)}
.troca button.on{background:var(--ouro);color:#1c1508}
.livros h2{font-size:25px;margin:22px 0 10px}
.livros .chips a{min-height:44px;padding:0 13px;border-radius:10px;display:inline-flex;align-items:center;gap:7px;background:var(--sup);font-weight:700;font-size:15.5px;border:1px solid #2a2418}
.livros .chips a:hover{border-color:var(--ouro2)}
.livros small{color:var(--fraco);font-weight:700}

/* jogo */
.jogo{max-width:560px;margin:0 auto;padding:0 14px;display:grid;gap:9px}
.peca{display:grid;grid-template-columns:70px 1fr 40px;align-items:center;gap:12px;padding:7px;min-height:84px;border-radius:13px;background:var(--sup);border:1px solid var(--borda);text-align:left;transition:border-color .2s,background .25s,opacity .25s}
.peca .th{width:70px;height:70px;border-radius:9px;overflow:hidden}
.peca strong{font:600 18.5px/1.2 var(--serif)}
.peca b{justify-self:center;font:700 25px var(--serif);color:var(--ouro)}
.peca.certa{border-color:var(--ouro);background:var(--sup2)}
.peca.erro{animation:treme .32s}
@keyframes treme{25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}

/* busca */
#busca{position:fixed;inset:0;z-index:50;background:var(--fundo);overflow-y:auto;display:none}
#busca.on{display:block}
.campo{position:sticky;top:0;z-index:2;display:flex;gap:8px;align-items:center;padding:calc(env(safe-area-inset-top,0px) + 12px) 14px 10px;background:var(--fundo)}
.campo input{flex:1;min-width:0;height:52px;padding:0 16px;border-radius:13px;background:var(--sup);color:var(--texto);border:1px solid var(--borda);font:600 18px var(--sans);caret-color:var(--ouro)}
.campo input::placeholder{color:var(--fraco)}
.vazio{padding:30px 22px;color:var(--suave);text-align:center;max-width:44ch;margin:0 auto}

/* impressao: colecao em papel creme, arte classica e linha dourada */
#impressao{display:none;--pp:#f8f2e4;--ot:#74510f;--oc:#b58d3c;--tx:#2b2115;--az:#1d4f78}
#impressao.medindo{display:block;position:absolute;left:-400mm;top:0;visibility:hidden}
#impressao *{box-sizing:border-box;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.fl{position:relative;display:flex;flex-direction:column;width:210mm;height:296.8mm;overflow:hidden;background:var(--pp);color:var(--tx);font:400 9.7pt/1.45 var(--sans);break-after:page;break-inside:avoid}
.fl:last-child{break-after:auto}
.fl::after{content:"";position:absolute;inset:6mm;border:.35mm solid var(--oc);outline:.12mm solid var(--oc);outline-offset:-1.2mm;pointer-events:none;z-index:6}
.fl img{display:block;width:100%;height:100%;object-fit:cover}
.fl h1,.fl h2,.fl h3{font-family:var(--serif);letter-spacing:0}
.fl cite{font:800 8pt var(--sans);color:var(--ot);white-space:nowrap}
.fl .md{display:block;flex:none;border-radius:50%;overflow:hidden;background:#1a140c;box-shadow:0 0 0 .5mm var(--pp),0 0 0 .95mm var(--oc)}
.fl .rod{position:absolute;left:0;right:0;bottom:9.5mm;margin:0;text-align:center;font-size:6.6pt;color:#5d4a2f;z-index:7}
.fl footer{position:absolute;left:14mm;right:14mm;bottom:9.5mm;display:flex;justify-content:space-between;font:400 7.5pt var(--sans);color:#5d4a2f;z-index:7}
.fl footer b{font:600 10pt var(--serif);color:var(--ot)}
.fx{position:relative;flex:none;height:50mm;background:#14100a;overflow:hidden}
.fx img{position:absolute;inset:0;object-position:center 32%}
.fx::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,10,5,.45),rgba(14,10,5,.8))}
.fx div{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:0 16mm;text-align:center}
.fx h1{margin:0;font-size:29pt;font-weight:600;line-height:1.08;color:#f4dc9c}
.fx p{margin:2mm 0 0;font-size:10pt;color:#f8f2e4}
/* cartaz */
.cart .fx{height:36mm}
.cart .fx img{object-position:center 42%}
.cart .fx h1{font-size:28pt}
.cart .fx p{margin-top:1mm;font-size:9pt}
.cols{flex:none;display:grid;grid-template-columns:1fr 22mm 1fr;padding:2.2mm 11mm 1mm}
.cols b{font:600 11pt var(--serif);color:var(--ot);text-align:right}
.cols b:last-child{grid-column:3;color:var(--az);text-align:left}
.ceras{position:relative;flex:1;min-height:0;display:flex;flex-direction:column;gap:.5mm;padding:0 11mm 13.5mm}
.ceras::before{content:"";position:absolute;left:50%;top:-3mm;bottom:13.5mm;width:.7mm;margin-left:-.35mm;background:var(--oc)}
.ceras article{position:relative;display:flex;flex-direction:column;min-height:0}
.ceras h2{align-self:center;position:relative;flex:none;margin:0;padding:.1mm 2.5mm;background:var(--pp);font-size:9.6pt;font-weight:700;line-height:1.15;color:var(--tx)}
.ceras .l{flex:1;min-height:0;display:grid;grid-template-columns:1fr 22mm 1fr;align-items:stretch}
.ceras .md{position:relative;align-self:center;justify-self:center;width:13.5mm;height:13.5mm}
.ceras ul{list-style:none;margin:0;padding:0;min-height:0;display:flex;flex-direction:column;justify-content:space-around;font-size:7.3pt;line-height:1.14}
.ceras ul:first-child{text-align:right}
.ceras ul:last-child{color:var(--az)}
.ceras b{font-weight:700}
.ceras em{font-style:normal;font-weight:800;font-size:6.5pt;color:var(--ot);font-variant-numeric:tabular-nums;white-space:nowrap}
.ceras ul:last-child em{color:var(--az)}
.ceras .art img{object-position:center 58%}
.ceras .art{flex:1 1 0;min-height:0;margin:.5mm 0;border-radius:1.2mm;overflow:hidden}
/* livro */
.capaL{background:#120e08;justify-content:flex-end}
.capaL>img{position:absolute;inset:0;z-index:0}
.capaL::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(14,10,5,0) 40%,rgba(14,10,5,.96) 72%)}
.capaL div{position:relative;z-index:2;padding:0 20mm 28mm;text-align:center;color:#f8f2e4}
.capaL h1{margin:0;font-size:50pt;font-weight:600;line-height:1.04;color:#f4dc9c}
.capaL p{margin:5mm auto 0;max-width:130mm;font-size:13pt;line-height:1.35}
.ab .pint{flex:none;height:150mm;overflow:hidden;background:#14100a}
.ab .pint img{object-position:center 30%}
.ab .tx{flex:1;min-height:0;padding:8mm 18mm 16mm}
.ab h2{margin:0;font-size:32pt;font-weight:600;line-height:1.1;color:var(--tx)}
.ab .tx>p{margin:1mm 0 5mm;font-size:12pt;color:var(--ot);font-weight:700}
.ab ol{list-style:none;margin:0;padding:0 0 0 5mm;border-left:.6mm solid var(--oc);column-count:2;column-gap:8mm;font-size:9pt;line-height:1.3}
.ab li{break-inside:avoid;padding:.75mm 0}
.ab em{display:inline-block;min-width:21mm;font-style:normal;font-weight:800;font-size:7.6pt;color:var(--ot)}
.ab li.mu,.ab li.mu em{color:var(--az)}
.lv .crp,.pr .crp{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column;gap:5mm;justify-content:space-between;margin:13mm 14mm 17mm 14mm;padding:0 0 0 7mm}
.lv::before{content:"";position:absolute;left:15.2mm;top:13mm;bottom:17mm;width:.6mm;background:var(--oc)}
.lv article{position:relative;display:flow-root}
.lv article::before{content:"";position:absolute;left:-7mm;top:1mm;width:3mm;height:3mm;border-radius:50%;background:var(--pp);box-shadow:inset 0 0 0 .8mm var(--oc)}
.lv article.mu::before{box-shadow:inset 0 0 0 .8mm var(--az)}
.lv article{font-size:10.5pt;line-height:1.46}
.lv figure{float:right;width:62mm;height:84mm;margin:0 0 2.5mm 6mm;border-radius:1.2mm;overflow:hidden;box-shadow:0 0 0 .35mm var(--oc)}
.lv small{display:block;font:800 8.2pt var(--sans);color:var(--ot)}
.lv .mu small{color:var(--az)}
.lv h3{margin:.3mm 0 1.4mm;font-size:19pt;font-weight:600;line-height:1.14;color:var(--tx)}
.lv p{margin:0}
.lv blockquote{margin:2mm 0 0;font:italic 400 10.8pt/1.38 var(--serif);color:#46351e}
.lv blockquote cite{font-style:normal}
.lv .resto{float:none;flex:1;min-height:0;width:auto;height:auto;margin:0}
/* plano */
.meses{flex:1;min-height:0;display:grid;grid-template-columns:repeat(3,1fr);gap:4mm;padding:3mm 12mm 11mm}
.mes{display:flex;flex-direction:column;min-height:0;min-width:0}
.mes h2{flex:none;margin:0 0 1mm;padding-bottom:.8mm;border-bottom:.5mm solid var(--oc);font-size:13pt;font-weight:600;line-height:1.15;color:var(--ot)}
.mes ol{flex:1;min-height:0;list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.mes li{flex:1 1 0;min-height:0;display:flex;align-items:center;gap:1.3mm;border-bottom:.15mm solid #d9c8a2;font-size:8pt;line-height:1.08}
.mes i{flex:none;width:3.2mm;height:3.2mm;border:.3mm solid var(--ot);border-radius:.5mm;background:#fffdf7}
.mes b{flex:none;width:5mm;text-align:right;font-weight:800;color:var(--ot);font-variant-numeric:tabular-nums}
.mes span{min-width:0}
/* profecias */
.pr .crp{margin:11mm 15mm 17mm;padding:1.5mm 1.5mm 0}
.pr .fx+.crp{margin-top:6mm}
.pr article{display:flex;flex-direction:column;gap:2mm}
.pte{position:relative;display:flex;justify-content:space-between;align-items:flex-end;height:25mm}
.pte .md{position:relative;z-index:2;width:25mm;height:25mm}
.pte svg{position:absolute;left:12mm;right:12mm;top:0;width:calc(100% - 24mm);height:15mm;overflow:visible}
.pte path{fill:none;stroke:var(--oc);stroke-width:.5mm;vector-effect:non-scaling-stroke}
.meio{position:absolute;left:30mm;right:30mm;bottom:0;text-align:center}
.meio b{display:block;font:600 19pt/1.1 var(--serif);color:var(--ot)}
.meio h3{margin:.4mm 0 0;font-size:13pt;font-weight:600;line-height:1.15;color:var(--tx)}
.dois{display:grid;grid-template-columns:1fr 1fr;gap:7mm;font:400 10.4pt/1.42 var(--serif)}
.dois p{margin:.5mm 0 0}
.dois cite{font-size:8.6pt}
.dois>div:last-child cite{color:var(--az)}
/* arvore */
.ar>svg{position:absolute;inset:0;width:210mm;height:296.8mm}
.ar>svg path{fill:none;stroke:var(--oc);stroke-width:1;stroke-linecap:round}
.noA{position:absolute;width:0;height:0;display:flex;flex-direction:column;align-items:center;z-index:2}
.noA i{position:absolute;top:-1.3mm;left:-1.3mm;width:2.6mm;height:2.6mm;border-radius:50%;background:var(--pp);box-shadow:inset 0 0 0 .7mm var(--ot)}
.noA span{position:absolute;top:2.2mm;left:-12mm;width:24mm;text-align:center;font:600 8.8pt/1 var(--serif);color:var(--tx)}
.noA.ci span{top:auto;bottom:2.2mm}
.noA.ch .md{position:absolute;left:-10mm;top:-10mm;width:20mm;height:20mm}
.noA.ch b{position:absolute;top:11mm;left:-15mm;width:30mm;text-align:center;font:700 11pt/1 var(--serif);color:var(--ot)}
.noA.fim .md{left:-13mm;top:-13mm;width:26mm;height:26mm}
.noA.fim b{top:14mm;font-size:14pt}
@media print{
  @page{size:A4;margin:0}
  html,body{background:#fff!important;margin:0}
  #app,#folha,#busca{display:none!important}
  #impressao{display:block}
}

/* desktop */
@media (min-width:900px){
  :root{--nav:0px}
  #app{padding-left:96px}
  #nav{inset:0 auto 0 0;width:96px;height:auto;display:flex;flex-direction:column;justify-content:center;gap:8px;border-top:0;border-right:1px solid var(--borda)}
  #nav a{height:72px;font-size:13px}
  #tela{padding-bottom:40px}
  .topo{max-width:1040px;margin:0 auto}
  .topo h1{font-size:32px}
  .eras{justify-content:center;flex-wrap:wrap}
  .lados{max-width:1040px;margin:0 auto;grid-template-columns:1fr 56px 1fr;font-size:15px}
  .fila{grid-template-columns:1fr 56px 1fr;margin-bottom:20px}
  .fato.b{aspect-ratio:16/11}.fato.m{aspect-ratio:16/10}
  .fato strong{font-size:25px}.fato.m strong{font-size:21px}
  .fato small{font-size:14.5px}.fato span{left:15px;bottom:13px}
  .era{aspect-ratio:16/5.4}.era div{left:28px;bottom:22px}
  .visoes{grid-template-columns:repeat(2,1fr)}.pessoas{grid-template-columns:repeat(4,1fr)}
  #folha{left:auto;width:min(620px,56vw);transform:translateX(102%);box-shadow:-24px 0 60px rgba(0,0,0,.6);border-left:1px solid var(--borda)}
  .volta{position:absolute}
  .capa{height:420px}
  .tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.tile{margin:0}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
}
