/* =========================================================================
   Jornal Ricardo Almeida — leitor em exposição
   1. A folha de jornal (HTML original, papel creme, Archivo + Newsreader)
   2. A sala: parede, molduras com passe-partout e etiquetas de museu
   3. A interface: barra superior, painel de análise, progresso, minimapa
   ========================================================================= */

/* ─────────────────────────── 1. folha de jornal ─────────────────────────── */
.frame__art{container:sheet/inline-size}
.sheet{--rv-paper:#F2EDE1;--rv-ink:#161514;--rv-ink2:#34312C;--rv-ink3:#57524A;--rv-rule:#CDC4B3;--rv-red:#FF2900;--rv-red-soft:rgba(255,41,0,.35);--rv-red-ink:#C42000;--rv-dark:#151412;
  position:relative;display:flex;flex-direction:column;padding:18px 34px 26px;background:var(--rv-paper);color:var(--rv-ink);font-family:var(--serif);font-size:15px;line-height:1.38;text-align:left}
.sheet::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.3;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .45 0 0 0 0 .4 0 0 0 0 .32 0 0 0 .09 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
.sheet a{color:inherit;text-decoration:none}
.sheet a:hover h2,.sheet a:hover h3,.sheet a:hover h4{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.sheet :focus-visible{outline:2px solid var(--rv-red);outline-offset:2px}

/* cabeçalho da folha */
.rv-mast{container-type:inline-size;position:relative;padding:4px 0 12px;border-bottom:1px solid var(--rv-rule);text-align:center}
.rv-brand{display:flex;justify-content:center}
.rv-brand .ra-logo{width:92px}
.rv-title{display:block;margin:8px 0 0;font-family:var(--wide);font-stretch:125%;line-height:.95;letter-spacing:.01em;text-transform:uppercase;color:var(--rv-ink);white-space:nowrap}
.rv-title.heavy{font-weight:900;font-size:min(72px,14cqi)}
.rv-title.light{font-weight:500;letter-spacing:.03em;font-size:min(58px,9.1cqi)}
.rv-folio,.rv-date{position:absolute;top:8px;font:600 12px var(--wide);letter-spacing:.1em;text-transform:uppercase;color:var(--rv-ink3)}
.rv-folio{left:0}.rv-date{right:0}

/* abas verticais nas bordas */
.rv-tab{position:absolute;top:128px;z-index:1;writing-mode:vertical-rl;padding:10px 4px;font:700 12px var(--wide);font-stretch:112%;letter-spacing:.16em;text-transform:uppercase;color:var(--rv-ink)}
.rv-tab.l{left:6px;transform:rotate(180deg)}
.rv-tab.r{right:6px}
.rv-tab:hover{color:var(--rv-red-ink)!important}

/* grade com fios finos */
.rv-grid{display:grid;border-bottom:1px solid var(--rv-rule)}
.rv-grid>*{min-width:0;padding:14px 14px 16px;border-left:1px solid var(--rv-rule)}
.rv-grid>*:first-child{border-left:0;padding-left:0}
.rv-grid>*:last-child{padding-right:0}
.rv-stack{display:flex;flex-direction:column;padding:0!important}
.rv-stack>*{padding:14px 14px 16px;border-top:1px solid var(--rv-rule)}
.rv-stack>*:first-child{border-top:0}
.rv-grid>.rv-stack:first-child>*{padding-left:0}
.rv-grid>.rv-stack:last-child>*{padding-right:0}

/* histórias */
.rv-story{display:flex;flex-direction:column;gap:8px}
.rv-story.center{align-items:center;text-align:center}
.rv-story .img{display:block;width:100%;overflow:hidden;background:#d9d2c3;aspect-ratio:var(--ar,1.35)}
.rv-story .img img{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--pos,50% 45%);filter:grayscale(1) contrast(1.12)}
.rv-story h2{margin:6px 0 0;font:400 clamp(26px,4.3cqi,33px)/1.1 var(--serif);letter-spacing:-.012em;text-wrap:balance}
.rv-story h3{margin:4px 0 0;font:400 22px/1.15 var(--serif);letter-spacing:-.01em;text-wrap:balance}
.rv-story h4{margin:0;font:400 17.5px/1.2 var(--serif);letter-spacing:-.005em;text-wrap:balance}
.rv-story p{margin:0;max-width:52ch;font:400 14.5px/1.42 var(--serif);color:var(--rv-ink2)}
.rv-story.center p{max-width:46ch}
.rv-by{font:700 12px var(--wide);letter-spacing:.08em;text-transform:uppercase;color:var(--rv-ink3)}
.rv-by b{color:var(--rv-ink);font-weight:700}
.rv-hero{padding:14px 0 16px!important;border-left:0!important}
.rv-hero .img{--ar:2.05}

/* caixas com fio vermelho */
.rv-box{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 14px 14px;border:1px solid var(--rv-red);text-align:center}
.rv-aside{display:flex;flex-direction:column;gap:12px}
.rv-label{font:800 12px var(--wide);font-stretch:108%;letter-spacing:.12em;text-transform:uppercase;color:var(--rv-red-ink)}
.rv-duo{position:relative;display:block;width:62%;aspect-ratio:1;overflow:hidden;border-radius:999px;background:var(--rv-red)}
.rv-duo img{display:block;width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.25) brightness(1.05);mix-blend-mode:screen}
.rv-duo.sq{width:100%;aspect-ratio:1.5;border-radius:0}
.rv-box .who{font:700 13px var(--wide);letter-spacing:.1em;text-transform:uppercase;color:var(--rv-red-ink)}
.rv-box p{margin:0;font:400 14px/1.4 var(--serif);color:var(--rv-ink2)}
.rv-box.list{align-items:stretch;text-align:left}
.rv-box.list .rv-label{text-align:center}
.rv-box.list ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.rv-box.list li{font:400 14px/1.35 var(--serif);color:var(--rv-ink2)}
.rv-box.list li b{font:700 13px var(--wide);letter-spacing:.02em;color:var(--rv-ink)}
.rv-box.list li a:hover b{color:var(--rv-red-ink)}
.rv-box .quote{font:400 italic 17px/1.35 var(--serif);color:var(--rv-ink)}
.rv-box .num{font:400 52px/1 var(--serif);letter-spacing:-.02em;color:var(--rv-red)}
.rv-box.side{align-items:stretch;gap:10px;height:100%;text-align:left}
.rv-box.side .ent{display:flex;flex-direction:column;gap:2px;padding-top:8px;border-top:1px solid var(--rv-red-soft);overflow-wrap:anywhere}
.rv-box.side .ent:first-of-type{padding-top:0;border-top:0}
.rv-box.side .ent b{font:700 13px var(--wide);color:var(--rv-red-ink)}
.rv-box.side .ent span{font:400 14px/1.35 var(--serif);color:var(--rv-ink2)}
.rv-box.side .ent:hover span{text-decoration:underline}

/* cartão escuro */
.rv-dark{display:flex;flex-direction:column;gap:10px;width:100%;padding:14px 14px 16px;background:var(--rv-dark);color:#F2EDE1!important;text-align:left}
.rv-dark .rv-label{color:#F2EDE1}
.rv-dark .row{display:flex;align-items:center;gap:10px}
.rv-dark .row i{flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:999px;background:#F2EDE1;color:var(--rv-dark);font-style:normal;font-size:13px}
.rv-dark .row span{font:400 15px/1.3 var(--serif)}
.rv-dark small{font:600 12px var(--wide);letter-spacing:.08em;text-transform:uppercase;color:rgba(242,237,225,.72)}
.rv-dark:hover .row span{text-decoration:underline}

/* rodapé da folha */
.rv-foot{grid-template-columns:1fr 1fr 1fr 1fr;border-bottom:0}
.rv-foot .rv-story{align-items:center;justify-content:center;text-align:center}
.rv-num{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center}
.rv-num b{font:400 54px/1 var(--serif);letter-spacing:-.02em;color:var(--rv-red)}
.rv-num span{max-width:22ch;font:400 13.5px/1.35 var(--serif);color:var(--rv-ink2)}
.rv-colophon{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:auto;padding-top:10px;font:600 12px var(--wide);letter-spacing:.08em;text-transform:uppercase;color:var(--rv-ink3)}

/* folha estreita (celular, leitura corrida) */
@container sheet (max-width:620px){
  .sheet{padding:14px 16px 22px}
  .rv-tab{display:none}
  .rv-mast{display:flex;flex-direction:column;align-items:center}
  .rv-folio,.rv-date{position:static;display:block;margin-top:6px}
  .rv-folio{order:3}
  .rv-grid{grid-template-columns:1fr!important}
  .rv-grid>*{padding:14px 0 16px;border-left:0;border-top:1px solid var(--rv-rule)}
  .rv-grid>*:first-child{border-top:0}
  .rv-stack>*{padding:14px 0 16px}
  .rv-grid>.rv-stack>*{padding-left:0;padding-right:0}
  .rv-foot .rv-num b{font-size:44px}
  .rv-duo{width:52%}
  .rv-hero .img{--ar:1.6}
  .rv-story h2{font-size:27px}
  .rv-box.list li a{display:inline-flex;align-items:center;min-height:44px;margin:-12px 0}
}

/* ─────────────────────────── 2. a sala ─────────────────────────── */
.reader{--wall:#E6E1D7;--top-h:60px;--bar-h:66px;--panel-w:400px;--peek:132px;overflow:hidden;height:100%;background:var(--wall)}
html:has(.reader){height:100%;overflow:hidden}
.rd-main{position:fixed;left:0;right:0;top:var(--top-h);bottom:calc(var(--bar-h) + var(--dock-h,0px))}
.rd-stage{position:absolute;inset:0;overflow:hidden;isolation:isolate;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;background:
  radial-gradient(ellipse 70% 60% at 50% 0%,rgba(255,252,246,.85),rgba(255,252,246,0) 70%),
  linear-gradient(180deg,#EAE6DD 0%,#E2DDD2 70%,#D9D3C7 100%)}
.rd-stage.is-dragging{cursor:grabbing}
.rd-stage::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.55;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .5 0 0 0 0 .45 0 0 0 0 .38 0 0 0 .07 0'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)'/%3E%3C/svg%3E")}
.rd-world{position:absolute;left:0;top:0;width:max-content;padding:150px 180px 170px;transform-origin:0 0;opacity:0;transition:opacity .9s var(--ease)}
.rd-world.is-ready{opacity:1}

/* título da exposição, em letras na parede */
.wall-title{margin:0 0 118px;text-align:center;color:#2B2824}
.wall-title small{display:block;font-size:15px;font-weight:600;letter-spacing:7px;text-transform:uppercase;color:#77705F}
.wall-title h1{margin:22px 0 16px;font-size:118px;font-weight:200;line-height:1;letter-spacing:.2em;text-transform:uppercase;padding-left:.2em}
.wall-title span{display:inline-flex;align-items:center;gap:22px;font-size:16px;font-weight:500;letter-spacing:6px;text-transform:uppercase;color:#4B463D}
.wall-title span i{display:block;width:80px;height:1px;background:currentColor;opacity:.5}

.wall-row{display:flex;align-items:flex-start;justify-content:center;gap:190px}

/* moldura: perfil escuro + passe-partout com bisel + papel */
.frame{position:relative;margin:0;width:max-content}
.frame::before{content:"";position:absolute;left:50%;top:-230px;z-index:-1;width:1500px;height:1250px;transform:translateX(-50%);pointer-events:none;background:radial-gradient(ellipse 50% 50% at 50% 12%,rgba(255,251,242,.95),rgba(255,251,242,.35) 45%,rgba(255,251,242,0) 72%)}
.frame__mould{position:relative;padding:18px;background:linear-gradient(135deg,#3B3630 0%,#16140F 30%,#0D0C0A 68%,#2C2823 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.06),inset 0 2px 0 rgba(255,255,255,.07),0 2px 3px rgba(0,0,0,.3),0 34px 60px -20px rgba(38,28,14,.55),0 70px 130px -50px rgba(38,28,14,.5)}
.frame__mat{padding:56px;background:#FBFAF6;box-shadow:inset 0 3px 8px rgba(0,0,0,.2),inset 0 0 0 1px rgba(0,0,0,.05)}
.frame__art{position:relative;width:780px;box-shadow:0 0 0 1px rgba(0,0,0,.08),0 0 0 8px #FEFDFA,0 0 0 9px rgba(0,0,0,.1),0 1px 3px 9px rgba(0,0,0,.05)}
.plate{width:340px;margin:44px auto 0;padding:16px 22px 17px;background:#FBFAF7;box-shadow:0 1px 2px rgba(0,0,0,.12),0 8px 18px -6px rgba(0,0,0,.14);font-family:var(--font)}
.plate b{display:block;font-size:13px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:#111}
.plate span{display:block;margin-top:6px;font-size:12px;letter-spacing:.8px;line-height:1.5;color:#555}
.plate em{display:block;margin-top:10px;padding-top:10px;border-top:1px solid #E6E2DA;font-size:10.5px;font-style:normal;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--ra-red-ink)}

/* ─────────────────────────── 3. interface ─────────────────────────── */
/* barra superior (taupe, como o cabeçalho fixo do site) */
.rd-top{position:fixed;top:0;left:0;right:0;z-index:30;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;height:var(--top-h);padding:0 22px;background:var(--ra-taupe);color:#fff;box-shadow:0 0 3px rgba(0,0,0,.15)}
.rd-top__left{display:flex;align-items:center;gap:16px;min-width:0}
.rd-top .brand .ra-logo{width:104px}
.rd-back{display:inline-grid;place-items:center;width:34px;height:34px;margin-left:-8px}
.rd-back .icon{width:20px;height:20px}
.rd-ed{min-width:0;padding-left:16px;border-left:1px solid rgba(255,255,255,.5);font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rd-ed small{display:block;font-weight:500;letter-spacing:1px;opacity:.9}
.rd-modes{display:flex;padding:3px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.6)}
.rd-modes button{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 16px;font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;white-space:nowrap;transition:background .3s var(--ease),color .3s var(--ease)}
.rd-modes button .icon{width:17px;height:17px}
.rd-modes button[aria-pressed="true"]{background:#fff;color:var(--ra-ink)}
.rd-modes button:not([aria-pressed="true"]):hover{background:rgba(255,255,255,.14)}
.rd-actions{justify-self:end;display:flex;align-items:center;gap:6px}
.rd-actions .icon-btn .icon{width:20px;height:20px}
@media (max-width:1180px){.rd-ed{display:none}.rd-modes button{padding:0 12px}}

/* palco: camada de destaque, dica de hover, controles */
.rd-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.rd-dim{fill:rgba(24,21,17,.56);opacity:0;transition:opacity .6s var(--ease)}
.reader[data-mode="guiada"] .rd-dim{opacity:1}
.rd-corners{fill:none;stroke:var(--ra-red);stroke-width:2.5;opacity:0;transition:opacity .4s}
.reader[data-mode="guiada"] .rd-corners{opacity:1}
.rd-hover{fill:rgba(255,41,0,.05);stroke:var(--ra-red);stroke-width:1.5;stroke-dasharray:5 4;opacity:0;transition:opacity .2s}
.rd-hover.on{opacity:1}
.rd-badge{position:absolute;left:0;top:0;z-index:2;display:flex;align-items:center;gap:8px;height:26px;padding:0 10px 0 0;background:var(--ra-red);color:#fff;font-size:10.5px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .35s}
.rd-badge b{display:grid;place-items:center;height:26px;padding:0 8px;background:#111;font-weight:600}
.rd-badge.on{opacity:1}
.rd-tip{position:absolute;left:0;top:0;z-index:4;padding:8px 11px;background:#111;color:#fff;font-size:11px;font-weight:500;letter-spacing:.6px;line-height:1.4;white-space:nowrap;pointer-events:none;opacity:0;transform:translate(14px,16px);transition:opacity .15s}
.rd-tip.on{opacity:1}
.rd-tip small{display:block;color:rgba(255,255,255,.65);font-size:10px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase}

.rd-zoom{position:absolute;right:calc(var(--panel-w) + 20px);bottom:20px;z-index:3;display:flex;flex-direction:column;background:#fff;box-shadow:0 6px 22px rgba(0,0,0,.12);transition:right .5s var(--ease)}
.rd-zoom button{display:grid;place-items:center;width:42px;height:42px;color:var(--ra-ink);transition:background .2s}
.rd-zoom button + button{border-top:1px solid var(--ra-line-soft)}
.rd-zoom button:hover{background:var(--ra-off)}
.rd-zoom .icon{width:18px;height:18px}
.rd-recenter{position:absolute;left:50%;top:18px;z-index:3;display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 16px;background:#111;color:#fff;font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;box-shadow:0 6px 20px rgba(0,0,0,.2);transform:translate(-50%,-70px);transition:transform .5s var(--ease)}
.rd-recenter.on{transform:translate(-50%,0)}
.rd-recenter .icon{width:16px;height:16px}
.reader:not(.panel-hidden)[data-mode="guiada"] .rd-recenter,.reader:not(.panel-hidden)[data-mode="exposicao"] .rd-recenter{left:calc(50% - var(--panel-w) / 2)}

/* minimapa: onde a câmera está na parede */
.view-narrow .rd-minimap{display:none}
.rd-minimap{position:absolute;left:20px;bottom:20px;z-index:3;width:190px;padding:10px 12px 12px;background:rgba(255,255,255,.94);box-shadow:0 6px 22px rgba(0,0,0,.12);opacity:0;transform:translateY(10px);transition:opacity .4s,transform .5s var(--ease)}
.reader[data-mode="guiada"] .rd-minimap{opacity:1;transform:none}
.rd-minimap p{margin:0 0 8px;font-size:9.5px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--ra-muted)}
.rd-minimap svg{display:block;width:100%;height:auto;cursor:pointer}
.mm-frame{fill:#F2EDE1;stroke:#1a1814;stroke-width:14}
.mm-step{fill:rgba(17,17,17,.1);stroke:rgba(17,17,17,.25);stroke-width:3;transition:fill .3s}
.mm-step.done{fill:rgba(17,17,17,.26)}
.mm-step.cur{fill:rgba(255,41,0,.55);stroke:var(--ra-red)}
.mm-view{fill:none;stroke:#111;stroke-width:10;stroke-dasharray:24 16}

/* painel de análise à direita */
.rd-panel{position:absolute;top:0;right:0;bottom:0;z-index:5;display:flex;flex-direction:column;width:var(--panel-w);background:#fff;border-left:1px solid var(--ra-line-soft);transition:transform .55s var(--ease)}
.panel-hidden .rd-panel{transform:translateX(100%)}
.panel-hidden .rd-zoom{right:20px}
.rd-panel__toggle{position:absolute;left:-38px;top:18px;display:grid;place-items:center;width:38px;height:46px;background:#fff;color:var(--ra-ink);box-shadow:-4px 4px 14px rgba(0,0,0,.08);border:1px solid var(--ra-line-soft);border-right:0}
.rd-panel__toggle .icon{width:18px;height:18px;transition:transform .5s var(--ease)}
.panel-hidden .rd-panel__toggle .icon{transform:rotate(180deg)}
.rd-panel__handle{display:none}
.pn-scroll{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:30px 34px 30px;scrollbar-width:thin}
.pn-body{transition:opacity .22s var(--ease),transform .3s var(--ease)}
.pn-body.is-out{opacity:0;transform:translateY(8px)}
.pn-foot{display:flex;align-items:center;gap:10px;padding:14px 34px;border-top:1px solid var(--ra-line-soft)}
.pn-foot .link-ra{font-size:11px}
.pn-foot .btn{min-height:42px;padding:0 20px;font-size:11px;margin-left:auto}
.pn-foot .pn-mprev,.pn-foot .pn-mcount{display:none}

.pn-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding-bottom:16px;margin-bottom:22px;border-bottom:1px solid var(--ra-ink)}
.pn-count{display:flex;align-items:baseline;gap:3px;color:var(--ra-ink);font-variant-numeric:tabular-nums}
.pn-count b{font-size:44px;font-weight:300;line-height:.9;letter-spacing:-1.5px}
.pn-count span{font-size:13px;font-weight:500;color:var(--ra-muted)}
.pn-chapter{font-size:10.5px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--ra-muted);text-align:right;line-height:1.5}
.pn-kicker{display:block;margin-bottom:10px;font-size:11px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--ra-red-ink)}
.pn-title{font-family:var(--serif);font-size:28px;font-weight:400;line-height:1.14;letter-spacing:-.01em;color:var(--ra-ink);text-wrap:balance}
.pn-title.is-num{font-size:84px;line-height:.9;color:var(--ra-red)}
.pn-title.is-quote{font-style:italic;font-size:25px}
.pn-period{margin-top:8px;font-size:12px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--ra-ink)}
.pn-text{margin-top:14px;font-family:var(--serif);font-size:16.5px;line-height:1.5;color:#34312C}
.pn-by{margin-top:14px;font-size:10.5px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--ra-muted)}
.pn-by b{color:var(--ra-ink)}
.pn-sec{margin-top:26px;padding-top:16px;border-top:1px solid var(--ra-line-soft)}
.pn-sec > h3{margin-bottom:12px;font-size:10.5px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--ra-ink)}
.pn-note{font-size:13px;line-height:1.75;letter-spacing:.2px;color:#444}
.pn-links{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.pn-links a{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;font-weight:500;letter-spacing:.8px;color:var(--ra-ink)}
.pn-links a:hover{text-decoration:underline;text-underline-offset:4px}
.pn-links .icon{width:15px;height:15px}
.pn-cta{display:flex;flex-wrap:wrap;gap:12px 22px;align-items:center;margin-top:22px}
.pn-stats{display:grid;grid-template-columns:repeat(4,1fr);margin-top:22px;border-top:1px solid var(--ra-line);border-bottom:1px solid var(--ra-line)}
.pn-stats div{padding:14px 6px 12px 10px;border-left:1px solid var(--ra-line)}
.pn-stats div:first-child{border-left:0;padding-left:0}
.pn-stats b{display:block;font-size:30px;font-weight:300;line-height:1;color:var(--ra-ink)}
.pn-stats .z b{color:var(--ra-red)}
.pn-stats span{display:block;margin-top:6px;font-size:9px;font-weight:600;line-height:1.35;letter-spacing:1.2px;text-transform:uppercase;color:var(--ra-muted)}
.pn-actions{display:grid;gap:10px;margin-top:24px}
.pn-hint{margin-top:18px;font-size:11.5px;line-height:1.7;letter-spacing:.3px;color:var(--ra-muted)}
.pn-hint kbd,.help kbd{display:inline-grid;place-items:center;min-width:22px;height:20px;padding:0 5px;margin:0 1px;border:1px solid var(--ra-line);border-bottom-width:2px;background:#fff;font:600 10px var(--font);color:var(--ra-ink)}

/* sumário */
.toc{list-style:none;margin:0;padding:0}
.toc > li + li{margin-top:16px}
.toc h4{margin-bottom:6px;font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--ra-muted)}
.toc ol{list-style:none;margin:0;padding:0}
.toc button{display:grid;grid-template-columns:26px 1fr;gap:8px;width:100%;padding:7px 0;border-top:1px solid var(--ra-line-soft);font-size:12.5px;line-height:1.45;letter-spacing:.2px;text-align:left;color:var(--ra-text);transition:color .2s}
.toc button span{font-size:10.5px;font-weight:600;letter-spacing:1px;color:var(--ra-muted);padding-top:1px;font-variant-numeric:tabular-nums}
.toc button:hover{color:var(--ra-ink)}
.toc button.cur{color:var(--ra-ink);font-weight:600}
.toc button.cur span{color:var(--ra-red)}

/* visualizações */
.viz-follow{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.viz-follow li{display:flex;align-items:center;gap:8px;padding:7px 8px;background:var(--ra-off);font-size:11.5px;font-weight:500;letter-spacing:.3px;color:var(--ra-ink)}
.viz-follow li i{display:grid;place-items:center;flex:none;width:18px;height:18px;border-radius:50%;background:#111;color:#fff;font-style:normal;font-size:9px;font-weight:700}
.viz-follow li.no{background:#fff;box-shadow:inset 0 0 0 1px var(--ra-red);color:var(--ra-red-ink)}
.viz-follow li.no i{background:transparent;color:var(--ra-red);box-shadow:inset 0 0 0 1.5px var(--ra-red)}
.viz-cap{margin-top:10px;font-size:11.5px;letter-spacing:.3px;color:var(--ra-text)}
.viz-cap b{color:var(--ra-ink)}

.viz-when{display:grid;grid-template-columns:repeat(7,1fr);align-items:end;gap:4px;height:92px;padding-bottom:22px;position:relative;border-bottom:1px solid var(--ra-line)}
.viz-when > div{position:relative;display:flex;flex-direction:column-reverse;align-items:center;gap:4px;height:100%}
.viz-when i{display:block;width:12px;height:12px;border-radius:50%;background:#D9D5CC}
.viz-when i.hl{background:var(--ra-red)}
.viz-when i.on{background:#111}
.viz-when span{position:absolute;bottom:-20px;font-size:10px;font-weight:600;letter-spacing:1px;color:var(--ra-muted)}

.viz-mix__bar{display:flex;gap:3px;height:34px}
.viz-mix__bar i{flex:1;background:#111}
.viz-mix__bar i.s{background:var(--ra-taupe)}
.viz-mix__legend{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:6px}
.viz-mix__legend li{display:flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.3px;color:var(--ra-text)}
.viz-mix__legend li b{margin-left:auto;font-size:16px;font-weight:500;color:var(--ra-ink)}
.viz-mix__legend li i{width:12px;height:12px;background:#111}
.viz-mix__legend li i.s{background:var(--ra-taupe)}
.viz-mix__legend li i.l{background:transparent;box-shadow:inset 0 0 0 1.5px var(--ra-red)}
.viz-mix__legend li.z b{color:var(--ra-red)}

.viz-bars{display:grid;gap:9px}
.viz-bars button{display:grid;grid-template-columns:68px 1fr 44px;align-items:center;gap:10px;width:100%;text-align:left;transition:opacity .3s}
.viz-bars.has-hl button:not(.hl){opacity:.38}
.viz-bars button:hover{opacity:1!important}
.viz-bars .n{font-size:11.5px;font-weight:600;letter-spacing:.5px;color:var(--ra-ink)}
.viz-bars .t{display:grid;grid-template-columns:repeat(8,1fr);gap:2px;height:14px}
.viz-bars .t i{background:#111}
.viz-bars .t i.no{background:transparent;box-shadow:inset 0 0 0 1.5px var(--ra-red)}
.viz-bars .v{font-size:11px;font-weight:600;letter-spacing:.5px;color:var(--ra-muted);text-align:right;font-variant-numeric:tabular-nums}

.mx{display:grid;grid-template-columns:62px repeat(8,minmax(0,1fr)) 30px;align-items:center;row-gap:5px;font-variant-numeric:tabular-nums}
.mx__h{display:flex;justify-content:center;align-items:flex-end;height:82px;padding-bottom:6px;color:var(--ra-muted);transition:color .2s}
.mx__h span{writing-mode:vertical-rl;transform:rotate(180deg);font-size:10px;font-weight:600;letter-spacing:.6px;white-space:nowrap}
.mx__h:hover,.mx__h.hl{color:var(--ra-red-ink)}
.mx__p{font-size:11px;font-weight:600;letter-spacing:.4px;color:var(--ra-ink);text-align:left;transition:color .2s}
.mx__p:hover,.mx__p.hl{color:var(--ra-red-ink)}
.mx__c{display:grid;place-items:center;height:22px}
.mx__c i{width:11px;height:11px;border-radius:50%;background:#111}
.mx__c.no i{background:transparent;box-shadow:inset 0 0 0 1.5px var(--ra-red)}
.mx__c.hl{background:rgba(255,41,0,.07)}
.mx__t{font-size:11px;font-weight:700;color:var(--ra-ink);text-align:right}
.mx__f{font-size:10px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:var(--ra-muted)}
.mx__ft{font-size:11px;font-weight:600;color:var(--ra-muted);text-align:center;padding-top:6px;border-top:1px solid var(--ra-line)}
.mx .mx__f,.mx .mx__tt{padding-top:6px;border-top:1px solid var(--ra-line)}
.mx__tt{font-size:12px;font-weight:700;color:var(--ra-red);text-align:right}
.mx-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:12px;font-size:11px;letter-spacing:.3px;color:var(--ra-text)}
.mx-legend span{display:inline-flex;align-items:center;gap:6px}
.mx-legend i{width:10px;height:10px;border-radius:50%;background:#111}
.mx-legend i.no{background:transparent;box-shadow:inset 0 0 0 1.5px var(--ra-red)}

/* barra inferior: autoplay, progresso por capítulo, contador */
.rd-bar{position:fixed;left:0;right:0;bottom:0;z-index:30;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:22px;height:var(--bar-h);padding:0 22px;background:var(--ra-off);border-top:1px solid #E3E0D8}
.rd-ctrls{display:flex;align-items:center;gap:8px}
.rd-btn{position:relative;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--ra-ink);color:var(--ra-ink);transition:background .25s,color .25s}
.rd-btn:hover{background:var(--ra-ink);color:#fff}
.rd-btn[disabled]{opacity:.3;pointer-events:none}
.rd-btn .icon{width:18px;height:18px}
.rd-play{width:46px;height:46px;box-shadow:none;background:var(--ra-ink);color:#fff}
.rd-play:hover{background:var(--ra-red)}
.rd-play .ring{position:absolute;inset:-4px;width:54px;height:54px;transform:rotate(-90deg);pointer-events:none}
.rd-play .ring circle{fill:none;stroke:var(--ra-red);stroke-width:2.5;stroke-dasharray:157;stroke-dashoffset:157}
.rd-play .i-pause,.rd-play.is-playing .i-play{display:none}
.rd-play.is-playing .i-pause{display:block}
.rd-play .icon{fill:currentColor;stroke:none}
.rd-progress{display:flex;gap:10px;min-width:0}
.rd-chap{display:flex;flex-direction:column;gap:7px;min-width:0}
.rd-chap > span{font-size:9.5px;font-weight:600;letter-spacing:1.8px;text-transform:uppercase;color:var(--ra-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .3s}
.rd-chap.cur > span{color:var(--ra-ink)}
.rd-segs{display:flex;gap:3px}
.rd-seg{flex:1;height:22px;padding:9px 0;background-clip:content-box;background-color:#D6D1C6;transition:background-color .3s}
.rd-seg.done{background-color:#111}
.rd-seg.cur{background-color:var(--ra-red)}
.rd-seg:hover{background-color:#6d6a63}
.rd-count{display:flex;align-items:center;gap:14px}
.rd-count > span{font-size:12px;font-weight:600;letter-spacing:1.5px;color:var(--ra-ink);font-variant-numeric:tabular-nums;white-space:nowrap}
.rd-count > span small{font-weight:500;color:var(--ra-muted)}
.rd-count .icon-btn{color:var(--ra-ink)}
.rd-count .icon-btn .icon{width:19px;height:19px}

.rd-segtip{position:fixed;left:0;top:0;z-index:40;padding:7px 10px;background:#111;color:#fff;font-size:11px;font-weight:500;letter-spacing:.5px;white-space:nowrap;pointer-events:none;opacity:0;transform:translate(-50%,-100%);transition:opacity .15s}
.rd-segtip.on{opacity:1}
.rd-segtip b{color:var(--ra-red);font-weight:700;margin-right:6px}

/* ajuda de atalhos */
.help .modal__box{background:#fff;color:var(--ra-text);width:min(520px,100%);padding:44px 44px 38px}
.help h2{color:var(--ra-ink);margin-bottom:20px}
.help dl{display:grid;grid-template-columns:auto 1fr;gap:10px 18px;font-size:12.5px;letter-spacing:.3px}
.help dt{white-space:nowrap}
.help dd{margin:0;color:var(--ra-text)}
.help .modal__close{color:var(--ra-ink)}

/* ─────────── modo folha inteira: leitura corrida, sem câmera ─────────── */
.reader[data-mode="livre"] .rd-main{bottom:var(--dock-h,0px)}
.reader[data-mode="livre"] .rd-bar,.reader[data-mode="livre"] .rd-panel,.reader[data-mode="livre"] .rd-zoom,.reader[data-mode="livre"] .rd-minimap,.reader[data-mode="livre"] .rd-overlay,.reader[data-mode="livre"] .rd-badge,.reader[data-mode="livre"] .rd-recenter{display:none}
.reader[data-mode="livre"] .rd-stage{overflow-y:auto;overflow-x:hidden;cursor:auto;touch-action:auto;user-select:auto;-webkit-user-select:auto;scroll-behavior:smooth}
.reader[data-mode="livre"] .rd-stage::after{position:fixed;top:var(--top-h)}
.reader[data-mode="livre"] .rd-world{position:relative;width:auto;padding:96px 20px 100px;transform:none!important}
.reader[data-mode="livre"] .wall-title{margin-bottom:72px}
.reader[data-mode="livre"] .wall-title h1{font-size:clamp(34px,7vw,92px)}
.reader[data-mode="livre"] .wall-row{flex-direction:column;align-items:center;gap:90px}
.reader[data-mode="livre"] .frame{width:auto;max-width:100%}
.reader[data-mode="livre"] .frame__art{width:min(820px,calc(100vw - 40px - 2 * (var(--mat) + var(--mould))))}
.reader{--mat:56px;--mould:18px}
.livre-chips{display:none}
.reader[data-mode="livre"] .livre-chips{position:fixed;left:50%;top:calc(var(--top-h) + 14px);z-index:20;display:flex;gap:4px;padding:4px;background:rgba(255,255,255,.94);box-shadow:0 6px 22px rgba(0,0,0,.12);transform:translateX(-50%)}
.livre-chips a{display:inline-flex;align-items:center;height:34px;padding:0 14px;font-size:10.5px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--ra-ink);white-space:nowrap}
.livre-chips a.cur{background:var(--ra-ink);color:#fff}

/* ─────────── celular e tablet ─────────── */
@media (max-width:899px){
  .reader{--top-h:54px;--bar-h:0px;--panel-w:0px;--mat:16px;--mould:8px}
  .rd-top{grid-template-columns:auto 1fr auto;gap:10px;padding:0 10px}
  .rd-top .brand{display:none}
  .rd-ed{display:block;padding-left:0;border-left:0;font-size:10px}
  .rd-modes{justify-self:end}
  .rd-modes button{padding:0 10px;height:32px}
  .rd-modes button span{display:none}
  .rd-actions .act-print,.rd-actions .act-help,.rd-actions .act-full{display:none}
  .rd-bar{display:none}
  .reader{--peek:150px}
  .rd-panel{top:auto;left:0;width:auto;height:min(52vh,460px);border-left:0;border-top:1px solid var(--ra-line-soft);box-shadow:0 -10px 30px rgba(0,0,0,.12);transition:height .45s var(--ease)}
  .panel-hidden .rd-panel{transform:none;height:var(--peek)}
  .panel-hidden .pn-scroll{overflow:hidden}
  .pn-head{display:none}
  .rd-panel__toggle{display:none}
  .rd-panel__handle{display:flex;justify-content:center;align-items:center;flex:none;height:22px;width:100%}
  .rd-panel__handle i{display:block;width:40px;height:4px;border-radius:4px;background:#CFCBC2}
  .pn-scroll{padding:6px 18px 18px}
  .pn-head{margin-bottom:14px;padding-bottom:12px}
  .pn-count b{font-size:32px}
  .pn-title{font-size:23px}
  .pn-title.is-num{font-size:64px}
  .pn-foot{padding:10px 14px calc(10px + env(safe-area-inset-bottom));gap:8px}
  .pn-foot .pn-mprev,.pn-foot .pn-mcount{display:inline-grid}
  .pn-foot .pn-mcount{flex:1;place-items:center;font-size:11px;font-weight:600;letter-spacing:1.5px;color:var(--ra-ink)}
  .pn-foot .link-ra{display:none}
  .pn-foot .btn{margin-left:0}
  .rd-zoom{display:none}
  .rd-minimap{display:none}
  .reader:not(.panel-hidden) .rd-recenter{left:50%}
  .frame__mould{padding:10px}
  .frame__mat{padding:30px}
  .reader[data-mode="livre"] .frame__mould{padding:var(--mould)}
  .reader[data-mode="livre"] .frame__mat{padding:var(--mat)}
  .reader[data-mode="livre"] .frame__art{box-shadow:0 0 0 1px rgba(0,0,0,.08),0 0 0 4px #FEFDFA,0 0 0 5px rgba(0,0,0,.08)}
  .reader[data-mode="livre"] .plate{width:auto;max-width:340px;margin-top:28px}
  .reader[data-mode="livre"] .wall-title small{font-size:10px;letter-spacing:4px}
  .reader[data-mode="livre"] .wall-title span{font-size:11px;letter-spacing:3px;gap:12px}
  .reader[data-mode="livre"] .wall-title span i{width:30px}
  .reader[data-mode="livre"] .rd-world{padding:84px 12px 80px}
  .reader[data-mode="livre"] .livre-chips{top:calc(var(--top-h) + 10px)}
}

/* ─────────── impressão: as duas folhas, uma por página ─────────── */
@media print{
  @page{size:A4;margin:10mm}
  html:has(.reader),.reader{height:auto;overflow:visible;background:#fff}
  .rd-top,.rd-bar,.rd-panel,.rd-zoom,.rd-minimap,.rd-overlay,.rd-badge,.rd-tip,.rd-recenter,.livre-chips,.wall-title,.plate,.toast,.skip-link{display:none!important}
  .rd-main,.rd-stage{position:static;overflow:visible;background:none}
  .rd-stage::after,.frame::before,.sheet::after{display:none}
  .rd-world{position:static;opacity:1;padding:0;transform:none!important;width:auto}
  .wall-row{display:block}
  .frame{width:auto;break-after:page}
  .frame:last-child{break-after:auto}
  .frame__mould,.frame__mat{padding:0;background:none;box-shadow:none}
  .frame__art{width:auto;box-shadow:none}
  .sheet{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
