/* ===== css/party.css ===== */
/* HUD compacto e translúcido: informações diretas, sem cartões opacos sobre a cidade. */
.mu-party-panel{position:fixed;z-index:10020;left:12px;top:150px;width:188px;padding:4px;border:1px solid rgba(147,165,170,.86);background:rgba(4,7,8,.32);box-shadow:0 0 0 1px rgba(0,0,0,.76),inset 0 0 10px rgba(0,0,0,.45);color:#edf3f4;font:11px Arial,sans-serif;backdrop-filter:blur(1px)}
.mu-party-panel header{display:flex;align-items:center;justify-content:space-between;min-height:18px;padding:1px 3px 4px;border-bottom:1px solid rgba(139,156,161,.72);color:#edf4f5;font:700 12px Georgia,serif}.mu-party-panel header button{width:18px;height:18px;padding:0;border:1px solid #6d7c80;background:rgba(13,18,20,.7);color:#ecf4f5;font:700 14px/14px Arial,sans-serif}
.party-members{display:grid;gap:4px;margin-top:4px}.party-member{position:relative;padding:3px 4px;border:1px solid rgba(94,109,113,.82);background:rgba(2,4,5,.48);box-shadow:inset 0 0 7px rgba(0,0,0,.72)}.party-member.leader{border-color:rgba(177,154,76,.92)}.party-member-head{display:flex;align-items:center;justify-content:space-between;gap:5px;margin:0 1px 3px}.party-member-head b{overflow:hidden;color:#f1f5f5;font:700 11px Arial,sans-serif;text-overflow:ellipsis;white-space:nowrap}.party-member.leader .party-member-head b{color:#f3d46d}.party-member-head small{color:#d8e7ea;font-size:11px;white-space:nowrap}
.party-resource{position:relative;height:9px;margin:2px 0;overflow:hidden;border:1px solid #020303;background:rgba(0,0,0,.78);box-shadow:inset 0 0 0 1px rgba(98,113,118,.52)}.party-resource::after{content:'';position:absolute;inset:1px;background:repeating-linear-gradient(90deg,transparent 0 18px,rgba(255,255,255,.13) 19px 20px)}.party-resource i{position:absolute;z-index:1;inset:1px auto 1px 1px;display:block;transition:width .25s ease;box-shadow:inset 0 1px rgba(255,255,255,.28)}.party-resource.hp i{background:linear-gradient(90deg,#7c1118,#ec4540)}.party-resource.mp i{background:linear-gradient(90deg,#0c3977,#319cf0)}.party-resource b,.party-resource span{position:absolute;z-index:2;top:0;color:#fff;font:700 10px/7px Arial,sans-serif;text-shadow:1px 1px 2px #000}.party-resource b{left:3px}.party-resource span{right:3px}
.party-kick,.party-leave{width:100%;margin-top:4px;padding:3px;border:1px solid #884e4a;background:linear-gradient(rgba(111,41,38,.82),rgba(34,8,8,.82));box-shadow:inset 0 1px rgba(255,255,255,.16);color:#ffe3dd;font:700 11px Georgia,serif}.party-kick:hover,.party-leave:hover{filter:brightness(1.25)}.party-leave{border-color:#486b78;background:linear-gradient(rgba(34,77,92,.82),rgba(6,22,28,.82));color:#d9f6fb}
@media(max-width:650px){.mu-party-panel{left:8px;top:8px;width:176px}}

/* ---- Buff ativo em um companheiro ---- */
/* Card verde + ícone do buff ao lado das barras: o mesmo sinal que o HUD dá
   para os buffs da própria Elf. */
.party-member-bars{display:flex;align-items:center;gap:4px}
.party-member-resources{flex:1;min-width:0}
.party-member-buffs{display:flex;flex-direction:column;gap:3px;flex:0 0 auto}
/* O anel externo é o cronômetro: ele vai fechando conforme o buff acaba,
   exatamente como o chip do HUD. */
.party-buff-chip{position:relative;display:grid;place-items:center;width:18px;height:18px;padding:2px;border-radius:50%;background:conic-gradient(var(--party-buff-color,#43d879) var(--buff-progress,360deg),rgba(7,10,11,.92) 0);box-shadow:0 0 6px color-mix(in srgb,var(--party-buff-color,#43d879),transparent 55%),0 1px 2px #000}
.party-buff-chip::before{content:'';position:absolute;inset:2px;border-radius:50%;background:#06090a;box-shadow:inset 0 0 3px #000}
.party-buff-chip.defense{--party-buff-color:#43d879}
.party-buff-chip.damage{--party-buff-color:#ef625c}
.party-buff-chip.fortitude{--party-buff-color:#f2b544}
.party-buff-chip .mu-skill-icon{position:relative;z-index:1;width:12px!important;height:12px!important;border-radius:50%;filter:drop-shadow(0 1px 1px #000)}
.party-member.is-buffed{border-color:rgba(83,222,140,.9);background:linear-gradient(rgba(20,74,44,.62),rgba(6,26,16,.6));box-shadow:inset 0 0 9px rgba(50,200,120,.35),0 0 7px rgba(45,190,110,.28)}
.party-member.is-buffed .party-member-head b{color:#c6ffdc}

/* ---- Card do companheiro no formato da placa do herói ---- */
/* Mesmo vocabulário visual da .mu-hud-identity-plate: retrato redondo, titulo
   dourado, guilda com brasao, nick | classe e nivel. As barras de vida e mana
   ficam embaixo — é a informação que a placa local não precisa mostrar, porque
   o herói já tem os orbes do HUD. */
.mu-party-panel{width:214px}
.party-member-plate{display:flex;align-items:center;gap:6px;margin-bottom:4px}
.party-member-portrait{width:38px;height:38px;flex:0 0 38px;border:2px solid #8a7a4e;border-radius:50%;background-color:#05080a;background-repeat:no-repeat;box-shadow:inset 0 0 0 2px #05080a,0 0 0 1px #17140d}
.party-member-identity{display:grid;gap:1px;min-width:0;flex:1 1 auto}
.party-member-title{display:inline-flex;align-items:center;gap:3px;color:#f0d78d;font:800 10px 'Segoe UI',sans-serif;letter-spacing:.6px;text-transform:uppercase}
.party-member-title i{color:#d9ac47;font-style:normal}
.party-member-guild{display:inline-flex;align-items:center;gap:3px;min-width:0;color:#a8d8e9;font:700 11px 'Segoe UI',sans-serif}
.party-member-guild b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.party-member-guild em{font-style:normal;font-weight:800;white-space:nowrap}
.party-member-crest{display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(8,1fr);width:13px;height:13px;flex:0 0 13px;overflow:hidden;border:1px solid #c4a85b;background:#06080a}
.party-member-crest i{display:block;width:100%;height:100%}
.party-member-name{display:inline-flex;align-items:center;gap:4px;min-width:0}
.party-member-name u{color:#f3d46d;text-decoration:none;font-size:11px}
.party-member-name strong{overflow:hidden;color:#82c5ff;font:700 12px 'Segoe UI',sans-serif;text-overflow:ellipsis;white-space:nowrap}
.party-member-class{position:relative;margin-left:5px;padding-left:6px;color:#d9efff;font:800 11px 'Segoe UI',sans-serif;white-space:nowrap}
.party-member-class::before{content:'';position:absolute;left:0;top:50%;width:1px;height:1.08em;transform:translateY(-50%);background:rgba(142,196,228,.85)}
/* Mesma correcao da placa do HUD: linha de base comum e algarismos alinhados. */
.party-member-level{display:inline-flex;align-items:baseline;gap:4px;color:#cdbd85;font:700 11px Georgia,serif;font-variant-numeric:lining-nums tabular-nums}
.party-member-level b{color:#fff1ad}
.party-member.is-buffed .party-member-name strong{color:#c6ffdc}
.mu-party-panel footer{margin-top:4px}
@media(max-width:650px){.mu-party-panel{width:200px}}

/* ---- Painel sem molduras ---- */
/* Só os nomes sobre o mapa: nem o painel, nem os cards, nem o retrato levam
   borda ou fundo. A leitura vem do contorno preto do texto, como no HUD. */
.mu-party-panel{border:0!important;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;padding:0!important}
.mu-party-panel header{border-bottom:0!important;padding:0 0 3px!important;text-shadow:1px 1px 2px #000,0 0 6px #000}
.party-member{border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important}
.party-member.leader,.party-member.is-buffed{border:0!important;background:transparent!important;box-shadow:none!important}
.party-member-portrait{border:0!important;box-shadow:none!important}
.party-member-crest{border:0!important}
.party-members{gap:7px}
.party-member-plate,.party-member-identity span,.party-member-level{text-shadow:1px 1px 2px #000,0 0 5px #000}
/* As barras continuam com contorno: sem ele o preenchimento some no cenário. */
.party-resource{border:1px solid rgba(0,0,0,.9)!important}

/* Seguir líder é uma escolha individual: as pegadas só existem no painel de
   quem ativou a função, e o comando aparece ao clicar no retrato do líder. */
.party-leader-portrait{cursor:pointer;outline:1px solid rgba(245,204,96,.66);outline-offset:2px}.party-leader-portrait:hover{filter:brightness(1.2);outline-color:#ffe28a}.party-follow-action{display:none;width:100%;margin:-1px 0 4px;padding:4px;border:1px solid #b08a38;background:linear-gradient(#3c3017,#171005);color:#fff0ae;font:700 10px Georgia,serif;cursor:pointer}.party-member.is-follow-menu .party-follow-action{display:block}.party-follow-action:hover{filter:brightness(1.25)}.party-follow-steps{margin-left:2px;color:#ffe08a;font-style:normal;font-size:13px;line-height:1;text-shadow:0 0 7px #b87912}.party-member.is-following .party-member-name strong{color:#fff0ac}
