/* plan */
.hostx-plan-a {
    position: relative;
    padding: 28px;
    background-color: var(--card-bg, var(--card, #ffffff));
    border: 1px solid var(--border-color, var(--border, #e5e7eb));
    border-radius: 12px;
    height: 100%;
    z-index: 2;
    box-shadow: var(--shadow-sm, 0 1px 3px rgba(17, 42, 48, .08));
}

/* popular-box */
.hostx-plan-a .popular-box {
    position: absolute;
    top: 15px;
    right: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #000000;
    font-size: 12px;
    font-weight: 600;
    color: #ffffff;
}
.hostx-plan-a .popular-box::before {
    position: absolute;
    content: '';
    left: -4px;
    top: -4px;
    width: 48px;
    height: 48px;
    background: conic-gradient(#fd004c,
            #fe9000,
            #fff020,
            #3edf4b,
            #3363ff,
            #b102b7,
            #fd004c);
    animation: spin 1.5s infinite linear;
    border-radius: 50%;
    z-index: -1;
}
.hostx-plan-a .popular-box img {
    width: 17px;
}

/* plan-icon */
.hostx-plan-a .plan-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 54px;
    height: 54px;
    border-radius: 50%;
    margin-bottom: 20px;
    margin-left: -4px
}

/* plan-head */
.hostx-plan-a .plan-head {
    margin-bottom: 24px;
    padding-bottom: 18px;
    border-bottom: 1px solid var(--border-color, var(--border, #e5e7eb));
}
.hostx-plan-a .plan-name {
    font-size: 18px;
    font-weight: 700;
    font-family: var(--secondary-font);
    color: var(--text-heading, var(--heading, #111827));
}
.hostx-plan-a .plan-para {
    font-size: 14px;
    font-weight: 400;
    color: var(--text-secondary, var(--muted, #4b5563));
    min-height: 44px
}

/* plan-price */
.hostx-plan-a .plan-price {
    margin-bottom: 20px
}
.hostx-plan-a .plan-price .price span {
    font-size: 24px;
    font-family: var(--third-font);
    font-weight: 700;
    color: var(--text-heading, var(--heading, #111827));
}
.hostx-plan-a .plan-price .price-comment {
    font-size: 14px;
    font-weight: 400;
    color: var(--text-secondary, var(--muted, #4b5563));
}
/* actions */
.hostx-plan-a .actions {
    padding-bottom: 10px
}

/* group */
.hostx-plan-a .group {
    margin-top: 28px;
}
.hostx-plan-a .group .title-4 {
    font-size: 16px;
    font-weight: 600;
    color: var(--text-heading, var(--heading, #111827));
    margin-bottom: 16px
}
.hostx-plan-a .group .list li {
    position: relative;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    font-size: 14px;
    font-weight: 400;
    color: var(--text-secondary, var(--muted, #4b5563));
    padding-right: 26px;
}
.hostx-plan-a .group .list li:not(last-of-type) {
    margin-bottom: 10px
}
.hostx-plan-a .group .list li img {
    margin-right: 10px;
    margin-top: 3px;
    width: 16px
}

/* se-footer */
.se-footer {
    padding-bottom: 60px;
}
.se-footer .se-footer-title {
    font-size: 18px;
    color: var(--text-heading, var(--heading, #111827));
    font-weight: 600;
    margin-bottom: 22px;
}
.se-footer .line {
    margin: 6px 12px;
}
.se-footer .line .icon {
    min-width: 16px;
    width: 16px;
    margin-right: 10px;
}
.se-footer .line .text {
    font-size: 14px;
    font-family: var(--secondary-font);
    font-weight: 400;
    color: var(--text-secondary, var(--muted, #4b5563));
    line-height: 1;
}
/* ----------------------------------- */

/* Sidebar */
html,
body {
    overflow-x: hidden;
}

.row-product-selection {
    position: relative;
    left: 0;
    -webkit-transition: all .25s ease-out;
    -o-transition: all .25s ease-out;
    transition: all .25s ease-out;
}
.product-selection-sidebar {
    position: relative;
    top: 0;
    left: 0;
    width: auto;
    display: block;
}
/* ----------------------------------- */

body.dark-theme .hostx-plan-a,
html.dark-theme body .hostx-plan-a {
    background-color: var(--card, #16333a);
    border-color: var(--border, #21464f);
}

body.dark-theme .hostx-plan-a .plan-name,
body.dark-theme .hostx-plan-a .plan-price .price span,
body.dark-theme .hostx-plan-a .group .title-4,
body.dark-theme .se-footer .se-footer-title,
html.dark-theme body .hostx-plan-a .plan-name,
html.dark-theme body .hostx-plan-a .plan-price .price span,
html.dark-theme body .hostx-plan-a .group .title-4,
html.dark-theme body .se-footer .se-footer-title {
    color: var(--heading, #ffffff);
}

body.dark-theme .hostx-plan-a .plan-para,
body.dark-theme .hostx-plan-a .plan-price .price-comment,
body.dark-theme .hostx-plan-a .group .list li,
body.dark-theme .se-footer .line .text,
html.dark-theme body .hostx-plan-a .plan-para,
html.dark-theme body .hostx-plan-a .plan-price .price-comment,
html.dark-theme body .hostx-plan-a .group .list li,
html.dark-theme body .se-footer .line .text {
    color: var(--muted, #9fb2b5);
}

.row-product-selection {
    row-gap: 24px;
}

#btnShowSidebar {
    margin-bottom: 18px;
}

@media (max-width: 767.98px) {
    .hostx-plan-a {
        padding: 22px;
    }

    .product-selection-sidebar {
        margin-bottom: 18px;
    }
}
