/* pages : finance (Équipe, Bilan) */

/* ---------------------------------------------------------------- équipe */
.eq-kpis { grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); }
.eq-kpis .kpi-v { font-size: 20px; }
.eq-corps { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); gap: 12px; align-items: start; }
.eq-ligne { display: flex; gap: 12px; align-items: center; background: var(--panneau2); border-radius: 8px;
  padding: 9px 12px; margin-bottom: 6px; }
.eq-av { flex: none; width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center;
  font: 700 12px var(--mono); color: #0a0a0a; background: var(--c, #8c8c8c);
  box-shadow: 0 0 0 2px var(--panneau2), 0 0 0 4px var(--r, transparent); }
.eq-mil { flex: 1; min-width: 0; display: grid; gap: 2px; }
.eq-dr { flex: none; display: grid; justify-items: end; gap: 3px; }
.eq-moral { width: 90px; }
.eq-moral .barre { margin: 2px 0; height: 7px; }
.eq-dr .btns { gap: 4px; flex-wrap: nowrap; }
.eq-dr .btn.petit { padding: 3px 8px; font-size: 11px; }
/* les candidats : une carte par personne, liserée de la couleur de sa rareté */
.eq-cand { --r: #9aa3b2; position: relative; background: var(--panneau2); border-radius: 8px; padding: 10px 12px 10px 14px;
  margin-bottom: 8px; display: grid; gap: 3px; border: 1px solid color-mix(in srgb, var(--r) 22%, transparent);
  overflow: hidden; }
.eq-cand::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: var(--r); }
.eq-cand.r-commun { border-color: transparent; }
.eq-cand.r-commun::before { opacity: .45; }
.eq-cand.r-epique, .eq-cand.r-legendaire {
  background: linear-gradient(120deg, color-mix(in srgb, var(--r) 13%, var(--panneau2)) 0%, var(--panneau2) 55%);
  border-color: color-mix(in srgb, var(--r) 45%, transparent); }
.eq-cand.r-legendaire { box-shadow: 0 0 22px -8px var(--r); }
.eq-ct { display: flex; gap: 10px; align-items: center; font-size: 15px; }
.eq-ct .eq-av { width: 28px; height: 28px; font-size: 11px; }
.eq-rar { margin-left: auto; font: 700 10.5px/1 var(--etroite); letter-spacing: .09em; text-transform: uppercase;
  color: var(--r); background: color-mix(in srgb, var(--r) 14%, transparent); border: 1px solid color-mix(in srgb, var(--r) 40%, transparent);
  padding: 4px 7px; border-radius: 4px; white-space: nowrap; }
.eq-cand.r-commun .eq-rar { color: var(--mut); background: transparent; border-color: var(--bord); }
/* le talent : cinq étoiles (demi-étoiles comprises), la note, un mot, le multiplicateur */
.eq-note { display: flex; align-items: center; gap: 8px; margin: 3px 0 2px; font-size: 13px; flex-wrap: wrap; }
.eq-note > b { font-size: 13.5px; color: var(--txt); }
.eq-mot { color: var(--ambre); font-weight: 600; font-size: 12.5px; }
.eq-mult { margin-left: auto; color: var(--mut); font-size: 11.5px; }
.eq-etoiles { display: inline-flex; gap: 2px; line-height: 0; }
.eq-etoiles .et { width: 17px; height: 17px; display: block; }
.eq-etoiles .et-v { fill: #343a4a; }
.eq-etoiles .et-p { fill: var(--ambre); }
.eq-etoiles .et-i { fill: color-mix(in srgb, var(--ambre) 32%, #343a4a); }
.eq-etoiles.max .et-p { fill: #ffd34d; filter: drop-shadow(0 0 3px rgba(255, 196, 0, .55)); }
.eq-etoiles.petit { gap: 1px; }
.eq-etoiles.petit .et { width: 12px; height: 12px; }
.eq-nl { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.eq-et { margin-left: auto; line-height: 0; }
.eq-eff { color: #cfcfcf; }
.eq-cb { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: 6px; flex-wrap: wrap; }

/* ---------------------------------------------------------------- bilan */
.fi-haut { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 12px; }
.fi-haut .btns { justify-content: flex-end; }
.fi-note { background: var(--c, #888); border-color: var(--c, #888); color: #0a0a0a; }
.fi-grille { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(230px, 280px); gap: 12px;
  align-items: stretch; }
.fi-grille > .carte { margin: 0; }
.fi-tab { width: 100%; border-collapse: collapse; font-size: 13px; }
.fi-tab th { font-size: 11px; text-transform: uppercase; font-family: var(--etroite); letter-spacing: .06em; color: var(--mut); font-weight: 600;
  padding: 0 0 5px 12px; white-space: nowrap; }
.fi-tab th.l { padding-left: 0; }
.fi-tab td { padding: 3px 0 3px 12px; color: #cfcfcf; white-space: nowrap; }
.fi-tab td.l { padding-left: 0; white-space: normal; }
.fi-tab td.num { font-family: var(--mono); font-variant-numeric: tabular-nums; }
.fi-tab td.disc { color: var(--discret); }
.fi-tab td.ok { color: var(--vert); } .fi-tab td.ko { color: var(--rouge); }
.fi-tab tr.fi-total td, .fi-tab tr.fi-grand td, .fi-tab tr.fi-section td { font-weight: 700; color: var(--txt); }
.fi-tab tr.fi-total td.ok, .fi-tab tr.fi-grand td.ok { color: var(--vert); }
.fi-tab tr.fi-total td.ko, .fi-tab tr.fi-grand td.ko { color: var(--rouge); }
.fi-tab tr.fi-total td.disc, .fi-tab tr.fi-grand td.disc { color: var(--discret); }
.fi-tab tr.fi-section td { color: var(--mut); }
.fi-tab tr.fi-total td { border-top: 1px solid var(--bord); padding-top: 5px; }
.fi-tab tr.fi-grand td { border-top: 1px solid #454545; padding-top: 6px; font-size: 14px; }
.fi-sec { font-size: 11px; font-weight: 700; letter-spacing: .08em; color: var(--mut); margin: 16px 0 4px; }
.fi-immos { list-style: none; padding: 0; margin: 0; display: grid; gap: 3px; font-size: 12px; color: #cfcfcf; }
.fi-eq { margin: 10px 0 4px; }
.fi-coup { display: flex; flex-direction: column; }
.fi-svg { width: 100%; height: auto; max-height: 460px; display: block; flex: 1; }
.fi-svg .fi-t { fill: var(--mut); font: 700 10px var(--police); }
.fi-svg .ko-f { fill: var(--rouge); }
.fi-svg .fi-l { fill: #0b0b0b; font: 700 10px var(--police); }
.fi-svg .fi-p { font-size: 9px; }
.fi-svg .fi-v { fill: #0b0b0b; font: 10px var(--mono); }

@media (max-width: 1250px) {
  .fi-grille { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .fi-coup { grid-column: 1 / -1; }
  .fi-svg { max-height: 380px; }
}
@media (max-width: 900px) {
  .eq-corps, .fi-grille { grid-template-columns: 1fr; }
  .eq-ligne { flex-wrap: wrap; }
}
