/* 整體樣式 */
.hkdse-container {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin: 0 auto;
    padding: 10px;
}

.hkdse-grade-calculator-form {
    flex: 1;
    min-width: 300px;
    background-color: #f9f9f9;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    padding: 20px;
}

.hkdse-result-content {
    flex: 2;
    min-width: 300px;
    background-color: #f9f9f9;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    padding: 20px;
}

/* 表單樣式 */
.hkdse-grade-calculator-form h4 {
    font-weight: bold;
    color: #555;
    margin-top: 20px;
    margin-bottom: 10px;
    border-bottom: 2px solid #ddd;
    padding-bottom: 5px;
    background: #374fd3;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}

.hkdse-grade-calculator-form label {
    display: block;
    margin-bottom: 5px;
    font-weight: bold;
    color: #444;
}

.hkdse-grade-calculator-form input[type="number"] {
    width: 100%;
    padding: 10px;
    margin-bottom: 15px;
    border: 1px solid #ccc;
    border-radius: 5px;
    font-size: 16px;
}

.hkdse-grade-calculator-form input[type="number"]:focus {
    border-color: #0073e6;
    outline: none;
    box-shadow: 0 0 5px rgba(0, 115, 230, 0.5);
}

.calculate-button {
    font-family: 'Arial', sans-serif;
    font-size: 20px;
    font-weight: bold;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 2px;
    padding: 2px 15px;
    background: linear-gradient(45deg, #2196F3, #7277FF);
    border-radius: 8px;
    display: block;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    width: 100%;
}

.calculate-button:hover {
    background: linear-gradient(45deg, #7277FF, #2196F3);
}

.calculate-button:before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(45deg, transparent, #ffffff26, transparent);
    transition: left 0.8s ease;
    mask: linear-gradient(to bottom, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0));
    display: block;
}

.calculate-button:hover::before {
    left: 100%;
}

/* 結果樣式 */
#hkdse-result .highlinev1 {
    font-weight: bold;
    letter-spacing: 4px;
    font-size: 26px;
    line-height: 35px;
    text-align: left;
    position: relative;
    overflow: hidden; /* 隱藏超出部分的背景 */
	z-index:2;
}

#hkdse-result .highlinev1::before {
    content: '';
    position: absolute;
    top: 50%; /* 將背景頂部定位在文字的中間 */
    left: 0;
    width: 0; /* 初始寬度為0 */
    height: 30%; /* 背景高度為文字高度的一半 */
    background: #FDEA7F; /* 背景顏色 */
    z-index: -1; /* 將背景放在文字下方 */
    transform: translateY(-30%); /* 向上移動背景高度的50%，實現垂直居中 */
    animation: loadBackground 2s forwards; /* 動畫持續時間為2秒 */
    border-radius: 5px;
}

@keyframes loadBackground {
    from {
        width: 0; /* 從0開始 */
    }
    to {
        width: 100%; /* 加載到100% */
    }
}


.hkdse-result-content h4 {
    text-align: center;
    color: #333;
    margin-bottom: 20px;
}

.hkdse-result-content h5 {
    font-weight: bold;
    margin-top: 20px;
    margin-bottom: 10px;
    border-bottom: 2px solid #ddd;
    padding-bottom: 5px;
    background: linear-gradient(45deg, #2196F3, #7277FF);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}

.hkdse-result-content p {
    margin: 5px 0;
    font-size: 16px;
    color: #444;
}

.hkdse-result-content span {
    background: linear-gradient(45deg, #2196F3, #7277FF);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
    filter: drop-shadow(0 0 2px white) drop-shadow(0 0 2px white);
}

/* 表格樣式 */
.grade-table {
    width: 100%;
    margin-top: 20px;
    border-collapse: collapse;
}

.grade-table th,
.grade-table td {
    padding: 2px;
    border: 1px solid #ddd;
    text-align: center;
    font-size: 11px;
}

.grade-table th {
    background-color: #f1f1f1;
    font-weight: bold;
}

.grade-table tr:nth-child(even) {
    background-color: #f9f9f9;
}

.hkdse-result-box tr:first-child th {
    background-color: #3a8cf6;
    color: #fff;
}

/* 單數列背景顏色 */
.hkdse-result-box th:nth-child(odd),
.hkdse-result-box td:nth-child(odd) {
    background-color: #E5F3FF;
}

/* 雙數列背景顏色 */
.hkdse-result-box th:nth-child(even),
.hkdse-result-box td:nth-child(even) {
    background-color: #ffffff;
}

/* 第一列背景顏色 */
.hkdse-result-box th:nth-child(1),
.hkdse-result-box td:nth-child(1) {
    background-color: #DEEAF6;
}

/* 響應式設計 */
@media (max-width: 768px) {
    .hkdse-container {
        flex-direction: column;
    }

    .hkdse-grade-calculator-form,
    .hkdse-result-content {
        width: 100%;
        margin-bottom: 20px;
    }
}

.hkdse-result-content .highlinev1 {
    font-weight: bold;
    letter-spacing: 4px;
    font-size: 26px;
    line-height: 35px;
    text-align: left;
    position: relative;
    overflow: hidden;
    z-index: 2;
}

.hkdse-result-content .highlinev1::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    width: 0;
    height: 30%;
    background: #FDEA7F;
    z-index: -1;
    transform: translateY(-30%);
    animation: loadBackground 2s forwards;
    border-radius: 5px;
}

@keyframes loadBackground {
    from {
        width: 0;
    }
    to {
        width: 100%;
    }
}

.head-style-v1 {
    font-family: 'Arial', sans-serif;
    font-size: 20px;
    font-weight: bold;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 2px;
    padding: 10px 15px;
    background: #8BC34A;
    border-radius: 8px;
    display: inline-block;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.head-style-v1:before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(45deg, transparent, #ffffff26, transparent);
    transition: left 0.8s ease;
    mask: linear-gradient(to bottom, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0));
    display: block;
}

.head-style-v1:hover::before {
    left: 100%;
}

.innerinput {
    width: 47%;
}

.inputbox {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
}

@media (max-width: 1439px) {
    .grade-table tr th:nth-child(n+8),
    .grade-table tr td:nth-child(n+8) {
        display: none;
    }
    .grade-table th,
    .grade-table td {
        padding: 2px;
        font-size: 13px;
    }
}

@media (min-width: 1440px) {
    .grade-table th,
    .grade-table td {
        padding: 2px;
        font-size: 14px;
    }
}

.hkdse-result-box {
    background: #ffffff;
    border-radius: 15px;
    padding: 15px;
    margin-bottom: 15px;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
    transition: .3s;
}

.hkdse-result-box:hover {
    box-shadow: 0 0 8px #0d6efd;
    transform: translateY(-5px);
}

.hkdse-result-box-split-line {
    clear: both;
    margin: 15px -15px;
    height: 2px;
    background: #667cfe;
    background: linear-gradient(45deg, #2196F3, #7277FF);
}



/**/
/* Tab 樣式 */
.hkdse-grade-tabs {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    border-bottom: 1px solid #ccc;
}

.hkdse-grade-tabs li {
    margin-right: 10px;
}

.hkdse-grade-tabs a {
    text-decoration: none;
    padding: 10px 15px;
    display: block;
    color: #333;
    border: 1px solid #ccc;
    border-bottom: none;
    background-color: #f9f9f9;
    border-radius: 5px 5px 0 0;
}

.hkdse-grade-tabs a.active {
    background-color: #fff;
    border-bottom: 1px solid #fff;
    color: #000;
    font-weight: bold;
}

@media(max-width:991px){
    .hkdse-grade-tabs {
        overflow-x: scroll;
    }
    
    .hkdse-grade-tabs a{
        display: block;
        width: max-content;
    }
}

.hkdse-grade-tab-content {
    padding: 20px;
    border: 1px solid #ccc;
    border-top: none;
}

.hkdse-grade-tab-pane {
    display: none;
}

.hkdse-grade-tab-pane.active {
    display: block;
}
.grade-table th, .grade-table td {
    border-bottom: 1px solid #e5f3ff00 !important;
}

.sminnerinput label {
    display: inline-block;
}

.sminnerinput select {
    padding: 5px 3px;
    border: 1px solid #ccc;
    border-radius: 5px;
    font-size: 12px;
}
.hkdse-grade-calculator-form .error {
    box-shadow: 0 0 4px #f00;
}


.hkdse-login-button {
    font-family: 'Arial', sans-serif;
    font-size: 20px;
    font-weight: bold;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 2px;
    padding: 5px 30px;
    background: #2196F3;
    background: linear-gradient(45deg, #2196F3, #7277FF);
    border-radius: 8px;
    display: inline-block;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    z-index: 9;
    box-shadow: 0 0 20px 3px #c4c4c4;
}

.hkdse-login-button:before {
    content: '';
    display: inline-block;
    background: #2196F3;
    background: linear-gradient(45deg, #2196F3, #7277FF);
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    position: absolute;
    left: 1px;
    top: 1px;
    z-index: -13;
}

.hkdse-login-button:after {
    content: '';
    display: inline-block;
    background: conic-gradient(from 290deg, #00000000 0%, #fff 10%, #00000000 20%);
    animation: rotating-ring 3s linear infinite;
    width: 100%;
    height: 0;
    padding-bottom: 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    z-index: -14;
}
@keyframes rotating-ring {
    0% {
        transform: translate(-50%,-50%) rotate(0deg)
    }

    to {
        transform: translate(-50%,-50%) rotate(360deg)
    }
}

.xs-hkdse-btn {
    font-family: 'Arial', sans-serif;
    font-size: 18px;
    line-height: 16px;
    font-weight: bold;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 2px;
    padding: 10px 15px;
    background: linear-gradient(45deg, #0d6efd, #7277FF);
    border-radius: 8px;
    display: inline-block;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    z-index: 9;
    border: 2px solid;
    border-color: #2a2a2a;
}

.xs-hkdse-btn:hover {
    scale: 1.05;
}
.xs-hkdse-btn:before {
    content: '';
    display: inline-block;
    background: #2196F3;
    background: linear-gradient(45deg, #fe6c61, #d80dfd);
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    position: absolute;
    left: 1px;
    top: 1px;
    z-index: -13;
}
.xs-hkdse-btn i {
    line-height: initial;
    font-size: initial;
    float: left;
    margin-right: 4px;
}

.xs-hkdse-btn:after {
    content: '';
    display: inline-block;
    background: conic-gradient(from 290deg, #00000000 0%, #fff 10%, #00000000 20%);
    animation: rotating-ring 3s linear infinite;
    width: 100%;
    height: 0;
    padding-bottom: 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    z-index: -14;
}

#quick-buy-popup {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: white;
    padding: 20px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    z-index: 1000;
}

.quick-buy-content {
    text-align: center;
}

#quick-buy-close {
    margin-top: 10px;
}

.eye-catching-btn {
    color: #ffffff;
    border: 2px solid #ffffff;
    animation: pulse 1.5s infinite;
}
.xs-hkdse-btn.eye-catching-btn::before {
    background: linear-gradient(45deg, #dc3545, #ff9972);
}
@keyframes pulse {
    0% {
        transform: scale(1.02);
    }
    50% {
        transform: scale(1.10);
    }
    100% {
        transform: scale(1.02);
    }
}

button#download-pdf {
    font-family: 'Arial', sans-serif;
    font-size: 14px;
    line-height: 16px;
    font-weight: bold;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 2px;
    padding: 10px 15px;
    background: linear-gradient(45deg, #1fa567, #2aaf71);
    border-radius: 8px;
    display: block;
    margin-bottom: 15px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    z-index: 9;
    border: 1px solid #fff;
}
button#download-pdf:before {
    content: '';
    display: inline-block;
    background: #1fa567;
    background: linear-gradient(45deg, #1fa567, #2aaf71);
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    position: absolute;
    left: 1px;
    top: 1px;
    z-index: -13;
}
button#download-pdf:after {
    content: '';
    display: inline-block;
    background: conic-gradient(from 290deg, #00000000 0%, #fff 10%, #00000000 20%);
    animation: rotating-ring 3s linear infinite;
    width: 100%;
    height: 0;
    padding-bottom: 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    z-index: -14;
}
button#download-pdf:hover {
    scale: 1.05;
    box-shadow: 0 4px 6px rgb(0 0 0 / 22%);
}
button#download-pdf i {
    line-height: initial;
    font-size: initial;
    float: left;
    margin-right: 4px;
}
span#pdf-loading-text {
    position: absolute;
    right: -125px;
    z-index: 9999;
    color: #20a668;
    background: linear-gradient(45deg, #20a668, #20a668);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
    filter: drop-shadow(0 0 2px white) drop-shadow(0 0 2px white);
}
.pdf-downloading{
    overflow: initial !important;
}
.pdf-downloading:before,.pdf-downloading:after{
    content:none !important;
}
@media(max-width:768px){
    .waiting-for-login.hkdse-login-required {
        height: 180px !important;
    }
}
a.hkdse-notice-button:before {
    content: '';
    display: inline-block;
    background: #2196F3;
    background: linear-gradient(45deg, #dc3545, #ff9972);
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    position: absolute;
    left: 1px;
    top: 1px;
    z-index: -13;
}
a.hkdse-notice-button {
    font-family: 'Arial', sans-serif;
    font-size: 18px;
    line-height: 16px;
    font-weight: bold;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 2px;
    padding: 10px 15px;
    background: linear-gradient(45deg, #0d6efd, #7277FF);
    border-radius: 8px;
    display: block;
    width: 150px;
    text-align: center;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    z-index: 9;
    border: 2px solid;
    border-color: #2a2a2a;
    animation: pulse 1.5s infinite;
}


a.hkdse-notice-button:after {
    content: '';
    display: inline-block;
    background: conic-gradient(from 290deg, #00000000 0%, #fff 10%, #00000000 20%);
    animation: rotating-ring 3s linear infinite;
    width: 100%;
    height: 0;
    padding-bottom: 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    z-index: -14;
}


a.hkdse-login-button.hkdse-continue-cal-button,a.hkdse-login-button.hkdse-continue-cal-button:before {
    background: #30af39;
    background: linear-gradient(45deg, #30af39, #2ad100);
}


/*註冊或登入樣式*/
.hkdse-login-register-container {
    background-image: url(../images/calculator_blur_more_bg.jpg);
    display: flex;
    align-content: center;
    justify-content: center;
    align-items: center;
    padding-block: 50px;
}

.hkdse-login-register-tabs {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    border-bottom: 1px solid #ccc;
    justify-content: center;
    gap: 15px;
}


.hkdse-login-register-tabs a {
    text-decoration: none;
    padding: 10px 15px;
    display: block;
    color: #333;
    border: 1px solid #ccc;
    border-bottom: none;
    background-color: #f9f9f9;
    border-radius: 5px 5px 0 0;
}

.hkdse-login-register-tabs a.active {
    background-color: #fe6c61;
 
    color: #fff;
    font-weight: bold;
}

@media(max-width:991px){
    .hkdse-login-register-tabs {
        overflow-x: scroll;
    }
    
    .hkdse-login-register-tabs a{
        display: block;
        width: max-content;
    }
}

.hkdse-login-register-tab-content {
    padding: 20px;
    border: 1px solid #ccc;
    border-top: none;
	    box-shadow: 0 5px 16px #6c757d;
}

.hkdse-login-register-tab-pane {
    display: none;
}

.hkdse-login-register-tab-pane.active {
    display: block;
}

.hkdse-login-register-tab-pane form{
    display: flex;
    gap: 15px;
    background-color: #f9f9f9;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    padding: 20px;
    flex-direction: column;
    flex-wrap: wrap;
}
.hkdse-login-register-tab-pane form input {
    width: 100%;
    padding: 10px;
    margin-bottom: 15px;
    border: 1px solid #ccc;
    border-radius: 5px;
    font-size: 16px;
}

.hkdse-login-register-tab-content button{
    font-family: 'Arial', sans-serif;
    font-size: 20px;
    font-weight: bold;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 2px;
    padding: 2px 15px;
    background: linear-gradient(45deg, #2196F3, #7277FF);
    border-radius: 8px;
    display: block;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    width: 100%;
}

.hkdse-login-register-tab-content button:hover {
    background: linear-gradient(45deg, #7277FF, #2196F3);
}
.hkdse-login-register-tab-content button:before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(45deg, transparent, #ffffff26, transparent);
    transition: left 0.8s ease;
    mask: linear-gradient(to bottom, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0));
    display: block;
}
.hkdse-login-register-tab-content button:hover::before {
    left: 100%;
}


/*次數為0時引導購買的按鈕*/
div#hkdse-calculator-checkout-button {
	margin-bottom:15px;
    text-align: center;
    z-index: 99999;
    padding: 15px;
    font-family: 'Arial', sans-serif;
    font-weight: bold;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 2px;
    background-size: 400% 400% !important;
    background: linear-gradient(45deg, #2196F3, #7277FF);
    border-radius: 8px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    overflow: hidden;
    outline: 2px solid #ffffff;
    animation: gradientAnimationv2 5s ease infinite;
    
}

h3.hkdse-calculator-checkout-title {
    color: #fff;
    font-size: 20px;
}
.hkdse-calculator-checkout-info {
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 5px;
}

div#hkdse-calculator-checkout-button a {
    padding: 5px 8px;
    background-size: 400% 400% !important;
    background: linear-gradient(45deg, #dc3545, #ff9972, #dc3545);
    color: #fff;
    border:1px solid #fff;
    font-size: 14px;
    animation: gradientAnimationv1 5s ease infinite;
}

div#hkdse-calculator-checkout-button a:hover {
    background: linear-gradient(45deg, #ff9972, #dc3545);
    box-shadow: 0 4px 11px rgb(0 0 0 / 40%);
    outline: 2px solid #f5c8cc;
}
body:not(.home) .page-content {
    padding-top: 0;
}

@media(min-width:769px){
    .hkdse-grade-container {
        position: relative;
    }
}

@keyframes gradientAnimationv1 {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
@keyframes gradientAnimationv2 {
  0% {
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    scale: 1;
  }
  50% {
    box-shadow: 0 8px 44px rgb(0 0 0 / 18%);
    scale: 1.01;
  }
  100% {
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    scale: 1;
  }
}
@keyframes gradientAnimationv3 {
  0% {
    background-position: 0% 50%;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    scale: 1;
  }
  50% {
    background-position: 100% 50%;
    box-shadow: 0 8px 44px rgb(0 0 0 / 88%);
    scale: 1.03;
  }
  100% {
    background-position: 0% 50%;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    scale: 1;
  }
}

/*cal history*/
/* 基礎樣式 */
.hkdse-date-filter-form {
    display: flex;
    flex-direction: column; /* 默認垂直排列，適用於移動端 */
    width: 100%; /* 表單寬度占滿父容器 */
    gap: 10px; /* 控製表單元素之間的間距 */
    padding: 20px; /* 內邊距 */
    border: 1px solid #ccc; /* 邊框樣式 */
    border-radius: 8px; /* 圓角邊框 */
    background-color: #f9f9f9; /* 背景顏色 */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* 陰影效果 */
    box-sizing: border-box; /* 保證寬度計算包含內邊距和邊框 */
	margin-bottom: 15px;
}

/* 標簽樣式 */
.hkdse-date-filter-form label {
    font-weight: bold; /* 字體加粗 */
    font-size: 14px; /* 字體大小 */
    color: #333; /* 字體顏色 */
}

/* 輸入框樣式 */
.hkdse-date-filter-form input[type="date"] {
    width: 100%; /* 輸入框寬度占滿父容器 */
    padding: 10px; /* 內邊距 */
    border: 1px solid #ccc; /* 邊框樣式 */
    border-radius: 4px; /* 圓角邊框 */
    font-size: 14px; /* 字體大小 */
    box-sizing: border-box; /* 保證寬度計算包含內邊距和邊框 */
}

/* 按鈕樣式 */
.hkdse-date-filter-form button {
    width: 100%; /* 按鈕寬度占滿父容器 */
    padding: 10px; /* 內邊距 */
    background-color: #007bff; /* 背景顏色 */
    color: white; /* 字體顏色 */
    border: none; /* 無邊框 */
    border-radius: 4px; /* 圓角邊框 */
    font-size: 14px; /* 字體大小 */
    cursor: pointer; /* 鼠標懸停時顯示為手型 */
    transition: background-color 0.3s ease; /* 背景顏色過渡效果 */
}

/* 按鈕懸停樣式 */
.hkdse-date-filter-form button:hover {
    background-color: #0056b3; /* 懸停時的背景顏色 */
}

/* 媒體查詢：電腦版（屏幕寬度大於768px時） */
@media (min-width: 768px) {
    .hkdse-date-filter-form {
        flex-direction: row; /* 水平排列 */
        align-items: center; /* 垂直居中 */
        justify-content: flex-start; /* 元素從左側開始排列 */
    }

    .hkdse-date-filter-form label {
        margin-right: 8px; /* 標簽與輸入框之間的間距 */
        width: auto; /* 標簽寬度自動 */
    }

    .hkdse-date-filter-form input[type="date"] {
        width: calc(33% - 16px); /* 輸入框寬度調整為33%，減去間距 */
    }

    .hkdse-date-filter-form button {
        width: auto; /* 按鈕寬度自動 */
        margin-left: 10px; /* 按鈕與輸入框之間的間距 */
    }
}



/* 基礎表格樣式 */
.hkdse-cal-results-table {
    width: 100%;
    border-collapse: collapse;
    margin: 20px 0;
    font-size: 16px;
    font-family: Arial, sans-serif;
}

table.hkdse-cal-results-table thead {
    background: linear-gradient(45deg, #2196F3, #7277FF);
    border-radius: 8px 8px 0px 0px;
    overflow: hidden;
}

.hkdse-cal-results-table th,
.hkdse-cal-results-table td {
    padding: 12px;
    text-align: left;
    border-bottom: 1px solid #cdcdcd;
}

.hkdse-cal-results-table th {
    font-weight: bold;
}

.hkdse-cal-results-table tbody tr:nth-child(even) {
    background-color: #f9f9f9;
}

.hkdse-cal-results-table tbody tr:hover {
    background-color: #eaeaea;
}

/* 響應式設計 */
@media (max-width: 768px) {
    .hkdse-cal-results-table thead {
        display: none;
    }

    .hkdse-cal-results-table,
    .hkdse-cal-results-table tbody,
    .hkdse-cal-results-table tr,
    .hkdse-cal-results-table td {
        display: block;
        width: 100%;
    }

    .hkdse-cal-results-table tr {
        margin-bottom: 15px;
    }

    .hkdse-cal-results-table td {
        text-align: right;
        padding-left: 15px;
        text-align: left;
        position: relative;
    }

    .hkdse-cal-results-table td::before {
        content: attr(data-label);
        position: absolute;
        left: 0;
        width: 45%;
        padding-left: 15px;
        font-weight: bold;
        text-align: left;
    }
}

/* 針對小屏幕設備的樣式 */
@media (max-width: 480px) {
    .hkdse-cal-results-table td {
        font-size: 14px;
    }
}

/* 列表樣式 */
.hkdse-cal-results-table ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.hkdse-cal-results-table ul li {
    margin: 5px 0;
    font-size: 14px;
}
table.hkdse-cal-results-table thead th {
    background: #007bff00;
}
table.hkdse-cal-results-table tbody tr:nth-child(odd)  td{
    background: #f9fcff;
}
table.hkdse-cal-results-table tbody tr:nth-child(even)  td{
    background: #f9f9f9;
}
table.hkdse-cal-results-table tbody tr td {
    word-break: break-all;
    font-family: 'Arial', sans-serif;
    text-transform: initial;
    letter-spacing: 1px;
}

@media(min-width:769px){
    table.hkdse-cal-results-table tbody tr td:not(:nth-child(3)){
        text-align: center;
    }
    
    table.hkdse-cal-results-table tbody tr td:nth-child(3) {
        width: 70%;
    }
}
table.hkdse-cal-results-table tbody tr td:nth-child(3)>ul>li:nth-child(-n+2) {
    font-size: 16px !important;
    margin-right: 10px;
    margin-bottom: 8px;
    font-family: 'Arial', sans-serif;
    font-weight: bold;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 2px;
    padding: 5px 15px;
    background: linear-gradient(45deg, #2196F3, #7277FF);
    border-radius: 8px;
    display: block;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    width: fit-content;
}
table.hkdse-cal-results-table tbody tr td:nth-child(3)>ul>li:not(:nth-child(-n+2)) {
    font-size: 14px;
    display: inline-block;
    background: #36b0b0;
    color: #fff;
    padding: 5px 10px;
    border-radius: 8px;
    margin: 0 8px 8px 0;
}
table.hkdse-cal-results-table tbody tr td:nth-child(3)>ul>li:last-child {
    background: #eff2f5;
    margin: 0;
    color: #000;
    display: block;
    font-size: 16px;
}
table.hkdse-cal-results-table tbody tr td:nth-child(3)>ul>li:last-child ul {
    margin-top: 5px;
}
table.hkdse-cal-results-table tbody tr td:nth-child(3)>ul>li:last-child li {
    display: inline-block;
    color: #fff;
    background: #ffc107;
    margin: 0 8px 8px 0;
    padding: 3px 5px;
    border-radius: 8px;
}
table.hkdse-cal-results-table tbody tr:hover {
    scale: 1.01;
    box-shadow: 0 0 5px #000;
    outline: 1px solid #2196f3;
}

table.hkdse-cal-results-table tbody tr {
    transition: .3s;
}
table.hkdse-cal-results-table tbody tr:hover td {
    background: transparent;
    color: #fff;
}

table.hkdse-cal-results-table tbody tr:hover {
    background: #344187;
}

table.hkdse-cal-results-table tbody tr:hover td li {
    outline: 2px solid #fff;
    box-shadow: -1px 1px 5px #000000;
}
@media(max-width:768px){
    table.hkdse-cal-results-table tbody tr td:nth-child(3)>ul>li:not(:nth-child(-n+2)) {
        font-size: 14px;
    }
    table.hkdse-cal-results-table tbody tr td:first-child {
        display: none;
    }
    .hkdse-cal-results-table tbody tr {
        border-radius: 10px;
        overflow: hidden;
        box-shadow: 0 0 2px #ccc;
    }
    
}

/*history btn*/
div#history-btn {
    position: fixed;
    left: 6px;
    bottom: 6px;
    z-index: 9999;
    box-shadow: 1px 2px 5px #999999;
    outline: 1px solid #fff;
    border-radius: 50%;
    transition: .3s;
}
div#history-btn:hover {
    scale: 1.2;
    box-shadow: 1px 2px 8px #000000;
    left: 8px;
    bottom: 8px;
}
div#history-btn:hover {
    scale: 1.2;
    box-shadow: 1px 2px 8px #000000;
    left: 8px;
    bottom: 8px;
}
div#history-btn:hover span.tooltips {
    display: block !important;
    left: 36px;
    top: 2px;
    line-height: 19px;
    border-radius: 10px 10px 10px 0;
}
div#history-btn a {
    display: block;
    background: #2196F3;
    background: linear-gradient(45deg, #2196F3, #7277FF);
    width: 35px;
    height: 35px;
    line-height: 35px;
    color: #fff;
    text-align: center;
    border-radius: 50%;
}

div#history-btn a i {
    font-size: 25px;
    line-height: 35px;
}
div#hkdse-promotion-message {
    margin-bottom: 15px;
    text-align: center;
    z-index: 99999;
    padding: 15px;
    font-family: 'Arial', sans-serif;
    font-weight: bold;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 2px;
    background-size: 400% 400% !important;
    background: linear-gradient(169deg, #ff3e7f, #673AB7);
    border-radius: 8px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    overflow: hidden;
    outline: 2px solid #ffffff;
    animation: gradientAnimationv2 5s ease infinite;
}
div#hkdse-promotion-message p {
    margin-bottom: 0;
}


/*login and register*/
.password-wrapper {
    position: relative;
    display: inline-block;
    width: 100%;
}

.toggle-password {
    position: absolute;
    right: 10px;
    top: calc(50% - 7.5px);
    transform: translateY(-50%);
    cursor: pointer;
    color: #666;
}
.password-wrapper i.fas {
    font-size: 14px;
}
.toggle-password:hover {
    color: #333;
}
.password-wrapper i.fas:before {
    color: #d5d5d5 !important;
}
.login-notices {
    margin-bottom: 0 !important;
    margin-block-end: 0 !important;
}
