.attack-section{

    margin-bottom:28px;

}

.attack-label{

    margin-bottom:14px;

    color:var(--gold);

    font-size:.9rem;

    text-transform:uppercase;

    letter-spacing:.12em;

}

.attack-target{

    display:flex;

    gap:20px;

    align-items:flex-start;

}

.attack-target > img{

    width:190px;

    height:120px;

    object-fit:cover;

    border-radius:8px;

    border:1px solid rgba(190,160,95,.25);

    flex-shrink:0;

}

.attack-target-info{

    display:flex;

    flex-direction:column;

    justify-content:center;

    gap:16px;

    min-height:120px;

}

.attack-target-name{

    font-family:"Cinzel",serif;

    font-size:2rem;

    color:#fff;

    line-height:1;

}

.attack-owner{

    display:flex;

    align-items:center;

    gap:10px;

    color:#fff;

    font-weight:600;

}

.attack-owner img{

    width:36px;

    height:36px;

    object-fit:contain;

    border:none;

}

.attack-team-list{

    display:flex;

    flex-direction:column;

    gap:14px;

}

.modal-team{

    display:flex;

    align-items:center;

    gap:18px;

    padding:18px;

    border:1px solid rgba(190,160,95,.25);

    border-radius:10px;

    cursor:pointer;

    transition:.2s;

}

.modal-team:hover{

    border-color:var(--gold);

    background:rgba(190,160,95,.08);

}

.modal-team.selected{

    border-color:var(--gold);

    background:rgba(190,160,95,.18);

}

.modal-team img{

    width:54px;

    height:54px;

    object-fit:contain;

    flex-shrink:0;

}

.modal-team-name{

    font-family:"Cinzel",serif;

    font-size:1.2rem;

    color:#fff;

}

.modal-team-count{

    margin-top:4px;

    color:#b8b1a4;

    font-size:.9rem;

}

.attack-empty{

    display:flex;

    justify-content:center;

    align-items:center;

    min-height:90px;

    border:1px dashed rgba(190,160,95,.25);

    border-radius:10px;

    color:#bdb5a4;

    font-style:italic;

}

.attack-origin-list{

    display:flex;

    flex-wrap:wrap;

    gap:10px;

    margin-top:12px;

}

.origin-button{

    padding:10px 16px;

    border-radius:8px;

    border:1px solid rgba(190,160,95,.25);

    background:#2d2923;

    color:white;

    cursor:pointer;

    transition:.2s;

    font-weight:600;

}

.origin-button:hover{

    border-color:var(--gold);

    background:rgba(190,160,95,.08);

}

.origin-button.selected{

    border-color:var(--gold);

    background:rgba(190,160,95,.18);

}

.attack-error{

    margin-top:18px;

    padding:12px 16px;

    border-radius:8px;

    background:rgba(180,40,40,.15);

    border:1px solid rgba(255,80,80,.35);

    color:#ffb3b3;

}


/* ==========================================================
   REVENDICATION DE TERRITOIRE
   ========================================================== */

.claim-modal p {
    margin: 0 0 22px;
    color: #e6dcc8;
    line-height: 1.6;
}

.claim-team-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.claim-team {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 14px 16px;

    border: 1px solid rgba(190, 160, 95, .25);
    border-radius: 10px;

    background: #2d2923;
    color: #fff;

    cursor: pointer;
    text-align: left;

    transition:
        border-color .2s,
        background .2s,
        transform .15s;
}

.claim-team:hover {
    border-color: var(--gold);
    background: rgba(190, 160, 95, .08);
    transform: translateY(-1px);
}

.claim-team.selected {
    border-color: var(--gold);
    background: rgba(190, 160, 95, .18);
}

.claim-team img {
    width: 50px;
    height: 50px;

    object-fit: contain;
    flex-shrink: 0;
}

.claim-team span {
    font-family: "Cinzel", serif;
    font-size: 1.15rem;
    font-weight: 600;
    color: #fff;
}

#claim-error {
    margin-top: 18px;
    padding: 12px 16px;

    border-radius: 8px;

    background: rgba(180, 40, 40, .15);
    border: 1px solid rgba(255, 80, 80, .35);

    color: #ffb3b3;
}