/* Estilo base da Biblioteca Mágica (D140, D211, D221): papel marfim, tinta azul-marinho e ouro âmbar, as cores da logo.
   Cores e fontes ficam só aqui (tokens). D221: mais contraste no texto claro (tudo passa de 4,5:1), a página na largura
   inteira da tela, o vidro (fundo translúcido com desfoque) nas barras e o modo de contraste alto. */
:root {
  --papel: #FFFCF6;
  --fundo: #F5F0E6;
  --fundo-2: #EFE7D8;
  --tinta: #1B1F2E;          /* ~15:1 sobre --papel */
  --tinta-2: #4A4F60;        /* ~8:1 */
  --tinta-3: #656877;        /* ~5:1: o texto mais claro ainda se lê bem (era 3:1) */
  --linha: #E6DDCB;
  --linha-forte: #CFC2A8;
  --marca: #14274F;          /* o azul-marinho do livro da logo */
  --marca-2: #22407A;
  --marca-suave: #E7EDF6;
  --ouro: #855810;           /* o âmbar, escuro o bastante para texto pequeno */
  --ouro-claro: #E8B04E;
  --ouro-suave: #FBF0DA;
  --ouro-vivo: #F2CC7D;      /* o dourado sobre o azul-noite */
  --verde: #2E9C7E;          /* o verde das letras */
  --vinho: #8E3B46;
  --noite: #0E1A38;          /* menu lateral */
  --noite-2: #1A2D5A;
  --noite-3: #24396B;
  --ok: #2E6A4C;  --ok-fundo: #E3F0E8;
  --ajuste: #7D4E08; --ajuste-fundo: #FBEFD9;
  --erro: #A33A2B; --erro-fundo: #FBE6E2;
  --sombra: 0 1px 2px rgba(27,31,46,.04), 0 10px 30px rgba(27,31,46,.07);
  --sombra-alta: 0 2px 6px rgba(27,31,46,.06), 0 24px 60px rgba(27,31,46,.14);
  /* O vidro (D221): claro sobre o marfim, escuro sobre o azul-noite */
  --vidro: rgba(255,252,246,.72);
  --vidro-borda: rgba(255,255,255,.75);
  --vidro-escuro: rgba(14,26,56,.55);
  --vidro-escuro-borda: rgba(255,255,255,.16);
  --desfoque: blur(18px) saturate(1.3);
  --serif: "Fraunces", Georgia, serif;
  --ui: "Atkinson Hyperlegible Next", "Atkinson Hyperlegible", system-ui, sans-serif;
  --raio: 18px;
  --zoom: 1;
}
/* Contraste alto (D221, painel "Letra e contraste"): texto quase preto, linhas visíveis, nada translúcido */
:root[data-contraste="alto"] {
  --papel: #FFFFFF; --fundo: #FFFFFF; --fundo-2: #F1F1F1;
  --tinta: #000000; --tinta-2: #1A1A1A; --tinta-3: #2E2E2E;
  --linha: #6B6B6B; --linha-forte: #3A3A3A;
  --marca: #0A1A3F; --marca-2: #0A1A3F; --marca-suave: #DCE4F2;
  --ouro: #5C3A00; --ouro-claro: #B87A00; --ouro-suave: #FFF1CC; --ouro-vivo: #FFD98A;
  --ok: #10462C; --ajuste: #5A3500; --erro: #7A1A10;
  --vidro: #FFFFFF; --vidro-borda: #000000; --vidro-escuro: #0A1A3F; --vidro-escuro-borda: #FFFFFF;
  --desfoque: none;
  --sombra: none; --sombra-alta: 0 0 0 2px #000;
}
:root[data-contraste="alto"] body { background: #FFFFFF; }
:root[data-contraste="alto"] .cartao, :root[data-contraste="alto"] .bt { border-width: 2px; }
:root[data-contraste="alto"] .menu { background: #000814; }
:root[data-contraste="alto"] .menu a.item, :root[data-contraste="alto"] .menu .secao, :root[data-contraste="alto"] .menu .rodape-menu { color: #FFFFFF; }
:root[data-contraste="alto"] .chip { border: 1px solid currentColor; }
:root[data-contraste="alto"] :focus-visible { outline: 4px solid #000; box-shadow: 0 0 0 6px #FFD98A; }
:root[data-contraste="alto"] a { text-decoration-thickness: 2px; }

* { box-sizing: border-box; }
[hidden] { display: none !important; }   /* o que está escondido fica escondido, mesmo com display no estilo */
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0; color: var(--tinta); font: 16px/1.6 var(--ui);
  background:
    radial-gradient(1100px 620px at 92% -8%, rgba(232,176,78,.13) 0%, rgba(232,176,78,0) 70%),
    radial-gradient(900px 600px at 30% 110%, rgba(34,64,122,.07) 0%, rgba(34,64,122,0) 70%),
    var(--fundo);
  background-attachment: fixed;
  -webkit-font-smoothing: antialiased;
}
/* O tamanho da letra (D221): a página inteira cresce junto (o site mede em pixels) */
body.com-menu { zoom: var(--zoom); }
button, input, select, textarea { font: inherit; color: inherit; }
:focus-visible { outline: 3px solid var(--ouro-claro); outline-offset: 2px; border-radius: 6px; }
a { color: var(--marca); text-underline-offset: 3px; }
::selection { background: var(--ouro-suave); }
.pular-menu { position: absolute; left: 12px; top: -60px; z-index: 2000; background: var(--marca); color: #fff; padding: 10px 16px; border-radius: 10px; font-weight: 700; }
.pular-menu:focus { top: 12px; }
.conteudo:focus { outline: none; }

h1, h2, h3 { font-family: var(--serif); font-weight: 500; letter-spacing: -.015em; font-variation-settings: "opsz" 72; }
.sobretitulo { display: inline-flex; align-items: center; gap: 10px; font: 700 12px/1 var(--ui); letter-spacing: .18em; text-transform: uppercase; color: var(--ouro); margin-bottom: 12px; }
.sobretitulo::before { content: ""; width: 22px; height: 1px; background: currentColor; opacity: .7; }

.campo {
  width: 100%; background: #fff; border: 1px solid var(--linha-forte); border-radius: 12px;
  padding: 11px 14px; font-size: 16px; line-height: 1.5; transition: border-color .15s, box-shadow .15s;
}
.campo:focus { outline: none; border-color: var(--marca-2); box-shadow: 0 0 0 4px var(--marca-suave); }
.campo.pequeno { font-size: 13.5px; padding: 5px 8px; min-height: 0; }
.rotulo { display: block; font-size: 12px; text-transform: uppercase; letter-spacing: .1em; color: var(--tinta-3); margin-bottom: 6px; font-weight: 700; }

.bt { text-decoration: none; display: inline-flex; align-items: center; justify-content: center; gap: 6px; border: 1px solid var(--linha-forte); background: var(--papel); color: var(--tinta); border-radius: 999px; padding: 10px 20px; cursor: pointer; font-weight: 700; font-size: 15px; line-height: 1.25; transition: background .15s, border-color .15s, transform .15s, box-shadow .15s; }
.bt:hover { background: #fff; border-color: var(--ouro-claro); }
.bt.primario { background: linear-gradient(180deg, var(--marca-2), var(--marca)); border-color: var(--marca); color: #fff; box-shadow: 0 6px 18px rgba(20,39,79,.24), inset 0 1px 0 rgba(255,255,255,.14); }
.bt.primario:hover { background: var(--marca-2); transform: translateY(-1px); }
.bt.ouro { background: linear-gradient(180deg, #F3CF83, var(--ouro-claro)); border-color: #D9A23F; color: var(--noite); box-shadow: 0 8px 22px rgba(232,176,78,.28); }
.bt.ouro:hover { background: #F3CF83; transform: translateY(-1px); }
.bt.pequeno { padding: 6px 14px; font-size: 14px; }
.bt:disabled { opacity: .6; cursor: default; transform: none; }

.cartao { background: var(--papel); border: 1px solid var(--linha); border-radius: var(--raio); box-shadow: var(--sombra); padding: 22px 24px; }
.vidro { background: var(--vidro); border: 1px solid var(--vidro-borda); -webkit-backdrop-filter: var(--desfoque); backdrop-filter: var(--desfoque); }
.mensagem { border-radius: 12px; padding: 10px 14px; font-size: 15px; }
.mensagem.erro { background: var(--erro-fundo); color: var(--erro); }
.mensagem.ok { background: var(--ok-fundo); color: var(--ok); }
.chip { display: inline-block; background: var(--marca-suave); color: var(--marca); border-radius: 99px; padding: 2px 10px; font-size: 13px; margin: 0 6px 6px 0; }
.chip.ajuste { background: var(--ajuste-fundo); color: var(--ajuste); }
.chip.ok { background: var(--ok-fundo); color: var(--ok); }
.chip.ouro { background: var(--ouro-suave); color: #6E4A12; }
.ajuda { color: var(--tinta-2); font-size: 14px; }
.carregando { color: var(--tinta-3); font-style: italic; font-family: var(--serif); }

/* As abas (pacientes, ficha, cenas...): uma barra de vidro com a aba atual em destaque (D221) */
.abas { display: flex; gap: 4px; flex-wrap: wrap; padding: 5px; margin: 8px 0 26px; border: 1px solid var(--linha); border-radius: 16px; background: var(--vidro); width: fit-content; max-width: 100%; box-shadow: var(--sombra); }
.abas button { border: 0; background: none; padding: 9px 16px; border-radius: 12px; cursor: pointer; font-weight: 700; font-size: 15px; color: var(--tinta-2); transition: background .15s, color .15s; }
.abas button:hover { color: var(--tinta); background: rgba(20,39,79,.05); }
.abas button[aria-selected="true"] { background: var(--marca); color: #fff; box-shadow: 0 4px 12px rgba(20,39,79,.22); }

/* ---------- Aplicação: menu lateral escuro + conteúdo ---------- */
.app { display: grid; grid-template-columns: 272px minmax(0, 1fr); min-height: calc(100vh / var(--zoom)); }
.menu {
  background:
    radial-gradient(320px 220px at 20% 0%, rgba(232,176,78,.12), rgba(232,176,78,0) 70%),
    linear-gradient(180deg, var(--noite-2) 0%, var(--noite) 100%);
  color: #D9D5CB;
  padding: 26px 18px 20px; display: flex; flex-direction: column; position: sticky; top: 0; height: calc(100vh / var(--zoom)); overflow: auto;
}
/* poeira de estrelas no menu, bem de leve */
.menu::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .5;
  background-image: radial-gradient(1px 1px at 18% 22%, #fff 50%, transparent 51%), radial-gradient(1px 1px at 72% 12%, #F6E7C9 50%, transparent 51%), radial-gradient(1.5px 1.5px at 84% 46%, #fff 50%, transparent 51%), radial-gradient(1px 1px at 34% 64%, #F6E7C9 50%, transparent 51%), radial-gradient(1px 1px at 60% 82%, #fff 50%, transparent 51%), radial-gradient(1.2px 1.2px at 10% 90%, #F6E7C9 50%, transparent 51%); }
.menu > * { position: relative; }
.menu-topo { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.menu-botao { display: none; }
.menu-itens { display: flex; flex-direction: column; gap: 2px; flex: 1; }
.menu .logo { display: grid; grid-template-columns: 52px 1fr; gap: 12px; align-items: center; margin: 0 8px 30px; text-decoration: none; color: #F6F1E6; }
.menu .logo img { width: 52px; height: 52px; border-radius: 50%; box-shadow: 0 0 0 1px rgba(242,204,125,.35), 0 6px 20px rgba(0,0,0,.3); }
.menu .logo b { display: block; font: 500 19px/1.15 var(--serif); letter-spacing: -.01em; }
.menu .logo small { display: block; font: italic 400 13px/1.3 var(--serif); color: var(--ouro-vivo); margin-top: 3px; }
.menu .secao { font-size: 11px; letter-spacing: .16em; text-transform: uppercase; color: #9AA0B5; margin: 14px 12px 6px; }
.menu a.item { display: flex; align-items: center; gap: 12px; padding: 10px 12px; border-radius: 12px; text-decoration: none; color: #D6D3CB; font-size: 15px; transition: background .15s, color .15s; }
.menu a.item svg { width: 19px; height: 19px; flex: none; opacity: .85; }
.menu a.item:hover { background: rgba(255,255,255,.07); color: #fff; }
.menu a.item.atual { background: linear-gradient(90deg, rgba(232,176,78,.2), rgba(232,176,78,.06)); color: #FBEFD4; box-shadow: inset 2px 0 0 var(--ouro-claro); }
.menu a.item.atual svg { color: var(--ouro-vivo); opacity: 1; }
.menu a.item.breve { color: #8A8FA3; cursor: default; }
.menu a.item.breve:hover { background: none; }
.menu a .breve-selo { margin-left: auto; font-size: 10.5px; letter-spacing: .04em; color: #9AA0B5; border: 1px solid #3A4260; border-radius: 99px; padding: 1px 8px; }
.menu .rodape-menu { margin-top: auto; padding: 14px 4px 0; border-top: 1px solid rgba(255,255,255,.1); font-size: 14px; color: #BDBAB2; display: grid; gap: 12px; }
.menu .ola { padding: 0 8px; }
.menu .ola button { border: 0; background: none; color: var(--ouro-vivo); padding: 0; cursor: pointer; text-decoration: underline; text-underline-offset: 3px; font-size: 14px; }

/* Letra e contraste (D221) */
.leitura { position: relative; }
.leitura-abrir { width: 100%; display: flex; align-items: center; gap: 10px; border: 1px solid rgba(255,255,255,.16); background: rgba(255,255,255,.06); color: #F1EDE4; border-radius: 12px; padding: 9px 12px; cursor: pointer; font-size: 14px; font-weight: 700; text-align: left; }
.leitura-abrir span { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 8px; background: var(--ouro-vivo); color: var(--noite); font: 700 13px var(--serif); }
.leitura-abrir:hover { background: rgba(255,255,255,.12); }
.leitura-painel { margin-top: 8px; padding: 14px; border-radius: 14px; background: #fff; color: var(--tinta); box-shadow: 0 18px 40px rgba(0,0,0,.35); display: grid; gap: 8px; }
.leitura-rotulo { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--tinta-3); }
.leitura-linha { display: flex; align-items: center; gap: 8px; }
.leitura-linha output { flex: 1; text-align: center; font: 700 18px var(--ui); }
.leitura-linha button, .leitura-padrao { border: 1px solid var(--linha-forte); background: var(--papel); border-radius: 10px; padding: 8px 12px; cursor: pointer; font-weight: 700; color: var(--tinta); }
.leitura-linha button[data-tam] { min-width: 52px; font-size: 18px; font-family: var(--serif); }
.leitura-contraste button { flex: 1; }
.leitura-linha button[aria-pressed="true"] { background: var(--marca); border-color: var(--marca); color: #fff; }
.leitura-linha button:disabled { opacity: .4; cursor: default; }
.leitura-padrao { font-size: 13px; color: var(--tinta-2); }

/* O conteúdo usa a largura inteira da tela (D141, D221: sem limite, para telas grandes como a do iMac) */
.conteudo { padding: 44px clamp(20px, 3.4vw, 72px) 40px; width: 100%; min-width: 0; }
.conteudo > h1, .cabeca-pagina h1 { font-size: clamp(34px, 3.6vw, 52px); line-height: 1.05; margin: 0 0 10px; }
.sub { color: var(--tinta-2); margin: 0 0 32px; font-size: 17px; max-width: 52em; }
.cabeca-pagina { margin-bottom: 36px; }
/* Cabeçalho com o fundo de noite (D221): usado nas páginas principais (Biblioteca, Equipe, Pacientes, RPG...) */
.cabeca-noite { position: relative; overflow: hidden; border-radius: 28px; padding: clamp(26px, 3vw, 44px); margin-bottom: 30px; color: #F4EFE4;
  background: radial-gradient(700px 300px at 85% 0%, rgba(232,176,78,.22), rgba(232,176,78,0) 70%), radial-gradient(600px 400px at 0% 100%, rgba(70,110,190,.25), rgba(70,110,190,0) 70%), linear-gradient(135deg, var(--noite-2), var(--noite));
  box-shadow: var(--sombra-alta); }
.cabeca-noite::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .55;
  background-image: radial-gradient(1px 1px at 12% 30%, #fff 50%, transparent 51%), radial-gradient(1.4px 1.4px at 28% 78%, #F6E7C9 50%, transparent 51%), radial-gradient(1px 1px at 46% 18%, #fff 50%, transparent 51%), radial-gradient(1.6px 1.6px at 64% 62%, #F6E7C9 50%, transparent 51%), radial-gradient(1px 1px at 78% 28%, #fff 50%, transparent 51%), radial-gradient(1.2px 1.2px at 90% 74%, #fff 50%, transparent 51%), radial-gradient(1px 1px at 55% 90%, #F6E7C9 50%, transparent 51%); }
.cabeca-noite > * { position: relative; }
.cabeca-noite h1 { color: #fff; font-size: clamp(34px, 3.6vw, 54px); line-height: 1.04; margin: 0 0 10px; }
.cabeca-noite .sobretitulo { color: var(--ouro-vivo); }
.cabeca-noite .sub { color: #D9D5CC; margin-bottom: 0; }
.cabeca-noite a:not(.bt) { color: var(--ouro-vivo); }
.cabeca-noite .bt:not(.primario):not(.ouro) { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.28); color: #fff; }
.cabeca-noite .bt:not(.primario):not(.ouro):hover { background: rgba(255,255,255,.16); }
.cabeca-noite .bt.primario { background: linear-gradient(180deg, #F3CF83, var(--ouro-claro)); border-color: #D9A23F; color: var(--noite); }
.cabeca-linha { display: flex; justify-content: space-between; align-items: flex-end; gap: 20px 32px; flex-wrap: wrap; }
.cabeca-linha > div:first-child { flex: 1 1 460px; }
.cabeca-acoes { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }
/* Os números em vidro no cabeçalho de noite */
.numeros { display: flex; gap: 12px; flex-wrap: wrap; }
.numeros > div { min-width: 120px; padding: 14px 18px; border-radius: 18px; background: var(--vidro-escuro); border: 1px solid var(--vidro-escuro-borda); -webkit-backdrop-filter: var(--desfoque); backdrop-filter: var(--desfoque); }
.numeros b { display: block; font: 400 34px/1 var(--serif); color: #fff; }
.numeros span { font-size: 13px; color: #D4D0C6; }

/* Rodapé de todas as páginas */
.rodape-site .marcas { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.rodape-site .marcas img { height: 30px; width: auto; }
.rodape-site .marcas img + img { height: 40px; }
.rodape-site { align-items: center; margin-top: 72px; padding-top: 14px; border-top: 1px solid var(--linha); display: flex; justify-content: space-between; gap: 6px 16px; flex-wrap: wrap; font-size: 12px; color: var(--tinta-3); }
.credito { margin: 0; font: italic 12px var(--serif); letter-spacing: .02em; color: var(--tinta-3); }
.credito-coracao { color: var(--vinho); font-style: normal; margin: 0 .1em; }

/* Celular e tablet em pé: o menu vira uma barra no alto, com o botão "Menu" (D221) */
@media (max-width: 860px) {
  .app { grid-template-columns: minmax(0, 1fr); }   /* sem isso, uma lista de opções comprida alarga a página no celular */
  .menu { position: sticky; top: 0; z-index: 900; height: auto; padding: 10px 14px; overflow: visible; }
  .menu .logo { margin: 0; grid-template-columns: 38px 1fr; gap: 10px; }
  .menu .logo img { width: 38px; height: 38px; }
  .menu .logo b { font-size: 16px; }
  .menu .logo small { font-size: 11.5px; }
  .menu-botao { display: inline-flex; align-items: center; gap: 8px; border: 1px solid rgba(255,255,255,.25); background: rgba(255,255,255,.08); color: #fff; border-radius: 12px; padding: 9px 14px; font-weight: 700; cursor: pointer; }
  .menu-botao-icone, .menu-botao-icone::before, .menu-botao-icone::after { display: block; width: 16px; height: 2px; background: currentColor; border-radius: 2px; position: relative; }
  .menu-botao-icone::before, .menu-botao-icone::after { content: ""; position: absolute; left: 0; }
  .menu-botao-icone::before { top: -5px; } .menu-botao-icone::after { top: 5px; }
  .menu-itens { display: none; position: absolute; left: 0; right: 0; top: 100%; max-height: calc(100vh / var(--zoom) - 64px); overflow: auto; padding: 10px 14px 18px;
    background: linear-gradient(180deg, var(--noite-2), var(--noite)); box-shadow: 0 24px 40px rgba(0,0,0,.35); }
  .menu.aberto .menu-itens { display: flex; }
  .menu a.item { padding: 13px 12px; font-size: 16px; }
  .menu .secao { display: none; }
  .conteudo { padding: 22px 16px 40px; }
  .cabeca-noite { border-radius: 22px; padding: 22px 18px; }
  .numeros > div { min-width: 0; flex: 1; padding: 10px 14px; }
  .numeros b { font-size: 26px; }
}
@media (prefers-reduced-motion: reduce) { * { transition: none !important; animation: none !important; scroll-behavior: auto !important; } }

/* A dica quando o aparelho não deixa abrir em tela cheia (site/js/tela-cheia.js, D197) */
.dica-tela-cheia { position: fixed; left: 50%; bottom: 24px; transform: translateX(-50%); z-index: 1000; width: min(520px, calc(100vw - 32px)); padding: 16px 18px; border-radius: 14px; background: var(--papel); color: var(--tinta); border: 1px solid var(--linha-forte); box-shadow: var(--sombra-alta); font: 16px/1.5 var(--ui); }
.dica-tela-cheia p { margin: 0 0 8px; }
.dica-tela-cheia button { border: 0; background: var(--marca); color: #fff; border-radius: 10px; padding: 9px 18px; font: 700 15px var(--ui); cursor: pointer; }

/* As janelas (dialog) de todo o site (D221): vidro claro, cantos redondos, fundo escurecido */
dialog.janela { width: min(560px, calc(100vw - 32px)); max-height: calc(100vh / var(--zoom) - 40px); border: 1px solid var(--linha); border-radius: 22px; padding: 26px 28px; background: var(--papel); color: var(--tinta); box-shadow: 0 30px 80px rgba(0,0,0,.35); }
dialog.janela::backdrop { background: rgba(14,20,40,.5); -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px); }
dialog.janela h2 { margin: 0 0 6px; font-size: 26px; }
dialog.janela .janela-fim { display: flex; justify-content: flex-end; gap: 10px; margin-top: 18px; flex-wrap: wrap; }
/* A gaveta: a janela que entra pela direita, para os painéis compridos */
dialog.gaveta { margin: 0 0 0 auto; height: 100vh; max-height: none; width: min(620px, 100vw); border: 0; border-radius: 24px 0 0 24px; padding: 28px 30px; background: var(--papel); color: var(--tinta); box-shadow: -30px 0 80px rgba(0,0,0,.3); }
dialog.gaveta::backdrop { background: rgba(14,20,40,.45); -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px); }
dialog.gaveta[open] { animation: gaveta-entra .28s cubic-bezier(.2,.7,.2,1); }
@keyframes gaveta-entra { from { transform: translateX(40px); opacity: 0; } to { transform: none; opacity: 1; } }
.gaveta-topo { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; margin-bottom: 14px; }
.gaveta-topo h2 { margin: 0; font-size: 28px; }
.fechar-x { border: 1px solid var(--linha-forte); background: var(--papel); border-radius: 50%; width: 40px; height: 40px; flex: none; cursor: pointer; font-size: 20px; line-height: 1; color: var(--tinta-2); }
.fechar-x:hover { border-color: var(--ouro-claro); color: var(--tinta); }

/* Os itens dos menus "Mais opções" (livro, equipe...) */
.item-mais { display: block; width: 100%; text-align: left; border: 0; background: none; padding: 11px 14px; border-radius: 12px; cursor: pointer; font-size: 15px; color: var(--tinta); text-decoration: none; }
.item-mais:hover, .item-mais:focus-visible { background: var(--fundo); }
.item-mais:disabled { opacity: .6; }
/* "← Voltar" no alto das páginas de dentro */
.voltar { display: inline-flex; align-items: center; gap: 6px; margin-bottom: 18px; font-size: 15px; font-weight: 700; text-decoration: none; color: var(--tinta-2); }
.voltar:hover { color: var(--marca); }
