/*
 * Custom CSS
 * @description Custom CSS for ApexHost WHMCS Theme
 * @author Niftytheme
 * @version 1.0
 * @link https://niftytheme.net/
 */

/* : Preloader : */
.preloader {
    position: fixed;
    inset: 0;
    z-index: 9999;
    background-color: var(--background);
    opacity: 1;
    visibility: visible;
    transition: opacity 0.5s ease, visibility 0.5s ease;
}
.preloader.hide {
    opacity: 0;
    visibility: hidden;
}
.preloader .content {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
.preloader .animated-bg {
    width: 200px;
    height: 200px;
    border-radius: var(--radius-full);
    background: linear-gradient(
            90deg,
            var(--orange),
            var(--yellow),
            var(--green),
            var(--blue),
            var(--purple),
            var(--pink),
            var(--red)
    );
    background-size: 200%;
    filter: blur(calc(0.8 * 4rem));
    animation: animated-bg 2s infinite linear;
    transition: all 0.05s ease-in-out;
    opacity: 0.3;
    pointer-events: none;
}
/* ----------------------------------- */

/* : Topbar : */
.theme-topbar {
    position: fixed;
    top: 0;
    inset-inline-start: 0;
    inset-inline-end: 0;
    padding-block: var(--space-2);
    z-index: 99;
    background-color: var(--background);
    transition: top 0.15s var(--transition-function-1);
}
.theme-topbar .container-fluid {
    max-width: 100%;
}
/* topbar-content */
.theme-topbar .topbar-content {
    padding: var(--space-1);
    background-color: var(--topbar);
    -webkit-border-radius: var(--theme-radius);
    -moz-border-radius: var(--theme-radius);
    -ms-border-radius: var(--theme-radius);
    -o-border-radius: var(--theme-radius);
    border-radius: var(--theme-radius);
}
/* ----------------------------------- */

/* : Theme Navbar : */
.theme-navbar {
    position: fixed;
    top: 48px;
    inset-inline-start: 0;
    inset-inline-end: 0;
    background-color: var(--background);
    z-index: 99;
    -webkit-box-shadow: var(--normal-shadow) var(--normal-shadow-color);
    -moz-box-shadow: var(--normal-shadow) var(--normal-shadow-color);
    -ms-box-shadow: var(--normal-shadow) var(--normal-shadow-color);
    -o-box-shadow: var(--normal-shadow) var(--normal-shadow-color);
    box-shadow: var(--normal-shadow) var(--normal-shadow-color);
    transition: top 0.15s var(--transition-function-1);
}
.theme-navbar .container-fluid {
    max-width: 100%;
}
/* navbar-animated-bg */
.theme-navbar.has-animated-bg .animated-bg {
    display: none;
    position: absolute;
    left: 50%;
    bottom: 90%;
    width: 400px;
    height: 400px;
    border-radius: var(--radius-full);
    background: linear-gradient(
            90deg,
            var(--orange),
            var(--yellow),
            var(--green),
            var(--blue),
            var(--purple),
            var(--pink),
            var(--red)
    );
    background-size: 200%;
    filter: blur(calc(0.8 * 4rem));
    animation: animated-bg 2s infinite linear;
    transform: translateX(-50%);
    transition: all 0.05s ease-in-out;
    opacity: 0.3;
    pointer-events: none;
    z-index: -1;
}
@keyframes animated-bg {
    0% {
        background-position: 0;
    }

    100% {
        background-position: 200%;
    }
}

/* navbar-content */
.theme-navbar .navbar-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-block: var(--space-5);
}

/* logo-wrapper */
.theme-navbar .logo-wrapper {
    min-width: 20%;
}
.theme-navbar .logo-wrapper .logo-link img {
    width: 220px;
}

/* links-toggler */
.theme-navbar .links-toggler {
    display: none;
}

@media (max-width: 1364.98px) {
    .theme-navbar .links-toggler {
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
    }

    .theme-navbar .links-toggler svg {
        width: 32px;
    }
}

/* Links */
.theme-navbar .links-list {
    display: flex;
    align-items: center;
    margin-bottom: 0;
}

@media (max-width: 1364px) {
    .theme-navbar .links {
        display: none;
        position: fixed;
        inset: 0;
        background-color: color-mix(in srgb, var(--background), transparent 50%);
        -webkit-backdrop-filter: blur(10px) contrast(0.9);
        backdrop-filter: blur(10px) contrast(0.9);
        padding: var(--space-16);
        z-index: 3;
    }

    .theme-navbar.show-links .links {
        display: block;
    }

    .theme-navbar .links-list {
        background-color: var(--card);
        border-radius: var(--radius-lg);
        padding: var(--space-6);
        flex-direction: column;
        align-items: flex-start;
        height: 100%;
        overflow-y: auto;
        scrollbar-width: thin;
        scrollbar-color: var(--border) var(--background);
    }

    .theme-navbar .links-list::-webkit-scrollbar {
        width: 8px;
        background: var(--background);
        border-radius: var(--radius-lg);
    }

    .theme-navbar .links-list::-webkit-scrollbar-thumb {
        background: var(--border);
        border-radius: var(--radius-lg);
    }
}

/* Link */
.theme-navbar .link-wrapper .link {
    color: var(--foreground);
    padding: var(--space-2) var(--space-3);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    border-radius: var(--theme-radius);
    min-height: var(--space-10);
    transition: background-color 0.15s var(--transition-function-1);
}

.theme-navbar .link-wrapper .link:hover,
.theme-navbar .link-wrapper.show .link {
    background-color: color-mix(in srgb, var(--accent), transparent 50%);
}

.theme-navbar .link-wrapper .link > svg {
    width: var(--space-4);
    height: var(--space-4);
}

@media (max-width: 1364px) {
    .theme-navbar .link-wrapper {
        width: 100%;
    }

    .theme-navbar .link-wrapper .link {
        width: 100%;
        justify-content: flex-start;
    }

    .theme-navbar .link-wrapper.show .link {
        border-end-start-radius: 0;
        border-end-end-radius: 0;
    }

    .theme-navbar .link-wrapper .link > svg {
        margin-inline-start: auto;
        transform: rotate(-90deg);
    }

    .theme-navbar .link-wrapper.show .link > svg {
        transform: rotate(0);
    }

    [dir="rtl"] .theme-navbar .link-wrapper .link > svg {
        transform: rotate(90deg);
        margin-inline-start: unset;
        margin-inline-end: auto;
    }

    [dir="rtl"] .theme-navbar .link-wrapper.show .link > svg {
        transform: rotate(0);
    }
}

/* close-links */
.theme-navbar .close-links {
    display: none;
}

@media (max-width: 1364px) {
    .theme-navbar .close-links {
        display: flex;
        align-items: center;
        justify-content: center;
        position: absolute;
        top: 20px;
        width: 100%;
        inset-inline-start: 0;
        inset-inline-end: 0;
    }
}

/* dropdown-menu */
.theme-navbar .link-wrapper {
    position: relative;
}

/* Dropdown menu base styles */
.theme-navbar .theme-dropdown-menu {
    display: none;
    position: absolute;
    padding: var(--space-1);
    top: 48px;
    border: 1px solid var(--border);
    border-radius: var(--theme-radius);
    background-color: var(--popover);
    box-shadow: var(--normal-shadow) var(--normal-shadow-color);
    z-index: 1;
}

.theme-navbar .theme-dropdown-menu.drop-left {
    inset-inline-end: 0;
}

.theme-navbar .theme-dropdown-menu.drop-right {
    inset-inline-end: 0;
}

/* Mobile styles */
@media (max-width: 1364px) {
    .theme-navbar .theme-dropdown-menu:not(.user-dropdown-menu) {
        position: relative;
        top: unset;
        border: none;
        box-shadow: none;
        border-start-start-radius: 0;
        border-start-end-radius: 0;
        border-top: 1px solid var(--border);
    }
}

/* Show dropdown menu */
.theme-navbar .show .theme-dropdown-menu {
    display: block;
}

/* ddm-divider */
.theme-navbar .theme-dropdown-menu .ddm-divider {
    margin-block: var(--space-1);
    border-bottom: 1px solid var(--border);
    display: flex;
}

/* ddm-item */
.theme-navbar .theme-dropdown-menu .ddm-item {
    display: flex;
    align-items: center;
}

/* ddm-link */
.theme-navbar .theme-dropdown-menu .ddm-item .ddm-link {
    display: flex;
    padding: calc(var(--space-1) * 1.5) calc(var(--space-1) * 2);
    min-width: 220px;
    align-items: center;
    border-radius: var(--theme-radius);
    color: var(--popover-foreground);
    transition: all 0.15s var(--transition-function-1);
}

.theme-navbar .theme-dropdown-menu .ddm-item .ddm-link img {
    width: 24px;
}

.theme-navbar .theme-dropdown-menu .ddm-item .ddm-link svg {
    width: var(--space-4);
    height: var(--space-4);
}

.theme-navbar .theme-dropdown-menu .ddm-item .ddm-link:hover {
    background: var(--accent);
    color: var(--accent-foreground);
}

@media (max-width: 1364px) {
    .theme-navbar
    .theme-dropdown-menu:not(.user-dropdown-menu)
    .ddm-item
    .ddm-link {
        min-width: 100%;
    }
}

/* actions */
.theme-navbar .actions {
    min-width: 20%;
}

/* user-options */
.user-options {
    position: relative;
}

/* ----------------------------------- */

/* : Sidebar : */
#main-body .sidebar-col {
    width: 20%;
    padding-inline-start: 1rem;
    padding-inline-end: 1rem;
}
@media (max-width: 1199.98px) {
    #main-body .sidebar-col {
        width: 100%;
    }
}
#main-body .content-col {
    width: 80%;
    padding-inline-start: 1rem;
    padding-inline-end: 1rem;
    transition: all 0.3s ease;
}
@media only screen and (max-width: 1199.98px) {
    #main-body .content-col {
        width: 100%;
        float: none;
    }
}
.primary-content {
    padding: 0 15px;
    width: 100%;
}
/* ----------------------------------- */

/* : Sidebar Toggler : */
.sidebar-toggler {
    margin-bottom: 20px;
}
@media (max-width: 1199.98px) {
    .sidebar-toggler {
        display: none !important;
    }
}
/* ----------------------------------- */

/* : Theme sidebar panel : */
.theme-sidebar-panel {
    background: var(--sidebar);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    overflow: hidden;
}
@media (min-width: 1200px) {
    .theme-sidebar-panel {
        border: 1px solid var(--border);
    }
}

/* Panel Heading */
.theme-sidebar-panel .panel-heading {
    padding: 14px 20px;
    cursor: pointer;
    background-color: var(--header-bg);
}
.theme-sidebar-panel .panel-heading .panel-header-label {
    line-height: 1;
}
.theme-sidebar-panel .panel-heading .card-minimise {
    font-size: var(--text-sm);
    transition: all 0.3s ease-in-out;
}
.theme-sidebar-panel .panel-heading.active .card-minimise {
    transform: rotate(180deg);
}

/* Sidebar List */
.theme-sidebar-panel .panel-body {
    padding: 10px;
    border-top: 1px solid var(--border);
}
.theme-sidebar-panel .sidebar-list-item {
    display: flex;
    column-gap: 0.5rem;
    padding: calc(var(--space-1) * 1.5) calc(var(--space-1) * 2);
    min-width: 220px;
    align-items: center;
    border-radius: var(--theme-radius);
    color: var(--popover-foreground);
    transition: all 0.15s var(--transition-function-1);
    overflow: hidden;
}
.theme-sidebar-panel .sidebar-list-item.ticket-details-children {
    display: block;
}
.theme-sidebar-panel .sidebar-list-item.no-action {
    color: var(--muted-foreground);
}
.theme-sidebar-panel .sidebar-list-item:not(.no-action):hover {
    background: var(--sidebar-accent);
    color: var(--sidebar-accent-foreground);
}
.theme-sidebar-panel .sidebar-list-item svg {
    width: 16px;
    height: 16px;
}
.theme-sidebar-panel .sidebar-list-item.active {
    color: var(--sidebar-accent-foreground);
}
.theme-sidebar-panel .panel-footer .row:has(> .row) {
    all: unset;
}
.theme-sidebar-panel .panel-footer .row > .row {
    margin-inline: -0.5rem;
}
.theme-sidebar-panel .panel-footer .row > .row > [class*="col-"] {
    padding-inline: 0.5rem;
}
.theme-sidebar-panel .panel-footer .row:not(:has(> .row)):not(:has(> .col)) {
    margin-inline: 0;
}
.theme-sidebar-panel .panel-footer {
    padding: 0.75rem;
    border-top: 1px solid var(--border);
}

/* collapsable-card-body */
.collapsable-card-body {
    padding: 0 !important;
}
.collapsable-card-body .theme-sidebar-list {
    padding: 0.75rem !important;
}
.collapsable-card-body .theme-sidebar-list .text-center {
    text-align: start !important;
}

/* tags */
.theme-sidebar-panel a[href*="/knowledgebase/tag"] {
    padding: 0.25rem 0.5rem;
    border-radius: var(--radius-pill);
    background-color: var(--popover);
    color: var(--muted-foreground);
    transition: all 0.15s var(--transition-function-1);
}
.theme-sidebar-panel a[href*="/knowledgebase/tag"]:hover {
    color: var(--foreground);
}
/* ----------------------------------- */

/* : Section Title : */
.hero-title {
    margin-bottom: 70px;
}
.hero-title .hero-tagline {
    max-width: 500px;
}
/* ----------------------------------- */

/* : Section Title Heading : */
.section-title-heading {
    margin-bottom: 45px;
}
.section-title-heading .section-headline {
    color: var(--foreground);
    font-size: var(--text-3xl);
}
.section-title-heading .section-tagline {
    font-size: var(--text-sm);
}
/* ----------------------------------- */

/* : Page Header : */
.page-header {
    border-bottom: 1px solid var(--border);
    padding-block-end: 1.5rem;
    margin-bottom: 1.5rem;
}
/* ----------------------------------- */

/* : Page Footer : */
.page-footer {
    border-top: 1px solid var(--border);
    padding-block-start: 1.5rem;
    margin-top: 1.5rem;
}
/* ----------------------------------- */

/* : Breadcrumbs : */
.theme-master-breadcrumb {
    margin-top: 20px;
    font-family: var(--font-family-base);
}
.theme-master-breadcrumb .theme-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    padding: 10px 20px;
    border-radius: var(--radius-sm);
    background-color: var(--card);
    column-gap: 10px;
    border: 1px solid var(--border);
    position: relative;
    overflow: hidden;
}
.theme-master-breadcrumb .breadcrumb-item > a {
    font-size: var(--text-sm);
    color: var(--muted-foreground);
    transition: all 0.15s var(--transition-function-1);
}
.theme-master-breadcrumb .breadcrumb-item:not(.active) > a:hover {
    color: var(--foreground);
}
.theme-master-breadcrumb .breadcrumb-item.active {
    color: var(--foreground);
}
.theme-master-breadcrumb svg {
    width: 0.75rem;
}
/* ----------------------------------- */

/* : Float Search Bar : */
.float-search-bar {
    position: fixed;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 100;
    width: 170px;
    height: 66px;
    transition: width 0.6s var(--transition-function-1),
    height 0.5s var(--transition-function-1) 0.1s,
    border-radius 0.4s var(--transition-function-1),
    border-color 0.15s var(--transition-function-1);
}
.float-search-bar.bar-is-active {
    width: min(768px, calc(100vw - 40px));
    height: 122px;
}
.float-search-bar > form {
    position: relative;
    padding: var(--space-3);
    background-color: var(--topbar);
    border: 1px solid var(--border);
    border-radius: var(--radius-pill);
    height: 100%;
    z-index: 2;
    transition: border-radius 0.4s var(--transition-function-1);
}
.float-search-bar.bar-is-active > form {
    border-radius: var(--radius-xl);
}
.float-search-bar:not(.bar-is-active) > form:hover {
    border-color: var(--border);
}

/* Responsive design */
@media (max-width: 991.98px) {
    .float-search-bar.bar-is-active {
        width: calc(100vw - 100px);
    }
}
@media (max-width: 767.98px) {
    .float-search-bar {
        display: none;
    }
}

/* Animated gradient border effect */
.float-search-bar::before {
    content: "";
    position: absolute;
    inset: -1px;
    background: linear-gradient(45deg, var(--chart-3), var(--extracted-color-39), var(--extracted-color-40));
    background-size: 300% 300%;
    border-radius: var(--radius-pill);
    z-index: -2;
    opacity: 0;
    animation: gradient-flow 6s ease-in-out infinite;
    transition: 0.2s opacity 0.4s ease,
    border-radius 0.4s var(--transition-function-1);
}
.float-search-bar.bar-is-active::before {
    border-radius: var(--radius-xl);
    opacity: 1;
}
@keyframes gradient-flow {
    0%,
    100% {
        background-position: 0% 50%;
    }

    25% {
        background-position: 100% 50%;
    }

    50% {
        background-position: 100% 100%;
    }

    75% {
        background-position: 0% 100%;
    }
}

/* content-area */
.float-search-bar .content-area {
    position: absolute;
    inset-inline-start: var(--space-3);
    top: 1.25rem;
    inset-inline-end: var(--space-3);
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition: opacity 0.4s ease, visibility 0.4s ease,
    transform 0.4s var(--transition-function-1);
}
.float-search-bar.bar-is-active .content-area {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition-delay: 0.2s;
}
.float-search-bar .content-area .icon {
    padding-inline: var(--space-2);
}
.float-search-bar .content-area .icon svg {
    width: var(--space-4);
    height: var(--space-4);
}

/* actions-bar */
.float-search-bar .actions-bar {
    position: absolute;
    inset-inline-start: var(--space-3);
    inset-inline-end: var(--space-3);
    bottom: var(--space-3);
}

/* float-bar-input */
.float-search-bar .float-bar-input {
    background: transparent;
    border: unset;
    outline: unset;
    color: var(--foreground);
    width: 100%;
}

/* Left content with staggered animation */
.float-search-bar .left-content {
    opacity: 0;
    visibility: hidden;
    transform: translateX(-12px);
    transition: opacity 0.3s ease, visibility 0.3s ease,
    transform 0.3s var(--transition-function-1);
}
.float-search-bar.bar-is-active .left-content {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
    transition-delay: 0.3s;
}

/* right-content */
.float-search-bar .right-content {
    position: absolute;
    inset-inline-end: 0;
    bottom: 0;
}

/* btn-icons */
.float-search-bar ._collapse_icon {
    display: none;
}
.float-search-bar.bar-is-active ._collapse_icon {
    display: flex;
}
.float-search-bar.bar-is-active ._expand_icon {
    display: none;
}
/* ----------------------------------- */

/* : Float Bar Overlay : */
body.float-bar-open {
    overflow-y: hidden;
}
@media (min-width: 768px) {
    .float-bar-overlay {
        position: fixed;
        top: 0;
        inset-inline-start: 0;
        inset-inline-end: 0;
        bottom: 0;
        background: rgba(0, 0, 0, 0.5);
        z-index: 99;
        display: none;
    }
}
/* ----------------------------------- */

/* : Quick Actions Header : */
.quick-actions-header {
    display: grid;
    place-items: center;
    min-height: 90vh;
    padding-block: 8rem;
}

/* Title */
.quick-actions-header .title {
    font-size: var(--text-5xl);
    font-family: var(--font-family-base);
    font-weight: 700;
    letter-spacing: -0.05rem;
}
.quick-actions-header .title > span {
    font-weight: 700;
}

/* Quick Actions Wrapper */
.quick-actions-header .quick-actions-wrapper {
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
    margin-top: var(--space-24);
}

/* Scroll Container */
.quick-actions-header .scroll-container {
    --itemHeight: 80px;
    white-space: nowrap;
    position: relative;
    height: var(--itemHeight);
    overflow: hidden;
    mask-image: linear-gradient(
            to right,
            transparent,
            var(--background) 10%,
            var(--background) 90%,
            transparent
    );
    -webkit-mask-image: linear-gradient(
            to right,
            transparent,
            var(--background) 10%,
            var(--background) 90%,
            transparent
    );
}

/* Quick Actions Row */
.quick-actions-header .actions-row {
    display: flex;
    position: absolute;
    top: 0;
    will-change: transform;
    column-gap: var(--space-4);
}

.quick-actions-header .action-item {
    display: flex;
    align-items: center;
    width: 260px;
    height: var(--itemHeight);
    padding: var(--space-4);
    border-radius: calc(var(--itemHeight) / 3.2);
    background: var(--card);
    background-color: color-mix(in srgb, var(--card), transparent 50%);
    overflow: hidden;
    transition: background-color 0.15s var(--transition-function-1);
}

.quick-actions-header .action-item:hover {
    background-color: var(--card);
}

.quick-actions-header .action-icon {
    height: var(--space-12);
    display: flex;
    width: 36px;
    align-items: center;
    justify-content: center;
    color: var(--foreground);
    border-radius: calc(var(--space-12) / 3.2);
}

.quick-actions-header .action-icon svg {
    width: var(--space-6);
    height: var(--space-6);
}

.quick-actions-header .action-text {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
    padding-inline: var(--space-4) var(--space-4);
}

/* colors */
.quick-actions-header .action-item.color-variant-1 .action-icon {
    background-color: color-mix(in srgb, var(--red), transparent 90%);
}

.quick-actions-header .action-item.color-variant-2 .action-icon {
    background-color: color-mix(in srgb, var(--blue), transparent 80%);
}

.quick-actions-header .action-item.color-variant-3 .action-icon {
    background-color: color-mix(in srgb, var(--green), transparent 80%);
}

.quick-actions-header .action-item.color-variant-4 .action-icon {
    background-color: color-mix(in srgb, var(--yellow), transparent 80%);
}

.quick-actions-header .action-item.color-variant-5 .action-icon {
    background-color: color-mix(
            in srgb,
            var(--purple),
            transparent 80%
    );
}

.quick-actions-header .action-item.color-variant-6 .action-icon {
    background-color: color-mix(in srgb, var(--pink), transparent 80%);
}

.quick-actions-header .action-item.color-variant-7 .action-icon {
    background-color: color-mix(
            in srgb,
            var(--orange),
            transparent 80%
    );
}

.quick-actions-header .action-item.color-variant-8 .action-icon {
    background-color: color-mix(in srgb, var(--gray), transparent 80%);
}

.quick-actions-header .action-item.color-variant-9 .action-icon {
    background-color: color-mix(in srgb, var(--teal), transparent 80%);
}

.quick-actions-header .action-item.color-variant-10 .action-icon {
    background-color: color-mix(in srgb, var(--cyan), transparent 80%);
}

/* ----------------------------------- */

/* : Domain Search : */
.home-domain-search {
    padding: 8rem 0 2rem;
}

@media (max-width: 1199.98px) {
    .home-domain-search {
        padding: 100px 0 45px;
    }
}
@media (max-width: 767.98px) {
    .home-domain-search {
        padding: 80px 0 45px;
    }
}

/* domain-search-content */
.home-domain-search .domain-search-content {
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 0 60px;
}
@media (max-width: 1199.98px) {
    .home-domain-search .domain-search-content {
        max-width: 700px;
    }
}
@media (max-width: 991.98px) {
    .home-domain-search .domain-search-content {
        max-width: 600px;
        padding: 0 0 80px;
    }
}

/* header-title */
.home-domain-search .domain-search-title {
    letter-spacing: -0.05rem;
    margin-bottom: var(--space-12);
}
@media (max-width: 991.98px) {
    .home-domain-search .domain-search-title {
        font-size: var(--text-4xl);
        margin-bottom: var(--space-10);
    }
}
@media (max-width: 767.98px) {
    header .header-title {
        font-size: var(--text-3xl);
    }
}

/* custom-input-group */
.home-domain-search .domain-search-form .custom-input-group {
    position: relative;
    max-width: 900px;
    margin: 0 auto 30px;
}

/* custom-input */
.home-domain-search .domain-search-form .custom-input {
    width: 100%;
    font-size: var(--text-lg);
    font-weight: 500;
    color: var(--foreground);
    padding: 1.5rem 12rem 1.5rem 4rem;
    border: 1px solid var(--border);
    background: var(--input);
    border-radius: var(--radius-md);
    line-height: 1;
    outline: none;
    outline-color: transparent;
    outline-width: 0;
    outline-style: solid;
    outline-offset: 1px;
    transition: all 0.1s var(--transition-function-1);
    font-family: var(--font-primary);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
.home-domain-search .domain-search-form .custom-input:focus {
    border-color: var(--indigo);
    outline-color: color-mix(in srgb, var(--ring), transparent 80%);
    outline-width: 2px;
}
@media (max-width: 1199.98px) {
    .home-domain-search .domain-search-form .custom-input {
        padding: 20px 185px 20px 50px;
    }
}
@media (max-width: 991.98px) {
    .home-domain-search .domain-search-form .custom-input {
        font-size: var(--text-lg);
        padding: 18px 185px 18px 50px;
    }
}
@media (max-width: 767.98px) {
    .home-domain-search .domain-search-form .custom-input {
        font-size: var(--text-base);
        padding: 18px 20px 18px 50px;
    }
}

/* svg - button */
.home-domain-search .domain-search-form .custom-input-group i {
    position: absolute;
    color: var(--icon-gray);
    inset-inline-start: 20px;
    font-size: var(--text-2xl);
}
.home-domain-search .domain-search-form .custom-input-group button {
    position: absolute;
    inset-inline-end: 6px;
    height: 60px;
    font-size: var(--text-lg);
    padding-inline: 1.5rem;
}
@media (max-width: 1199.98px) {
    .home-domain-search .domain-search-form .custom-input-group i {
        width: 20px;
        font-size: var(--text-xl);
    }

    .home-domain-search .domain-search-form .custom-input-group button {
        height: 50px;
        font-size: var(--font-base);
    }
}
@media (max-width: 991.98px) {
    .home-domain-search .domain-search-form .custom-input-group button {
        height: 46px;
        inset-inline-end: 8px;
    }
}
@media (max-width: 767.98px) {
    .home-domain-search .domain-search-form .custom-input-group button {
        position: relative;
        inset-inline-end: unset;
        height: 58px;
        width: 100%;
    }
}
/* ----------------------------------- */

/* : Home Domains Features : */
.home-domains-features {
    padding-bottom: 45px;
}
.home-domains-features .feature-item {
    border-radius: var(--radius-md);
    padding: var(--space-5);
    height: 100%;
    background: var(--surface-bg);
    border: 1px solid var(--border);
}
.home-domains-features .feature-item .icon {
    width: var(--space-8);
}
.home-domains-features .feature-item .icon svg {
    width: 2rem;
    height: 2rem;
}
@media (max-width: 991.98px) {
    .home-domains-features .feature-item .title {
        font-size: var(--text-base);
    }
}
/* ----------------------------------- */

/* : Regular Plan Card : */
.regular-plan-card {
    position: relative;
    background: var(--card);
    border-radius: var(--radius-md);
    border: 1px solid var(--border);
    padding: var(--space-3) var(--space-3) var(--space-8) var(--space-3);
    overflow: hidden;
}

/* popular */
.regular-plan-card.popular::before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 2px;
    border-radius: var(--radius-md);
    background: var(--linear-gradient);
    background-size: 400% 100%;
    -webkit-mask: linear-gradient(var(--extracted-color-5) 0 0) content-box, linear-gradient(var(--extracted-color-5) 0 0);
    mask: linear-gradient(var(--extracted-color-5) 0 0) content-box, linear-gradient(var(--extracted-color-5) 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
    animation: gradient-animation 12s ease infinite;
}
@keyframes gradient-animation {
    0% {
        background-position: 0% 50%;
    }

    50% {
        background-position: 100% 50%;
    }

    100% {
        background-position: 0% 50%;
    }
}

/* plan-header */
.regular-plan-card .plan-header {
    position: relative;
    padding: var(--space-5);
    margin-bottom: var(--space-8);
    border-radius: var(--radius-md);
    background: var(--background);
    background-color: color-mix(in srgb, var(--background), transparent 10%);
}

/* icon */
.regular-plan-card .plan-header .icon {
    width: var(--space-14);
    height: var(--space-14);
    background: var(--card);
    background: color-mix(in srgb, var(--card), transparent 0%);
}
.regular-plan-card.popular .plan-header .icon {
    background: var(--indigo);
}

/* features-list */
.regular-plan-card .plan-features .list-item .icon {
    width: var(--space-6);
    fill: var(--accent);
}
/* ----------------------------------- */

/* : Premium Plan Card : */
.premium-plan-card {
    background: var(--surface-bg);
    border-radius: var(--radius-md);
    border: 1px solid var(--border);
}

/* plan-header */
.premium-plan-card .plan-header {
    border-bottom: 1px solid var(--border);
}

@media (max-width: 767.98px) {
    /* plan-features */
    .premium-plan-card .plan-features {
        row-gap: 20px !important;
    }

    .premium-plan-card .plan-actions a {
        width: 100%;
    }
}
/* ----------------------------------- */

/* : Mini Plan Card : */
.mini-plan-card {
    background: var(--surface-bg);
    border-radius: var(--radius-md);
    border: 1px solid var(--border);
}

/* plan-header */
.mini-plan-card .plan-header .icon {
    width: 50px;
    height: 50px;
}
.mini-plan-card .plan-header .icon svg {
    fill: var(--foreground);
    width: 50px;
    height: 50px;
}
.mini-plan-card .price-list .price-item {
    background-color: var(--surface-bg);
    border-radius: var(--radius-sm);
}
/* ----------------------------------- */

/* Mini Testemonial Card */
.mini-testimonial-card {
    background: var(--surface-bg);
    border-radius: var(--radius-md);
}
.mini-testimonial-card::before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 2px;
    border-radius: var(--radius-md);
    background: var(--linear-gradient);
    background-size: 100% 100%;
    -webkit-mask: linear-gradient(var(--extracted-color-5) 0 0) content-box, linear-gradient(var(--extracted-color-5) 0 0);
    mask: linear-gradient(var(--extracted-color-5) 0 0) content-box, linear-gradient(var(--extracted-color-5) 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
    /* animation: gradient-animation 12s ease infinite; */
}
.mini-testimonial-card .testimonial-content .text {
    line-height: 0.8;
}

/* testimonidals-cards */
.mini-testimonial-card .testimonial-card {
    width: 120px;
    border: 3px solid var(--background);
    border-radius: var(--radius-full);
    overflow: hidden;
}
.mini-testimonial-card .testimonial-card:not(:last-child) {
    margin-inline-end: -30px;
}
/* ----------------------------------- */

/* : PS Card : */
.ps-card .ps-title {
    transition: color 0.15s ease;
}
.ps-card .ps-title:hover {
    text-decoration: underline !important;
    color: var(--foreground);
}
/* ----------------------------------- */

/* : Basic Features Card : */
.basic-features-card {
    background: var(--surface-bg);
    border-radius: var(--radius-md);
    border: 1px solid var(--border);
    height: 100%;
}
/* ----------------------------------- */

/* : Section Features : */
.section-features {
    margin-top: 50px;
}

/* icon */
.section-features .line .icon {
    width: 22px;
    fill: var(--indigo);
}
/* ----------------------------------- */

/* : Hosting Solutions Section : */
.hosting-solutions-section .ui-content {
    padding: 50px;
    border-radius: var(--radius-md);
    overflow: hidden;
    background: var(--surface-bg);
}

.hosting-solutions-section .ui-content::before {
    position: absolute;
    content: "";
    background: url(../images/ui/purple-liquid-splash.png) no-repeat center;
    background-size: contain;
    width: 600px;
    height: 600px;
    top: 35%;
    inset-inline-end: -40%;
    z-index: 1;
}

.hosting-solutions-section .ui-content::after {
    content: "";
    position: absolute;
    inset: 0;
    padding: 2px;
    border-radius: var(--radius-md);
    background: var(--linear-gradient);
    background-size: 100% 100%;
    -webkit-mask: linear-gradient(var(--extracted-color-5) 0 0) content-box, linear-gradient(var(--extracted-color-5) 0 0);
    mask: linear-gradient(var(--extracted-color-5) 0 0) content-box, linear-gradient(var(--extracted-color-5) 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
    z-index: 1;
}

/* ui-content-title */
.hosting-solutions-section .ui-content-subtitle {
    z-index: 2;
}

.hosting-solutions-section .ui-content-title {
    max-width: 500px;
    line-height: 1.2;
    z-index: 2;
}

@media (max-width: 767.98px) {
    .hosting-solutions-section .ui-content {
        padding: 30px;
    }
    .hosting-solutions-section .ui-content::before {
        display: none;
    }

    .hosting-solutions-section .nt-btn {
        width: 100%;
    }
}

/* ----------------------------------- */

/* : Servers Locations Section : */
.servers-locations-section .location-image img {
    width: 20px;
}
.servers-locations-section .location-info i {
    color: var(--indigo);
}
.servers-locations-section .map-image {
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-user-drag: none;
    -khtml-user-drag: none;
}
/* ----------------------------------- */

/* Announcements List, Knowledgebase */
.announcements-list {
    display: flex;
    flex-direction: column;
    row-gap: 1rem;
}
.announcements-text-area,
.kb-text-area {
    line-height: 1.6;
}
.announcements-text-area ul,
.kb-text-area ul {
    padding-inline-start: 20px;
    list-style-type: disc;
}
[dir="rtl"] .announcements-text-area ul,
[dir="rtl"] .kb-text-area ul {
    padding-inline-end: 20px;
    padding-inline-start: unset;
}
/* ----------------------------------- */

/* : Announcement Article Card : */
.announcement-article-card {
    background: var(--card);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
}

/* article-text */
.announcement-article-card .article-text {
    display: block;
    overflow: visible;
    max-height: none;
}

/* article-footer */
.announcement-article-card .article-footer {
    border-top: 1px solid var(--border);
}
.announcement-article-card .article-info-div {
    background-color: var(--popover);
    padding: 6px 12px;
}
/* ----------------------------------- */

/* : Announcement Card : */
/* card-cover */
.announcement-card .card-cover {
    border-radius: var(--radius-md);
    overflow: hidden;
    height: 280px;
}
.announcement-card .card-cover .cover-image {
    position: absolute;
    object-fit: cover;
    width: 100%;
    height: 100%;
}

/* card-info */
.announcement-card .card-info .info-div {
    background-color: var(--card);
    border-radius: var(--radius-pill);
}

/* card-title */
.announcement-card .card-text .card-title a {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-height: 1.5;
}
.announcement-card .card-text .card-title a:hover {
    text-decoration: underline !important;
}
/* ----------------------------------- */

/* : Modal Localisation : */

/* languages-list */
.theme-localisation-modal .languages-list .item {
    display: flex;
    align-items: center;
    padding: 10px 20px;
    color: var(--foreground-text);
    border: 1px solid transparent;
    border-radius: var(--radius-sm);
    background-color: var(--surface-bg);
    font-weight: 500;
    transition: all 0.15s var(--transition-function-1);
}
.theme-localisation-modal .languages-list .item:hover:not(.active) {
    background-color: var(--surface-bg-2);
}
.theme-localisation-modal .languages-list .item.active {
    background-color: var(--surface-bg-2);
    color: var(--foreground);
    border-color: var(--border);
}
.theme-localisation-modal .languages-list .item img {
    width: 16px;
}
.theme-localisation-modal .languages-list .item i {
    color: var(--foreground);
    font-size: 0.75rem;
}
/* ----------------------------------- */

/* :: FOOTER :: */
.theme-footer {
    position: relative;
    background-color: var(--background);
    z-index: 101;
}
.theme-footer::before {
    position: absolute;
    content: "";
    inset-inline-start: 0;
    top: 0;
    inset-inline-end: 0;
    height: 2px;
    background: linear-gradient(
            to right,
            var(--extracted-color-41),
            var(--extracted-color-42),
            var(--extracted-color-43),
            var(--extracted-color-44),
            var(--extracted-color-45),
            var(--extracted-color-46),
            var(--extracted-color-41)
    );
    animation: rainbow-move 20s infinite linear alternate;
}
@keyframes rainbow-move {
    100% {
        background-position-x: 4000px;
    }
}

/* footer-top */
.theme-footer .footer-top {
    padding: 60px 0 20px;
}

/* footer-list-group */
.theme-footer .footer-list-group {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

/* footer-list */
.theme-footer .footer-list {
    padding-bottom: 4vh;
}
.theme-footer .footer-list .list-title {
    position: relative;
    font-size: var(--text-base);
    font-weight: 700;
    color: var(--foreground);
}
.theme-footer .footer-list .list-link:nth-child(2) {
    margin-top: 20px;
}
.theme-footer .footer-list .list-link:not(:last-of-type) {
    margin-bottom: 12px;
}
.theme-footer .footer-list .list-link > a {
    font-size: var(--text-sm);
    font-weight: 400;
    color: var(--foreground-text);
}
.theme-footer .footer-list .list-link > a:hover {
    text-decoration: underline !important;
    color: var(--foreground);
}
@media only screen and (max-width: 1199.98px) {
    .theme-footer .footer-list-group {
        justify-content: flex-start;
    }

    .theme-footer .footer-list {
        min-width: 25%;
    }
}
@media only screen and (max-width: 991.98px) {
    .theme-footer .footer-list {
        min-width: 33.33%;
    }
}
@media only screen and (max-width: 767.98px) {
    .theme-footer .footer-list-group {
        column-gap: 30px;
    }

    .theme-footer .footer-list.open-list .list-title::after {
        display: none;
    }
}

/* footer-bottom */
.theme-footer .footer-bottom {
    padding: 60px 0;
    border-top: 1px solid var(--border);
}

/* content */
@media only screen and (max-width: 991.98px) {
    .theme-footer .footer-bottom .content {
        flex-wrap: wrap;
    }
}

/* logo */
.theme-footer .footer-bottom .logo {
    margin-inline-end: 40px;
}
.theme-footer .footer-bottom .logo img {
    min-width: 120px;
    width: 220px;
}

/* links */
.theme-footer .footer-bottom .links {
    margin-bottom: 4px;
}
.theme-footer .footer-bottom .links li {
    position: relative;
}
.theme-footer .footer-bottom .links li:not(:last-of-type) {
    margin-inline-end: 20px;
}
.theme-footer .footer-bottom .links li:not(:last-of-type)::after {
    position: absolute;
    content: "";
    inset-inline-end: -11px;
    top: 3px;
    bottom: 3px;
    width: 1px;
    background-color: var(--white);
    opacity: 0.2;
}
.theme-footer .footer-bottom .links li a {
    font-size: var(--text-sm);
    font-weight: 500;
    color: var(--foreground);
}
.theme-footer .footer-bottom .links li a:hover {
    text-decoration: underline !important;
}

/* para-3 */
.theme-footer .footer-bottom .para-3 {
    font-size: var(--text-sm);
    font-weight: 500;
    color: var(--foreground-text);
}
.theme-footer .footer-bottom .para-3 a {
    color: var(--foreground);
    font-weight: 500;
    text-decoration: underline !important;
}
.theme-footer .footer-bottom .para-3 a:hover {
    color: var(--indigo);
}

/* social-list */
.theme-footer .footer-bottom .social-list a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.theme-footer .footer-bottom .social-list a:hover {
    color: var(--foreground);
}
/* ----------------------------------- */

/* : Auth Page : */
.auth-page {
    position: relative;
    overflow: hidden;
}
.video-bg-wrapper {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
}
.bg-video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: brightness(0.5);
}
.video-overlay-blur {
    position: absolute;
    inset: 0;
    /* -webkit-backdrop-filter: blur(18px);
    backdrop-filter: blur(18px); */
    background: color-mix(in srgb, var(--background), transparent 20%);
    z-index: 1;
}

.auth-page .container-fluid {
    position: relative;
    z-index: 2;
}
.auth-page .page-content {
    min-height: 100dvh;
}
.nt-auth-form {
    padding: 1rem;
    max-width: 450px;
    width: 100%;
}
.nt-auth-form .form-header {
    text-align: center;
}
.nt-auth-form .logo {
    height: 22px;
}
.auth-page .float-links {
    position: absolute;
    bottom: 2rem;
    background-color: var(--background);
}
.auth-page .float-links > div {
    row-gap: 20px;
}
/* ----------------------------------- */

/* : Popover : */
body .popover {
    background-color: var(--popover);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    background-clip: border-box;
    font-family: var(--font-family-base);
    padding: 0.5rem;
    direction: ltr;
}
body .bs-popover-bottom > .arrow::after,
body .bs-popover-auto[x-placement^="bottom"] > .arrow::after {
    display: none;
}
body .bs-popover-bottom > .arrow::before,
body .bs-popover-auto[x-placement^="bottom"] > .arrow::before {
    border-bottom-color: var(--popover);
}
body .popover .popover-header {
    background-color: unset;
    border-bottom: 1px solid var(--border);
    font-size: var(--text-base);
    font-weight: 500;
    padding-inline-start: 0.5rem;
    margin-bottom: 0.5rem;
}
[dir="rtl"] .popover .popover-inner {
    direction: rtl;
}
/* ----------------------------------- */

/* : User Notifications : */
.popover-user-notifications ul {
    padding-top: 0.5rem;
}
.popover-user-notifications ul li {
    all: unset;
}
.popover-user-notifications ul li:not(:last-child) {
    margin-bottom: 0.5rem;
}
.popover-user-notifications .notification-item {
    background-color: var(--popover);
    border-radius: var(--radius-md);
    gap: 8px;
    color: var(--muted-foreground) !important;
    transition: all 0.15s var(--transition-function-1);
}
.popover-user-notifications .notification-item:hover {
    background-color: var(--accent);
}
.popover-user-notifications .notification-item .icon i {
    padding-top: 0;
    font-size: 18px;
}
.popover-user-notifications .notification-item .message {
    all: unset;
}
.popover-user-notifications ul li.none {
    color: var(--muted-foreground);
}
/* ----------------------------------- */

/* : Contact Page : */
.contact-page .page-sections {
    display: flex;
    min-height: 100vh;
    max-height: 100dvh;
    overflow: hidden;
    width: 100%;
}
.contact-page .left-section,
.contact-page .right-section {
    padding: 60px;
    flex: 1;
}
.contact-page .left-section {
    background: url("../images/backgrounds/contact-page-bg.jpg") center top/cover
    no-repeat;
}
.contact-page .right-section {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.contact-page .right-section form {
    position: relative;
    max-width: 500px;
    margin: 0 auto;
}
.contact-page .float-links {
    position: absolute;
    bottom: 2rem;
}
.contact-page .float-links > div {
    row-gap: 20px;
}
/* Responsive Design */
@media (max-width: 1199px) {
    .contact-page .page-sections {
        flex-direction: column;
        min-height: unset;
        max-height: auto;
        overflow: auto;
    }
    .contact-page .left-section,
    .contact-page .right-section {
        flex: none;
        width: 100%;
    }
    .contact-page .right-section form {
        max-width: 100%;
    }
    .contact-page .float-links {
        position: relative;
        bottom: unset;
        margin-top: 2rem;
    }
}
@media (max-width: 767px) {
    .contact-page .left-section,
    .contact-page .right-section {
        padding: 60px 30px;
    }
    .contact-page .right-section form {
        max-width: 100%;
    }
}
/* ----------------------------------- */

/* : Tiles : */
.tile-link {
    position: absolute;
    opacity: 0;
    transition: all 0.15s var(--transition-function-1);
}
.relative-hover:hover .tile-link {
    opacity: 1;
}
/* ----------------------------------- */

/* : Addons Section : */
.addons-section> h3 {
    font-size: var(--text-2xl);
    font-weight: 600;
}
/* ----------------------------------- */

/* : Custom Product Status : */
.custom-product-status {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    flex: 0 0 100%;
    border-radius: var(--theme-radius);
    background-color: var(--surface-bg);
    border: 1px solid var(--border);
}

.custom-product-status .main-info-se {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    padding: 1.5rem;
    border-right: 1px solid var(--border);
    width: 20%;
}
.custom-product-status .main-info-se .product-title {
    font-size: var(--text-lg);
    font-weight: 600;
    color: var(--foreground);
    margin-bottom: 0.25rem;
}
.custom-product-status .main-info-se .product-subtitle {
    font-size: var(--text-sm);
    font-weight: 500;
    color: var(--muted-foreground);
    margin-bottom: 1rem;
}
@media only screen and (max-width: 1599.98px) {
    .custom-product-status .main-info-se {
        flex: 0 0 100%;
        width: unset;
        border-right: 0;
    }
}
@media only screen and (max-width: 991.98px) {
    .custom-product-status .main-info-se {
        flex: 0 0 100%;
        border-right: 0;
    }
}

.custom-product-status .details-se {
    display: flex;
    width: 20%;
}
.custom-product-status .details-se:not(.last-details-se) {
    border-right: 1px solid var(--border);
}
.custom-product-status .text-bar {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    height: 100%;
    width: 100%;
}
.custom-product-status .text-bar .text {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-direction: column;
    height: 50%;
    padding: 15px 15px 15px 15px;
    min-width: 212px;
    row-gap: 4px;
}
.custom-product-status .text-bar .text:not(:last-of-type) {
    border-bottom: 1px solid var(--border);
}
.custom-product-status .text-bar .text p {
    font-size: var(--text-sm);
    font-weight: 500;
}
@media only screen and (max-width: 1599.98px) {
    .custom-product-status .details-se {
        flex: 0 0 50%;
        border-top: 1px solid var(--border);
    }
    .custom-product-status .details-se:not(.last-details-se) {
        border-right: 0;
    }
    .custom-product-status .details-se:nth-child(2),
    .custom-product-status .details-se:nth-child(4) {
        border-right: 1px solid var(--border);
    }
}
@media only screen and (max-width: 991.98px) {
    .custom-product-status .details-se {
        flex: 0 0 100%;
    }
    .custom-product-status .details-se:nth-child(2),
    .custom-product-status .details-se:nth-child(4) {
        border-right: 0;
    }
}

.custom-product-status .product-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    padding: 1rem 1.5rem;
    border-top: 1px solid var(--border);
    width: 100%;
}
/* ----------------------------------- */

/* : Datatables : */
.dataTables_wrapper table.table-list {
    margin: 10px 0 !important;
    width: 100% !important;
    border-radius: 4px;
    border: 1px solid var(--extracted-color-25);
}
.dataTables_wrapper table.table-list thead th {
    border-bottom: 4px solid rgba(29, 57, 101, 0.2);
    font-weight: normal;
}
.dataTables_wrapper table.table-list thead th:first-child {
    border-radius: 4px 0 0 0;
}
.dataTables_wrapper table.table-list thead th:visible:last-child {
    border-radius: 4px 0 0 0;
}
.dataTables_wrapper table.table-list tr:last-child td:first-child {
    border-radius: 0 0 0 4px;
}
.dataTables_wrapper table.table-list tr:last-child td:visible:last-child {
    border-radius: 0 0 4px 0;
}
.dataTables_wrapper table.table-list thead th.sorting_asc,
.dataTables_wrapper table.table-list thead th.sorting_desc {
    background-color: var(--extracted-color-47);
}
.dataTables_wrapper .dataTables_filter {
    float: inline-end;
}
.dataTables_wrapper .dataTables_filter label .form-control {
    background: url("../../../assets/img/search.png") no-repeat 8px 5px;
}
@media (max-width: 600px) {
    .dataTables_wrapper .dataTables_filter {
        float: inline-end;
        margin-top: 30px;
        width: 100%;
    }
    .dataTables_wrapper .dataTables_filter label {
        display: block;
        margin: 5px;
        padding: 0;
    }
    .dataTables_wrapper .dataTables_filter label .form-control {
        margin: 0;
        width: 100%;
    }
}
/* ----------------------------------- */

/* : Tables : */
.table-responsive {
    overflow-x: auto;
    width: 100%;
    -webkit-overflow-scrolling: touch;
}

/* table */
.table {
    width: 100%;
    border-collapse: collapse;
    background-color: var(--surface-bg);
}

/* thead */
.table .thead {
    background-color: var(--header-bg);
}
.table .table-head {
    padding: 0.75rem 1rem;
    font-weight: 500;
    color: var(--foreground);
}

/* table-row */
.tbody .table-row {
    transition: all 0.15s var(--transition-function-1);
}
.tbody .table-row:hover {
    background-color: color-mix(in srgb, var(--accent) 20%, transparent) !important;
}
.tbody .table-row:not(:last-child) {
    border-bottom: 1px solid var(--border);
}

/* table-striped */
.table.table-striped .tbody .table-row:nth-of-type(odd) {
    background-color: color-mix(in srgb, var(--accent) 10%, transparent);
}

/* table-cell */
.table-cell {
    padding: 0.5rem 1rem;
    vertical-align: middle;
    height: 48px;
    white-space: nowrap;
}
.table-sm.table-cell {
    height: 40px;
}
.thead .order-head + .table-head:nth-child(2),
.tbody .table-row .order-cell + .table-cell:nth-child(2) {
    padding-inline-start: 0;
}

/* extra-padding-table-cells */
.extra-padding-table-cells .table-cell {
    padding: 0.75rem 1rem;
}

/* order */
.order-head,
.order-cell {
    min-width: 40px;
    width: 40px;
    text-align: center;
}
.order-head svg,
.order-cell svg {
    width: 14px;
    color: var(--muted-foreground);
}

/* dataTables_empty */
.dataTables_empty {
    padding: 0.75rem 1rem;
}
/* ----------------------------------- */

/* : Pagination : */
.pagination {
    list-style: none;
    display: flex;
    justify-content: center;
    gap: 0.2rem;
    flex-wrap: wrap;
}

/* pagination-link */
.pagination-link {
    padding: 0.25rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: var(--square-btn-dimension-xs);
    height: var(--square-btn-dimension-xs);
    border-radius: var(--radius-sm);
    background-color: transparent;
    border: 1px solid transparent;
    font-size: var(--text-sm);
    color: var(--muted-foreground);
    font-weight: 500;
    transition: all 0.15s var(--transition-function-1);
}
.pagination-item:not(.disabled):not(.active) .pagination-link:hover {
    background-color: color-mix(in srgb, var(--accent) 50%, transparent);
    color: var(--foreground);
}
.pagination-item.disabled .pagination-link {
    cursor: default;
    opacity: 0.7;
}
.pagination-item.active .pagination-link {
    background-color: color-mix(in srgb, var(--input) 70%, transparent);
    border-color: var(--border);
    color: var(--foreground);
    cursor: default;
}

/* prev & next */
.pagination .previous .pagination-link,
.pagination .next .pagination-link {
    padding-inline: 1rem;
    gap: 0.20rem;
}

/* svg */
.pagination .pagination-link svg {
    width: 16px;
}
@media (max-width: 600px) {
    .pagination {
        display: flex;
        padding-inline-start: 0;
        list-style: none;
        border-radius: 0.25rem;
    }
    .page-link {
        position: relative;
        display: block;
        padding: 0.5rem 0.75rem;
        margin-inline-start: -1px;
        line-height: 1.25;
        color: var(--extracted-color-48);
        background-color: var(--extracted-color-5);
        border: 1px solid var(--border);
    }
    .page-link:hover {
        z-index: 2;
        color: var(--extracted-color-49);
        text-decoration: none;
        background-color: var(--extracted-color-50);
        border-color: var(--extracted-color-51);
    }
    .page-link:focus {
        z-index: 3;
        outline: 0;
        box-shadow: 0 0 0 0.2rem rgba(51, 102, 153, 0.25);
    }

    .page-item:first-child .page-link {
        margin-inline-start: 0;
        border-start-start-radius: 0.25rem;
        border-end-start-radius: 0.25rem;
    }
    .page-item:last-child .page-link {
        border-start-end-radius: 0.25rem;
        border-end-end-radius: 0.25rem;
    }
    .page-item.active .page-link {
        z-index: 3;
        color: var(--extracted-color-5);
        background-color: var(--extracted-color-48);
        border-color: var(--extracted-color-48);
    }
    .page-item.disabled .page-link {
        color: var(--extracted-color-52);
        pointer-events: none;
        cursor: auto;
        background-color: var(--extracted-color-5);
        border-color: var(--extracted-color-51);
    }

    .pagination-lg .page-link {
        padding: 0.75rem 1.5rem;
        font-size: 1.25rem;
        line-height: 1.5;
    }
    .pagination-lg .page-item:first-child .page-link {
        border-start-start-radius: 0.3rem;
        border-end-start-radius: 0.3rem;
    }
    .pagination-lg .page-item:last-child .page-link {
        border-start-end-radius: 0.3rem;
        border-end-end-radius: 0.3rem;
    }

    .pagination-sm .page-link {
        padding: 0.25rem 0.5rem;
        font-size: 0.875rem;
        line-height: 1.5;
    }
    .pagination-sm .page-item:first-child .page-link {
        border-start-start-radius: 0.2rem;
        border-end-start-radius: 0.2rem;
    }
    .pagination-sm .page-item:last-child .page-link {
        border-start-end-radius: 0.2rem;
        border-end-end-radius: 0.2rem;
    }
}
/* ----------------------------------- */

/* : Card : */
.card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: var(--surface-bg);
    background-clip: border-box;
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    transition: all 0.15s var(--transition-function-1);
    overflow: hidden;
}
.card-header {
    padding: 0.75rem;
    margin-bottom: 0;
    background-color: var(--header-bg);
    border-bottom: 1px solid var(--border);
}
.card-title {
    font-size: var(--text-lg);
    font-weight: 600;
    margin-bottom: 1rem
}
.card-body {
    padding: 1rem;
}
.card.extra-padding .card-body {
    padding: 1.5rem;
}
.card-footer {
    padding: 1rem;
    border-top: 1px solid var(--border);
}
.card.extra-padding .card-footer {
    padding: unset;
    padding-top: 1.5rem;
    padding-bottom: 0;
}
.card-footer:last-child {
    border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
}

/* ----------------------------------- */

/* : Tickets : */
.posted-by {
    background-color: color-mix(in srgb, var(--accent), transparent 80%);
    padding: 0.5rem 1rem;
}
.ticket-reply {
    background-color: color-mix(in srgb, var(--accent), transparent 80%);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    overflow: hidden;
}
.ticket-message {
    line-height: 1.6;
}
.ticket-message p:not(:last-child) {
    margin-bottom: 1rem;
}
.attachment-list {
    list-style: none;
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
    gap: 1rem;
}
.attachment-list .attachment-item {
    background-color: color-mix(in srgb, var(--accent), transparent 80%);
    border-radius: var(--radius-md);
    padding: 1rem;
    transition: all 0.15s var(--transition-function-1);
}
.attachment-list .attachment-item:hover {
    background-color: color-mix(in srgb, var(--accent), transparent 60%);
}
.attachment-list .attachment-item figure {
    margin-bottom: 0.5rem
}
.recent-ticket {
    overflow: hidden;
    width: 100%;
}
.recent-ticket > small {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 0.25rem;
}
/* ----------------------------------- */

/* : Container sub headging : */
.container-sub-heading {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}
.container-sub-heading svg {
    width: 18px;
    margin-top: 4px;
    margin-inline-start: -1px;
}
.container-sub-heading span {
    font-size: var(--text-base);
    font-weight: 600;
    color: var(--foreground);
}
.container-sub-heading.has-line::before {
    position: absolute;
    content: '';
    inset-inline-start: 1px;
    top: 35px;
    width: 2px;
    bottom: 6px;
    border-left: 2px dashed var(--border);
    opacity: 0.8;
}
/* ----------------------------------- */

/* Domain Container */
.domain-container {
    border-bottom: 2px dashed var(--border);
    border-radius: 12px;
}
.domain-container .content {
    padding: 1.5rem;
}
/* ----------------------------------- */

/* : Modals : */

.modal {
    position: fixed;
    top: 0;
    inset-inline-start: 0;
    z-index: 1050;
    display: none;
    width: 100%;
    height: 100%;
    overflow: hidden;
    outline: 0;
    padding: 1rem 0;
}
.modal-dialog {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 1rem;
}
.modal-content {
    position: relative;
    background-color: var(--background);
    width: 400px;
    max-width: 500px;
    padding: 1.5rem;
    border-radius: var(--radius-md);
    border: 1px solid var(--border);
    display: flex;
    flex-direction: column;
    row-gap: 2rem;
}
.modal.wide-modal .modal-content {
    width: 600px;
    max-width: 600px;
    overflow-y: auto;
}
@media (max-width: 1199.98px) {
    .modal-content,
    .modal.wide-modal .modal-content {
        width: calc(100% - 2rem);
        max-width: 100%;
    }
}
.modal-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}
.modal-title {
    font-size: var(--text-lg);
    font-weight: 600;
}
.modal .close-btn {
    position: absolute;
    top: 0.5rem;
    inset-inline-end: 0.5rem;
}
@media (max-width: 1199.98px) {
    .modal-body {
        max-height: 400px;
        overflow-y: auto;
        overflow-x: hidden;
    }
}

.modal-footer {
    display: flex;
    justify-content: flex-end;
    column-gap: 0.5rem;
}

.modal-backdrop {
    position: fixed;
    top: 0;
    inset-inline-start: 0;
    z-index: 1040;
    width: 100vw;
    height: 100vh;
    background-color: var(--extracted-color-53);
}
.modal-backdrop.fade {
    opacity: 0;
}
.modal-backdrop.show {
    opacity: 0.5;
}
/* ----------------------------------- */

/* : Page not found : */
.pnf-page .title {
    font-size: 2rem;
    color: var(--foreground);
    margin-bottom: .5rem;
}
.pnf-page .text {
    font-size: 1rem;
}
/* ----------------------------------- */

/* : view-cart-container : */
.view-cart-container {
    min-height: 300px;
    padding-block: 20px;
}
.view-cart-empty {
    display: flex;
    flex-direction: column;
    align-items: center
}
.view-cart-empty .cart-icon {
    width: 100px;
    height: 100px;
    margin-bottom: 2rem;
}
.view-cart-empty .title {
    color: var(--foreground);
    font-size: 1.5rem;
    margin-bottom:.5rem;
}
.view-cart-empty .text {
    color: var(--muted-foreground);
    margin-bottom: 2rem;
    max-width: 460px;
}
/* ----------------------------------- */

/* ==========================
   Document Page
========================== */

.page-document{
    background: var(--card);
    border: 1px solid var(--border);
    border-radius: 18px;
    padding: 50px;
    color: var(--foreground);
}

.page-document-content{
    width: 100%;
    color: var(--foreground);
    font-size: 16px;
    line-height: 1.9;
}

.page-document-content h1{
    margin: 0 0 35px;
    font-size: 34px;
    font-weight: 700;
    line-height: 1.2;
    color: var(--foreground);
}

.page-document-content h2{
    margin: 45px 0 18px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--border);
    font-size: 24px;
    font-weight: 700;
    color: var(--foreground);
}

.page-document-content h3{
    margin: 30px 0 15px;
    font-size: 20px;
    font-weight: 600;
}

.page-document-content p{
    margin: 0 0 20px;
}

.page-document-content ul,
.page-document-content ol{
    margin: 0 0 25px;
    padding-left: 24px;
}

.page-document-content li{
    margin-bottom: 5px;
}

.page-document-content strong{
    font-weight: 600;
    color: var(--foreground);
}

.page-document-content a{
    color: var(--primary);
    text-decoration: none;
}

.page-document-content a:hover{
    text-decoration: underline;
}

.page-document-content table{
    width: 100%;
    border-collapse: collapse;
    margin: 25px 0;
}

.page-document-content table td,
.page-document-content table th{
    border: 1px solid var(--border);
    padding: 14px;
}

.page-document-content hr{
    border: 0;
    border-top: 1px solid var(--border);
    margin: 40px 0;
}

.page-document-content blockquote{
    margin: 25px 0;
    padding: 20px;
    border-left: 4px solid var(--primary);
    background: var(--surface-bg);
    border-radius: 10px;
}

/* убираем отступ у первого заголовка */

.page-document-content h2:first-child,
.page-document-content h3:first-child{
    margin-top: 0;
}

/* Mobile */

@media (max-width: 768px){

    .page-document{
        padding: 24px;
        border-radius: 14px;
    }

    .page-document-content{
        font-size: 15px;
        line-height: 1.8;
    }

    .page-document-content h1{
        font-size: 28px;
    }

    .page-document-content h2{
        font-size: 22px;
    }

    .page-document-content h3{
        font-size: 18px;
    }

}

