.leagueShell{padding:40px;max-width:1200px;margin:0 auto;width:100%;box-sizing:border-box}.leagueHeader{margin-bottom:32px;background:0 0;border:none;padding:0;box-shadow:none}.leagueTitleBox{flex:1;min-width:0}.leagueBadge{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,rgba(245,158,11,.15),rgba(217,119,6,.2));color:#b45309;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.6px;padding:6px 16px;border-radius:20px;margin-bottom:12px;border:1px solid rgba(245,158,11,.35);box-shadow:0 2px 10px rgba(245,158,11,.12)}.leagueTitleBox h2{font-size:2.3rem;font-weight:800;background:linear-gradient(135deg,#92400e,#d97706,#f59e0b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin:0 0 8px;line-height:1.2;letter-spacing:-.5px}.leagueTitleBox p{color:var(--color-text-muted,#64748b);font-size:1.05rem;margin:0;line-height:1.5}.leagueTableArea{background:#fff;border:1px solid var(--color-border-primary,#e2e8f0);border-radius:24px;padding:32px;box-shadow:0 10px 40px rgba(0,0,0,.03)}.leagueTableHeader{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;margin-bottom:24px}.tableTitleGroup h3{margin:0;font-size:1.3rem;color:var(--color-text-primary,#0f172a);font-weight:800}.leagueToolbarRow{display:flex;align-items:center;gap:12px}.leagueSearchWrapper{position:relative;min-width:0}.leagueSearchInput{width:100%;padding:11px 16px 11px 40px;background:#f8fafc;border:1px solid var(--color-border-primary,#cbd5e1);border-radius:14px;font-size:.9rem;color:var(--color-text-primary,#0f172a);outline:0;transition:.2s;box-sizing:border-box}.leagueSearchInput:hover{background:#fff;border-color:#94a3b8}.leagueSearchInput:focus{background:#fff;border-color:#f59e0b;box-shadow:0 0 0 4px rgba(245,158,11,.15)}.leagueFilterTriggerBtn{display:inline-flex;align-items:center;gap:8px;padding:11px 20px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:none;border-radius:14px;font-size:.9rem;font-weight:700;cursor:pointer;box-shadow:0 6px 20px rgba(245,158,11,.3);transition:.22s}.leagueFilterTriggerBtn:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(245,158,11,.45)}.filterIcon{stroke-width:2.2px}.filterActiveBadge{background:rgba(255,255,255,.25);color:#fff;font-size:.74rem;font-weight:800;padding:3px 8px;border-radius:10px;backdrop-filter:blur(4px);margin-left:2px}.scrollableLeagueContainer{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:16px;border:1px solid var(--color-border-primary,#f1f5f9)}.leagueTable{width:100%;border-collapse:collapse;text-align:left}.leagueTable th{background:#f8fafc;padding:14px 18px;font-size:.84rem;font-weight:700;color:var(--color-text-muted,#64748b);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--color-border-primary,#e2e8f0)}.leagueTable td{padding:16px 18px;font-size:.92rem;color:var(--color-text-primary,#1e293b);border-bottom:1px solid var(--color-border-primary,#f1f5f9);vertical-align:middle}.leagueTable tbody tr{transition:background .15s}.leagueTable tbody tr:hover{background:rgba(245,158,11,.04)}.leagueTable tbody tr:first-child{background:linear-gradient(90deg,rgba(254,240,138,.15),transparent)}.colRank{width:80px;text-align:center}.rankBadge{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;font-weight:800;font-size:.92rem}.rankGold{background:linear-gradient(135deg,#fef08a,#f59e0b,#d97706);color:#78350f;box-shadow:0 4px 14px rgba(245,158,11,.45)}.rankSilver{background:linear-gradient(135deg,#f1f5f9,#cbd5e1,#94a3b8);color:#1e293b;box-shadow:0 4px 12px rgba(148,163,184,.3)}.rankBronze{background:linear-gradient(135deg,#ffedd5,#fb923c,#ea580c);color:#7c2d12;box-shadow:0 4px 12px rgba(234,88,12,.3)}.rankNormal{background:#f1f5f9;color:#64748b}.colName{display:flex;align-items:center;gap:12px}.userAvatarInitial{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,#e0e7ff,#c7d2fe);color:#4338ca;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.95rem}.studentNameText{font-weight:700;color:#0f172a}.schoolNameText{font-weight:600;color:#475569}.courseBadgePill{display:inline-block;padding:6px 14px;background:#f1f5f9;color:#475569;border-radius:20px;font-size:.82rem;font-weight:700}.scorePill{display:inline-block;padding:6px 14px;background:linear-gradient(135deg,#dcfce7,#86efac);color:#166534;border-radius:20px;font-weight:800;font-size:.92rem}.dateText{color:#64748b;font-size:.85rem}.emptyLeagueRow{text-align:center;padding:48px 24px;color:var(--color-text-muted,#94a3b8);font-weight:600;font-style:italic}.leagueTableFooter{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;margin-top:24px;padding-top:20px;border-top:1px solid var(--color-border-primary,#f1f5f9);width:100%;box-sizing:border-box}.paginationInfo{font-size:.85rem;font-weight:600;color:var(--color-text-muted,#64748b)}.tablePaginationNav{display:flex;align-items:center;gap:6px;flex-wrap:wrap;max-width:100%;box-sizing:border-box}.paginationBtn{padding:8px 14px;border:1px solid var(--color-border-primary,#cbd5e1);background:#fff;color:#334155;border-radius:10px;font-size:.84rem;font-weight:700;cursor:pointer;transition:.2s}.paginationBtn:hover:not(:disabled){background:#f1f5f9;border-color:#94a3b8}.paginationBtn:disabled{opacity:.4;cursor:not-allowed}.leagueShell .paginationBtn.active{background:linear-gradient(135deg,#f59e0b,#d97706);border-color:#f59e0b;color:#fff;box-shadow:0 4px 14px rgba(245,158,11,.35)}.leagueFilterModalContent{max-width:520px;width:100%;box-sizing:border-box}.modalBodyGrid{display:grid;grid-template-columns:1fr;gap:16px;padding:8px 0;width:100%;min-width:0;box-sizing:border-box}.modalFilterGroup{display:flex;flex-direction:column;gap:6px;width:100%;min-width:0;box-sizing:border-box}.modalFilterGroup label{font-size:.78rem;font-weight:800;color:var(--color-text-muted,#64748b);text-transform:uppercase;letter-spacing:.5px}.modalSelectDropdown{padding:12px 16px;border:1px solid var(--color-border-primary,#cbd5e1);border-radius:14px;font-size:.92rem;font-weight:600;color:#0f172a;background:#f8fafc;outline:0;cursor:pointer;transition:.2s;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.modalSelectDropdown:hover{background:#fff;border-color:#94a3b8}.modalSelectDropdown:focus{background:#fff;border-color:#8b5cf6;box-shadow:0 0 0 4px rgba(139,92,246,.15)}@media (max-width:768px){.leagueShell{padding:20px 16px;overflow-x:hidden}.leagueHeader{margin-bottom:24px}.leagueTitleBox h2{font-size:1.6rem}.leagueTitleBox p{font-size:.92rem}.leagueTableArea{padding:20px 16px;border-radius:20px;overflow:hidden}.leagueTableHeader{flex-direction:column;align-items:flex-start;gap:14px;width:100%}.leagueToolbarRow{width:100%;flex-direction:column;align-items:stretch;gap:12px}.leagueSearchWrapper{width:100%;min-width:0}.leagueFilterTriggerBtn{width:100%;justify-content:center}.leagueTableFooter{flex-direction:column;align-items:center;gap:14px;text-align:center}.leagueFilterModalContent{padding:20px 20px 24px!important;border-radius:24px 24px 0 0!important;max-width:100%!important;margin:auto 0 0!important}.leagueTable td,.leagueTable th{padding:12px 14px;font-size:.85rem}}