/* Verso Leaderboard v1.1 — Frontend */
.vlb-leaderboard {
    background: #0a0f14;
    border-radius: 16px;
    padding: 2rem 1.5rem 1.5rem;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    color: #fff;
    max-width: 960px;
    margin: 0 auto;
}

/* ── Header ── */
.vlb-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 1.5rem;
}
.vlb-month-label {
    font-size: 11px;
    color: #03C3A1;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 4px;
}
.vlb-title { font-size: 22px; font-weight: 700; color: #fff; }
.vlb-title span { color: #03C3A1; }

/* ── Toggle ── */
.vlb-toggle {
    display: flex;
    background: #111820;
    border: 1px solid #1e2d3d;
    border-radius: 8px;
    overflow: hidden;
}
.vlb-toggle-btn {
    font-size: 13px;
    padding: 8px 18px;
    color: #8a9ab0;
    cursor: pointer;
    border: none;
    background: transparent;
    transition: all 0.2s;
    font-family: inherit;
}
.vlb-toggle-btn.active { background: #03C3A1; color: #000; font-weight: 700; }

/* ── Stats ── */
.vlb-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin-bottom: 1.75rem;
}
.vlb-stat {
    background: #111820;
    border: 1px solid #1e2d3d;
    border-radius: 10px;
    padding: 14px;
    text-align: center;
}
.vlb-stat-num { font-size: 20px; font-weight: 700; color: #03C3A1; }
.vlb-stat-lbl { font-size: 12px; color: #8a9ab0; margin-top: 4px; }

/* ── Podium (top 3) ── */
.vlb-podium {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin-bottom: 1.5rem;
}
.vlb-pod-card {
    background: #111820;
    border: 1px solid #1e2d3d;
    border-radius: 14px;
    padding: 18px 16px 14px;
    position: relative;
    transition: transform 0.2s;
}
.vlb-pod-card:hover { transform: translateY(-2px); }
.vlb-pod-card.vlb-pod-1 { border-color: rgba(255,210,63,0.35); background: #13180e; }
.vlb-pod-card.vlb-pod-2 { border-color: rgba(192,192,192,0.25); }
.vlb-pod-card.vlb-pod-3 { border-color: rgba(180,110,60,0.25); }

.vlb-pod-rank {
    position: absolute;
    top: 12px;
    right: 14px;
    font-size: 22px;
    line-height: 1;
}
.vlb-pod-trophy { font-size: 28px; margin-bottom: 8px; display: block; }
.vlb-pod-name {
    font-size: 15px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 2px;
    padding-right: 32px;
}
.vlb-pod-country {
    font-size: 12px;
    color: #8a9ab0;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 5px;
}
.vlb-pod-flag { font-size: 15px; }
.vlb-pod-divider {
    border: none;
    border-top: 1px solid #1e2d3d;
    margin: 10px 0;
}
.vlb-pod-row {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-bottom: 6px;
}
.vlb-pod-lbl { font-size: 11px; color: #8a9ab0; text-transform: uppercase; letter-spacing: 0.5px; }
.vlb-pod-val { font-size: 14px; font-weight: 700; color: #03C3A1; }
.vlb-pod-val.vlb-profit { color: #4ade80; }
.vlb-pod-account { font-size: 12px; color: #8a9ab0; }

/* ── Table ── */
.vlb-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 1rem;
}
.vlb-table thead th {
    font-size: 11px;
    color: #8a9ab0;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    padding: 10px 14px;
    text-align: left;
    border-bottom: 1px solid #1e2d3d;
    white-space: nowrap;
}
.vlb-col-rank    { width: 48px; text-align: center !important; }
.vlb-col-payout  { text-align: right !important; }
.vlb-col-profit  { text-align: right !important; }
.vlb-col-account { text-align: right !important; }

.vlb-table tbody td {
    padding: 13px 14px;
    font-size: 14px;
    color: #d0dbe8;
    vertical-align: middle;
    border-bottom: 1px solid #111820;
}
.vlb-row { transition: background 0.15s; }
.vlb-row:hover { background: #0f1822; }

.vlb-rank-cell { text-align: center; }
.vlb-rank-num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px; height: 28px;
    border-radius: 50%;
    background: #1a2535;
    font-size: 12px;
    font-weight: 700;
    color: #8a9ab0;
}

.vlb-td-name { font-weight: 600; color: #fff; font-size: 15px; }
.vlb-td-country { display: flex; align-items: center; gap: 6px; }
.vlb-td-flag { font-size: 17px; }
.vlb-td-country-name { font-size: 13px; color: #8a9ab0; }

.vlb-td-account { text-align: right; color: #8a9ab0; font-size: 13px; }
.vlb-td-profit  { text-align: right; }
.vlb-profit-pct {
    font-weight: 700;
    font-size: 14px;
    color: #4ade80;
}
.vlb-profit-na { color: #3a4a5a; font-size: 13px; }

.vlb-td-payout-wrap { text-align: right; }
.vlb-td-amount { font-weight: 700; color: #03C3A1; font-size: 15px; }
.vlb-td-sub    { font-size: 11px; color: #3a5060; margin-top: 2px; }
.vlb-td-bar-wrap { width: 70px; height: 3px; background: #1a2535; border-radius: 2px; margin: 4px 0 0 auto; }
.vlb-td-bar { height: 100%; border-radius: 2px; background: #03C3A1; opacity: 0.4; transition: width 0.5s ease; }

/* ── Pagination ── */
.vlb-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding-top: 12px;
    flex-wrap: wrap;
}
.vlb-page-btn {
    min-width: 34px; height: 34px;
    display: inline-flex; align-items: center; justify-content: center;
    border-radius: 8px;
    border: 1px solid #1e2d3d;
    background: #111820;
    color: #8a9ab0;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
    font-family: inherit;
    padding: 0 10px;
}
.vlb-page-btn:hover { background: #1a2535; color: #fff; }
.vlb-page-btn.active { background: #03C3A1; color: #000; border-color: #03C3A1; }
.vlb-page-btn:disabled { opacity: 0.3; cursor: default; }
.vlb-page-info { font-size: 12px; color: #8a9ab0; padding: 0 6px; }

.vlb-empty { text-align: center; padding: 2.5rem !important; color: #3a5060; font-size: 14px; }

/* ── Responsive ── */
@media (max-width: 700px) {
    .vlb-leaderboard { padding: 1.25rem 1rem; }
    .vlb-stats { grid-template-columns: 1fr 1fr; }
    .vlb-stats .vlb-stat:last-child { display: none; }
    .vlb-podium { grid-template-columns: 1fr; }
    .vlb-col-account, .vlb-table td:nth-child(4) { display: none; }
    .vlb-col-profit, .vlb-table td:nth-child(5)  { display: none; }
    .vlb-td-country-name { display: none; }
}
