/* Reino de Pedra — combate: envio de ataque, batalha, relatórios de combate e defesas (sempre com os tokens de tokens.css). */
.env-nota { font-size: var(--fs-2); margin: var(--esp-2) 0; }
.env-alternar { width: 100%; margin-top: var(--esp-3); }

/* placar da batalha: quem ganha, baixas de cada lado e progresso, ao vivo */
.placar-lados { display: grid; grid-template-columns: 1fr auto 1fr; gap: var(--esp-2); align-items: start; }
.placar-lado { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.placar-lado.eles { text-align: right; align-items: flex-end; }
.placar-lado b { font-size: 34px; line-height: 1.05; }
.placar-lado.meu b { color: var(--grafico-meu); }
.placar-lado.eles b { color: var(--grafico-hostil); }
.placar-lado small { font-size: var(--fs-1); line-height: 1.3; }
.placar-baixas { font-weight: 700; color: var(--cor-perigo); }
.placar-barra { position: relative; display: flex; gap: 2px; height: 16px; margin-top: var(--esp-3); border-radius: 8px; overflow: hidden; background: var(--cor-superficie-3); }
.placar-barra i { display: block; height: 100%; transition: width .5s linear; }
.placar-barra i.d { background: var(--grafico-meu); }
.placar-barra i.a { background: var(--grafico-hostil); }
.placar-meio { position: absolute; left: 50%; top: 0; bottom: 0; width: 2px; margin-left: -1px; background: var(--cor-texto); opacity: .55; }
.placar-tempo { margin-top: var(--esp-2); font-size: var(--fs-1); }
.bat-composicao { display: flex; flex-direction: column; gap: 2px; margin-top: var(--esp-2); }
.frente { display: block; padding: var(--esp-3); color: inherit; text-decoration: none; border-bottom: 1px solid var(--cor-borda); }
.frente:last-child { border-bottom: 0; }
a.frente:hover { background: var(--cor-superficie-2); }
.frente .placar-barra { height: 10px; margin: var(--esp-2) 0; }
.frente-topo { display: flex; align-items: center; gap: var(--esp-2); flex-wrap: wrap; }
.frente-topo small { margin-left: auto; }
.bt-base { fill: var(--cor-perigo); stroke: var(--cor-superficie); stroke-width: 2; }
.bt-trilho { fill: var(--grafico-hostil); }
.bt-meu { fill: var(--grafico-meu); }
.aviso-link { cursor: pointer; pointer-events: auto; }
.obj-batalha { cursor: pointer; }
.aviso-abrir { display: block; margin-top: 4px; font-size: var(--fs-2); color: #efe9dd; text-decoration: underline; }
.tela-envio .conteudo-tela, .tela-batalha .conteudo-tela { padding-bottom: calc(var(--alvo) * 3); }
.tela-envio .escolha.bloqueado .ico-placa, .tela-envio .escolha.bloqueado b { opacity: .55; }
.tela-envio .obj-qtd { display: flex; align-items: center; gap: var(--esp-2); padding-left: 40px; }
.tela-envio .obj-add { margin-top: var(--esp-3); display: flex; flex-direction: column; gap: var(--esp-2); }
.tela-envio .obj-carga { margin-top: var(--esp-3); }
.faixa-batalha { text-decoration: none; margin-bottom: var(--esp-3); }
.bat-estandarte { margin-top: var(--esp-3); gap: var(--esp-2); }
.rel-acoes { flex-wrap: wrap; gap: var(--esp-2); margin-top: var(--esp-3); }
.torre-card .ext-numeros { margin: 0; }
.torre-card .barra { margin-top: var(--esp-1); }
.combate-faixa { position: absolute; left: var(--esp-4); right: var(--esp-4); top: 64px; z-index: var(--z-barras); display: flex; gap: var(--esp-2); align-items: center; }
.combate-faixa[hidden] { display: none; }
.combate-faixa span { flex: 1; font-size: var(--fs-2); }
.lc-corpo .selo-perigo { align-self: flex-start; }
.bat-acoes[hidden] { display: none; }
.forca-inimiga .bat-lado b { font-size: 26px; }
.forca-inimiga .linha-entre { flex-wrap: wrap; gap: var(--esp-2); }
.forca-inimiga .barra-dupla { margin-top: var(--esp-1); }
