 .tournament-section-card {
     border-radius: 18px;
     border: 1px solid rgba(16, 24, 40, .08);
     background: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(248, 250, 252, .94));
     box-shadow: 0 16px 42px rgba(16, 24, 40, .06);
     overflow: hidden;
 }

 .tournament-section-head {
     display: flex;
     align-items: center;
     justify-content: space-between;
     gap: 12px;
     padding: 12px 14px;
     border-bottom: 1px solid rgba(16, 24, 40, .06);
     background: linear-gradient(135deg, rgba(76, 175, 80, .12), rgba(255, 255, 255, .92));
 }

 .tournament-section-head strong {
     color: #111827;
 }

 .tournament-section-head span {
     color: #64748b;
 }


 .tournament-soft-tabs {
     width: 100%;
     display: flex;
     align-items: center;
     gap: 6px;
     overflow-x: auto;
     padding: 5px;
     border-radius: 16px;
     background:
         linear-gradient(180deg, rgba(255, 255, 255, .92), rgba(248, 250, 252, .86)),
         #f8fafc;
     border: 1px solid rgba(16, 24, 40, .08);
     box-shadow:
         inset 0 1px 0 rgba(255, 255, 255, .90),
         0 8px 24px rgba(16, 24, 40, .04);
     scrollbar-width: none;
 }

 .tournament-soft-tabs::-webkit-scrollbar {
     display: none;
 }

 .tournament-soft-tabs .targetDivSelector {
     position: relative;
     flex: 1 1 0;
     min-width: 112px;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     gap: 5px;
     border-radius: 12px !important;
     border: 1px solid transparent !important;
     background: transparent !important;
     color: #64748b !important;
     box-shadow: none !important;
     white-space: nowrap;
     user-select: none;
     -webkit-user-select: none;
     transition:
         background .18s ease,
         color .18s ease,
         border-color .18s ease,
         box-shadow .18s ease,
         transform .18s ease;
 }

 .tournament-soft-tabs .targetDivSelector i,
 .tournament-soft-tabs .targetDivSelector span {
     color: inherit !important;
 }

 .tournament-soft-tabs .targetDivSelector:hover {
     background: rgba(255, 255, 255, .62) !important;
     color: #334155 !important;
 }

 .tournament-soft-tabs .targetDivSelector.active {
     background: #ffffff !important;
     color: #4caf50 !important;
     border-color: rgba(76, 175, 80, .22) !important;
     box-shadow:
         0 8px 18px rgba(16, 24, 40, .07),
         0 0 0 1px rgba(76, 175, 80, .08) inset !important;
     transform: translateY(-1px);
 }


 .tournament-soft-tabs .targetDivSelector.active i {
     color: #4caf50 !important;
 }

 .tournament-soft-tabs .targetDivSelector.active span {
     color: #166534 !important;
 }

 @media (max-width: 767.98px) {
     .tournament-soft-tabs {
         justify-content: flex-start;
     }

     .tournament-soft-tabs .targetDivSelector {
         flex: 0 0 auto;
         min-width: 104px;
     }
 }



 .tournament-service-card {
     height: 100%;
     border-radius: 18px;
     border: 1px solid rgba(16, 24, 40, .08);
     background: rgba(255, 255, 255, .92);
     box-shadow: 0 12px 30px rgba(16, 24, 40, .055);
     overflow: hidden;
     transition: transform .2s ease, box-shadow .2s ease;
     cursor: pointer;
 }

 .tournament-service-card:hover {
     transform: translateY(-2px);
     box-shadow: 0 18px 42px rgba(16, 24, 40, .10);
 }

 .tournament-service-img {
     width: 92px;
     height: 92px;
     object-fit: cover;
     border-radius: 18px;
     background: #f8fafc;
     flex: 0 0 auto;
 }

 .tournament-gallery-grid {
     display: grid;
     grid-template-columns: repeat(4, minmax(0, 1fr));
     gap: 10px;
 }

 .tournament-gallery-card {
     position: relative;
     aspect-ratio: 1 / 1;
     border-radius: 18px;
     overflow: hidden;
     background: #f8fafc;
     cursor: pointer;
     box-shadow: 0 12px 28px rgba(16, 24, 40, .07);
 }

 .tournament-gallery-card img {
     width: 100%;
     height: 100%;
     object-fit: cover;
     transition: transform .25s ease;
 }

 .tournament-gallery-card:hover img {
     transform: scale(1.05);
 }

 .tournament-gallery-title {
     position: absolute;
     left: 8px;
     right: 8px;
     bottom: 8px;
     padding: 6px 8px;
     border-radius: 12px;
     color: #fff;
     font-weight: 800;
     background: rgba(15, 23, 42, .58);
     backdrop-filter: blur(8px);
 }

 .tournament-team-slot {
     height: 100%;
     min-height: 128px;
     border-radius: 18px;
     border: 1px dashed rgba(100, 116, 139, .28);
     background: linear-gradient(135deg, rgba(248, 250, 252, .95), rgba(255, 255, 255, .9));
     display: flex;
     align-items: center;
     justify-content: center;
     text-align: center;
     padding: 14px;
     color: #64748b;
 }

 .tournament-team-slot strong {
     color: #334155;
 }

 .tournament-award-group {
     border-radius: 18px;
     border: 1px solid rgba(16, 24, 40, .08);
     background: rgba(255, 255, 255, .94);
     overflow: hidden;
     box-shadow: 0 12px 30px rgba(16, 24, 40, .055);
 }

 .tournament-award-head {
     display: flex;
     align-items: center;
     gap: 10px;
     padding: 12px 14px;
     background: linear-gradient(135deg, rgba(245, 158, 11, .14), rgba(255, 255, 255, .94));
     border-bottom: 1px solid rgba(16, 24, 40, .06);
 }

 .tournament-award-item {
     display: flex;
     align-items: center;
     justify-content: space-between;
     gap: 10px;
     padding: 10px 14px;
     border-bottom: 1px solid rgba(16, 24, 40, .055);
 }

 .tournament-award-item:last-child {
     border-bottom: 0;
 }

 .tournament-award-icon {
     width: 34px;
     height: 34px;
     border-radius: 12px;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     background: rgba(245, 158, 11, .14);
     color: #b45309;
     flex: 0 0 auto;
 }

 .tournament-point-shell {
     border-radius: 18px;
     border: 1px solid rgba(16, 24, 40, .08);
     background: rgba(255, 255, 255, .96);
     box-shadow: 0 16px 42px rgba(16, 24, 40, .06);
     overflow: hidden;
 }

 .tournament-point-table {
     margin: 0;
     border-collapse: separate;
     border-spacing: 0 7px;
 }

 .tournament-point-table thead th {
     border: 0;
     color: #64748b;
     font-weight: 900;
 }

 .tournament-point-table tbody tr {
     background: #fff;
     box-shadow: 0 8px 20px rgba(16, 24, 40, .05);
 }

 .tournament-point-table tbody td {
     border: 0;
     vertical-align: middle;
     padding-top: 8px !important;
     padding-bottom: 8px !important;
 }

 .tournament-rank {
     width: 28px;
     height: 28px;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     border-radius: 10px;
     background: rgba(76, 175, 80, .12);
     color: #166534;
     font-weight: 900;
 }

 .tournament-empty-row {
     opacity: .72;
 }

 .tournament-empty-logo {
     width: 30px;
     height: 30px;
     border-radius: 12px;
     background: rgba(100, 116, 139, .12);
     display: inline-flex;
     align-items: center;
     justify-content: center;
     color: #64748b;
 }

 @media (max-width: 991.98px) {
     .tournament-gallery-grid {
         grid-template-columns: repeat(2, minmax(0, 1fr));
     }
 }