
/*
 * MF-HANGMAN-LEADERBOARD-RESPONSIVE-20260830
 *
 * Fișier încărcat DOAR pe /clasament/.
 * Nu modifică jocul Fotbal pe Litere.
 */

* {
  box-sizing: border-box;
}


/* =========================================================
   TABLET + MOBILE
   ========================================================= */

@media (max-width: 900px) {

  .hangman-page .auth-shell {
    padding:
      18px 10px 42px !important;
  }

  .hangman-page .auth-card {
    width: 100% !important;
  }

  .hangman-page .auth-card-heading {
    width: 100% !important;

    margin:
      0 auto 14px !important;

    padding:
      0 5px !important;

    text-align: center !important;
  }

  .hangman-page .auth-card-heading h1 {
    max-width: 100%;

    margin:
      0 auto 7px !important;

    font-size:
      clamp(
        29px,
        8vw,
        40px
      ) !important;

    line-height:
      1.04 !important;

    text-wrap:
      balance;

    overflow-wrap:
      anywhere;
  }

  .hangman-page .auth-card-heading p {
    max-width:
      620px;

    margin:
      0 auto !important;

    font-size:
      clamp(
        14px,
        4vw,
        17px
      ) !important;

    line-height:
      1.32 !important;

    text-align:
      center !important;
  }


  .hangman-leaderboard {
    width:
      100% !important;

    max-width:
      100% !important;

    margin:
      0 auto !important;
  }


  /* =======================================================
     SĂPTĂMÂNA + JOACĂ ACUM
     ======================================================= */

  .hangman-leaderboard-head {
    width:
      100% !important;

    display:
      flex !important;

    flex-direction:
      column !important;

    align-items:
      stretch !important;

    gap:
      14px !important;

    margin-bottom:
      14px !important;

    padding:
      18px 16px !important;

    border-radius:
      22px !important;

    overflow:
      hidden !important;
  }

  .hangman-leaderboard-head > div {
    min-width:
      0 !important;
  }

  .hangman-leaderboard-head span {
    font-size:
      11px !important;

    line-height:
      1.2 !important;
  }

  .hangman-leaderboard-head strong {
    display:
      block;

    max-width:
      100%;

    font-size:
      clamp(
        20px,
        6vw,
        27px
      ) !important;

    line-height:
      1.12 !important;

    overflow-wrap:
      anywhere;
  }

  .hangman-leaderboard-head
  .hangman-btn {
    width:
      100% !important;

    max-width:
      100% !important;

    min-height:
      48px !important;

    margin:
      0 !important;

    padding:
      10px 14px !important;
  }


  /* =======================================================
     POZIȚIA TA — 3 COLOANE
     ======================================================= */

  .hangman-my-rank {
    width:
      100% !important;

    display:
      grid !important;

    grid-template-columns:
      repeat(
        3,
        minmax(0, 1fr)
      ) !important;

    gap:
      6px !important;

    margin-bottom:
      14px !important;

    padding:
      14px 10px !important;

    border-radius:
      22px !important;
  }

  .hangman-my-rank > div {
    min-width:
      0;

    padding:
      7px 4px;

    text-align:
      center;
  }

  .hangman-my-rank span {
    margin-bottom:
      4px;

    font-size:
      9px !important;

    line-height:
      1.15 !important;
  }

  .hangman-my-rank strong {
    display:
      block;

    font-size:
      clamp(
        19px,
        5.5vw,
        25px
      ) !important;

    line-height:
      1.05;
  }


  /* =======================================================
     TABEL — FĂRĂ SCROLL ORIZONTAL
     ======================================================= */

  .hangman-table-wrap {
    width:
      100% !important;

    max-width:
      100% !important;

    overflow:
      hidden !important;

    border-radius:
      20px !important;
  }

  .hangman-table {
    width:
      100% !important;

    min-width:
      0 !important;

    table-layout:
      fixed !important;

    border-collapse:
      collapse !important;
  }


  /*
   * 5 coloane:
   * # / User / Victorii / Greșeli / Ajutoare
   */
  .hangman-table th:nth-child(1),
  .hangman-table td:nth-child(1) {
    width: 12%;
  }

  .hangman-table th:nth-child(2),
  .hangman-table td:nth-child(2) {
    width: 29%;
  }

  .hangman-table th:nth-child(3),
  .hangman-table td:nth-child(3) {
    width: 18%;
  }

  .hangman-table th:nth-child(4),
  .hangman-table td:nth-child(4) {
    width: 18%;
  }

  .hangman-table th:nth-child(5),
  .hangman-table td:nth-child(5) {
    width: 23%;
  }


  .hangman-table th,
  .hangman-table td {
    min-width:
      0 !important;

    padding:
      11px 5px !important;

    white-space:
      normal !important;

    overflow-wrap:
      anywhere !important;

    word-break:
      normal !important;

    vertical-align:
      middle !important;
  }

  .hangman-table th {
    font-size:
      clamp(
        8px,
        2.7vw,
        11px
      ) !important;

    line-height:
      1.08 !important;

    text-align:
      center !important;
  }

  .hangman-table td {
    font-size:
      clamp(
        11px,
        3.2vw,
        14px
      ) !important;

    line-height:
      1.15 !important;

    text-align:
      center !important;
  }

  /*
   * Numele jucătorului rămâne aliniat natural.
   */
  .hangman-table td:nth-child(2) {
    text-align:
      left !important;
  }


  /* =======================================================
     DEPARTAJARE
     ======================================================= */

  .hangman-ranking-rules {
    width:
      100% !important;

    margin-top:
      14px !important;

    padding:
      20px 16px !important;

    border-radius:
      22px !important;
  }

  .hangman-ranking-rules h2 {
    margin:
      0 0 10px !important;

    font-size:
      clamp(
        27px,
        7.5vw,
        38px
      ) !important;

    line-height:
      1.05 !important;

    text-align:
      center !important;

    text-wrap:
      balance;
  }

  .hangman-ranking-rules ol {
    max-width:
      100% !important;

    margin:
      12px auto 0 !important;

    padding-left:
      23px !important;
  }

  .hangman-ranking-rules li {
    margin:
      7px 0 !important;

    font-size:
      14px !important;

    line-height:
      1.35 !important;
  }
}


/* =========================================================
   TELEFOANE ÎNGUSTE
   ========================================================= */

@media (max-width: 390px) {

  .hangman-page .auth-shell {
    padding-left:
      7px !important;

    padding-right:
      7px !important;
  }

  .hangman-leaderboard-head {
    padding:
      16px 13px !important;
  }

  .hangman-my-rank {
    padding:
      12px 6px !important;
  }

  .hangman-table th,
  .hangman-table td {
    padding:
      10px 3px !important;
  }

  .hangman-table th {
    font-size:
      8px !important;
  }

  .hangman-table td {
    font-size:
      11px !important;
  }
}


/* =========================================================
   MF-HANGMAN-LEADERBOARD-RESPONSIVE-20260830:END
   ========================================================= */


/* =========================================================
   MF-HANGMAN-LEADERBOARD-PAGINATION-20260830
   ========================================================= */

.hangman-pagination {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
  gap: 9px;
  margin: 14px 0;
  padding: 8px 4px;
  white-space: nowrap;
}

.hangman-pagination__button {
  flex: 0 0 auto;
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 1px solid #d5dfd8;
  border-radius: 10px;
  background: #fff;
  color: #17462c;
  font-size: 22px;
  line-height: 1;
  font-weight: 900;
  text-decoration: none;
}

a.hangman-pagination__button:hover {
  border-color: #168c4c;
  background: #f2faf5;
}

.hangman-pagination__button.is-disabled {
  cursor: default;
  opacity: .38;
}

.hangman-pagination__status {
  flex: 0 1 auto;
  min-width: 118px;
  color: #52645a;
  font-size: 14px;
  line-height: 1.2;
  font-weight: 900;
  text-align: center;
}

@media (max-width: 390px) {
  .hangman-pagination {
    gap: 5px;
    padding-left: 0;
    padding-right: 0;
  }

  .hangman-pagination__button {
    width: 34px;
    height: 36px;
    border-radius: 9px;
    font-size: 20px;
  }

  .hangman-pagination__status {
    min-width: 104px;
    font-size: 12px;
  }
}

/* MF-HANGMAN-LEADERBOARD-PAGINATION-20260830:END */

/* MF-HANGMAN-CHAMPIONS-TABS-20260901:START */

.hangman-ranking-tabs {
    display: flex;
    width: max-content;
    max-width: 100%;
    margin: 0 auto clamp(14px, 2vw, 22px);
    padding: 4px;
    gap: 4px;
    border: 1px solid rgba(23, 62, 42, .14);
    border-radius: 999px;
    background: rgba(255,255,255,.58);
}

.hangman-ranking-tab {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: clamp(116px, 16vw, 160px);
    min-height: clamp(38px, 4.4vw, 44px);
    padding: 8px 16px;
    border-radius: 999px;
    color: #173e2a;
    font-weight: 850;
    text-decoration: none;
}

.hangman-ranking-tab.is-active {
    background: #173e2a;
    color: #fff;
}

@media (max-width: 520px) {
    .hangman-ranking-tabs {
        width: 100%;
    }

    .hangman-ranking-tab {
        flex: 1 1 50%;
        min-width: 0;
    }
}

/* MF-HANGMAN-CHAMPIONS-TABS-20260901:END */

/* MF-HANGMAN-COMPACT-RANKING-STATUS-20260901:START */

.hangman-leaderboard-head {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center !important;
    gap: clamp(10px, 2vw, 18px) !important;
    padding: clamp(13px, 2vw, 18px) clamp(15px, 2.5vw, 22px) !important;
    min-height: 0 !important;
}

.hangman-leaderboard-head > div {
    min-width: 0;
}

.hangman-leaderboard-head > div > span {
    display: block;
    margin: 0 0 3px !important;
    font-size: clamp(11px, 2.5vw, 13px) !important;
    line-height: 1.25 !important;
}

.hangman-leaderboard-head > div > strong {
    display: block;
    margin: 0 !important;
    font-size: clamp(18px, 4vw, 24px) !important;
    line-height: 1.1 !important;
}

.hangman-leaderboard-head .hangman-btn {
    width: auto !important;
    min-width: 0 !important;
    min-height: clamp(38px, 7vw, 44px) !important;
    padding: 8px clamp(14px, 3vw, 20px) !important;
    margin: 0 !important;
    white-space: nowrap;
    font-size: clamp(13px, 2.8vw, 15px) !important;
}

@media (max-width: 520px) {
    .hangman-leaderboard-head {
        grid-template-columns: minmax(0, 1fr) auto !important;
    }
}

/* MF-HANGMAN-COMPACT-RANKING-STATUS-20260901:END */


/* MF-HANGMAN-RANKING-COLORS-20260901:START */

/*
 * Header-ul tabelului folosește exact verdele
 * tabului activ Săptămâna / Campioni.
 */
.hangman-table thead,
.hangman-table thead tr {
    background: #173e2a !important;
}

.hangman-table thead tr {
    height: clamp(58px, calc(34px + 4vw), 74px) !important;
}

.hangman-table thead th {
    height: auto !important;
    min-height: 0 !important;
    padding-top: clamp(9px, 1.8vw, 14px) !important;
    padding-bottom: clamp(9px, 1.8vw, 14px) !important;

    background: #173e2a !important;
    color: #fff !important;

    vertical-align: middle !important;
    line-height: 1.08 !important;
}

/*
 * Palmares trebuie să rămână pe un singur rând.
 */
.hangman-leaderboard-head > div > span {
    white-space: nowrap;
}

/* MF-HANGMAN-RANKING-COLORS-20260901:END */


/* MF-HANGMAN-EQUAL-TABLE-HEADERS-20260901:START */

/*
 * Înălțimea este pusă direct pe TH.
 * Astfel Săptămâna și Campioni nu mai pot primi
 * înălțimi diferite din regulile mobile vechi.
 */
.hangman-table thead,
.hangman-table thead tr {
    height: auto !important;
}

.hangman-table thead th {
    height: clamp(62px, 10vw, 84px) !important;
    min-height: 0 !important;

    padding-top: 0 !important;
    padding-bottom: 0 !important;

    vertical-align: middle !important;
    line-height: 1.08 !important;
}

/* MF-HANGMAN-EQUAL-TABLE-HEADERS-20260901:END */

/* MF-HANGMAN-TABLE-HEADER-TUNE-20260901:START */

/*
 * Același header responsive în:
 * - Clasamentul săptămânii
 * - Clasamentul campionilor
 */
.hangman-table thead th,
.hangman-champions-table thead th {
    font-size: clamp(10px, 2.9vw, 12px) !important;
    line-height: 1.05 !important;
    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
}

/*
 * Coloana Jucător centrată:
 * header + nume utilizator.
 * Suprascrie vechea regulă mobilă care o alinia la stânga.
 */
.hangman-table th:nth-child(2),
.hangman-table td:nth-child(2),
.hangman-champions-table th:nth-child(2),
.hangman-champions-table td:nth-child(2) {
    text-align: center !important;
}

/*
 * Litere primite rămâne compact pe două rânduri.
 */
.hangman-table th:nth-child(5) {
    line-height: 1.02 !important;
}

/*
 * Pe telefoane foarte înguste păstrăm fontul lizibil
 * fără să forțăm lățimea tabelului.
 */
@media (max-width: 420px) {
    .hangman-table thead th,
    .hangman-champions-table thead th {
        font-size: clamp(9.5px, 2.75vw, 11px) !important;
    }
}

/* MF-HANGMAN-TABLE-HEADER-TUNE-20260901:END */

/* MF-HANGMAN-TABLE-EDGE-AND-DIVIDER-20260903:START */

.hangman-table th,
.hangman-table td {
    text-align: center !important;
}

.hangman-table th:first-child,
.hangman-table td:first-child {
    text-align: left !important;
    padding-left: clamp(18px, 2.2vw, 26px) !important;
}

.hangman-table th:last-child,
.hangman-table td:last-child {
    text-align: right !important;
    padding-right: clamp(18px, 2.2vw, 26px) !important;
}

.hangman-table th:not(:first-child):not(:last-child),
.hangman-table td:not(:first-child):not(:last-child) {
    text-align: center !important;
}

.hangman-ranking-tabs {
    margin-bottom: 0 !important;
}

.hangman-ranking-tabs + .hangman-leaderboard-head {
    position: relative;
    margin-top: 28px !important;
}

.hangman-ranking-tabs + .hangman-leaderboard-head::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: -14px;
    height: 1px;
    background: rgba(23, 62, 42, .14);
    pointer-events: none;
}

@media (max-width: 640px) {
    .hangman-table th:first-child,
    .hangman-table td:first-child {
        padding-left: 12px !important;
    }

    .hangman-table th:last-child,
    .hangman-table td:last-child {
        padding-right: 12px !important;
    }

    .hangman-ranking-tabs + .hangman-leaderboard-head {
        margin-top: 22px !important;
    }

    .hangman-ranking-tabs + .hangman-leaderboard-head::before {
        top: -11px;
    }
}

/* MF-HANGMAN-TABLE-EDGE-AND-DIVIDER-20260903:END */

/* MF-HANGMAN-UNIFIED-RANKING-LAYOUT-20260903:START */

/*
 * Structura canonică:
 * tabs -> o singură bară -> paginare -> tabel.
 */

.hangman-ranking-tabs {
    margin-bottom: 0 !important;
}

/*
 * Neutralizează linia introdusă de patch-ul anterior.
 */
.hangman-ranking-tabs + .hangman-leaderboard-head::before {
    content: none !important;
    display: none !important;
}

.hangman-ranking-summary {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;

    width: 100%;
    min-height: 68px;

    margin: clamp(18px, 2vw, 24px) 0 0;
    padding:
        clamp(10px, 1.4vw, 14px)
        clamp(16px, 2vw, 24px);

    gap: clamp(12px, 2vw, 22px);

    border: 1px solid #dce9df;
    border-radius: 28px;

    background: #effaf3;

    box-shadow:
        0 14px 38px rgba(14, 48, 29, .06);
}

.hangman-ranking-summary__stats {
    display: grid;
    grid-template-columns:
        minmax(160px, 1.7fr)
        minmax(90px, 1fr)
        minmax(90px, 1fr);

    align-items: center;
    gap: clamp(8px, 2vw, 18px);

    min-width: 0;
}

.hangman-ranking-summary__stats > div {
    min-width: 0;
    text-align: center;
}

.hangman-ranking-summary__stats > div:first-child {
    text-align: left;
}

.hangman-ranking-summary span,
.hangman-ranking-summary__overview span {
    display: block;

    margin: 0 0 2px;

    color: #687870;

    font-size: clamp(10px, 1vw, 12px);
    font-weight: 900;
    line-height: 1.15;

    text-transform: uppercase;
}

.hangman-ranking-summary strong,
.hangman-ranking-summary__overview strong {
    display: block;

    margin: 0;

    color: #112119;

    font-size: clamp(14px, 1.35vw, 18px);
    font-weight: 800;
    line-height: 1.12;
}

.hangman-ranking-summary__overview {
    min-width: 0;
}

.hangman-ranking-summary__cta {
    justify-self: end;

    width: auto !important;
    min-width: 118px !important;
    min-height: 42px !important;

    margin: 0 !important;
    padding: 8px 18px !important;

    white-space: nowrap;
}

/*
 * Paginarea stă imediat după bara unică.
 */
.hangman-ranking-summary + .hangman-pagination {
    margin-top: 12px;
}

/*
 * Mobil.
 */
@media (max-width: 620px) {

    .hangman-ranking-summary {
        min-height: 64px;

        margin-top: 14px;

        padding: 10px 12px;

        gap: 8px;
    }

    .hangman-ranking-summary__stats {
        grid-template-columns:
            minmax(0, 1.55fr)
            minmax(0, .7fr)
            minmax(0, .7fr);

        gap: 4px;
    }

    .hangman-ranking-summary__stats > div {
        padding: 0 2px;
    }

    .hangman-ranking-summary span {
        font-size: 8px;
    }

    .hangman-ranking-summary strong {
        font-size: clamp(11px, 3.1vw, 14px);
    }

    .hangman-ranking-summary__cta {
        min-width: 92px !important;
        min-height: 40px !important;

        padding: 7px 11px !important;

        font-size: 12px !important;
    }
}

/* MF-HANGMAN-UNIFIED-RANKING-LAYOUT-20260903:END */


/* MF-HANGMAN-DAILY-THREE-TABS-20260907:START */

.hangman-ranking-tabs {
    display: grid !important;

    grid-template-columns:
        repeat(
            3,
            minmax(0, 1fr)
        ) !important;

    width: 100% !important;

    gap: 8px !important;
}


.hangman-ranking-tab {
    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    min-width: 0 !important;

    width: auto !important;

    text-align: center !important;

    white-space: normal !important;

    line-height: 1.15 !important;
}


@media (max-width: 520px) {

    .hangman-ranking-tabs {
        gap: 5px !important;
    }

    .hangman-ranking-tab {
        min-height: 46px !important;

        padding:
            9px 5px !important;

        font-size:
            11.5px !important;

        line-height:
            1.12 !important;
    }
}


@media (max-width: 365px) {

    .hangman-ranking-tab {
        padding:
            8px 4px !important;

        font-size:
            10.5px !important;
    }
}

/* MF-HANGMAN-DAILY-THREE-TABS-20260907:END */


/* MF-HANGMAN-FIVE-COLUMN-RANKING-20260907:START */

.hangman-help-compact {
    white-space: nowrap !important;
}

/* MF-HANGMAN-FIVE-COLUMN-RANKING-20260907:END */

/* MF-HANGMAN-DAILY-POSITION-ONLY-20260907:START */

.hangman-ranking-summary__stats {
    grid-template-columns:
        minmax(0, 1fr) !important;
}

.hangman-ranking-summary__stats > div {
    text-align:
        left !important;
}

/* MF-HANGMAN-DAILY-POSITION-ONLY-20260907:END */

/* MF-HANGMAN-COMPACT-DAILY-HEADER-20260910:START */

/*
 * Fotbal pe Litere — header tabel mai compact.
 * Nu modifică rândurile de date.
 *
 * Desktop/tablet: 52–58px.
 * Mobil: 46–52px.
 */
.hangman-table thead th {
    height: clamp(52px, 4.2vw, 58px) !important;
    min-height: 0 !important;

    padding-top: 6px !important;
    padding-bottom: 6px !important;

    vertical-align: middle !important;
    line-height: 1.08 !important;
}

@media (max-width: 620px) {
    .hangman-table thead th {
        height: clamp(46px, 12vw, 52px) !important;

        padding-top: 5px !important;
        padding-bottom: 5px !important;
    }
}

/* MF-HANGMAN-COMPACT-DAILY-HEADER-20260910:END */

/* MF-HANGMAN-RANKING-SUMMARY-VISIBLE-20260910:START */

/*
 * spanzuratoarea.css ascunde .hangman-ranking-summary pentru popupul final.
 * Pe pagina /clasament/ acesta este însă chiar bara Poziția ta + Joacă acum.
 * Fișierul acesta se încarcă DOAR pe /clasament/.
 */
.hangman-leaderboard > .hangman-ranking-summary {
    display: grid !important;
}

/* MF-HANGMAN-RANKING-SUMMARY-VISIBLE-20260910:END */
