
.lxt-public-ranking{
    --lxt-primary:#1f6f43;
    --lxt-primary-dark:#155233;
    --lxt-soft:#f3f7f4;
    --lxt-border:#dfe7e1;
    --lxt-text:#17211b;
    --lxt-muted:#66726b;
    width:100%;
    color:var(--lxt-text);
    font-family:inherit;
}
.lxt-public-category-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 20px}
.lxt-public-tab{
    appearance:none;border:1px solid var(--lxt-border);border-radius:999px;
    background:#fff;color:var(--lxt-text);padding:10px 18px;font:inherit;
    font-weight:700;cursor:pointer;transition:.2s ease
}
.lxt-public-tab:hover,.lxt-public-tab.is-active{
    border-color:var(--lxt-primary);background:var(--lxt-primary);color:#fff
}
.lxt-public-search-wrap{margin:0 0 20px}
.lxt-public-search{
    width:100%;max-width:440px;min-height:46px;padding:10px 15px;
    border:1px solid var(--lxt-border);border-radius:8px;background:#fff;
    color:var(--lxt-text);font:inherit
}
.lxt-public-search:focus{outline:2px solid rgba(31,111,67,.2);border-color:var(--lxt-primary)}
.lxt-public-category-panel[hidden]{display:none!important}
.lxt-public-heading{
    display:flex;align-items:flex-end;justify-content:space-between;
    gap:20px;margin:0 0 14px
}
.lxt-public-heading h2{margin:2px 0 0;font-size:clamp(26px,4vw,40px);line-height:1.1}
.lxt-public-kicker{
    display:block;color:var(--lxt-primary);font-size:12px;font-weight:800;
    letter-spacing:.1em;text-transform:uppercase
}
.lxt-public-count{color:var(--lxt-muted);font-size:14px;white-space:nowrap}
.lxt-public-table-wrap{
    overflow-x:auto;border:1px solid var(--lxt-border);border-radius:12px;
    background:#fff;box-shadow:0 8px 24px rgba(17,34,24,.06)
}
.lxt-public-table{width:100%;min-width:720px;border-collapse:collapse}
.lxt-public-table th,.lxt-public-table td{
    padding:14px 16px;border-bottom:1px solid var(--lxt-border);
    text-align:center;vertical-align:middle
}
.lxt-public-table th{
    background:var(--lxt-soft);color:var(--lxt-muted);font-size:12px;
    font-weight:800;letter-spacing:.05em;text-transform:uppercase
}
.lxt-public-table tbody tr:last-child td{border-bottom:0}
.lxt-public-table tbody tr:hover{background:#fbfdfb}
.lxt-public-table .lxt-col-player{text-align:left}
.lxt-public-table .lxt-col-player strong{display:block}
.lxt-public-table .lxt-col-player small{display:block;margin-top:2px;color:var(--lxt-muted)}
.lxt-public-position{
    display:inline-flex;align-items:center;justify-content:center;
    min-width:44px;min-height:34px;padding:4px 10px;border-radius:999px;
    background:var(--lxt-soft);color:var(--lxt-primary-dark);font-weight:800
}
.lxt-public-player-row:nth-child(1) .lxt-public-position{background:#fff1b8;color:#765900}
.lxt-public-player-row:nth-child(2) .lxt-public-position{background:#edf0f2;color:#4e5961}
.lxt-public-player-row:nth-child(3) .lxt-public-position{background:#f4e2d2;color:#765039}
.lxt-public-table .lxt-col-points{color:var(--lxt-primary-dark);font-size:17px}
.lxt-public-no-results td,.lxt-public-filter-empty td,.lxt-public-empty{
    padding:28px;color:var(--lxt-muted);text-align:center
}
.lxt-public-note{margin:14px 0 0;color:var(--lxt-muted);font-size:13px}
@media(max-width:767px){
    .lxt-public-category-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}
    .lxt-public-tab{white-space:nowrap}
    .lxt-public-heading{align-items:flex-start}
    .lxt-public-count{padding-top:7px}
    .lxt-public-table{min-width:620px}
    .lxt-public-table th,.lxt-public-table td{padding:12px 10px}
}


/* Mejoras visuales v1.3.1 */
.lxt-public-ranking{
    max-width:1180px;
    margin:42px auto 0;
    padding:0 24px;
    box-sizing:border-box;
}
.lxt-public-category-tabs{
    justify-content:center;
}
.lxt-public-search-wrap{
    display:flex;
    justify-content:center;
}
.lxt-public-search{
    max-width:520px;
    min-height:50px;
    font-size:16px;
}
.lxt-public-heading{
    max-width:100%;
}
.lxt-public-table-wrap{
    width:100%;
}
.lxt-public-table{
    min-width:760px;
}
.lxt-public-position{
    gap:6px;
    min-width:64px;
}
.lxt-public-medal{
    display:inline-block;
    font-size:17px;
    line-height:1;
}
.lxt-public-category-panel{
    opacity:1;
    transform:translateY(0);
    transition:opacity .24s ease, transform .24s ease;
}
.lxt-public-category-panel.is-entering{
    opacity:0;
    transform:translateY(8px);
}
@media(max-width:767px){
    .lxt-public-ranking{
        margin-top:28px;
        padding:0 12px;
    }
    .lxt-public-category-tabs{
        justify-content:flex-start;
    }
    .lxt-public-search{
        max-width:none;
    }
    .lxt-public-table{
        min-width:660px;
    }
}
