.scoreboard-page-container{background:linear-gradient(180deg,#f5f8ff 0,#fff 520px)!important;padding:28px 0 52px!important}.scoreboard-page-container .container{max-width:1220px!important}.scoreboard-page-container h1{font-size:clamp(30px,4vw,48px)!important;font-weight:900!important;letter-spacing:-.035em!important;color:#102444!important;margin-bottom:22px!important}.scoreboard-search{background:rgba(255,255,255,.94)!important;border:1px solid #e3eaf5!important;border-radius:20px!important;box-shadow:0 18px 50px rgba(30,74,140,.08)!important;padding:16px!important}.scoreboard-search input,.scoreboard-search select{border-radius:14px!important;border:1px solid #d9e3f0!important;min-height:52px!important}.scoreboard-table{border:0!important;border-radius:22px!important;box-shadow:0 20px 54px rgba(23,64,126,.10)!important;overflow:hidden!important}.scoreboard-table thead th{background:#0d61c8!important;padding:17px 15px!important;font-weight:800!important}.scoreboard-table tbody td{padding:15px!important}.scoreboard-table tbody tr{cursor:default;transition:.2s ease!important}.scoreboard-table tbody tr.vpp-player-row{cursor:pointer}.scoreboard-table tbody tr.vpp-player-row:hover{background:#eef6ff!important;transform:translateY(-1px)}.vpp-player-link{color:#102444!important;text-decoration:none!important;font-weight:900!important;display:inline-flex;align-items:center;gap:6px}.vpp-player-link:after{content:'›';width:20px;height:20px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#e7f1ff;color:#1769d2;font-size:18px;line-height:1}.vpp-player-link:hover{color:#1769d2!important}.vpp-clickable-avatar{cursor:pointer}.scoreboard-pagination .pagination-btn{border-radius:12px!important}@media(max-width:767px){.scoreboard-page-container{padding-top:15px!important}.scoreboard-search{border-radius:16px!important}.scoreboard-table{border-radius:16px!important}.scoreboard-table tbody td{padding:12px!important}.scoreboard-table .player-name{font-size:15px!important}}
/* v1.0.2: smooth first paint + AJAX result consistency */
html.vpp-ranking-page.vpp-ready .scoreboard-page-container{opacity:1!important;visibility:visible!important}
.scoreboard-page-container .vpp-player-link{cursor:pointer!important}


/* v1.0.7: legacy player mapping + true mobile cards */
@media(max-width:767px){
  .scoreboard-page-container .scoreboard-table{display:block!important;width:100%!important;box-shadow:none!important;background:transparent!important;overflow:visible!important}
  .scoreboard-page-container .scoreboard-table thead{display:none!important}
  .scoreboard-page-container .scoreboard-table tbody{display:block!important;width:100%!important}
  .scoreboard-page-container .scoreboard-table tbody tr{display:grid!important;grid-template-columns:1fr 1fr!important;gap:0!important;margin:0 0 12px!important;border:1px solid #e3eaf5!important;border-radius:16px!important;background:#fff!important;box-shadow:0 8px 24px rgba(23,64,126,.07)!important;overflow:hidden!important;transform:none!important}
  .scoreboard-page-container .scoreboard-table tbody td{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;width:auto!important;min-width:0!important;padding:11px 14px!important;border:0!important;border-bottom:1px solid #eef2f7!important;white-space:normal!important;text-align:right!important;font-size:14px!important}
  .scoreboard-page-container .scoreboard-table tbody td::before{content:attr(data-vpp-label);flex:0 0 auto;color:#7a8798;font-size:12px;font-weight:700;text-transform:none;text-align:left}
  .scoreboard-page-container .scoreboard-table tbody td:first-child{grid-column:1/-1!important;padding:15px 14px!important;background:#f8fbff!important;text-align:left!important;justify-content:flex-start!important;font-size:16px!important}
  .scoreboard-page-container .scoreboard-table tbody td:first-child::before{display:none!important}
  .scoreboard-page-container .scoreboard-table tbody td:nth-child(2){border-right:1px solid #eef2f7!important}
  .scoreboard-page-container .scoreboard-table tbody td:last-child{grid-column:1/-1!important;border-bottom:0!important}
  .scoreboard-page-container .scoreboard-table tbody td:empty{display:none!important}
  .scoreboard-page-container .scoreboard-table tbody td>*{max-width:65%!important;overflow-wrap:anywhere!important}
  .scoreboard-page-container .vpp-player-link{font-size:16px!important}
}

.scoreboard-page-container .vpp-player-link{touch-action:pan-y!important;-webkit-tap-highlight-color:rgba(23,105,210,.10)}


/* v1.0.15: mobile name width only — remove redundant VĐV label */
@media(max-width:767px){
  .scoreboard-page-container .scoreboard-table tbody td:nth-child(2)::before{display:none!important;content:none!important}
  .scoreboard-page-container .scoreboard-table tbody td:nth-child(2){justify-content:flex-start!important;text-align:left!important;padding-left:16px!important;padding-right:8px!important;gap:6px!important;min-width:0!important}
  .scoreboard-page-container .scoreboard-table tbody td:nth-child(2) .vpp-player-link,
  .scoreboard-page-container .scoreboard-table tbody td:nth-child(2) .player-name,
  .scoreboard-page-container .scoreboard-table tbody td:nth-child(2) a{white-space:nowrap!important;word-break:normal!important;overflow-wrap:normal!important;max-width:none!important;font-size:14px!important;line-height:1.25!important}
}

/* v1.1.6: mobile card keeps only the upper Area field; hide legacy duplicate Area row */
@media(max-width:767px){
  .scoreboard-page-container .scoreboard-table tbody td.vpp-original-area{display:none!important}
}
