/* Relatórios de batalha — módulo visual independente. */
.battle-report-modal {
  width:min(930px,96vw);
  max-height:94vh;
  border:3px solid #6d4e2d;
  border-radius:7px;
  background:#d7bd91;
}
.battle-report-modal .modal-head { display:none; }
.battle-report-modal .modal-body { padding:0; background:#d8bd90; }
.battle-report-modal .modal-actions {
  border-top:2px solid #7c5a35;
  background:#b99466;
  padding:10px 16px;
}
.battle-report-sheet {
  position:relative;
  min-height:650px;
  padding:18px 22px 20px;
  overflow:hidden;
  color:#3d2d20;
  background:
    linear-gradient(90deg,rgba(107,76,42,.13) 1px,transparent 1px),
    linear-gradient(rgba(107,76,42,.08) 1px,transparent 1px),
    radial-gradient(circle at 15% 12%,#f1dfbd 0 12%,transparent 13%),
    linear-gradient(#e8d2a7,#cda879);
  background-size:48px 48px,48px 48px,auto,auto;
  box-shadow:inset 0 0 0 8px #ead8b6,inset 0 0 0 11px #86643e;
}
.battle-report-sheet::before,
.battle-report-sheet::after {
  content:"";
  position:absolute;
  left:8px;
  right:8px;
  height:16px;
  opacity:.6;
  background:repeating-linear-gradient(90deg,#80613d 0 22px,#b58f5e 22px 42px);
}
.battle-report-sheet::before { top:8px; }
.battle-report-sheet::after { bottom:8px; }
.battle-report-ribbon {
  position:relative;
  z-index:2;
  width:min(470px,72%);
  margin:-5px auto 6px;
  padding:10px 28px 9px;
  text-align:center;
  color:#352719;
  background:linear-gradient(#f3bd29,#df8f09);
  border:2px solid #99600b;
  box-shadow:0 5px 0 #8d5712,0 8px 15px #3a220955;
  clip-path:polygon(7% 0,93% 0,100% 50%,93% 100%,7% 100%,0 50%);
}
.battle-report-sheet.defeat .battle-report-ribbon {
  color:#fff0df;
  background:linear-gradient(#b64437,#7e211e);
  border-color:#5c1715;
  box-shadow:0 5px 0 #5d1a16,0 8px 15px #3a090955;
}
.battle-report-ribbon h2 { margin:0; font:800 28px Georgia,serif; }
.battle-report-ribbon span { display:block; margin-top:3px; font-size:12px; font-weight:800; }
.battle-report-meta {
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin:0 9px -44px;
}
.battle-report-meta > div:first-child {
  display:flex;
  flex-direction:column;
  padding:8px 13px;
  border:2px solid #75532f;
  border-radius:8px;
  background:#e9d4ae;
  box-shadow:0 3px 8px #3b281855;
}
.battle-report-meta small { margin-top:3px; color:#6d543c; }
.battle-report-result-seal {
  display:grid;
  place-items:center;
  width:64px;
  height:64px;
  border:4px solid #f0d077;
  border-radius:50%;
  background:#382518;
  box-shadow:0 4px 12px #2c1a0e77;
  font-size:34px;
}
.battle-report-scene {
  position:relative;
  height:230px;
  margin:0 -10px 10px;
  overflow:hidden;
  border:2px solid #765333;
  background:
    linear-gradient(165deg,transparent 45%,#526f42 46% 100%),
    radial-gradient(circle at 28% 22%,#f7dfa8 0 8%,transparent 9%),
    linear-gradient(#9fcddd 0 56%,#778e5e 57% 100%);
  box-shadow:inset 0 -40px 50px #2e361e55;
}
.battle-report-scene::before {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(130deg,transparent 42%,#5d493c66 43% 46%,transparent 47%),linear-gradient(30deg,transparent 52%,#4c3d3266 53% 56%,transparent 57%);
}
.battle-scene-army {
  position:absolute;
  left:12%;
  bottom:22px;
  z-index:2;
  font-size:58px;
  letter-spacing:-12px;
  filter:drop-shadow(0 5px 4px #1a140e99);
}
.battle-scene-fortress {
  position:absolute;
  right:13%;
  bottom:9px;
  z-index:2;
  font-size:148px;
  filter:grayscale(.15) drop-shadow(0 10px 7px #1a140eaa);
}
.battle-summary-grid {
  display:grid;
  grid-template-columns:1fr 220px 1fr;
  gap:10px;
  position:relative;
  z-index:2;
}
.battle-lord-card,
.battle-result-card,
.battle-loot-section,
.battle-report-message {
  border:2px solid #765435;
  background:#e7cfaa;
  box-shadow:inset 0 1px #fff8,0 3px 7px #4e311d44;
}
.battle-lord-card { padding:12px; text-align:center; }
.battle-lord-card h3 { margin:2px 0; color:#442d1c; font:800 18px Georgia,serif; }
.battle-lord-card > span { color:#70563e; font-size:12px; }
.battle-lord-card.attacker { border-top:7px solid #c52c27; }
.battle-lord-card.defender { border-top:7px solid #252b2d; }
.battle-big-stat { margin:10px auto 7px; }
.battle-big-stat b { display:block; color:#392719; font-size:29px; }
.battle-big-stat small { color:#765b40; }
.battle-mini-stats { display:grid; grid-template-columns:1fr 1fr; gap:5px; }
.battle-mini-stats span { padding:5px; border:1px solid #a47b4c; background:#f3dfbd; font-size:11px; }
.battle-mini-stats b { display:block; margin-top:2px; font-size:15px; }
.battle-result-card { display:grid; grid-template-columns:1fr 1fr; gap:6px; padding:9px; align-content:center; }
.battle-result-card > div { padding:8px 5px; text-align:center; border:1px solid #a47b4c; background:#f1d9b2; }
.battle-result-card span { display:block; color:#76553a; font-size:10px; text-transform:uppercase; }
.battle-result-card b { display:block; margin-top:3px; font-size:17px; }
.battle-result-card .positive { color:#3b7627; }
.battle-result-card .negative { color:#a22c28; }
.battle-loot-section { position:relative; z-index:2; margin-top:10px; padding:10px 12px; }
.battle-loot-section h4 { margin:0 0 7px; text-align:center; font:800 17px Georgia,serif; }
.battle-loot-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:7px; }
.battle-loot-card { display:flex; align-items:center; justify-content:center; gap:7px; min-height:42px; border:1px solid #9c7447; background:#f3dfbd; }
.battle-loot-card .resource-svg-icon { width:28px; height:28px; flex-basis:28px; }
.battle-loot-card b { font-size:17px; }
.battle-loot-section > small { display:block; margin-top:7px; text-align:center; color:#6b5139; }
.battle-report-message { position:relative; z-index:2; margin:10px 0 0; padding:10px 14px; text-align:center; font-weight:700; }

.battle-details-modal {
  width:min(1060px,97vw);
  max-height:95vh;
  border:3px solid #6e4f2e;
  border-radius:7px;
  background:#d7bd91;
}
.battle-details-modal .modal-head { display:none; }
.battle-details-modal .modal-body { padding:0; background:#d6b889; }
.battle-details-modal .modal-actions { border-top:2px solid #745231; background:#b48d60; }
.battle-details-sheet {
  min-height:670px;
  padding:20px;
  color:#3e2d20;
  background:linear-gradient(#ead6b1,#cba574);
  box-shadow:inset 0 0 0 8px #ead7b6,inset 0 0 0 11px #81603d;
}
.battle-details-head {
  display:grid;
  grid-template-columns:1.2fr 1fr 1.1fr auto;
  gap:7px;
  margin-bottom:12px;
  padding:10px;
  border:2px solid #765333;
  background:#e8d0aa;
}
.battle-details-head > div { display:flex; flex-direction:column; padding:5px 8px; border-right:1px solid #a47d52; }
.battle-details-head > div:last-child { border-right:0; }
.battle-details-head small { color:#76593f; }
.battle-detail-outcome { align-items:center; justify-content:center; color:white; font-weight:900; text-transform:uppercase; }
.battle-detail-outcome.victory { background:#5e8c34; }
.battle-detail-outcome.defeat { background:#9c3732; }
.battle-detail-sectors { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; }
.battle-sector-card { overflow:hidden; border:2px solid #765333; background:#e8d0aa; opacity:.75; }
.battle-sector-card.used { opacity:1; }
.battle-sector-card.breached { box-shadow:inset 0 0 0 3px #79a543; }
.battle-sector-card > header { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:6px; padding:8px; background:#a77b4e; color:#fff7e2; }
.battle-sector-card.breached > header { background:#6c903b; }
.battle-sector-card.unused > header { background:#7d7468; }
.battle-sector-card h4 { margin:0; font:800 15px Georgia,serif; }
.battle-sector-card header b { padding:3px 6px; border-radius:3px; background:#34261d77; font-size:10px; }
.battle-fort-bonuses { display:flex; justify-content:center; gap:5px; padding:6px; border-bottom:1px solid #a37c4e; background:#f1dcba; font-size:11px; }
.battle-sector-versus { display:grid; grid-template-columns:1fr 30px 1fr; gap:4px; padding:9px; }
.battle-side { min-width:0; text-align:center; }
.battle-side h5 { margin:0 0 4px; }
.attack-side h5 { color:#a22926; }
.defense-side h5 { color:#222a2c; }
.battle-sector-total { padding:4px; border:1px solid #987044; background:#f6e3c2; font-size:22px; font-weight:900; }
.battle-sector-arrow { display:grid; place-items:center; font-size:22px; }
.battle-chip-row { display:flex; flex-wrap:wrap; justify-content:center; gap:3px; min-height:29px; margin:5px 0; }
.battle-troop-chip { display:inline-flex; align-items:center; gap:2px; padding:3px 5px; border:1px solid #a57b4c; border-radius:3px; background:#f7e4c4; font-size:11px; }
.battle-troop-chip.empty { color:#866a4e; }
.battle-side small { display:block; color:#73583e; }
.battle-courtyard-card { margin-top:11px; overflow:hidden; border:2px solid #765333; background:#ead2aa; }
.battle-courtyard-card > header { display:flex; align-items:center; justify-content:space-between; padding:9px 12px; color:white; background:#9f762f; }
.battle-courtyard-card.victory > header { background:#648f38; }
.battle-courtyard-card.defeat > header { background:#9b3832; }
.battle-courtyard-card h4 { margin:0; font:800 17px Georgia,serif; }
.battle-courtyard-versus { display:grid; grid-template-columns:1fr 240px 1fr; gap:10px; align-items:stretch; padding:12px; }
.battle-courtyard-versus > div { display:flex; flex-direction:column; justify-content:center; text-align:center; padding:9px; border:1px solid #9c7448; background:#f3dfbd; }
.battle-courtyard-versus small { color:#74583f; }
.battle-courtyard-versus b { margin:4px 0; font-size:27px; }
.battle-courtyard-versus span { margin-top:3px; font-size:12px; }
.battle-courtyard-result { font-size:38px; }
.battle-courtyard-result strong { display:block; margin-top:5px; font-size:15px; }
.battle-full-breakdown { margin-top:11px; border:2px solid #765333; background:#e8d0aa; }
.battle-full-breakdown summary { cursor:pointer; padding:10px 12px; font-weight:900; background:#b18557; color:#fff8e6; }
.battle-breakdown-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; padding:10px; }
.battle-breakdown-grid section { padding:8px; border:1px solid #9f774b; background:#f3dfbd; }
.battle-breakdown-grid h4 { margin:0 0 6px; text-align:center; }
.battle-troop-row { display:flex; justify-content:space-between; gap:8px; padding:5px 4px; border-bottom:1px solid #c5a77e; font-size:12px; }
.battle-troop-row:last-child { border-bottom:0; }
.battle-empty-troops { padding:10px; text-align:center; color:#7c6349; }
.battle-report-table-summary { display:inline-flex; flex-direction:column; gap:4px; margin-right:8px; vertical-align:middle; }
.battle-report-table-summary small { color:#aeb8c1; }
.battle-report-table-summary .resource-svg-line { justify-content:flex-start; }
.battle-report-open-btn { vertical-align:middle; }

@media (max-width:820px) {
  .battle-report-sheet { padding:16px 14px; }
  .battle-summary-grid { grid-template-columns:1fr; }
  .battle-report-scene { height:170px; }
  .battle-scene-fortress { font-size:105px; }
  .battle-scene-army { font-size:42px; }
  .battle-details-head { grid-template-columns:1fr 1fr; }
  .battle-detail-sectors { grid-template-columns:1fr; }
  .battle-courtyard-versus { grid-template-columns:1fr; }
  .battle-breakdown-grid { grid-template-columns:1fr; }
}


/* v0.1.74 — equipamento encontrado no relatório de batalha */
.battle-equipment-section {
  margin: 12px 12px 0;
  padding: 10px 12px;
  border: 2px solid #7b603c;
  background: linear-gradient(180deg, rgba(254, 232, 184, 0.96), rgba(220, 184, 122, 0.92));
  box-shadow: inset 0 0 0 1px rgba(255, 250, 220, 0.45);
}

.battle-equipment-section h4 {
  margin: 0 0 8px;
  text-align: center;
  font-size: 18px;
  color: #4d3320;
}

.battle-equipment-card {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  border: 2px solid var(--equipment-rarity, #b8873c);
  background: rgba(255, 243, 206, 0.82);
  padding: 9px;
}

.battle-equipment-icon {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  border: 3px solid var(--equipment-rarity, #b8873c);
  background: radial-gradient(circle, #fff4c8 0%, #d7a548 72%);
  box-shadow: 0 3px 0 rgba(75, 42, 20, 0.45), inset 0 0 0 2px rgba(255,255,255,0.4);
  font-size: 30px;
}

.battle-equipment-info {
  display: grid;
  gap: 3px;
  color: #4d3320;
}

.battle-equipment-info small {
  color: #755237;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .03em;
}

.battle-equipment-info strong {
  font-size: 18px;
  color: #2f2116;
}

.battle-equipment-info em {
  font-style: normal;
  font-weight: 800;
  color: #6b412a;
}

.battle-equipment-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 4px;
}

.battle-equipment-stats span {
  padding: 4px 7px;
  border: 1px solid rgba(91, 59, 32, 0.25);
  background: rgba(255,255,255,0.34);
  border-radius: 5px;
  font-size: 12px;
}

.battle-equipment-section > small {
  display: block;
  margin-top: 6px;
  text-align: center;
  color: #6f5035;
}
