.abertura-capitulo { position: relative; border-bottom: 4px double var(--tinta); padding: 55px 0 27px; }
.abertura-capitulo h1 { position: relative; max-width: 810px; margin: 35px 0 22px; font-size: clamp(55px, 7vw, 91px); z-index: 1; }
.numero-capitulo { position: absolute; right: 0; top: 20px; font: bold 150px/.9 Georgia, serif; letter-spacing: -.09em; color: #e9e5dc; }
.lead { position: relative; z-index: 1; max-width: 650px; font-size: 22px; line-height: 1.35; }
.creditos { margin: 32px 0 0; font: bold 11px 'Courier New', monospace; letter-spacing: .09em; }
.creditos span { color: var(--vermelho); }
.texto-abertura { max-width: 830px; margin: 38px 0; }
.texto-abertura h2, .rotas h2, .sistema h2, .fontes h2 { font-size: 32px; line-height: 1.15; letter-spacing: -.035em; margin: 7px 0 13px; }
.figura-menu { margin: 35px 0 65px; border: 1px solid var(--tinta); break-inside: avoid; }
.cabecalho-figura { display: flex; justify-content: space-between; gap: 12px; padding: 10px 16px; border-bottom: 1px solid var(--tinta); font: 10px 'Courier New', monospace; letter-spacing: .06em; }
.cabecalho-figura strong { font-size: 11px; }
.corpo-figura { display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 38px; padding: 20px 30px; align-items: start; }
.barra-jogo { border: 2px solid var(--tinta); border-radius: 9px; padding: 5px; background: white; }
.menu-item { height: 56px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1px; font: 12px/1.1 Arial, sans-serif; }
.menu-item:first-child { border: 1px solid var(--tinta); border-radius: 4px; }
.menu-item img { width: 22px; height: 22px; filter: grayscale(1) brightness(0); }
.sigla-pais { font: bold 15px/22px Arial, sans-serif; }
.mapa-itens { list-style: none; padding: 0; margin: 0; }
.mapa-itens li { display: grid; grid-template-columns: 40px 1fr; gap: 15px; align-items: center; min-height: 56px; border-bottom: 1px solid var(--linha); }
.mapa-itens li:last-child { border-bottom: 0; }
.indice-menu { font: bold 15px 'Courier New', monospace; }
.mapa-itens strong { display: block; font-size: 17px; line-height: 1.2; }
.mapa-itens small { display: flex; justify-content: space-between; gap: 8px; color: var(--cinza); font: 12px/1.25 'Courier New', monospace; }
.mapa-itens b { white-space: nowrap; color: var(--tinta); }
figcaption { border-top: 1px solid var(--tinta); padding: 12px 16px; font: 12px/1.45 'Courier New', monospace; }
.rotas, .camadas, .portas-inferiores, .paineis, .abas-internas, .sistema, .fontes { border-top: 4px double var(--tinta); padding: 25px 0 38px; margin-top: 55px; }
.camadas h2, .portas-inferiores h2, .paineis h2, .abas-internas h2 { font-size: 32px; line-height: 1.15; letter-spacing: -.035em; margin: 7px 0 13px; }
.camadas > p { max-width: 790px; }
.figura-camadas { margin: 25px 0; border: 1px solid var(--tinta); break-inside: avoid; }
.esquema-tela { position: relative; aspect-ratio: 1.99; overflow: hidden; container-type: inline-size; background: #071d27; color: #d8ebea; font: 600 1.15cqw/1.15 Arial, sans-serif; filter: grayscale(1) invert(1); -webkit-print-color-adjust: exact; print-color-adjust: exact; }
.marcador-zona { position: absolute; z-index: 6; display: grid; place-items: center; width: 2.7cqw; height: 2.7cqw; border: 1px solid #f7f8f1; border-radius: 50%; background: #0a2028; color: white; font: bold 1.35cqw Arial, sans-serif; }
.fundo-mapa { position: absolute; inset: 0 35% 0 0; overflow: hidden; background: radial-gradient(circle at 75% 40%, #0e2931, #051520 65%); }
.zona-a { left: 12%; top: 13%; }
.terra { position: absolute; inset: 0; clip-path: polygon(0 0, 17% 0, 22% 10%, 31% 7%, 43% 12%, 56% 16%, 65% 23%, 77% 26%, 82% 38%, 79% 53%, 72% 66%, 62% 78%, 57% 88%, 48% 100%, 0 100%); background: repeating-linear-gradient(137deg, transparent 0 3px, #b1dbb30b 3px 4px), radial-gradient(circle at 24% 58%, #0d8651, #055b42 65%, #064135); }
.regiao { position: absolute; display: block; border: 1px solid #1da16b; opacity: .75; transform: rotate(14deg); }
.regiao-norte { left: -8%; top: 17%; width: 70%; height: 67%; border-radius: 33% 49% 39% 20%; }
.regiao-leste { left: 37%; top: 29%; width: 37%; height: 46%; border-radius: 25% 58% 20% 30%; transform: rotate(-27deg); }
.regiao-sul { left: 5%; top: 79%; width: 52%; height: 38%; transform: rotate(-16deg); }
.cidade { position: absolute; z-index: 1; color: #c8e9db; font: bold 1.4cqw Arial, sans-serif; text-shadow: 0 1px 2px #052b2b; }
.cidade::before { content: '◆'; display: block; font-size: 1.5cqw; text-align: center; }
.cidade-fortaleza { left: 15%; top: 29%; }.cidade-recife { left: 63%; top: 48%; }.cidade-salvador { left: 31%; top: 76%; }
.rota-mapa { position: absolute; z-index: 2; left: 62%; top: 48%; width: 68%; height: .65cqw; background: #b32b26; transform: rotate(-28deg); transform-origin: left center; }
.marcador-batalha { position: absolute; z-index: 3; left: 64%; top: 45%; padding: .4cqw .7cqw; border: 1px solid #a92925; border-radius: .5cqw; background: #091a21; color: #f2c5bd; }
.ferramentas-mapa { position: absolute; z-index: 4; left: .5%; bottom: 8%; width: 5%; display: flex; flex-direction: column; gap: .7cqw; }
.zona-b { left: 5.3cqw; top: -3cqw; }
.grupo-ferramentas { display: flex; flex-direction: column; align-items: center; gap: .3cqw; padding: .4cqw 0; border: 1px solid #001117; border-radius: .7cqw; background: #10313c; box-shadow: 0 1px 3px #0008; }
.grupo-ferramentas img { display: block; width: 2.6cqw; height: 2.6cqw; filter: invert(1); }
.painel-perfil { position: absolute; inset: 0 0 0 65%; display: flex; flex-direction: column; background: #071c24; border-left: 2px solid #001118; }
.cabecalho-jogo { position: relative; height: 7%; flex: none; display: flex; align-items: center; gap: .6cqw; padding: .35cqw .8cqw; background: #09242b; border-bottom: 1px solid #345761; }
.zona-d { left: 1.2cqw; top: 3.5cqw; }
.avatar-esquema, .nivel-esquema { flex: none; width: 3cqw; height: 3cqw; border-radius: 50%; background: #725d4d; border: 1px solid #a69b80; }
.nivel-esquema { background: #442162; border-color: #9d68bd; }
.barras-esquema { display: grid; flex: 1; gap: .2cqw; }
.barras-esquema i { height: .65cqw; background: #2f8e4b; }.barras-esquema i:nth-child(2) { width: 83%; background: #a4493c; }.barras-esquema i:nth-child(3) { width: 90%; background: #3160a0; }
.moedas-esquema, .busca-esquema { font-size: 2cqw; color: #d9c999; }
.busca-esquema { color: #8bb9c4; }
.perfil-capa { position: relative; height: 26%; flex: none; display: flex; align-items: end; gap: 1cqw; padding: 1cqw 1.6cqw; background: radial-gradient(circle at 49% 55%, #f1a738, #d25925 33%, #8b321f 66%, #211c22); border-bottom: 2px solid #102d36; }
.perfil-capa::before { content: ''; position: absolute; inset: 0; background: repeating-linear-gradient(110deg, transparent 0 20px, #23191a36 21px 25px, transparent 26px 54px); }
.foto-esquema { position: relative; flex: none; width: 8cqw; height: 8cqw; border: 2px solid #1b2c2f; border-radius: 50%; background: radial-gradient(circle at 50% 34%, #a2775e 0 18%, transparent 19%), radial-gradient(ellipse at 50% 90%, #493a38 0 41%, transparent 42%), #6f4634; }
.perfil-texto { position: relative; align-self: end; padding-bottom: 1.4cqw; color: white; font: bold 1.7cqw Arial, sans-serif; text-shadow: 0 1px 3px #000; }.perfil-texto small { display: block; margin-top: .5cqw; font-size: .9cqw; }
.abas-perfil { position: relative; height: 7%; flex: none; overflow: hidden; padding: 1.1cqw 1cqw; white-space: nowrap; background: #0c2730; border-bottom: 1px solid #3d6266; color: #9fc0c4; font-size: 1cqw; }
.zona-e { left: 1cqw; top: 2cqw; }
.conteudo-perfil { flex: 1; min-height: 0; padding: 1.5cqw 1.1cqw; overflow: hidden; }
.titulo-inventario { display: block; margin-bottom: 1cqw; color: #7aa8ac; font: bold 1.2cqw Arial, sans-serif; letter-spacing: .08em; }
.acoes-inventario { display: flex; gap: .4cqw; height: 4cqw; margin-bottom: 2.4cqw; }.acoes-inventario span { display: grid; place-items: center; border: 1px solid #a74d3f; border-radius: .5cqw; background: #8e2828; color: white; font: bold 1.2cqw Arial, sans-serif; }.acoes-inventario span:first-child { flex: 3; }.acoes-inventario span:last-child { flex: 1; background: #72511d; border-color: #b98a35; }
.itens-inventario { display: flex; gap: .35cqw; }.itens-inventario i { display: block; width: 4.2cqw; height: 5.2cqw; border: 1px solid #214651; border-radius: .5cqw; background: radial-gradient(circle at 50% 42%, #84908c 0 22%, transparent 23%), linear-gradient(#123443, #0b2732); }.itens-inventario i:nth-child(2n) { background: radial-gradient(circle at 50% 42%, #8c774e 0 22%, transparent 23%), linear-gradient(#18372f, #0b2828); }
.titulo-equipamento { margin-top: 2cqw; }.equipamento-esquema i { height: 5.8cqw; }
.atalhos-perfil { position: relative; height: 10%; flex: none; display: flex; justify-content: space-around; align-items: center; padding: .5cqw 1cqw; background: #0b2730; border-top: 1px solid #31515c; }.atalhos-perfil > span:not(.marcador-zona) { display: flex; flex-direction: column; align-items: center; gap: .25cqw; font-size: .9cqw; }.atalhos-perfil img { width: 2.5cqw; height: 2.5cqw; filter: invert(1); }.zona-f { left: -2cqw; bottom: 1cqw; }
.atalhos-secao { position: absolute; left: -9.5%; top: 44%; width: 9.5%; height: 46%; display: flex; flex-direction: column; justify-content: space-around; align-items: center; padding: .4cqw 0; border: 1px solid #00131a; border-radius: .7cqw 0 0 .7cqw; background: #0e303b; }.atalhos-secao img { display: block; width: 2cqw; height: 2cqw; filter: invert(1); }.atalhos-secao img:nth-of-type(4) { filter: grayscale(1); }.zona-c { left: -3cqw; top: 1cqw; }
.zonas-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px 20px; }
.zonas-grid div { border-top: 1px solid var(--tinta); padding-top: 8px; break-inside: avoid; }
.zonas-grid strong { font: bold 12px 'Courier New', monospace; }
.zonas-grid p { font-size: 14px; margin: 8px 0 0; }
.figura-ferramentas { margin: 24px 0 30px; border: 1px solid var(--tinta); break-inside: avoid; }
.ferramentas-corpo { grid-template-columns: 110px minmax(0, 1fr); }
.barra-ferramentas { border: 2px solid var(--tinta); border-radius: 9px; padding: 5px; background: white; }
.ferramenta-botao { height: 56px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1px; font: 12px/1.1 Arial, sans-serif; }
.ferramenta-botao.ativo { border: 1px solid var(--tinta); border-radius: 4px; }
.ferramenta-botao.ferramenta-separada { border-top: 1px solid var(--linha); margin-top: 5px; padding-top: 5px; }
.ferramenta-botao img { width: 22px; height: 22px; }
.ferramentas-lista li.ferramentas-grupo { border-top: 1px solid var(--tinta); margin-top: 5px; padding-top: 5px; }
.portas-inferiores > p:not(.nota-metodo) { max-width: 800px; }
.figura-portas { margin: 24px 0 30px; border: 1px solid var(--tinta); break-inside: avoid; }
.portas-moldura { margin: 18px 22px; border: 2px solid var(--tinta); border-radius: 9px; padding: 5px; background: white; }
.portas-faixa { display: grid; grid-template-columns: repeat(5, 1fr); list-style: none; padding: 0; margin: 0; }
.portas-faixa li { min-width: 0; min-height: 93px; border: 1px solid transparent; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; }
.portas-faixa li.ativa { border-color: var(--tinta); border-radius: 4px; }
.portas-faixa strong { font: 12px Arial, sans-serif; overflow: hidden; text-overflow: ellipsis; max-width: 100%; }
.simbolo-porta img { display: block; width: 31px; height: 31px; }
.tabela-botoes { margin-top: 22px; }
.tabela-botoes th:first-child { width: 170px; }
.tabela-botoes tbody th { background: transparent; font: bold 13px/1.35 Georgia, 'Times New Roman', serif; text-transform: none; white-space: nowrap; }
.tabela-botoes td { font-size: 14px; line-height: 1.4; }
.tabela-botoes small { display: block; margin-top: 5px; color: var(--cinza); font: 11px/1.3 'Courier New', monospace; }
.tabela-botoes tr, .tabela-acessos tr { break-inside: avoid; }
.figura-abas { margin: 24px 0 30px; border: 1px solid var(--tinta); break-inside: avoid; }
.abas-moldura { margin: 18px 16px; padding: 5px; border: 2px solid var(--tinta); border-radius: 9px; background: white; }
.abas-faixa { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); }
.aba-item { min-width: 0; min-height: 72px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; padding: 3px 1px; border: 1px solid transparent; font: 10px/1.1 Arial, sans-serif; }
.aba-item.ativa { border-color: var(--tinta); border-radius: 4px; }
.aba-item img { width: 22px; height: 22px; }
.aba-item span { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tabela-abas { margin-top: 22px; }
.tabela-abas tbody th { background: transparent; font: bold 13px/1.35 Georgia, 'Times New Roman', serif; text-transform: none; }
.tabela-abas td { font-size: 13px; line-height: 1.38; }
.tabela-abas td:nth-child(2) { min-width: 210px; }
.secao-curta { max-width: 770px; }
.rotas table { margin-top: 19px; }
.rotas td:first-child { font-weight: bold; }
.rotas td:nth-child(2) { min-width: 220px; }
.sistema-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 26px; }
.sistema-grid div { border-top: 2px solid var(--tinta); padding-top: 12px; }
.sistema-grid span { font: bold 11px 'Courier New', monospace; }
.sistema-grid p { margin-top: 11px; font-size: 15px; }
.nota-metodo { margin: 20px 0 0; padding: 14px 18px; border: 1px solid var(--tinta); font-size: 14px; }
.fontes { padding-bottom: 45px; }
.fontes li { padding: 4px 0; font-size: 14px; }
@media (max-width: 720px) {
  .abertura-capitulo { padding-top: 42px; }
  .abertura-capitulo h1 { font-size: clamp(47px, 12vw, 70px); }
  .numero-capitulo { font-size: 105px; top: 28px; }
  .lead { font-size: 19px; }
  .cabecalho-figura { flex-wrap: wrap; }
  .cabecalho-figura span:last-child { width: 100%; }
  .corpo-figura { grid-template-columns: 78px minmax(0, 1fr); gap: 13px; padding: 12px; }
  .barra-jogo { padding: 3px; }
  .menu-item { height: 59px; font-size: 10px; }
  .mapa-itens li { min-height: 59px; grid-template-columns: 26px 1fr; gap: 5px; }
  .mapa-itens strong { font-size: 14px; }
  .mapa-itens small { display: block; font-size: 10px; }
  .mapa-itens b { display: none; }
  .sistema-grid { grid-template-columns: 1fr; }
  .portas-moldura { margin: 10px; padding: 3px; }
  .portas-faixa li { min-height: 74px; }
  .portas-faixa strong { font-size: 9px; }
  .simbolo-porta img { width: 23px; height: 23px; }
  .zonas-grid { grid-template-columns: 1fr 1fr; }
  .tabela-botoes th:first-child { width: 100px; }
  .abas-moldura { margin: 10px 6px; padding: 2px; }
  .aba-item { min-height: 54px; font-size: 7px; gap: 2px; }
  .aba-item img { width: 16px; height: 16px; }
  .ferramentas-corpo { grid-template-columns: 78px minmax(0, 1fr); }
  .ferramenta-botao { height: 59px; font-size: 10px; }
  .ferramentas-lista li { min-height: 59px; }
}
@media print {
  .abertura-capitulo { padding-top: 28px; }
  .abertura-capitulo h1 { font-size: 68px; }
  .numero-capitulo { color: #e8e8e8; }
  .figura-menu { break-inside: avoid; margin-bottom: 35px; }
  .corpo-figura { padding: 12px 20px; }
  .menu-item, .mapa-itens li { height: 47px; min-height: 47px; }
  .rotas, .camadas, .portas-inferiores, .paineis, .abas-internas, .sistema, .fontes { margin-top: 28px; }
  .paineis { break-before: page; margin-top: 0; }
  .abas-internas { break-before: page; margin-top: 0; }
  .abas-internas { padding-top: 16px; }
  .abas-internas > p { font-size: 15px; line-height: 1.35; margin-bottom: 12px; }
  .figura-abas { margin: 14px 0 18px; }
  .abas-moldura { margin: 10px 12px; }
  .fontes { break-before: page; margin-top: 0; }
  .nota-metodo { break-inside: avoid; }
  .rotas th, .rotas td { padding: 6px 8px; }
  .figura-camadas { break-inside: avoid; }
  .ferramenta-botao, .ferramentas-lista li { height: 47px; min-height: 47px; }
  .sistema h2 { break-after: avoid; }
  .zonas-grid p { font-size: 12px; line-height: 1.35; }
  .tabela-botoes th, .tabela-botoes td, .tabela-acessos th, .tabela-acessos td { padding: 6px 8px; }
  .tabela-botoes td { font-size: 12px; line-height: 1.3; }
  .aba-item { min-height: 46px; font-size: 7px; }
  .aba-item img { width: 18px; height: 18px; }
  .tabela-abas th, .tabela-abas td { padding: 4px 7px; }
  .tabela-abas td { font-size: 12px; line-height: 1.3; }
  .fontes { padding-bottom: 0; }
  .fontes li { font-size: 12px; line-height: 1.3; padding: 2px 0; }
  .sistema-grid div { break-inside: avoid; }
}
