/* Janelas da Campanha, sem alterar duração ou regras do combate. */
#campModal{background:#061524c9;backdrop-filter:blur(4px);padding:18px}
#campModal .camp-modal-card{max-width:620px;max-height:92svh;overflow:auto;border:5px double #b3914d;border-radius:5px;background:#f1e2be url('../img/cabecalho-2026/pergaminho.png') center/700px;color:#233949;box-shadow:0 18px 70px #0009}
#campModal .camp-modal-card.combate{max-width:950px}
#campModal .camp-modal-header{background:#142f43 url('../img/cabecalho-2026/azul.png') center/cover;border-bottom:3px double #b3924c;padding:14px 20px;gap:12px;position:sticky;top:0;z-index:2}
#campModal .camp-modal-header-titulo{color:#ffe1a1;font:700 23px Georgia,serif;letter-spacing:2px}
#campModal .camp-modal-auto-stop{background:#8a382e;border:1px solid #ccab65;color:#ffedc6;border-radius:3px}
#campModal .camp-vs-phase{padding:55px 30px;min-height:300px;background:linear-gradient(#102a3a88,#102a3ae8),url('../img/expedicoes/fogo.jpg') center/cover}
#campModal .camp-vs-estagio{font:700 30px Georgia,serif;color:#ffe4a5;text-shadow:0 2px 4px #000}
#campModal .camp-vs-inimigos,#campModal .camp-vs-loader{color:#f2e5c8;font-size:14px}
#campModal .camp-vs-dot{background:#e3b951;width:9px;height:9px}
#campModal .camp-vs-badge{color:#ffe4a5}
#campModal .camp-boss-intro-phase{padding:24px}
#campModal .camp-boss-intro-avs{gap:18px;margin-bottom:15px}
#campModal .camp-boss-intro-av{width:140px;height:140px;border:5px double #9f7733;border-radius:4px;background:#223f4d;margin:0}
#campModal .camp-boss-intro-nome{font:700 30px Georgia,serif;color:#223b4d}
#campModal .camp-boss-intro-sub{color:#796444;font-size:12px;margin:8px 0 18px}
#campModal .camp-boss-intro-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
#campModal .camp-boss-intro-stat-row{background:#fff7e075;border:1px solid #bda46e;border-radius:3px;padding:11px 12px}
#campModal .camp-boss-intro-stat-label{color:#5b503a}
#campModal .camp-boss-intro-stat-val{color:#203f52}
#campModal .camp-boss-intro-btn,#campModal .camp-fisico-btn,#campModal .camp-btn-fechar{background:linear-gradient(#edc866,#b7852c);border:3px double #805c22;border-radius:3px;color:#30240d;font:700 17px Georgia,serif;padding:14px;box-shadow:0 2px 5px #8b713855}
#campModal .camp-boss-intro-cancelar{color:#704134;border:1px solid #b39261;padding:10px;border-radius:3px;margin-top:10px}
#campModal .camp-battle-phase{padding:18px}
#campModal .camp-battle-header{border-bottom:1px solid #b59a63;padding-bottom:12px;margin-bottom:14px;gap:10px}
#campModal .camp-battle-estagio{font:700 20px Georgia,serif;color:#253f4d}
#campModal .camp-battle-abandonar{background:#7d332b;color:#ffe8bc;border:1px solid #b89451;border-radius:3px}
#campModal .camp-battle-fighters{background:linear-gradient(#091f3666,#071c2bd9),url('../img/arena_pvp/lobby-arena-20260926.png') center/cover;padding:22px 16px;border:4px double #af8e4b;border-radius:3px;gap:16px}
#campModal .camp-battle-fcard{background:#102e43c9;border:2px solid #7499ab;border-radius:3px;padding:16px;flex:1;min-width:0}
#campModal .camp-battle-fcard.boss{background:#391f29c9;border-color:#b98565}
#campModal .camp-battle-fnome{font:700 18px Georgia,serif;color:#ffe4b1}
#campModal .camp-battle-hp-txt{color:#f4e7c9;font-size:12px}
#campModal .camp-battle-hp-bar{height:12px;border:1px solid #d0af66;background:#102126;border-radius:3px}
#campModal .camp-battle-vs{color:#ebbe5f;text-shadow:0 2px 4px #000;font:700 28px Georgia,serif}
#campModal .camp-battle-turno{background:#193b50;color:#ffe4ab;border:2px double #b69855;border-radius:3px;font:700 16px Georgia,serif;padding:12px;margin:14px 0}
#campModal .camp-battle-abas{display:flex;gap:8px;margin:12px 0}
#campModal .camp-battle-aba{flex:1;background:#e7d3a5;color:#263d48;border:1px solid #ad8d4a;border-radius:3px;padding:10px}
#campModal .camp-battle-aba.ativa{background:#16364b;color:#ffe4a6}
#campModal .camp-jutsu-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}
#campModal .camp-jutsu-card{background:#fff5da;border:2px double #b2914c;border-radius:3px;padding:10px;color:#203d4d}
#campModal .camp-jutsu-ico img{width:64px;height:64px;object-fit:contain}
#campModal .camp-jutsu-nome{color:#203d4d;font-size:12px}
#campModal .camp-jutsu-dano{color:#805b1d}
#campModal .camp-battle-log{background:#173245;color:#f0e3c3;border:3px double #ad8d4c;border-radius:3px;margin-top:16px;padding:14px;font-size:12px;max-height:180px}
#campModal .camp-battle-log::before{content:'HISTÓRICO DO COMBATE';display:block;font:700 12px Georgia,serif;color:#f0c775;border-bottom:1px solid #af8c4d;padding-bottom:8px;margin-bottom:8px}
#campModal .camp-result-phase{padding:40px 25px;text-align:center}
#campModal .camp-result-titulo{font:700 38px Georgia,serif;letter-spacing:2px}
#campModal .camp-result-titulo.vitoria{color:#2e6335}
#campModal .camp-result-titulo.derrota{color:#913c2c}
#campModal .camp-result-sub{color:#594d36;font-size:14px;line-height:1.6}
#campModal .camp-recomp-item{background:#fff4d9;border:2px double #b49855;color:#765219;padding:12px;border-radius:3px}
#campModal .camp-modal-footer{padding:0 24px 20px;background:transparent;border:0}
#campModal button:focus-visible,.camp-deck-dialog button:focus-visible{outline:3px solid #57a7d7;outline-offset:3px}
.camp-deck-button{padding:11px;background:#f6e5bb;color:#243c4b;border:3px double #9d7e3a;font:700 14px Georgia,serif;cursor:pointer;margin-bottom:10px;width:100%}
.camp-deck-dialog{width:min(780px,calc(100vw - 28px));max-height:88svh;overflow:auto;border:5px double #a88742;border-radius:4px;padding:20px;background:#efdfb9 url('../img/cabecalho-2026/pergaminho.png') center/700px;color:#273e48}
.camp-deck-dialog::backdrop{background:#081a2ac9}
.camp-deck-dialog .deck-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.camp-deck-dialog h2{background:none!important;color:#223d4d!important;font:700 25px Georgia,serif!important;border:0!important;padding:0!important}
.camp-deck-dialog p{font-size:13px;line-height:1.6}
.camp-deck-dialog input[type="search"]{width:100%;padding:11px;background:#faf0d8;color:#253d49;border:1px solid #a98b49;margin-top:7px}
#deckSkills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:48svh;overflow:auto}
.camp-deck-dialog .deck-option{display:flex;align-items:center;gap:9px;padding:10px;background:#fff3d4;border:2px solid #b29a65;cursor:pointer}
.camp-deck-dialog .deck-option:has(input:checked){background:#dbc693;border-color:#294f64}
.camp-deck-dialog .deck-option img{width:58px;height:58px;object-fit:contain}
.camp-deck-dialog .deck-option span{min-width:0;display:grid;gap:5px;overflow-wrap:anywhere}
.camp-deck-dialog .deck-option strong{font-size:13px}
.camp-deck-dialog .deck-option small{font-size:11px;color:#67573a}
.camp-deck-dialog button{background:#19384c;color:#ffe4a7;border:2px double #ac8b47;padding:10px 16px;border-radius:3px;cursor:pointer}
.camp-deck-dialog #deckSave{background:linear-gradient(#ebc66a,#b78731);color:#2a240f;width:100%;font-weight:700}
@media(max-width:600px){#campModal{padding:8px}#campModal .camp-modal-card{max-height:95svh}#campModal .camp-battle-phase{padding:10px}#campModal .camp-battle-fighters{padding:10px 6px;gap:6px}#campModal .camp-battle-fcard{padding:8px 4px}#campModal .camp-battle-fnome{font-size:13px}#campModal .camp-boss-intro-phase{padding:16px}#campModal .camp-boss-intro-stats{grid-template-columns:1fr}#campModal .camp-modal-header-titulo{font-size:19px}.camp-deck-dialog{padding:12px}#deckSkills{grid-template-columns:1fr}#campModal .camp-modal-auto-stop{white-space:normal}}
@media(prefers-reduced-motion:reduce){#campModal *{animation:none!important;transition:none!important}}