// out: killfeed.css, sourcemap: false, compress: false

////////////////////////////////////
// ⚙️ VARIABLES GLOBALES DE STYLE //
////////////////////////////////////

// --- Position et taille du module ---
@pos-top:        20px;
@pos-left:       auto;      // mettre à "20px" pour ancrer à gauche
@pos-right:      20px;      // mettre à "auto" pour ancrer à gauche
@feed-width:     620px;
@feed-height:    400px;

// --- Couleurs Joueur 1 ---
@p1-bg:              #66c4ff;         // fond du bloc joueur 1
@p1-avatar-bg:       rgba(0,0,0,0.2); // fond derrière la PP joueur 1
@p1-avatar-border:   2px solid rgba(255,255,255,0); // bordure de la PP joueur 1

// --- Couleurs Joueur 2 ---
@p2-bg:              #e44848;         // fond du bloc joueur 2
@p2-avatar-bg:       rgba(0,0,0,0.2); // fond derrière la PP joueur 2
@p2-avatar-border:   2px solid rgba(255,255,255,0); // bordure de la PP joueur 2

// --- Style global ---
@text:           #f0f0f0;
@shadow:         rgba(0,0,0,0.35);
@radius:         8px;
@gapX:           10px;
@gapY:           6px;
@avatarSize:     36px;
@fontName:       0.95rem;


//////////////////////////////
// 💬 CONTAINER PRINCIPAL  //
//////////////////////////////

#killfeed-container {
  position: absolute;
  top: @pos-top;
  left: @pos-left;
  right: @pos-right;
  width: @feed-width;
  height: @feed-height;
  display: flex;
  flex-direction: column;
  align-items: flex-end;    // ✅ aligné à droite
  overflow: hidden;
  z-index: 250;
  color: @text;

  ul#killfeed-list {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: flex-start;
    gap: @gapY;
    width: 100%;
    height: 100%;
    overflow: hidden;
  }

  //////////////////////////////
  // 🧩 ÉLÉMENT DU KILLFEED  //
  //////////////////////////////
  .killfeed-item {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: @gapX;
    opacity: 1;
    transition: opacity 0.5s ease-out, transform 0.4s ease;
    transform: translateY(0);

    // animation d'apparition
    &.appearing {
      transform: translateY(10px);
      opacity: 0;
      animation: kf-slidein 0.35s ease-out forwards;
    }

    // Trois zones : joueur 1 / event / joueur 2
    .kf-left,
    .kf-center,
    .kf-right {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border-radius: @radius;
      box-shadow: 0 2px 6px @shadow;
      padding: 0 8px;
      gap: 6px;
      height: @avatarSize;
    }

    ///////////////////////////
    // 🎯 JOUEUR 1 (à gauche)
    ///////////////////////////
    .kf-left {
      background: @p1-bg;
      color: #0b2a3a;

      .kf-name-left {
        font-size: @fontName;
        font-weight: 700;
        white-space: nowrap;
        max-width: 200px;
        overflow: hidden;
        text-overflow: ellipsis;
      }

      .kf-avatar-left {
        width: @avatarSize;
        height: @avatarSize;
        object-fit: cover;
        border-radius: 6px;
        background: @p1-avatar-bg;
        border: @p1-avatar-border;
        box-sizing: border-box;   // ✅ empêche le débordement vertical
        display: block;           // ✅ supprime l’espace baseline
      }
    }

    ///////////////////////////
    // ⚡ EVENT CENTRAL
    ///////////////////////////
    .kf-center {
      background: transparent;
      box-shadow: none;
      padding: 0 2px;

      .kf-event {
        display: block;
        height: @avatarSize;
        max-width: 120px;
        object-fit: contain;
        filter: drop-shadow(0 2px 4px @shadow);
      }
    }

    ///////////////////////////
    // 🔥 JOUEUR 2 (à droite)
    ///////////////////////////
    .kf-right {
      background: @p2-bg;
      color: #2a0b0b;

      .kf-avatar-right {
        width: @avatarSize;
        height: @avatarSize;
        object-fit: cover;
        border-radius: 6px;
        background: @p2-avatar-bg;
        border: @p2-avatar-border;
        box-sizing: border-box;   // ✅ idem : la bordure ne dépasse pas
        display: block;
      }

      .kf-name-right {
        font-size: @fontName;
        font-weight: 700;
        white-space: nowrap;
        max-width: 200px;
        overflow: hidden;
        text-overflow: ellipsis;
      }
    }
  }

  /////////////////////////////////////
  // 🧱 MODE OUTLINE (sans fond bloc)
  /////////////////////////////////////
  &.outline-mode {
    .killfeed-item {
      .kf-left,
      .kf-right {
        background: transparent;
        box-shadow: none;
        padding: 0 4px;
      }

      .kf-left .kf-avatar-left {
        background: @p1-avatar-bg;
        border: @p1-avatar-border;
      }

      .kf-right .kf-avatar-right {
        background: @p2-avatar-bg;
        border: @p2-avatar-border;
      }

      .kf-left .kf-name-left,
      .kf-right .kf-name-right {
        color: @text;
        text-shadow: 0 1px 2px @shadow;
      }
    }
  }
}

//////////////////////////
// ✨ ANIMATION ENTRÉE ✨
//////////////////////////
@keyframes kf-slidein {
  from {
    transform: translateY(10px);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
