

body
{
    font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 15px;
    background-color: #000000;
    background-image: url('../img/web_bg.png');
    background-repeat: repeat;
    background-attachment: fixed;
}

.starter-template
{
    padding: 40px 15px;
    text-align: center;
}
#topSchedules {
    width: 100%;
    margin: 0 auto;
}
#run{
    width:953px;
    margin:0 auto;
}


.uList{
    padding:0;
    margin:0;
    list-style: none;
}

.uList > li{
    float:left;
    padding:0;
    margin:0;
	max-width: 1040px;
}


.pList{
    padding:0;
    margin:0;
    list-style: none;
}

.pList > li{
    float:right;
    padding:0;
    margin:0;
}

.red {
    color:#FF0000;
}

.blue {
    color:#0000FF;
}

.green{
    color:#00FF00
}

.dropdown:hover>.dropdown-menu
{
    display: block;
}
.container {
    width: 100%;
    max-width: 1170px !important;
}

@media (min-width: 1200px) {
    .container {
        width: 1170px;
    }
}

.table-fixed thead {
    width: 97%;
}
.table-fixed tbody {
    height: 230px;
    overflow-y: auto;
    width: 100%;
}
.table-fixed thead, .table-fixed tbody, .table-fixed tr, .table-fixed td, .table-fixed th {
    display: block;
}
.table-fixed tbody td, .table-fixed thead > tr> th {
    float: left;
    border-bottom-width: 0;
}

.navbar
{
    margin-bottom: 0;/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#332f2e+0,000000+100 */
    background: rgb(51,47,46); /* Old browsers */
    background: -moz-linear-gradient(top,  rgba(51,47,46,1) 0%, rgba(0,0,0,1) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  rgba(51,47,46,1) 0%,rgba(0,0,0,1) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  rgba(51,47,46,1) 0%,rgba(0,0,0,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#332f2e', endColorstr='#000000',GradientType=0 ); /* IE6-9 */

}
.group_table th,.stats th, .th_bg th{
    background: #3E4951;
    color: #fff;
    font-size: 10px;
}

.schedule_title {
    font-size: 10px;
    margin-left: 5px;
    margin-right: 5px;
    font-weight: bold;
    margin-bottom: 0;
    padding: 0;
    background: #fff;

}
.schedule_content {
    padding: 2px;
    width: 124px;
    height: 64px;
    cursor: pointer;
    margin: 6px;
    color: #fff;
    background: url('../img/calender.png') no-repeat;
}
.schedule_content2 {
    padding: 2px;
    width: 124px;
    height: 64px;
    cursor: pointer;
    margin: 6px;
    color: #fff;
    background: url('../img/calender2.png') no-repeat;
}
.shadow_text {
    text-shadow: 1px 1px 2px #000;
}

.schedule_div {
    padding:3px 5px; font-size:10px; line-height:18px;
}
.score_text {
    text-align: right;    margin-top: -18px;
    font-weight: bold;
}
.score_win{
    color: #B8FF0B;
}
/* 賽程欄：直播中狀態 */
.schedule_content.is-live,
.schedule_content2.is-live {
    box-shadow: inset 0 0 0 2px #f87171;
}
.live-state {
    color: #f87171;
    font-weight: bold;
}
.live-pulse {
    display: inline-block;
    width: 7px;
    height: 7px;
    margin-right: 4px;
    border-radius: 50%;
    background: #f87171;
    vertical-align: middle;
    -webkit-animation: live-pulse-blink 1.2s ease-in-out infinite;
    animation: live-pulse-blink 1.2s ease-in-out infinite;
}
@-webkit-keyframes live-pulse-blink { 0%,100% { opacity: 1; } 50% { opacity: .3; } }
@keyframes live-pulse-blink { 0%,100% { opacity: 1; } 50% { opacity: .3; } }
.ranking {
    font-size: 10px;
}
.wrap
{
    background: #FFFFFF url('../img/grey.png') repeat fixed center;
    -webkit-box-shadow: 0 0 25px 10px #191919;
    box-shadow: 0 0 25px 8px rgb(59, 59, 59);
    padding-left: 15px;
    padding-right: 15px;
}
.stats {
    font-size: 10px;
}
.stats th, .stats td {
    text-align: center;
}
/* TOP */
.top_eff {
    border: 1px solid #035B23;
}
.top_eff td {
    text-align: center;
}
.top_eff th {
    background: #035B23;
    color: #fff;
    text-align: center;
}

.top_pt{
    border: 1px solid #03265B;
}
.top_pt td {
    text-align: center;
}
.top_pt th {
    background: #03265B;
    color: #fff;
    text-align: center;
}


.top_3pt {
    border: 1px solid #801200;
}
.top_3pt td {
    text-align: center;
}
.top_3pt th {
    background: #801200;
    color: #fff;
    text-align: center;
}


.top_stl{
    border: 1px solid #5802A7;
}
.top_stl td {
    text-align: center;
}
.top_stl th {
    background: #5802A7;
    color: #fff;
    text-align: center;
}


.top_ass {
    border: 1px solid #AD2B9D;
}
.top_ass td {
    text-align: center;
}
.top_ass th {
    background: #AD2B9D;
    color: #fff;
    text-align: center;
}


.top_blk {
    border: 1px solid #212121;
}
.top_blk td {
    text-align: center;
}
.top_blk th {
    background: #212121;
    color: #fff;
    text-align: center;
}

.panel-body
{
    -webkit-border-radius: 0 0 6px 6px;
    border-radius: 0 0 6px 6px;
    background-color: #edf1f5;
}

.panel-heading {
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#b5bdc8+0,828c95+36,28343b+100;Grey+Black+3D */
    background: rgb(181,189,200); /* Old browsers */
    background: -moz-linear-gradient(top,  rgba(181,189,200,1) 0%, rgba(130,140,149,1) 36%, rgba(40,52,59,1) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  rgba(181,189,200,1) 0%,rgba(130,140,149,1) 36%,rgba(40,52,59,1) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  rgba(181,189,200,1) 0%,rgba(130,140,149,1) 36%,rgba(40,52,59,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b5bdc8', endColorstr='#28343b',GradientType=0 ); /* IE6-9 */
    color: #ffffff;
}
.tab-select-section {
    margin-bottom: 18px;
}

.tab-selector-bar {
    margin: 10px 0 14px;
    text-align: right;
}

.tab-selector-label {
    display: inline-block;
    margin: 0 10px 0 0;
    color: #44525f;
    font-size: 12px;
    font-weight: bold;
    letter-spacing: 1px;
    vertical-align: middle;
}

.tab-selector-control {
    position: relative;
    display: inline-block;
    width: 320px;
    max-width: 100%;
    vertical-align: middle;
}

.tab-selector-control:after {
    content: '';
    position: absolute;
    top: 50%;
    right: 14px;
    margin-top: -3px;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 7px solid #2d4358;
    pointer-events: none;
}

.tab-selector-control .form-control {
    height: auto;
    padding: 10px 42px 10px 14px;
    border: 1px solid #8897a3;
    border-radius: 4px;
    color: #22384a;
    font-size: 15px;
    font-weight: bold;
    background: #f7f9fb;
    background: -moz-linear-gradient(top,  #f7f9fb 0%, #d7e0e7 100%);
    background: -webkit-linear-gradient(top,  #f7f9fb 0%,#d7e0e7 100%);
    background: linear-gradient(to bottom,  #f7f9fb 0%,#d7e0e7 100%);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.9), 0 2px 6px rgba(30,45,61,0.12);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.tab-selector-control .form-control:focus {
    border-color: #2f79dd;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.95), 0 0 0 3px rgba(47,121,221,0.16);
}

.tab-selector-control .form-control::-ms-expand {
    display: none;
}

@media (max-width: 767px) {
    .tab-selector-bar {
        text-align: left;
    }

    .tab-selector-label {
        display: block;
        margin: 0 0 8px;
    }

    .tab-selector-control {
        display: block;
        width: 100%;
    }
}

.slider
{
    padding-bottom: 8px;
}

#scroller
{
    min-width:1014px;
    overflow-x:auto;
    overflow-y:hidden;
    margin-left:6px;
    -webkit-overflow-scrolling:touch;
}

canvas
{
    display: block;
}

.marquee {
    width: auto;
    overflow: hidden;
    position: relative;
    margin-bottom: 20px;
    /*border: 1px solid #000;*/

    background: rgb(226,226,226); /* Old browsers */
    background: -moz-linear-gradient(top,  rgba(226,226,226,1) 0%, rgba(219,219,219,1) 50%, rgba(209,209,209,1) 51%, rgba(254,254,254,1) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  rgba(226,226,226,1) 0%,rgba(219,219,219,1) 50%,rgba(209,209,209,1) 51%,rgba(254,254,254,1) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  rgba(226,226,226,1) 0%,rgba(219,219,219,1) 50%,rgba(209,209,209,1) 51%,rgba(254,254,254,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e2e2e2', endColorstr='#fefefe',GradientType=0 ); /* IE6-9 */

    -webkit-box-shadow: inset 0 2px 2px  rgba(0, 0, 0, .5), 0 1px 0  rgba(250, 250, 250, .2);
    box-shadow: inset 0 2px 2px  rgba(0, 0, 0, .5), 0 1px 0  rgba(250, 250, 250, .2);

    -webkit-transition: background-color 350ms;
    -moz-transition: background-color 350ms;
    transition: background-color 350ms;
}

.marquee p {
    position: absolute;

    font-family: Tahoma, Arial, sans-serif;

    width: 100%;
    height: 100%;

    margin: 0;
    line-height: 50px;

    text-align: left;
    padding-left: 20px;

    color: #000;
    filter: dropshadow(color=#000000, offx=1, offy=1);

    transform:translateX(100%);
    -moz-transform:translateX(100%);
    -webkit-transform:translateX(100%);
}
.marquee p:nth-child(1) {
    animation: left-one 20s ease infinite;
    -moz-animation: left-one 20s ease infinite;
    -webkit-animation: left-one 20s ease infinite;
}
.marquee p:nth-child(2) {
    animation: left-two 20s ease infinite;
    -moz-animation: left-two 20s ease infinite;
    -webkit-animation: left-two 20s ease infinite;
}
.marquee.down p {
    transform:translateY(-100%);
    -moz-transform:translateY(-100%);
    -webkit-transform:translateY(-100%);
}
.marquee.down p:nth-child(1) {
    animation: down-one 20s ease infinite;
    -moz-animation: down-one 20s ease infinite;
    -webkit-animation: down-one 20s ease infinite;
}
.marquee.down p:nth-child(2) {
    animation: down-two 20s ease infinite;
    -moz-animation: down-two 20s ease infinite;
    -webkit-animation: down-two 20s ease infinite;
}
.marquee.up p {
    transform:translateY(100%);
    -moz-transform:translateY(100%);
    -webkit-transform:translateY(100%);
}
.marquee.up p:nth-child(1) {
    animation: up-one 20s ease infinite;
    -moz-animation: up-one 20s ease infinite;
    -webkit-animation: up-one 20s ease infinite;
}
.marquee.up p:nth-child(2) {
    animation: up-two 20s ease infinite;
    -moz-animation: up-two 20s ease infinite;
    -webkit-animation: up-two 20s ease infinite;
}

/*================================
	Move the Marquee to the Left
==================================*/

/** Mozilla Firefox Keyframes **/
@-moz-keyframes left-one {
    0%	{
        -moz-transform:translateX(100%);
    }
    10% {
        -moz-transform:translateX(0);
    }
    40% {
        -moz-transform:translateX(0);
    }
    50% {
        -moz-transform:translateX(-100%);
    }
    100%{
        -moz-transform:translateX(-100%);
    }
}
@-moz-keyframes left-two {
    0% {
        -moz-transform:translateX(100%);
    }
    50% {
        -moz-transform:translateX(100%);
    }
    60% {
        -moz-transform:translateX(0);
    }
    90% {
        -moz-transform:translateX(0);
    }
    100%{
        -moz-transform:translateX(-100%);
    }
}
/** Webkit Keyframes **/
@-webkit-keyframes left-one {
    0% {
        -webkit-transform:translateX(100%);
    }
    10% {
        -webkit-transform:translateX(0);
    }
    40% {
        -webkit-transform:translateX(0);
    }
    50% {
        -webkit-transform:translateX(-100%);
    }
    100%{
        -webkit-transform:translateX(-100%);
    }
}
@-webkit-keyframes left-two {
    0% {
        -webkit-transform:translateX(100%);
    }
    50% {
        -webkit-transform:translateX(100%);
    }
    60% {
        -webkit-transform:translateX(0);
    }
    90% {
        -webkit-transform:translateX(0);
    }
    100%{
        -webkit-transform:translateX(-100%);
    }
}

/*================================
	Move the Marquee Downwards
==================================*/

/** Mozilla Firefox Keyframes **/
@-moz-keyframes down-one {
    0%	{
        -moz-transform:translateY(-100%);
    }
    10% {
        -moz-transform:translateY(0);
    }
    40% {
        -moz-transform:translateY(0);
    }
    50% {
        -moz-transform:translateY(100%);
    }
    100%{
        -moz-transform:translateY(100%);
    }
}
@-moz-keyframes down-two {
    0% {
        -moz-transform:translateY(-100%);
    }
    50% {
        -moz-transform:translateY(-100%);
    }
    60% {
        -moz-transform:translateY(0);
    }
    90% {
        -moz-transform:translateY(0);
    }
    100%{
        -moz-transform:translateY(100%);
    }
}

/** Webkit Keyframes **/
@-webkit-keyframes down-one {
    0% {
        -webkit-transform:translateY(-100%);
    }
    10% {
        -webkit-transform:translateY(0);
    }
    40% {
        -webkit-transform:translateY(0);
    }
    50% {
        -webkit-transform:translateY(100%);
    }
    100%{
        -webkit-transform:translateY(100%);
    }
}
@-webkit-keyframes down-two {
    0% {
        -webkit-transform:translateY(-100%);
    }
    50% {
        -webkit-transform:translateY(-100%);
    }
    60% {
        -webkit-transform:translateY(0);
    }
    90% {
        -webkit-transform:translateY(0);
    }
    100%{
        -webkit-transform:translateY(100%);
    }
}

/*================================
	Move the Marquee Upwards
==================================*/

/** Mozilla Firefox Keyframes **/
@-moz-keyframes up-one {
    0%	{
        -moz-transform:translateY(100%);
    }
    10% {
        -moz-transform:translateY(0);
    }
    40% {
        -moz-transform:translateY(0);
    }
    50% {
        -moz-transform:translateY(-100%);
    }
    100%{
        -moz-transform:translateY(-100%);
    }
}
@-moz-keyframes up-two {
    0% {
        -moz-transform:translateY(100%);
    }
    50% {
        -moz-transform:translateY(100%);
    }
    60% {
        -moz-transform:translateY(0);
    }
    90% {
        -moz-transform:translateY(0);
    }
    100%{
        -moz-transform:translateY(-100%);
    }
}

/** Webkit Keyframes **/
@-webkit-keyframes up-one {
    0% {
        -webkit-transform:translateY(100%);
    }
    10% {
        -webkit-transform:translateY(0);
    }
    40% {
        -webkit-transform:translateY(0);
    }
    50% {
        -webkit-transform:translateY(-100%);
    }
    100%{
        -webkit-transform:translateY(-100%);
    }
}
@-webkit-keyframes up-two {
    0% {
        -webkit-transform:translateY(100%);
    }
    50% {
        -webkit-transform:translateY(100%);
    }
    60% {
        -webkit-transform:translateY(0);
    }
    90% {
        -webkit-transform:translateY(0);
    }
    100%{
        -webkit-transform:translateY(-100%);
    }
}


.dropdown-submenu {
    position: relative;
}

.dropdown-submenu>.dropdown-menu {
    top: 0;
    left: 100%;
    margin-top: -6px;
    margin-left: -1px;
}

.dropdown-submenu:hover>.dropdown-menu {
    display: block;
}

.dropdown-submenu>a:after {
    display: block;
    content: " ";
    float: right;
    width: 0;
    height: 0;
    border-color: transparent;
    border-style: solid;
    border-width: 5px 0 5px 5px;
    border-left-color: #ccc;
    margin-top: 5px;
    margin-right: -10px;
}

.dropdown-submenu:hover>a:after {
    border-left-color: #fff;
}

.dropdown-submenu.pull-left {
    float: none;
}

.dropdown-submenu.pull-left>.dropdown-menu {
    left: -100%;
    margin-left: 10px;
}

.footer {
    margin-top: 20px;
}
.footer .well {
    padding: 20px 20px 40px 20px;
}

.pointText{
    color: #fff;
    text-shadow: #313030 1px 1px 2px;
    font-size: 12px;
    text-align: center;
    font-family: cursive;width: 426px;height:300px;background-image: url('../img/halfcourt_color.png');background-size: 426px 300px;
}
.point3P_1{
    position: absolute;    top: 88px;
    left: 41px;background: rgba(51, 51, 51, 0.42);
    padding: 4px;-webkit-border-radius: 8px 8px 8px 8px;
    border-radius: 8px 8px 8px 8px;
}
.point3P_2{
    position: absolute;    top: 258px;
    left: 82px;background: rgba(51, 51, 51, 0.42);
    padding: 4px;-webkit-border-radius: 8px 8px 8px 8px;
    border-radius: 8px 8px 8px 8px;
}
.point3P_3{
    position: absolute;    top: 268px;
    left: 213px;background: rgba(51, 51, 51, 0.42);
    padding: 4px;-webkit-border-radius: 8px 8px 8px 8px;
    border-radius: 8px 8px 8px 8px;
}
.point3P_4{
    position: absolute;    top: 263px;
    left: 345px;background: rgba(51, 51, 51, 0.42);
    padding: 4px;-webkit-border-radius: 8px 8px 8px 8px;
    border-radius: 8px 8px 8px 8px;
}
.point3P_5{
    position: absolute;    top: 84px;
    left: 403px;background: rgba(51, 51, 51, 0.42);
    padding: 4px;-webkit-border-radius: 8px 8px 8px 8px;
    border-radius: 8px 8px 8px 8px;
}
.point2P_1{
    position: absolute; top: 95px;
    left: 85px;background: rgba(51, 51, 51, 0.42);
    padding: 4px;-webkit-border-radius: 8px 8px 8px 8px;
    border-radius: 8px 8px 8px 8px;
}
.point2P_2{
    position: absolute;    top: 191px;
    left: 135px;background: rgba(51, 51, 51, 0.42);
    padding: 4px;-webkit-border-radius: 8px 8px 8px 8px;
    border-radius: 8px 8px 8px 8px;
}
.point2P_3{
    position: absolute;    top: 211px;
    left: 218px;background: rgba(51, 51, 51, 0.42);
    padding: 4px;-webkit-border-radius: 8px 8px 8px 8px;
    border-radius: 8px 8px 8px 8px;
}
.point2P_4{
    position: absolute;top: 196px;
    left: 291px;background: rgba(51, 51, 51, 0.42);
    padding: 4px;-webkit-border-radius: 8px 8px 8px 8px;
    border-radius: 8px 8px 8px 8px;
}
.point2P_5{
    position: absolute;top: 93px;
    left: 358px;background: rgba(51, 51, 51, 0.42);
    padding: 4px;-webkit-border-radius: 8px 8px 8px 8px;
    border-radius: 8px 8px 8px 8px;
}
.point2P2_1{
    position: absolute;top: 95px;
    left: 130px;background: rgba(51, 51, 51, 0.42);
    padding: 4px;-webkit-border-radius: 8px 8px 8px 8px;
    border-radius: 8px 8px 8px 8px;
}
.point2P2_2{
    position: absolute;    top: 158px;
    left: 218px;background: rgba(51, 51, 51, 0.42);
    padding: 4px;-webkit-border-radius: 8px 8px 8px 8px;
    border-radius: 8px 8px 8px 8px;
}
.point2P2_3{
    position: absolute;    top: 95px;
    left: 306px;background: rgba(51, 51, 51, 0.42);
    padding: 4px;-webkit-border-radius: 8px 8px 8px 8px;
    border-radius: 8px 8px 8px 8px;
}
.point2P3{
    position: absolute;top: 96px;
    left: 219px;background: rgba(51, 51, 51, 0.42);
    padding: 4px;-webkit-border-radius: 8px 8px 8px 8px;
    border-radius: 8px 8px 8px 8px;
}

/* 賽季選單樣式 */
.navbar-nav .dropdown-menu li.active a {
    background-color: #337ab7;
    color: white;
}

.navbar-nav .dropdown-menu li.active a:hover {
    background-color: #286090;
    color: white;
}

.navbar-nav .dropdown-menu .badge {
    background-color: #5cb85c;
    font-size: 10px;
    margin-left: 5px;
}

html {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

body {
    min-width: 0;
    overflow-x: hidden;
}

img {
    max-width: 100%;
    height: auto;
}

.site-top-banner {
    display: block;
    width: 100%;
    height: 196px;
    object-fit: cover;
    object-position: center;
}

.mobile-navbar-brand,
.mobile-menu-icon {
    display: none;
}

.home-score-strip-inner {
    position: relative;
    z-index: 2;
    margin-bottom: -10px;
}

.schedule-scroll-control {
    width: 35px;
}

.schedule-scroll-btn {
    width: 28px;
    height: 28px;
    margin-top: 30px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    color: #17212d;
    background: #ffffff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .22);
}

.schedule-scroll-btn:focus {
    outline: 2px solid #f6c44f;
    outline-offset: 2px;
}

.schedule_content,
.schedule_content2 {
    display: block;
    text-decoration: none;
}

.schedule_content:hover,
.schedule_content:focus,
.schedule_content2:hover,
.schedule_content2:focus {
    color: #ffffff;
    text-decoration: none;
}

.home-content-section {
    background: #ffffff;
}

.mobile-table-scroll {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
    width: 100%;
}

.top_ft {
    border: 1px solid #6e4b00;
}

.top_ft td {
    text-align: center;
}

.top_ft th {
    background: #6e4b00;
    color: #fff;
    text-align: center;
}

@media (max-width: 991px) {
    .container {
        width: 100% !important;
        max-width: 100% !important;
    }

    .home-score-strip .uList {
        display: flex;
        width: 100%;
        list-style: none;
    }

    .home-score-strip .uList > li {
        float: none;
        max-width: none;
    }

    .home-score-strip .schedule-scroll-area {
        flex: 1 1 auto;
        min-width: 0;
    }

    .home-score-strip .schedule-scroll-control {
        display: none;
    }

    #scroller {
        min-width: 0;
        margin-left: 0;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
    }
}

@media (max-width: 767px) {
    body {
        font-size: 15px;
        background-attachment: scroll;
        background-color: #0b1220;
    }

    .container {
        padding-left: 0;
        padding-right: 0;
    }

    .wrap {
        padding: 0 10px 18px;
        background: #f4f6f8;
        box-shadow: none;
    }

    .wrap > .row {
        margin-left: -5px;
        margin-right: -5px;
    }

    .wrap > .row > [class*="col-"],
    .page-index .col-md-15 {
        float: none;
        width: 100%;
        min-height: 1px;
        padding-left: 5px;
        padding-right: 5px;
    }

    .site-top-banner {
        width: calc(100% + 20px);
        max-width: none;
        height: clamp(76px, 24vw, 132px);
        margin-left: -10px;
        margin-right: -10px;
        object-fit: cover;
        object-position: center;
    }

    .navbar {
        position: sticky;
        top: 0;
        z-index: 50;
        min-height: 52px;
        margin: 0 -10px 10px;
        border: 0;
        border-radius: 0;
        background: #111827;
        filter: none;
        box-shadow: 0 8px 24px rgba(0, 0, 0, .22);
    }

    .navbar .container {
        padding-left: 0;
        padding-right: 0;
    }

    .navbar-header {
        margin-left: 0 !important;
        margin-right: 0 !important;
        position: relative;
        min-height: 52px;
    }

    .mobile-navbar-brand {
        display: block;
        height: 52px;
        padding: 16px 0 16px 16px;
        color: #ffffff !important;
        font-size: 15px;
        font-weight: bold;
        line-height: 20px;
        letter-spacing: 0;
    }

    .mobile-menu-toggle {
        display: block !important;
        float: right;
        width: 44px;
        height: 44px;
        margin: 4px 8px 4px 0 !important;
        padding: 7px 0 !important;
    }

    .mobile-menu-toggle .icon-bar {
        display: none;
    }

    .mobile-menu-icon {
        display: block;
        color: #ffffff;
        font-size: 22px;
        line-height: 30px;
    }

    #mobile-main-nav {
        max-height: calc(100vh - 52px);
        padding-left: 0;
        padding-right: 0;
        overflow-y: auto;
        background: #111827;
        -webkit-overflow-scrolling: touch;
    }

    #mobile-main-nav .navbar-nav {
        width: 100%;
        margin: 0;
    }

    #mobile-main-nav .navbar-nav > li > a {
        min-height: 48px;
        padding: 14px 18px;
        color: #ffffff;
        font-size: 15px;
        line-height: 20px;
        border-top: 1px solid rgba(255, 255, 255, .08);
    }

    #mobile-main-nav .navbar-nav > li > a:hover,
    #mobile-main-nav .navbar-nav > li > a:focus {
        background: #1f2937;
        color: #ffffff;
    }

    #mobile-main-nav .dropdown:hover > .dropdown-menu {
        display: none;
    }

    #mobile-main-nav .dropdown.open > .dropdown-menu,
    #mobile-main-nav .dropdown-submenu.open > .dropdown-menu {
        display: block;
    }

    #mobile-main-nav .dropdown-menu {
        position: static;
        float: none;
        width: 100%;
        margin: 0;
        padding: 0;
        border: 0;
        border-radius: 0;
        background: #1f2937;
        box-shadow: none;
    }

    #mobile-main-nav .dropdown-menu > li > a {
        min-height: 44px;
        padding: 12px 18px 12px 30px;
        color: #e5e7eb;
        white-space: normal;
        border-top: 1px solid rgba(255, 255, 255, .06);
    }

    #mobile-main-nav .dropdown-submenu > .dropdown-menu > li > a {
        padding-left: 44px;
    }

    #mobile-main-nav .dropdown-menu > li > a:hover,
    #mobile-main-nav .dropdown-menu > li > a:focus,
    #mobile-main-nav .dropdown-menu > .active > a {
        color: #ffffff;
        background: #334155;
    }

    .marquee {
        margin: 0 -10px 12px;
        border-radius: 0;
    }

    .marquee marquee {
        display: block;
        padding: 8px 0;
        color: #111827;
        font-size: 13px !important;
        line-height: 18px;
    }

    .home-score-strip {
        margin: 0 -10px 12px;
    }

    .home-score-strip-inner {
        margin-bottom: 0;
        padding: 10px 0 8px;
        background: #111827;
    }

    .home-score-strip .uList {
        display: flex;
        width: 100%;
        list-style: none;
    }

    .home-score-strip .uList > li {
        float: none;
        max-width: none;
    }

    .home-score-strip .schedule-scroll-area {
        flex: 1 1 auto;
        min-width: 0;
    }

    .schedule-scroll-control {
        display: none;
        flex: 0 0 42px;
        align-items: center;
        justify-content: center;
        width: 42px;
    }

    .schedule-scroll-btn {
        width: 34px;
        height: 34px;
        margin-top: 22px;
        color: #111827;
        background: #ffffff;
    }

    #scroller {
        min-width: 0;
        margin-left: 0;
        padding: 0 2px 4px;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-snap-type: x mandatory;
    }

    #scroller > table,
    #scroller > table > tbody,
    #scroller > table > tbody > tr {
        display: flex;
        width: max-content;
    }

    #scroller td {
        display: block;
        flex: 0 0 176px;
        width: 176px !important;
        padding: 0;
        scroll-snap-align: start;
    }

    .schedule_title {
        margin: 0 6px 6px;
        padding: 4px 8px;
        color: #111827;
        font-size: 12px;
        line-height: 16px;
        border: 0;
        border-radius: 8px;
        background: #f8fafc;
    }

    .schedule_content,
    .schedule_content2 {
        width: auto;
        height: auto;
        min-height: 108px;
        margin: 0 6px;
        padding: 10px;
        color: #ffffff;
        border-radius: 8px;
        background: #1f2937;
        box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .08);
    }

    .schedule_content2 {
        background: #78350f;
    }

    .schedule_div {
        padding: 0;
        font-size: 12px;
        line-height: 18px;
    }

    .schedule_div > div {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 6px;
        height: auto !important;
        min-height: 26px;
    }

    .schedule_div .left {
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .score_text {
        min-width: 34px;
        margin-top: 0;
        color: #ffffff;
        font-size: 20px;
        line-height: 22px;
        text-align: right;
    }

    .score_win {
        color: #f6c44f;
    }

    .slider {
        margin: 0 -10px 12px;
        padding-bottom: 0;
        background: #0f172a;
    }

    .carousel-caption {
        display: none;
    }

    .carousel-indicators {
        bottom: 4px;
    }

    .home-content-section {
        margin: 0 -5px 12px;
        padding: 10px 8px 2px;
        background: #ffffff;
        border-radius: 8px;
    }

    .tab-select-section {
        margin-bottom: 12px;
    }

    .tab-selector-bar {
        margin: 0 0 10px;
    }

    .tab-selector-label {
        margin-bottom: 6px;
        color: #334155;
        letter-spacing: 0;
    }

    .tab-selector-control .form-control {
        min-height: 46px;
        font-size: 15px;
        border-radius: 8px;
        background: #ffffff;
        box-shadow: none;
    }

    .mobile-table-scroll {
        border-radius: 8px;
    }

    .group-matchup-scroll {
        margin-bottom: 10px;
        background: #111827;
    }

    .group_table {
        min-width: 720px;
        margin-bottom: 0;
        font-size: 11px !important;
    }

    .group_table th.group_title h4 {
        margin: 8px 0;
        font-size: 16px;
        line-height: 20px;
    }

    .group_table > tbody > tr > td,
    .group_table > tbody > tr > th {
        padding: 7px 6px;
        white-space: nowrap;
        vertical-align: middle;
    }

    .group_table tr > td:first-child {
        position: sticky;
        left: 0;
        z-index: 2;
        max-width: 128px;
        color: #ffffff;
        background: #243244;
        box-shadow: 1px 0 0 rgba(255, 255, 255, .16);
    }

    .group_table p {
        margin: 0;
    }

    .panel {
        margin: 0 -5px 12px;
        border: 0;
        border-radius: 8px;
        box-shadow: none;
        overflow: hidden;
    }

    .panel-heading {
        padding: 12px 14px;
        color: #ffffff;
        font-size: 16px;
        line-height: 20px;
        background: #111827;
        filter: none;
    }

    .panel-body {
        padding: 10px;
        background: #f8fafc;
        border-radius: 0;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .ranking {
        font-size: 12px;
    }

    .ranking .row {
        margin-left: 0;
        margin-right: 0;
    }

    .ranking [class*="col-"] {
        padding-left: 0;
        padding-right: 0;
    }

    .ranking .table {
        margin-bottom: 10px;
        table-layout: fixed;
        font-size: 12px;
        background: #ffffff;
        border-radius: 8px;
        overflow: hidden;
    }

    .ranking .table th,
    .ranking .table td {
        padding: 7px 5px !important;
        line-height: 17px;
        white-space: normal;
        word-break: break-word;
        vertical-align: middle;
    }

    .ranking .table th:first-child,
    .ranking .table td:first-child {
        width: 32px;
    }

    .ranking .table th:nth-child(4),
    .ranking .table td:nth-child(4),
    .ranking .table th:nth-child(5),
    .ranking .table td:nth-child(5) {
        width: 48px;
    }

    .standings-scroll {
        margin: 0 -5px 14px;
        background: #ffffff;
        border-radius: 8px;
    }

    .standings-scroll .stats {
        min-width: 620px;
        margin-bottom: 0;
        font-size: 12px;
    }

    .schedule-box,
    .team-box,
    .player-box,
    .match-box,
    .statistic-box,
    .group-box,
    .home-box {
        padding: 12px;
        border-radius: 8px;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .schedule-box .table,
    .team-box .table,
    .player-box .table,
    .match-box .table,
    .statistic-box .table,
    .group-box .table,
    .home-box .table {
        min-width: 620px;
        margin-bottom: 10px;
        font-size: 12px;
    }

    .panel-body > .table,
    .team-roster-table,
    .player-box > .row > .col-md-12 > .table,
    .match-box .table,
    .statistic-box #stats_table {
        min-width: 720px;
        max-width: none;
    }

    .team-roster-scroll {
        margin-bottom: 10px;
        background: #fff;
    }

    .team-roster-table {
        min-width: 560px !important;
    }

    .player-profile-table,
    .team-stats-summary {
        width: 100%;
        min-width: 0 !important;
    }

    .statistic-box {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .schedule-box img,
    .team-box img,
    .player-box img,
    .match-box img {
        max-width: 100%;
        height: auto;
    }

    .stats th,
    .stats td {
        padding: 7px 6px !important;
        line-height: 17px;
        white-space: nowrap;
    }

    .footer {
        margin: 0;
        padding: 0 10px 12px;
        background: #f4f6f8;
    }

    .footer .row {
        margin-left: 0;
        margin-right: 0;
    }

    .footer [class*="col-"] {
        padding-left: 0;
        padding-right: 0;
    }

    .footer .well {
        margin-bottom: 0;
        border: 0;
        border-radius: 8px;
        background: #ffffff;
        box-shadow: none;
    }
}

/* ===== 主頁賽程欄：卡片式 UI（參考通用賽事卡排版，沿用本站既有色系）===== */
.match-cell { padding: 0; vertical-align: top; }
.match-card {
    display: block;
    width: 216px;
    margin: 6px;
    padding: 10px 12px;
    color: #e5e7eb;
    text-decoration: none;
    background: #1f2937;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .25);
}
.match-card:hover,
.match-card:focus {
    color: #fff;
    text-decoration: none;
    border-color: rgba(246, 196, 79, .5);
}
.mc-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 8px;
}
.mc-time {
    display: block;
    margin: -2px 0 8px;
    font-size: 12px;
    color: #9ca3af;
    white-space: nowrap;
}
.mc-day-label {
    color: #f6c44f;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.7;
    white-space: nowrap;
}
.mc-badge {
    display: inline-flex;
    align-items: center;
    padding: 2px 9px;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.7;
    border-radius: 999px;
    white-space: nowrap;
}
.mc-badge-upcoming { color: #cbd5e1; background: #374151; }
.mc-badge-live { color: #fff; background: #dc2626; }
.mc-badge-final { color: #f6c44f; background: rgba(246, 196, 79, .16); }
.mc-team {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 5px 0;
}
.mc-team + .mc-team { border-top: 1px solid rgba(255, 255, 255, .06); }
.mc-side { display: flex; align-items: center; gap: 8px; min-width: 0; }
.mc-logo {
    flex: 0 0 auto;
    width: 26px;
    height: 26px;
    object-fit: contain;
    border-radius: 50%;
    background: #fff;
}
.mc-name {
    overflow: hidden;
    font-size: 14px;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.mc-score {
    flex: 0 0 auto;
    min-width: 24px;
    font-size: 18px;
    font-weight: 700;
    color: #e5e7eb;
    text-align: right;
}
.mc-score.mc-win { color: #f6c44f; }
.mc-foot {
    margin-top: 8px;
    padding-top: 6px;
    overflow: hidden;
    font-size: 11px;
    color: #9ca3af;
    text-overflow: ellipsis;
    white-space: nowrap;
    border-top: 1px solid rgba(255, 255, 255, .06);
}
.mc-empty {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 6px;
    width: 216px;
    margin: 6px;
    padding: 26px 12px;
    color: #9ca3af;
    text-align: center;
    background: #1f2937;
    border-radius: 10px;
}
.mc-empty-text { color: #cbd5e1; }

/* ===== 賽程頁：篩選及 NBA-style 白底賽事卡 ===== */
.schedule-box {
    padding-top: 14px;
    padding-bottom: 14px;
    background: #f5f7fa;
}
.schedule-filter {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 12px;
    margin: 0 0 14px;
    padding: 12px;
    background: #f7f8fa;
    border: 1px solid #d9dee5;
    border-radius: 6px;
}
.schedule-filter label {
    margin: 0 -4px 0 0;
    color: #3E4951;
    font-size: 13px;
    font-weight: 700;
}
.schedule-filter .form-control {
    min-width: 118px;
    height: 38px;
}
.schedule-team-search {
    min-width: 210px !important;
}
.schedule-filter-submit {
    height: 38px;
    color: #fff;
    background: #163a63;
    border-color: #163a63;
}
.schedule-filter-submit:hover,
.schedule-filter-submit:focus {
    color: #fff;
    background: #0f2a47;
    border-color: #0f2a47;
}
.schedule-card-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 12px;
}
.schedule-card {
    display: block;
    padding: 14px 16px;
    width: 100%;
    background: #fff;
    border: 1px solid #dde3ea;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(15, 23, 42, .05);
    color: #17212d;
    overflow: hidden;
}
.schedule-card.is-live {
    border-color: #f3b3b3;
    box-shadow: inset 3px 0 0 #dc2626, 0 2px 8px rgba(15, 23, 42, .05);
}
.schedule-card-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin-bottom: 10px;
    color: #64748b;
    font-size: 13px;
    font-weight: 600;
}
.schedule-date {
    color: #17212d;
    font-weight: 800;
}
.schedule-dot {
    color: #cbd5e1;
}
.schedule-card-main {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: 18px;
}
.schedule-team {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    color: #17212d;
}
.schedule-team:hover,
.schedule-team:focus {
    color: #163a63;
    text-decoration: none;
}
.schedule-team-away {
    flex-direction: row-reverse;
    text-align: right;
}
.schedule-logo-wrap {
    flex: 0 0 auto;
    width: 54px;
    height: 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.schedule-team-logo,
.schedule-logo-fallback {
    width: 54px;
    height: 54px;
    border-radius: 50%;
}
.schedule-team-logo {
    object-fit: contain;
    background: #f8fafc;
    border: 1px solid #e5e7eb;
    padding: 5px;
}
.schedule-logo-fallback {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #eef2f7;
    border: 1px solid #d8dee7;
    color: #334155;
    font-weight: 800;
    font-size: 18px;
}
.schedule-team-text {
    display: flex;
    flex-direction: column;
    min-width: 0;
    max-width: 100%;
}
.schedule-team-name {
    font-size: 17px;
    font-weight: 800;
    line-height: 1.25;
    word-break: break-word;
}
.schedule-jersey {
    margin-top: 3px;
    color: #64748b;
    font-size: 12px;
    font-weight: 600;
}
.schedule-scoreboard {
    min-width: 190px;
    text-align: center;
}
.schedule-time {
    display: block;
    margin-bottom: 5px;
    color: #17212d;
    font-size: 15px;
    font-weight: 900;
    letter-spacing: .02em;
}
.schedule-score {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    font-variant-numeric: tabular-nums;
}
.schedule-score-num {
    min-width: 44px;
    color: #17212d;
    font-size: 36px;
    font-weight: 900;
    line-height: 1;
}
.schedule-score-num.is-muted {
    color: #94a3b8;
}
.schedule-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 54px;
    padding: 4px 9px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
    white-space: nowrap;
}
.schedule-status.is-upcoming {
    color: #163a63;
    background: #eef5fc;
}
.schedule-status.is-live {
    color: #dc2626;
    background: #fee2e2;
}
.schedule-status.is-final {
    color: #4b5563;
    background: #f1f2f4;
}
.schedule-card-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px dashed #e5e7eb;
    color: #64748b;
    font-size: 13px;
    font-weight: 600;
}
.schedule-location a {
    color: #475569;
}
.schedule-remark {
    color: #64748b;
}
.schedule-detail-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 6px 13px;
    color: #17212d;
    background: #fff;
    border: 1px solid #d8dee7;
    border-radius: 8px;
    font-weight: 800;
    text-decoration: none;
}
.schedule-detail-link:hover,
.schedule-detail-link:focus {
    color: #163a63;
    border-color: #163a63;
    text-decoration: none;
}
.schedule-empty {
    padding: 26px 10px;
    color: #6b7280;
    font-weight: 600;
    text-align: center;
    background: #fff;
    border: 1px solid #dde3ea;
    border-radius: 12px;
}

/* ===== 球隊 / 球員頁：單一隊徽顯示及安全 fallback ===== */
.team-logo-panel,
.player-team-logo-panel {
    margin-bottom: 14px;
    text-align: center;
}
.team-logo-frame,
.player-team-logo-card {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 260px;
    color: inherit;
    text-decoration: none;
}
.team-logo-frame,
.player-team-logo-card {
    align-items: flex-start;
}
.team-logo-frame:hover,
.team-logo-frame:focus,
.player-team-logo-card:hover,
.player-team-logo-card:focus {
    text-decoration: none;
}
.team-main-logo,
.player-team-logo {
    width: 100%;
    max-width: 360px;
    max-height: 260px;
    object-fit: contain;
    background: #fff;
}
.team-player-logo {
    width: 24px;
    height: 24px;
    margin-right: 6px;
    object-fit: contain;
    background: #fff;
    vertical-align: middle;
}
.team-box > .row {
    margin-bottom: 16px;
}
.team-box > .row:last-child {
    margin-bottom: 0;
}
.team-box .panel {
    border: 1px solid #d9dee5;
    border-radius: 6px;
    box-shadow: none;
    overflow: hidden;
}
.team-box .panel-heading {
    padding: 11px 12px;
    color: #fff !important;
    background: #3E4951;
    filter: none;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.35;
}
.team-box .panel-body {
    padding: 12px;
    background: #f8fafc;
}
.team-section-subtitle {
    margin: 2px 0 8px;
    color: #26323a;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.35;
}
.team-table-scroll {
    margin-bottom: 14px;
    background: #fff;
    border: 1px solid #d9dee5;
    border-radius: 6px;
}
.team-table-scroll:last-child {
    margin-bottom: 0;
}
.team-box .team-data-table {
    width: 100%;
    min-width: 760px;
    margin-bottom: 0 !important;
    background: #fff;
    font-size: 13px;
    table-layout: auto;
}
.team-box .team-total-table,
.team-box .team-history-table,
.team-box .team-player-stats-table {
    min-width: 980px;
}
.team-data-table th,
.team-data-table td {
    padding: 9px 10px !important;
    line-height: 1.35;
    text-align: center;
    vertical-align: middle !important;
    white-space: nowrap;
}
.team-schedule-table td:nth-child(4),
.team-schedule-table td:nth-child(6),
.team-history-table td:nth-child(2),
.team-player-stats-table td:nth-child(2) {
    text-align: left;
    font-weight: 600;
}
.team-match-link-col {
    width: 54px;
    text-align: center !important;
}
.team-match-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    color: #337ab7;
    background: #eef4ff;
    border: 1px solid #d8e6ff;
    border-radius: 6px;
    text-decoration: none;
}
.team-match-link:hover,
.team-match-link:focus {
    color: #fff;
    background: #337ab7;
    border-color: #337ab7;
    text-decoration: none;
}
.team-rankings-col .panel {
    margin-bottom: 8px;
    border-color: #d9dee5;
    border-radius: 6px;
}
.team-rankings-col .panel-heading {
    padding: 8px 10px;
    font-size: 13px;
    line-height: 1.25;
}
.team-rankings-col .panel-body {
    padding: 7px 10px;
    color: #26323a;
    background: #fff;
}
.team-rankings-col .panel-body p {
    margin: 0;
    padding: 6px 0;
    color: #26323a;
    border-top: 1px solid #edf0f3;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.3;
}
.team-rankings-col .panel-body p:first-child {
    border-top: 0;
}
.team-rankings-col .panel-body br {
    display: none;
}
.team-rankings-col .panel-body small {
    color: #64717c;
    font-size: 11px;
    font-weight: 500;
    line-height: 1.25;
}
.team-rankings-col .panel-body small:before {
    content: " · ";
}
.player-profile-table th {
    width: 90px;
}
.player-profile-table {
    background: #fff;
}
.player-profile-table th,
.player-profile-table td {
    padding: 9px 10px !important;
    line-height: 1.4;
    vertical-align: middle !important;
}
.player-profile-table .form-control {
    min-height: 34px;
}
.player-radar-card {
    width: 342px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}
.player-box > .row {
    margin-bottom: 16px;
}
.player-box > .row:last-child {
    margin-bottom: 0;
}
.player-stats-scroll {
    margin-bottom: 16px;
    background: #fff;
    border: 1px solid #d9dee5;
    border-radius: 6px;
}
.player-stats-scroll .player-data-table {
    width: 100%;
    min-width: 980px;
    margin-bottom: 0;
    background: #fff;
    font-size: 13px;
    table-layout: auto;
}
.player-rank-scroll .player-rank-table {
    min-width: 560px;
}
.player-data-table th,
.player-data-table td {
    padding: 9px 10px !important;
    line-height: 1.35;
    text-align: center;
    vertical-align: middle !important;
    white-space: nowrap;
}
.player-data-table td:first-child,
.player-data-table th:first-child {
    text-align: left;
}
.player-data-table .table-title {
    padding: 0 !important;
    text-align: left;
}
.player-data-table .table-title h4 {
    margin: 0;
    padding: 11px 12px;
    color: #fff;
    font-size: 16px;
    line-height: 1.3;
}
.team-logo-fallback {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 220px;
    padding: 20px;
    color: #fff;
    background: #3E4951;
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 6px;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.25;
    text-align: center;
}
.team-logo-frame .team-logo-fallback,
.player-team-logo-card .team-logo-fallback {
    display: none;
}

@media (max-width: 767px) {
    #scroller td.match-cell {
        flex: 0 0 248px;
        width: 248px !important;
        padding: 0;
    }
    .match-card,
    .mc-empty { width: auto; }
    .mc-logo { width: 30px; height: 30px; }
    .mc-name { font-size: 15px; }
    .mc-score { font-size: 20px; }
    .schedule-filter {
        display: block;
        padding: 10px;
    }
    .schedule-filter label {
        display: block;
        margin: 8px 0 4px;
    }
    .schedule-filter label:first-child {
        margin-top: 0;
    }
    .schedule-filter .form-control {
        width: 100%;
        min-width: 0;
        height: 44px;
        margin-bottom: 8px;
    }
    .schedule-filter-submit {
        width: 100%;
        height: 44px;
    }
    .schedule-card {
        padding: 12px;
        border-radius: 10px;
    }
    .schedule-card-main {
        grid-template-columns: 1fr;
        gap: 10px;
    }
    .schedule-team-away {
        flex-direction: row;
        text-align: left;
    }
    .schedule-logo-wrap,
    .schedule-team-logo,
    .schedule-logo-fallback {
        width: 46px;
        height: 46px;
    }
    .schedule-team-name {
        font-size: 16px;
    }
    .schedule-scoreboard {
        min-width: 0;
        padding: 10px 12px;
        background: #f8fafc;
        border: 1px solid #edf1f5;
        border-radius: 10px;
    }
    .schedule-score {
        justify-content: space-between;
    }
    .schedule-score-num {
        font-size: 32px;
    }
    .schedule-card-bottom {
        align-items: stretch;
        flex-direction: column;
    }
    .schedule-detail-link {
        width: 100%;
    }
    .team-logo-frame,
    .player-team-logo-card {
        min-height: 190px;
    }
    .team-main-logo,
    .player-team-logo {
        max-height: 190px;
    }
    .team-logo-fallback {
        min-height: 170px;
        font-size: 20px;
    }
    .team-box > .row {
        margin-left: -5px;
        margin-right: -5px;
        margin-bottom: 14px;
    }
    .team-box > .row > [class*="col-"] {
        padding-left: 5px;
        padding-right: 5px;
    }
    .team-box .panel-heading {
        padding: 10px 12px;
        font-size: 15px;
    }
    .team-box .panel-body {
        padding: 10px;
    }
    .team-table-scroll {
        margin-bottom: 12px;
        border-radius: 8px;
    }
    .team-box .team-data-table {
        font-size: 12px;
    }
    .team-box .team-schedule-table {
        min-width: 760px;
    }
    .team-box .team-total-table,
    .team-box .team-history-table,
    .team-box .team-player-stats-table {
        min-width: 980px;
    }
    .team-data-table th,
    .team-data-table td {
        padding: 8px 9px !important;
    }
    .team-data-table tr:first-child > th:first-child,
    .team-data-table tr:not(:first-child) > th:first-child,
    .team-data-table td:first-child {
        position: sticky;
        left: 0;
        z-index: 2;
        box-shadow: 1px 0 0 #d9dee5;
    }
    .team-data-table tr:first-child > th:first-child,
    .team-data-table tr:not(:first-child) > th:first-child {
        background: #3E4951;
    }
    .team-data-table td:first-child {
        background: #fff;
    }
    .team-player-stats-table th:first-child,
    .team-player-stats-table td:first-child {
        width: 46px;
        min-width: 46px;
        text-align: center;
    }
    .team-player-stats-table th:nth-child(2),
    .team-player-stats-table td:nth-child(2) {
        position: sticky;
        left: 46px;
        z-index: 2;
        min-width: 128px;
        box-shadow: 1px 0 0 #d9dee5;
    }
    .team-player-stats-table th:nth-child(2) {
        background: #3E4951;
    }
    .team-player-stats-table td:nth-child(2) {
        background: #fff;
    }
    .team-rankings-col {
        display: flex;
        gap: 8px;
        overflow-x: auto;
        padding-bottom: 6px;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x proximity;
    }
    .team-rankings-col .panel {
        flex: 0 0 220px;
        margin: 0;
        border-radius: 8px;
        scroll-snap-align: start;
    }
    .team-rankings-col .panel-heading {
        padding: 8px 9px;
        font-size: 13px;
    }
    .team-rankings-col .panel-body {
        padding: 6px 9px;
    }
    .team-rankings-col .panel-body p {
        padding: 5px 0;
        font-size: 12px;
        line-height: 1.25;
    }
    .team-rankings-col .panel-body small {
        display: block;
        margin-top: 1px;
        font-size: 10px;
    }
    .team-rankings-col .panel-body small:before {
        content: "";
    }
    .player-box > .row {
        margin-left: -5px;
        margin-right: -5px;
        margin-bottom: 14px;
    }
    .player-box > .row > [class*="col-"] {
        padding-left: 5px;
        padding-right: 5px;
    }
    .player-stats-scroll {
        margin-bottom: 14px;
        border-radius: 8px;
    }
    .player-stats-scroll .player-data-table {
        min-width: 980px;
        font-size: 12px;
    }
    .player-rank-scroll .player-rank-table {
        min-width: 540px;
    }
    .player-data-table th,
    .player-data-table td {
        padding: 8px 9px !important;
    }
    .player-data-table tr:not(:first-child) > th:first-child,
    .player-data-table td:first-child {
        position: sticky;
        left: 0;
        z-index: 2;
        box-shadow: 1px 0 0 #d9dee5;
    }
    .player-data-table tr:not(:first-child) > th:first-child {
        background: #3E4951;
    }
    .player-data-table td:first-child {
        background: #fff;
    }
}

/* ============================================================
   賽事詳情頁（match.php）— 卡片式改版，作用域 .match-detail
   ============================================================ */
.match-detail {
    --md-brand: #111827; --md-head: #2b343d; --md-accent: #f6c44f; --md-away: #3f63e8;
    --md-ink: #17212d; --md-muted: #64717c; --md-line: #d9dee5; --md-link: #337ab7; --md-live: #dc2626;
    width: min(100%, 980px);
    margin: 0 auto;
    color: var(--md-ink);
    font-family: Arial, "Microsoft JhengHei", "PingFang HK", "PingFang TC", sans-serif;
}
.match-detail a { color: var(--md-link); text-decoration: none; }
.match-detail a:hover { text-decoration: underline; }
.match-detail .section-title { margin: 0; padding-left: 10px; font-size: 17px; font-weight: 900; border-left: 4px solid var(--md-accent); }

/* 1. 精簡分數欄 */
.match-detail .md-scorebar { color: #fff; background: var(--md-brand); border-radius: 10px; overflow: hidden; }
.match-detail .sb-main { display: flex; align-items: center; gap: 10px; padding: 16px 14px 14px; }
.match-detail .sb-side { display: flex; align-items: center; gap: 11px; flex: 1; min-width: 0; }
.match-detail .sb-side:hover { text-decoration: none; }
.match-detail .sb-side.away { flex-direction: row-reverse; }
.match-detail .sb-logo { width: 52px; height: 52px; flex: 0 0 auto; border-radius: 50%; background: #fff; object-fit: contain; box-shadow: 0 3px 10px rgba(0,0,0,.3); }
.match-detail .sb-nm { min-width: 0; }
.match-detail .sb-side.away .sb-nm { text-align: right; }
.match-detail .sb-name { display: block; font-size: 15px; font-weight: 800; color: #fff; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.match-detail .sb-bar { display: block; height: 3px; width: 40px; margin-top: 5px; border-radius: 2px; }
.match-detail .sb-side.away .sb-bar { margin-left: auto; }
.match-detail .sb-bar.home { background: var(--md-accent); }
.match-detail .sb-bar.away { background: var(--md-away); }
.match-detail .sb-score { flex: 0 0 auto; font-size: 42px; font-weight: 900; line-height: 1; font-variant-numeric: tabular-nums; }
.match-detail .sb-score.win { color: #fff; }
.match-detail .sb-score.lose { color: #67727e; }
.match-detail .sb-center { flex: 0 0 auto; display: flex; flex-direction: column; align-items: center; gap: 5px; min-width: 60px; }
.match-detail .sb-status { font-size: 13px; font-weight: 800; letter-spacing: .5px; color: #cbd5e1; white-space: nowrap; }
.match-detail .sb-status .dot { display: none; width: 8px; height: 8px; margin-right: 5px; border-radius: 50%; background: #fff; vertical-align: middle; box-shadow: 0 0 0 3px rgba(255,255,255,.3); }
.match-detail .sb-tri { width: 0; height: 0; border-top: 5px solid transparent; border-bottom: 5px solid transparent; }
.match-detail .sb-tri.to-away { border-left: 8px solid var(--md-accent); }
.match-detail .sb-tri.to-home { border-right: 8px solid var(--md-accent); }
.match-detail .txt-live { display: none; }
.match-detail.is-live .sb-status { color: #fff; }
.match-detail.is-live .sb-status .dot { display: inline-block; animation: md-pulse 1.2s infinite; }
.match-detail.is-live .txt-final { display: none; }
.match-detail.is-live .txt-live { display: inline; }
.match-detail.is-live .sb-tri { visibility: hidden; }
@keyframes md-pulse { 0% { opacity: 1; } 50% { opacity: .3; } 100% { opacity: 1; } }
.match-detail .sb-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 14px; padding: 9px 14px; font-size: 12px; font-weight: 700; color: #aeb8c4; background: rgba(255,255,255,.05); border-top: 1px solid rgba(255,255,255,.08); }
.match-detail .sb-meta .live-detail { display: none; color: var(--md-accent); }
.match-detail.is-live .sb-meta .live-detail { display: inline; }

/* 通用區塊 */
.match-detail .md-section { margin-top: 12px; padding: 14px; background: #fff; border: 1px solid var(--md-line); border-radius: 10px; }

/* 2. 逐節比分 */
.match-detail .md-linescore { margin-top: 12px; padding: 4px 6px; background: #fff; border: 1px solid var(--md-line); border-radius: 10px; }
.match-detail table.linescore { width: 100%; border-collapse: collapse; font-size: 14px; }
.match-detail table.linescore th, .match-detail table.linescore td { padding: 10px 6px; text-align: center; }
.match-detail table.linescore thead th { color: var(--md-muted); font-size: 12px; font-weight: 700; border-bottom: 1px solid #edf0f3; }
.match-detail table.linescore tbody th { text-align: left; font-weight: 800; white-space: nowrap; padding-left: 12px; }
.match-detail table.linescore thead th:first-child { text-align: left; padding-left: 12px; }
.match-detail table.linescore tbody tr + tr td, .match-detail table.linescore tbody tr + tr th { border-top: 1px solid #f1f3f5; }
.match-detail table.linescore .q-total { font-weight: 900; font-size: 16px; }
.match-detail .ls-dot { display: inline-block; width: 8px; height: 8px; margin-right: 7px; border-radius: 50%; vertical-align: middle; }
.match-detail .ls-dot.home { background: var(--md-accent); }
.match-detail .ls-dot.away { background: var(--md-away); }

/* 3. 內嵌影片 */
.match-detail .md-video-wrap { margin-top: 12px; border-radius: 10px; overflow: hidden; background: #000; border: 1px solid var(--md-line); }
.match-detail .md-video { position: relative; aspect-ratio: 16 / 9; cursor: pointer; }
.match-detail .md-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.match-detail .md-video .poster { position: absolute; inset: 0; display: grid; place-items: center; background: radial-gradient(120% 120% at 50% 0%, #243b55 0%, #0f172a 70%); }
.match-detail .md-video .play { width: 70px; height: 70px; border-radius: 50%; background: rgba(0,0,0,.45); border: 2px solid #fff; display: grid; place-items: center; }
.match-detail .md-video .play::after { content: ""; margin-left: 5px; border-left: 22px solid var(--md-accent); border-top: 13px solid transparent; border-bottom: 13px solid transparent; }
.match-detail .md-video .vlabel { position: absolute; left: 14px; bottom: 12px; color: #fff; font-size: 14px; font-weight: 800; text-shadow: 0 1px 4px rgba(0,0,0,.6); }
.match-detail .md-video .vtag { position: absolute; left: 14px; top: 12px; padding: 4px 10px; font-size: 11px; font-weight: 800; color: #111827; background: var(--md-accent); border-radius: 999px; }
.match-detail .vphoto { display: flex; }
.match-detail .vphoto a { flex: 1; text-align: center; padding: 11px; font-size: 13px; font-weight: 800; color: #fff; background: var(--md-head); }
.match-detail .vphoto a:hover { color: #fff; text-decoration: none; opacity: .92; }

/* 4. TOP PERFORMERS */
.match-detail .perf-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; }
.match-detail .perf-toggle { display: inline-flex; padding: 3px; background: #eef1f4; border-radius: 999px; }
.match-detail .pt-btn { appearance: none; border: 0; cursor: pointer; padding: 7px 18px; font-size: 13px; font-weight: 800; color: var(--md-muted); background: transparent; border-radius: 999px; }
.match-detail .pt-btn.active { color: #15202b; background: #fff; box-shadow: 0 1px 4px rgba(0,0,0,.12); }
.match-detail .perf-eyebrow { font-size: 12px; font-weight: 800; letter-spacing: .5px; color: #9aa6b2; }
.match-detail .perf-view { display: grid; gap: 10px; }
.match-detail .perf-view[hidden] { display: none; }
.match-detail .perf-row { display: grid; grid-template-columns: minmax(0,1.3fr) repeat(3, minmax(48px,.5fr)); gap: 8px; align-items: center; padding: 13px; background: #f9fafb; border: 1px solid #edf0f3; border-radius: 10px; }
.match-detail .perf-info { display: flex; align-items: center; gap: 11px; min-width: 0; }
.match-detail .perf-av { display: grid; place-items: center; width: 50px; height: 50px; flex: 0 0 auto; color: #fff; background: var(--md-head); border-radius: 50%; overflow: hidden; font-size: 15px; font-weight: 900; }
.match-detail .perf-av.home { box-shadow: 0 0 0 2px var(--md-accent); }
.match-detail .perf-av.away { box-shadow: 0 0 0 2px var(--md-away); }
.match-detail .perf-name { display: block; overflow: hidden; font-size: 16px; font-weight: 900; text-overflow: ellipsis; white-space: nowrap; }
.match-detail .perf-team { color: var(--md-muted); font-size: 12px; font-weight: 700; }
.match-detail .perf-stat { text-align: center; }
.match-detail .perf-stat strong { display: block; font-size: 26px; font-weight: 900; line-height: 1; }
.match-detail .perf-stat span { display: block; margin-top: 5px; color: #17212d; font-size: 12px; font-weight: 800; }

/* 5. 球隊數據對比（摺疊） */
.match-detail .md-collapsible { padding: 0; overflow: hidden; }
.match-detail .coll-head { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 15px 14px; background: none; border: 0; cursor: pointer; text-align: left; }
.match-detail .coll-chevron { flex: 0 0 auto; width: 22px; height: 22px; display: grid; place-items: center; color: var(--md-muted); transition: transform .2s ease; }
.match-detail .coll-chevron::after { content: ""; width: 9px; height: 9px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); margin-top: -3px; }
.match-detail .coll-head[aria-expanded="true"] .coll-chevron { transform: rotate(180deg); }
.match-detail .coll-body { padding: 2px 14px 16px; }
.match-detail .coll-body[hidden] { display: none; }
.match-detail .compare-teams { display: flex; justify-content: space-between; gap: 12px; margin-bottom: 14px; font-weight: 900; font-size: 14px; }
.match-detail .compare-team { display: inline-flex; align-items: center; gap: 8px; min-width: 0; }
.match-detail .compare-team.away { flex-direction: row-reverse; }
.match-detail .mini-dot { width: 10px; height: 10px; border-radius: 50%; flex: 0 0 auto; }
.match-detail .mini-dot.home { background: var(--md-accent); }
.match-detail .mini-dot.away { background: var(--md-away); }
.match-detail .compare-list { display: grid; gap: 14px; }
.match-detail .compare-values { display: grid; grid-template-columns: 64px minmax(0,1fr) 64px; align-items: end; gap: 8px; margin-bottom: 6px; }
.match-detail .compare-values .v { font-size: 21px; font-weight: 900; line-height: 1; color: #9aa3ac; }
.match-detail .compare-values .v:last-child { text-align: right; }
.match-detail .compare-values .v.is-better { color: var(--md-ink); }
.match-detail .compare-values .v small { display: block; font-size: 10px; font-weight: 700; color: var(--md-muted); }
.match-detail .compare-label { color: #17212d; font-size: 14px; font-weight: 900; text-align: center; }
.match-detail .compare-bar { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; }
.match-detail .bar-track { height: 10px; overflow: hidden; background: #eef0f2; }
.match-detail .bar-track:first-child { border-radius: 999px 0 0 999px; }
.match-detail .bar-track:last-child { border-radius: 0 999px 999px 0; }
.match-detail .bar-fill { display: block; height: 100%; }
.match-detail .bar-fill-home { margin-left: auto; background: var(--md-accent); }
.match-detail .bar-fill-away { background: var(--md-away); }

/* 6. 數據統計表 */
.match-detail .md-rosters { margin-top: 10px; }
.match-detail .roster { border: 1px solid var(--md-line); border-radius: 10px; overflow: hidden; }
.match-detail .roster + .roster { margin-top: 12px; }
.match-detail .roster-title { display: flex; align-items: center; gap: 9px; padding: 11px 12px; color: #fff; background: var(--md-head); font-size: 15px; font-weight: 800; border-left: 4px solid var(--md-accent); }
.match-detail .roster.away .roster-title { border-left-color: var(--md-away); }
.match-detail .roster-title a { color: #fff; }
.match-detail .md-table-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.match-detail table.box { border-collapse: separate; border-spacing: 0; width: 100%; min-width: 760px; font-size: 12px; white-space: nowrap; }
.match-detail table.box th, .match-detail table.box td { padding: 9px 8px; text-align: center; border-bottom: 1px solid #eef0f3; }
.match-detail table.box thead th { position: sticky; top: 0; color: #cdd5dd; background: var(--md-head); font-weight: 700; font-size: 11px; z-index: 2; }
.match-detail table.box thead th abbr { color: #cdd5dd; text-decoration: none; border: 0; }
.match-detail table.box .col-name { position: sticky; left: 0; z-index: 1; text-align: left; background: #fff; box-shadow: 1px 0 0 #eef0f3; }
.match-detail table.box thead .col-name { z-index: 3; background: var(--md-head); }
.match-detail table.box tbody tr:nth-child(even) .col-name { background: #fafbfc; }
.match-detail table.box tbody tr:nth-child(even) td { background: #fafbfc; }
.match-detail table.box .col-no { color: var(--md-muted); font-weight: 800; }
.match-detail table.box .col-name a { color: var(--md-ink); font-weight: 800; }
.match-detail table.box .pts { font-weight: 900; color: var(--md-ink); }
.match-detail table.box .eff { font-weight: 800; }
.match-detail table.box tbody tr:last-child td { border-bottom: 0; }

@media (min-width: 720px) {
    .match-detail .sb-logo { width: 64px; height: 64px; }
    .match-detail .sb-score { font-size: 52px; }
    .match-detail .sb-name { font-size: 17px; }
    .match-detail table.box { min-width: 0; }
}
@media (max-width: 767px) {
    .match-detail .md-video-wrap.has-video {
        position: sticky;
        top: calc(env(safe-area-inset-top, 0px) + var(--md-video-sticky-offset, 60px));
        z-index: 20;
        box-shadow: 0 10px 24px rgba(15, 23, 42, .18);
    }
}
@media (max-width: 480px) {
    .match-detail .sb-main { gap: 6px; padding: 14px 10px 12px; }
    .match-detail .sb-side { gap: 8px; }
    .match-detail .sb-logo { width: 40px; height: 40px; }
    .match-detail .sb-name { font-size: 12px; }
    .match-detail .sb-score { font-size: 30px; }
    .match-detail .sb-center { min-width: 44px; }
    .match-detail .sb-status { font-size: 12px; }
    .match-detail .md-section { padding: 11px; }
    .match-detail .perf-row { grid-template-columns: minmax(0,1fr) repeat(3, 40px); gap: 6px; padding: 11px; }
    .match-detail .perf-av { width: 42px; height: 42px; }
    .match-detail .perf-name { font-size: 14px; }
    .match-detail .perf-stat strong { font-size: 21px; }
    .match-detail .compare-values { grid-template-columns: 50px minmax(0,1fr) 50px; }
    .match-detail .compare-values .v { font-size: 18px; }
    .match-detail .compare-label { font-size: 13px; }
    .match-detail .pt-btn { padding: 7px 14px; }
}

/* ===== 分組對賽表 (group_table)：可讀性 + 移除裝飾性底線（mobile + desktop 共用）===== */
.group_table,
.group_table th,
.group_table td,
.group_table p {
    color: #ffffff;
}
.group_table a,
.group_table a:link,
.group_table a:visited {
    color: #ffffff;
    text-decoration: none;
}
.group_table a:hover,
.group_table a:focus,
.group_table a:active {
    color: #f6c44f;
    text-decoration: none;
}
.group_table > thead > tr > th,
.group_table .group_title {
    background-color: #111827;
    color: #ffffff;
    border-color: rgba(255, 255, 255, .14);
}
.group_table .group_title h4 {
    color: #ffffff;
}
.group_table > tbody > tr > td,
.group_table > tbody > tr > th {
    background-color: #1f2937;
    color: #ffffff;
    border-color: rgba(255, 255, 255, .12);
}
.group_table > tbody > tr > td:first-child {
    background-color: #243244;
    color: #ffffff;
}
.group_table > tbody > tr:hover > td,
.group_table > tbody > tr:hover > th {
    background-color: #2b3a52;
}

/* ===== 主頁賽程欄：殺掉底線（覆蓋 bootstrap cosmo 的 table a:not(.btn) 規則）===== */
.home-score-strip a,
.home-score-strip a:link,
.home-score-strip a:visited,
.home-score-strip a:hover,
.home-score-strip a:focus,
.home-score-strip a:active,
.home-score-strip .match-card,
.home-score-strip .match-card:hover,
.home-score-strip .match-card:focus {
    text-decoration: none !important;
}
