/* Pergaminho de invasão; escopo exclusivo desta página. */
body.inv-body { background-image:url('../img/invasor/pergaminho-invasao.png') !important; background-color:#e9c66b !important; color:#20334b; }
.inv-body .inv-page { max-width:1380px; padding:22px 28px 48px 64px; position:relative; }
.inv-page::before { content:''; position:absolute; left:14px; top:122px; bottom:32px; width:30px; border-radius:12px; border:3px double #a38032; background:repeating-linear-gradient(0deg,transparent 0 135px,#c7a958 136px 141px,transparent 142px 149px,#c7a958 150px 155px,transparent 156px 280px),linear-gradient(90deg,#071b2d,#32506b 45%,#0b263e); box-shadow:3px 5px 8px #38270b66; pointer-events:none; }
.inv-body .inv-page-header { justify-content:center; text-align:center; border:0; min-height:106px; padding:0 0 14px; margin:0; }
.inv-body .inv-page-titulo { font-family:Bangers,Georgia,serif; font-size:65px; line-height:1; color:#141b1d; letter-spacing:4px; text-shadow:1px 2px #f6de90; }
.inv-body .inv-page-subtitulo { color:#952e1f; font-weight:900; font-size:17px; letter-spacing:2px; }
.inv-body .inv-layout-sem-sidebar { grid-template-columns:minmax(0,1fr) 300px !important; gap:14px; margin-top:0; }
.inv-col-centro,.inv-col-direita { min-width:0; }
.inv-body :is(.invasor-card-single,.inv-recomp-card,.inv-dano-rank-card,.inv-log-section,.invasor-waiting) {
 color:#21344b; border:4px double #93702d; border-radius:8px; clip-path:none;
 background:linear-gradient(100deg,#f5dfabec,#fff2cce8,#e9cc8beb),url('../img/invasor/pergaminho-invasao.png') center / cover;
 box-shadow:inset 0 0 0 2px #fff1bb,0 4px 9px #47371544; padding:14px;
}
.inv-body :is(.invasor-card-single,.inv-recomp-card,.inv-dano-rank-card,.inv-log-section)::before { display:none; }
.inv-body .invasor-card-single { padding:0 0 18px; }
.inv-body .inv-card-topo { display:block; position:relative; padding:0; margin:0; text-align:left; }
.inv-body .inv-card-foto-wrap { width:100%; height:auto; aspect-ratio:2.8 / 1; border:0; border-radius:4px 4px 0 0; overflow:hidden; background:#172c3b; margin:0; }
.inv-body .inv-card-foto-wrap img { width:100%; height:100%; object-fit:cover; object-position:center 38%; display:block; }
.inv-body .inv-card-topo-info { position:absolute; top:0; left:0; width:100%; padding:22px; background:linear-gradient(#071827c9,transparent); }
.inv-body .inv-card-nome { font:800 36px/1.1 Georgia,serif; color:#fff0c6; text-shadow:0 2px 5px #000; }
.inv-body .inv-card-desc { color:#fff4df; font-size:12px; max-width:280px; margin-top:9px; text-shadow:0 1px 2px #000; }
.inv-body .inv-card-hp { margin:14px 24px; padding:0; }
.inv-body .inv-hp-label { color:#273347; font-weight:800; font-size:11px; }
.inv-body .inv-hp-bar-bg { height:22px; border:3px double #b18e43; border-radius:5px; background:#142032; box-shadow:inset 0 2px 3px #0008; }
.inv-body .inv-hp-bar-fill { background:linear-gradient(#fa7765,#c62e28 50%,#891e1b); height:100%; }
.inv-body .inv-actions { display:flex; justify-content:center; align-items:stretch; gap:14px; padding:4px 16px; }
.inv-body .inv-action-btn.btn-atacar { flex:0 1 280px; min-height:54px; font:700 25px Georgia,serif; color:#ffe4a3; border:5px double #bd974a; border-radius:9px; background:linear-gradient(#234b6a,#0c2a43); box-shadow:0 0 0 1px #4b421f,inset 0 0 0 2px #173750; }
.inv-body .inv-action-btn:disabled { opacity:.55; cursor:wait; }
#invSelectedTechnique { max-width:180px; min-width:90px; display:flex; align-items:center; justify-content:center; gap:8px; padding:6px 10px; border:3px double #ab843b; background:#f5e8c4; border-radius:5px; color:#1f354f; cursor:pointer; font:800 11px Nunito,sans-serif; }
#invSelectedTechnique img { width:46px; height:46px; object-fit:cover; border-radius:3px; }
#invSelectedTechnique span { max-width:95px; }
.inv-body .inv-recomp-titulo,.inv-body .inv-log-header { margin:-14px -14px 12px; padding:10px 12px; background:linear-gradient(#234d72,#0b2943); color:#ffe5a6; border-bottom:3px double #b7954a; font-size:12px; letter-spacing:.8px; }
.inv-body .inv-log-titulo { color:#ffe5a6; font-size:11px; }
.inv-ranking-note { font-size:10px; color:#776039; margin:0 0 8px; }
.inv-body .inv-dano-rank-item { display:grid; grid-template-columns:25px minmax(0,1fr) auto; gap:3px 7px; padding:5px 0; border-bottom:1px solid #b1955555; }
.inv-body .inv-dano-rank-nome { color:#263e55; font-size:11px; overflow-wrap:anywhere; }
.inv-body .inv-dano-rank-val { color:#5b4221; font-size:11px; }
.inv-body .inv-dano-rank-num { color:#7a5a20; font-size:11px; }
.inv-body .inv-dano-rank-premio { grid-column:2 / -1; color:#8a641e; font-size:9px; }
.inv-body .inv-dano-rank-me { font-weight:900; }
.inv-scroll-bottom { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:14px; margin-top:14px; }
.inv-body .inv-log-section { margin:0; display:flex; flex-direction:column; min-height:0; }
.inv-body .inv-log-lista { flex:1 1 0; min-height:200px; max-height:none; overflow-y:auto; }
@media(max-width:900px) { .inv-body .inv-log-lista { flex:initial; max-height:360px; } }
.inv-body .inv-log-item { display:flex; gap:9px; padding:7px 0; border-bottom:1px solid #b1955533; }
.inv-body .inv-log-hora { color:#886e39; font-size:10px; flex-shrink:0; }
.inv-body .inv-log-texto,.inv-log-empty { font-size:11px; color:#283c51; overflow-wrap:anywhere; }
.inv-body .inv-recomp-item { color:#243d52; padding:8px 6px; border-bottom:1px solid #b1955544; }
.inv-body .inv-recomp-nome { color:#4a4c42; }
.inv-body .inv-recomp-val { color:#86611e; }
#invTechniqueDialog { width:min(650px,calc(100% - 24px)); max-height:80vh; padding:18px; border:4px double #b49143; border-radius:8px; background:#f9efd6 url('../img/status/card-nuvens.png') center/cover; color:#1a3550; }
#invTechniqueDialog::backdrop { background:#071728ba; }
.inv-technique-title { display:flex; justify-content:space-between; align-items:center; gap:12px; }
.inv-technique-title h2 { font-size:19px; margin:0; }
.inv-technique-title button { border:0; background:none; font-size:28px; cursor:pointer; }
#invTechniqueDialog > p { font-size:12px; }
#invTechniqueChoices { display:grid; gap:8px; }
.inv-technique-choice { display:grid; grid-template-columns:48px minmax(0,1fr); text-align:left; gap:3px 10px; padding:10px; background:#fff8e7; border:1px solid #b69a5d; border-radius:4px; cursor:pointer; color:#213b53; }
.inv-technique-choice img { grid-row:span 2; width:48px; height:48px; object-fit:cover; border-radius:3px; }
.inv-technique-choice span { font-weight:800; }
.inv-technique-choice small { grid-column:2; }
.inv-technique-choice[aria-pressed=true] { outline:2px solid #285d80; background:#e2edf0; }
.inv-body button:focus-visible { outline:3px solid #4294ba; outline-offset:3px; }
@media(max-width:900px) {
 .inv-body .inv-col-direita { display:flex !important; position:static; }
 .inv-body .inv-layout-sem-sidebar { grid-template-columns:minmax(0,1fr) !important; }
 .inv-body .inv-page { padding:16px 16px 32px 40px; }
 .inv-page::before { left:7px; width:20px; }
 .inv-scroll-bottom { grid-template-columns:1fr; }
 .inv-body .inv-card-nome { font-size:27px; }
}
@media(max-width:600px) {
 .inv-body .inv-page { padding:12px 10px 24px 24px; }
 .inv-page::before { left:3px; width:12px; }
 .inv-body .inv-page-titulo { font-size:48px; }
 .inv-body .inv-card-topo-info { padding:12px; }
 .inv-body .inv-card-desc { font-size:10px; max-width:170px; }
 .inv-body .inv-card-hp { margin:12px; }
 .inv-body .inv-hp-label { font-size:8px; }
 .inv-body .inv-actions { gap:7px; padding:4px 10px; }
 .inv-body .inv-action-btn.btn-atacar { font-size:20px; min-height:60px; }
 #invSelectedTechnique { min-width:72px; max-width:130px; font-size:10px; }
 #invSelectedTechnique img { width:32px; height:32px; }
 .inv-body .np-topbar { height:auto; flex-wrap:wrap; padding:8px 12px; gap:8px; }
 .inv-body .np-topbar-right { flex:1; min-width:0; flex-wrap:wrap; gap:6px; justify-content:flex-end; }
 .inv-body .np-nav { order:3; flex:1 0 100%; justify-content:flex-start; }
 .inv-body .np-logo-img { height:60px; transform:none; }
}

/* Proporções e acabamento do pergaminho aprovado. */
.inv-body .inv-page { padding-left:82px; }
.inv-body .inv-page::before { top:14px; bottom:30px; left:14px; width:43px; border-radius:18px; border:5px double #714e1c; background:linear-gradient(90deg,#0007,transparent 45%,#0009),linear-gradient(0deg,#382715 0 2%,#c59b43 2% 12%,#806026 12% 13%,#112e44 13% 85%,#a77a25 85% 87%,#dfbc65 87% 97%,#392a19 97%); box-shadow:inset 0 0 0 3px #d6b364,5px 5px 9px #25180c88; }
.inv-page::after { content:'忍'; position:absolute; top:220px; left:24px; color:#dfb758; font:29px Georgia,serif; pointer-events:none; }
.inv-body :is(.inv-dano-rank-card,.inv-log-section,.inv-recomp-card) { border:6px double #98712c; border-radius:10px; box-shadow:inset 0 0 0 2px #e2bb61,0 3px 6px #39270788; }
.inv-body :is(.inv-recomp-titulo,.inv-log-header) { position:relative; font-family:Georgia,serif; background:linear-gradient(115deg,#091d2d,#16364a,#081b2c); border-bottom:3px double #d6ad50; }
.inv-body :is(.inv-recomp-titulo,.inv-log-header)::after { content:'❖'; position:absolute; right:7px; top:4px; color:#dfb65f; font-size:23px; }
.inv-body .inv-card-topo-info { display:block; }
.inv-body .inv-card-desc { display:block; max-width:240px; }
.inv-body .inv-col-direita { position:static; }
.inv-body .inv-dano-rank-item:nth-child(even) { background:#b9903c22; }
.inv-rank-columns { display:grid; grid-template-columns:25px 1fr auto; gap:7px; padding:5px 0; color:#533d20; font:bold 11px Georgia,serif; border-bottom:1px solid #977639; }
.inv-body .inv-dano-rank-premio { font-size:8px; }
.inv-body .inv-card-hp { position:relative; margin:-32px 24px 20px; padding:5px 10px; border-radius:5px; background:#102130dc; }
.inv-body .inv-hp-label { color:#ffe6a6; }
#invLogNotice { color:#804921; font-size:11px; margin:0 0 8px; }
@media(max-width:900px) { .inv-body .inv-page { padding-left:45px; } .inv-body .inv-page::before { left:7px; width:24px; } .inv-page::after { left:13px; font-size:19px; } }
@media(max-width:600px) { .inv-body .inv-page { padding-left:27px; } .inv-body .inv-page::before { left:2px; width:15px; border-width:3px; } .inv-page::after { display:none; } .inv-body .inv-card-foto-wrap { aspect-ratio:1.9 / 1; } .inv-body .inv-card-desc { max-width:140px; } .inv-body .inv-card-hp { margin:-14px 8px 10px; } .inv-scroll-bottom { grid-template-columns:1fr; } }

.inv-body .inv-card-hp .inv-hp-label span { color:#ffe6a6 !important; text-shadow:0 1px 2px #000; }

.inv-body .inv-log-drop { border-left:3px solid #349bab; padding-left:8px; background:#d0eee16b; }
.inv-body .inv-log-drop .inv-log-texto { color:#1c654b; font-weight:700; }
#invDropAviso { position:fixed; bottom:24px; left:50%; transform:translateX(-50%); z-index:11000; width:min(520px,calc(100vw - 32px)); box-sizing:border-box; display:flex; align-items:center; gap:12px; padding:14px 16px; border:3px double #b59853; border-radius:9px; background:#f8edcf; box-shadow:0 6px 30px #0006; color:#194a3b; font:600 14px/1.45 Arial,sans-serif; }
#invDropAviso[hidden] { display:none; }
#invDropAviso img { width:45px; height:45px; object-fit:contain; }
#invDropAviso span { flex:1; overflow-wrap:anywhere; }
#invDropAviso button { border:0; background:transparent; font-size:24px; color:#243d52; cursor:pointer; }
/* 09/10 — Datas do invasor (ao lado do ATACAR) e invasor derrotado (foto escura com X vermelho). */
.inv-datas { display:flex; flex-direction:column; justify-content:center; gap:5px; min-width:170px; padding:6px 10px; border:3px double #ab843b; border-radius:5px; background:#f5e8c4; color:#1f354f; font:700 11px/1.2 Georgia,serif; }
.inv-datas span { display:block; font-size:9.5px; letter-spacing:.4px; text-transform:uppercase; color:#6d5124; }
.inv-datas strong { display:block; font-size:12px; color:#14243a; white-space:nowrap; }
.inv-datas-morte strong { color:#9b1c14; }
.inv-actions-morto { justify-content:center; }
.inv-derrotado .inv-foto-morta img { filter:grayscale(1) brightness(.3); opacity:.8; }
.inv-derrotado .inv-foto-morta { background:#000; }
.inv-x-morte { position:absolute; inset:0; pointer-events:none; z-index:3; }
.inv-x-morte::before, .inv-x-morte::after { content:""; position:absolute; left:50%; top:50%; width:78%; height:16px; border-radius:8px; background:linear-gradient(#ff4b3a,#b3120a); box-shadow:0 0 12px #ff2a1a99, 0 2px 4px #000c; }
.inv-x-morte::before { transform:translate(-50%,-50%) rotate(45deg); }
.inv-x-morte::after { transform:translate(-50%,-50%) rotate(-45deg); }
.inv-derrotado .inv-card-nome { color:#ffb3a8; }
@media (max-width:600px) { .inv-body .inv-actions { flex-wrap:wrap; } .inv-datas { flex:1 1 100%; min-width:0; } }
