/*** Import *****/
@import url('loading-btn.css');
@import url('loading-group.css');

/*** End ****/

.blog-info-tag span:before {
    content: ',';
    position: absolute;
    bottom: 6px;
    right: 0;
    height: 100%;
    font-size: 16px;
    width: auto;
    padding-right: 5px;
}

.blog-info-tag span {
    position: relative;
    display: inline-block;
    padding-right: 10px;
}

.blog-info-tag span:last-child:before {
    display: none
}

.wpcf7 form .wpcf7-response-output {
    border: 0;
    margin: 15px 0;
    padding: 0;
    font-weight: bold;
    font-size: 12px;
}

.wpcf7 form.sent .wpcf7-response-output {
    color: #46b450;
}

.wpcf7 form.invalid .wpcf7-response-output {
    color: red;
}

span.price-from {
    display: none;
}

#wp-admin-bar-wp-logo a img {
    max-width: 32px;
}

.core-values-sect.deferred-render {
    display: none;
}

/**
 * Breadcrumb
 */
.is-fade-title {
    opacity: 0;
    height: 0;
    overflow: hidden;
}

.breadcrumb span.separator {
    display: none;
}

.banner .banner-bg video {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    display: block;
    height: 100% !important;
}

.wpcf7-form input[type="submit"].btn-hidden {
    display: none;
}

.wpcf7-form.submitting .btn-pri {
    pointer-events: none;
    opacity: 0.65;
}

.wpcf7-form.submitting .btn-pri>*:not(.wpcf7-spinner) {
    opacity: 0;
}

.mobile .mobile-content .footer-item {
    margin-bottom: 1.2rem;
}

.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
    float: unset;
    width: 100%;
}

.myacc-side .woocommerce-MyAccount-navigation .myacc-it.is-active:not(.disabled-active) {
    background-color: var(--color-second);
}

.myacc-side .woocommerce-MyAccount-navigation .myacc-it.is-active:not(.disabled-active) .txt {
    color: var(--white);
}

.myacc-side .woocommerce-MyAccount-navigation .myacc-it.is-active:not(.disabled-active) img {
    -webkit-filter: var(--filter);
    filter: var(--filter);
}

.myacc-side .woocommerce-MyAccount-navigation .inner {
    margin-bottom: unset;
    padding-bottom: unset;
    border-bottom: unset;
}

.myacc-side .woocommerce-MyAccount-navigation .myacc-it:last-child {
    margin-top: 1.6rem;
    padding-top: 1.6rem;
    border-top: 0.1rem solid var(--border);
}

.myacc-side .myacc-ava .avt img {
    border-radius: 8px;
}

.widget_shopping_cart_content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100% !important;
}

.woocommerce .cart-collaterals .cart_totals,
.woocommerce-page .cart-collaterals .cart_totals {
    float: unset;
    width: 100% !important;
}

.woocommerce .col2-set .col-1,
.woocommerce-page .col2-set .col-1,
.woocommerce .col2-set .col-2,
.woocommerce-page .col2-set .col-2 {
    float: unset;
    width: 100% !important;
}

p#billing_country_field {
    display: none;
}

#add_payment_method #payment,
.woocommerce-cart #payment,
.woocommerce-checkout #payment {
    background: unset;
    border-radius: unset;
}

#add_payment_method #payment .form-row.place-order,
.woocommerce-cart #payment .form-row.place-order,
.woocommerce-checkout #payment .form-row.place-order {
    display: none;
}

.woocommerce-form-coupon-toggle {
    display: none;
}

.no-orders {
    width: 100%;
    margin: 0 auto;
    text-align: center;
    padding: 20px;
    border: 1px solid #ddd;
    border-radius: 8px;
    background: #fafafa;
}

.no-orders-btn {
    margin-top: 20px;
    margin-left: auto;
    margin-right: auto;
}

.woocommerce #content div.product div.summary,
.woocommerce div.product div.summary,
.woocommerce-page #content div.product div.summary,
.woocommerce-page div.product div.summary {
    float: unset;
    width: 100%;
    clear: none;
    margin-bottom: 0 !important;
}

.woocommerce #content div.product .woocommerce-tabs,
.woocommerce div.product .woocommerce-tabs,
.woocommerce-page #content div.product .woocommerce-tabs,
.woocommerce-page div.product .woocommerce-tabs {
    clear: both;
    display: none !important;
}

.woocommerce div.product form.cart {
    margin-bottom: 0 !important;
}

.woocommerce div.product form.cart::after,
.woocommerce div.product form.cart::before {
    display: none !important;
}

.woocommerce div.product form.cart .single_add_to_cart_button {
    position: relative !important;
    background: var(--color-pri) !important;
    border: 0.1rem solid var(--color-pri) !important;
    overflow: hidden !important;
    -webkit-transition: all .3s ease !important;
    transition: all .3s ease !important;
    z-index: 1 !important;
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-align: center !important;
    -ms-flex-align: center !important;
    align-items: center !important;
    -webkit-box-pack: center !important;
    -ms-flex-pack: center !important;
    justify-content: center !important;
    gap: .4rem !important;
    border-radius: .8rem !important;
    padding: 1rem 2rem !important;
    width: -webkit-max-content !important;
    width: -moz-max-content !important;
    width: max-content !important;
    cursor: pointer !important;
    font-family: var(--font-pri) !important;
    font-weight: 600 !important;
    --f-sz: 1.6rem !important;
    font-size: var(--f-sz) !important;
    height: 4.4rem !important;
    -ms-flex-negative: 0 !important;
    flex-shrink: 0 !important;
}

@media screen and (min-width: 1201px) {
    .woocommerce div.product form.cart .single_add_to_cart_button {
        height: 6.4rem !important;
    }
}

.woocommerce div.product form.cart .single_add_to_cart_button .txt {
    color: var(--color-text) !important;
}

.no-img img {
    object-fit: scale-down !important;
    background: #cdcdcd;
}

.ez-toc-debug-messages {
    display: none;
}

.mona-result .result-mask {
    width: 3.2rem;
    height: 2.8rem;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    border-radius: 0.6rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    margin-right: 1.2rem;
}

.mona-result .result-mask .icon {
    color: #fff;
    --f-sz: 1.6rem;
    font-size: var(--f-sz);
    width: 1.6rem;
    height: 1.6rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
}

.mona-result.correct .result-mask {
    background: #45b441;
}

.mona-result.incorrect .result-mask {
    background: #ed1c24;
}

.mona-result.skip .result-mask {
    background: #ff6636;
}

.mona-result.halfcorrect .result-mask {
    position: relative;
    width: 3.2rem;
    height: 2.8rem;
    flex-shrink: 0;
    border-radius: 0.6rem;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.mona-result.halfcorrect .result-mask::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #28a745 50%, #dc3545 50%);
}

.mona-result.halfcorrect .result-mask .correct,
.mona-result.halfcorrect .result-mask .incorrect {
    position: absolute;
    width: 50%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.2rem;
    font-weight: bold;
}

.mona-result.halfcorrect .result-mask .correct {
    left: 2px;
    top: -5px;
}

.mona-result.halfcorrect .result-mask .incorrect {
    right: 2px;
    bottom: -5px;
}

.woocommerce .woocommerce-EditAccountForm .frm-col .frm-ip,
.woocommerce-page .woocommerce-EditAccountForm .frm-col .frm-ip {
    flex-direction: column;
    align-items: flex-start;
}

.woocommerce .woocommerce-EditAccountForm .frm-col .password-input, 
.woocommerce-page .woocommerce-EditAccountForm .frm-col .password-input {
    width: 100%;
    display: block
}

.woocommerce-password-strength,
.woocommerce-password-hint {
    width: 100%;
    text-align: center;
    padding: 0.4rem 0.8rem;
}

.abvalue-item .tt::after {
    display: none !important;
}

.pduct-img .inner {
    padding-top: calc((120 / 260) * 100%);
}

.catexams-inner:not(:last-child) {
    margin-bottom: var(--dist12) !important;
}

.pduct-mona {
    background: #fff;
    border-radius: 0.8rem;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
}

.pduct-mona .pduct-content {
    padding: 1.6rem;
}

.catexams-select.dynamic-filter-render {
    margin-top: var(--dist32);
    padding-top: var(--dist32);
    border-top: 0.1rem solid var(--border);
}

.catexams-select.dynamic-filter-render .catexams-filt-item:not(:first-child) {
    margin-top: var(--dist32);
}

.filt-item .filt-txt:has(img) {
    display: flex;
    align-items: center;
    gap: 5px;
}

ul.pduct-question-type {
    list-style: disc;
    padding-left: 2rem;
    font-size: 14px;
}

ul.pduct-tags.pduct-exam-type {
    padding: 0;
}

ul.pduct-tags.pduct-exam-type .ex-status {
    font-size: 14px;
    border-radius: 0 0.4rem 0.4rem 0;
    background: #3366CC;
    color: #FFF;
}

.catexams-it .pduct-excerpt {
    max-height: 100px;
    overflow-y: auto;
}

.catexams-it:has(.pduct-excerpt) {
    width: calc(6/12 * 100%);
}

.pduct-mona.pduct-part:has(.pduct-excerpt) {
    display: flex;
}

.pduct-mona.pduct-part:has(.pduct-excerpt) .pduct-img {
    width: calc(4/12 * 100%);
}

.pduct-mona.pduct-part:has(.pduct-excerpt) .pduct-img .inner {
    padding-top: calc((120 / 120) * 100%);
}

.prduct-status {
    display: inline-block;
    padding: 2px 10px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 500;
    margin-bottom: 4px;
}

/* Đang tạo... */
.prduct-status.is-creating {
    background: #e3e8ff;
    color: #2d3fa6;
}

/* Cấm truy cập */
.prduct-status.is-banned {
    background: #ffeaea;
    color: #d7263d;
}

/* Cần mua */
.prduct-status.is-need-buy {
    background: #fff7e6;
    color: #e67e22;
}

/* Cần kích hoạt */
.prduct-status.is-need-activate {
    background: #e6f4ff;
    color: #0077b6;
}

/* Đã hoàn thành */
.prduct-status.is-completed {
    background: #e6f7e6;
    color: #219653;
}

/* Chưa làm */
.prduct-status.is-not-completed {
    background: #f2f2f2;
    color: #888;
}

.catexams-filt-item:not(:first-child) {
    padding-top: 1.6rem;
    border-top: 0.1rem solid var(--border);
}

.sec-bnh .swiper-slide .bnh-item .container {
    width: 100%;
    max-width: var(--container);
    height: 100%;
    margin: 0 auto;
    padding: 0 1.6rem;
    z-index: 2;
    position: relative;
}

.header-display-name {
    display:-webkit-box;
    -webkit-line-clamp:1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-word;
    color: var(--white);
    font-size: 1.4rem;
    font-weight: 600;
    max-width: 200px;
    width: max-content;
}

@media screen and (max-width: 1200px) {
    .header-display-name {
        display: none !important;
    }
}

.myacc-stdy-col {
    display: flex;
    flex-direction: column;
    height: 100%; /* Đảm bảo col luôn cao bằng nhau nếu dùng grid/flex cha */
}

.myacc-stdy-item {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.myacc-stdy-des {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    justify-content: flex-end; /* Đẩy nút xuống cuối */
}

.myacc-stdy-des .tt {
    min-height: 48px; /* hoặc giá trị phù hợp với 2 dòng, tuỳ font-size */
    display: -webkit-box;
    -webkit-line-clamp: 2; /* Giới hạn 2 dòng, nếu muốn */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

body.search.search-results .sec-news .exam-col:has(.pduct-full) {
    width: 100% !important;
}