/* Generated by build-overrides.py from twenty-one/css/theme.min.css. Do not edit by hand. */
a{color:#1e4fd8}
a:hover{color:#173da8}
.table-primary,.table-primary>td,.table-primary>th{background-color:#c8d7f7}
.table-primary tbody+tbody,.table-primary td,.table-primary th,.table-primary thead th{border-color:#8aa7ec}
.table-hover .table-primary:hover{background-color:#b3c7f3}
.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#b3c7f3}
.form-control:focus{border-color:#7c9cec;box-shadow:0 0 0 .2rem rgba(30,79,216,.25)}
.btn.focus,.btn:focus{box-shadow:0 0 0 .2rem rgba(30,79,216,.25)}
.btn-primary{background-color:#1e4fd8;border-color:#1e4fd8}
.btn-primary:hover{background-color:#1943b8;border-color:#183fad}
.btn-primary.focus,.btn-primary:focus{background-color:#1943b8;border-color:#183fad;box-shadow:0 0 0 .2rem rgba(64,105,222,.5)}
.btn-primary.disabled,.btn-primary:disabled{background-color:#1e4fd8;border-color:#1e4fd8}
.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{background-color:#183fad;border-color:#173da8}
.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(64,105,222,.5)}
.btn-success{color:#0f172a;background-color:#f59e0b;border-color:#f59e0b}
.btn-success:hover{color:#0f172a;background-color:#d97706;border-color:#d97706}
.btn-success.focus,.btn-success:focus{color:#0f172a;background-color:#d97706;border-color:#d97706;box-shadow:0 0 0 .2rem rgba(245,158,11,.5)}
.btn-success.disabled,.btn-success:disabled{color:#0f172a;background-color:#f59e0b;border-color:#f59e0b}
.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#0f172a;background-color:#d97706;border-color:#b45309}
.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(245,158,11,.5)}
.btn-outline-primary{color:#1e4fd8;border-color:#1e4fd8}
.btn-outline-primary:hover{background-color:#1e4fd8;border-color:#1e4fd8}
.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(30,79,216,.5)}
.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#1e4fd8}
.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{background-color:#1e4fd8;border-color:#1e4fd8}
.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(30,79,216,.5)}
.btn-outline-success{color:#f59e0b;border-color:#f59e0b}
.btn-outline-success:hover{color:#0f172a;background-color:#f59e0b;border-color:#f59e0b}
.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(245,158,11,.5)}
.btn-outline-success.disabled,.btn-outline-success:disabled{color:#f59e0b}
.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#0f172a;background-color:#f59e0b;border-color:#f59e0b}
.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(245,158,11,.5)}
.btn-link{color:#1e4fd8}
.btn-link:hover{color:#173da8}
.dropdown-item.active,.dropdown-item:active{background-color:#1e4fd8}
.custom-control-input:checked~.custom-control-label::before{border-color:#1e4fd8;background-color:#1e4fd8}
.custom-control-input:focus~.custom-control-label::before{box-shadow:0 0 0 .2rem rgba(30,79,216,.25)}
.custom-control-input:focus:not(:checked)~.custom-control-label::before{border-color:#7c9cec}
.custom-control-input:not(:disabled):active~.custom-control-label::before{background-color:#b4c8f4;border-color:#b4c8f4}
.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::before{border-color:#1e4fd8;background-color:#1e4fd8}
.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(30,79,216,.5)}
.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label::before{background-color:rgba(30,79,216,.5)}
.custom-radio .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(30,79,216,.5)}
.custom-switch .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(30,79,216,.5)}
.custom-select:focus{border-color:#7c9cec;box-shadow:0 0 0 .2rem rgba(30,79,216,.25)}
.custom-file-input:focus~.custom-file-label{border-color:#7c9cec;box-shadow:0 0 0 .2rem rgba(30,79,216,.25)}
.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(30,79,216,.25)}
.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(30,79,216,.25)}
.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(30,79,216,.25)}
.custom-range::-webkit-slider-thumb{background-color:#1e4fd8}
.custom-range::-webkit-slider-thumb:active{background-color:#b4c8f4}
.custom-range::-moz-range-thumb{background-color:#1e4fd8}
.custom-range::-moz-range-thumb:active{background-color:#b4c8f4}
.custom-range::-ms-thumb{background-color:#1e4fd8}
.custom-range::-ms-thumb:active{background-color:#b4c8f4}
.nav-pills .nav-link.active,.nav-pills .show>.nav-link{background-color:#1e4fd8}
.page-link{color:#1e4fd8}
.page-link:hover{color:#173da8}
.page-link:focus{box-shadow:0 0 0 .2rem rgba(30,79,216,.25)}
.page-item.active .page-link{background-color:#1e4fd8;border-color:#1e4fd8}
.badge-primary{background-color:#1e4fd8}
a.badge-primary:focus,a.badge-primary:hover{background-color:#183fad}
a.badge-primary.focus,a.badge-primary:focus{box-shadow:0 0 0 .2rem rgba(30,79,216,.5)}
.alert-primary{color:#13308a;background-color:#dbe5fb;border-color:#c8d7f7}
.alert-primary hr{border-top-color:#b3c7f3}
.alert-primary .alert-link{color:#0b1f5c}
.progress-bar{background-color:#1e4fd8}
.list-group-item.active{background-color:#1e4fd8;border-color:#1e4fd8}
.list-group-item-primary{color:#13308a;background-color:#c8d7f7}
.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#13308a;background-color:#b3c7f3}
.list-group-item-primary.list-group-item-action.active{background-color:#13308a;border-color:#13308a}
.bg-primary{background-color:#1e4fd8!important}
a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#183fad!important}
.border-primary{border-color:#1e4fd8!important}
.text-primary{color:#1e4fd8!important}
a.text-primary:focus,a.text-primary:hover{color:#173da8!important}
header.header .topbar{background-color:#0f172a}
footer.footer{background-color:#0f172a}
.input-group .btn-reveal-pw:active,.input-group .btn-reveal-pw:hover{color:#1e4fd8}
.status-onhold{background-color:#1e4fd8}
.status-payment-pending{background-color:#1e4fd8}
.status-delivered{background-color:#1e4fd8}
.sidebar .list-group-item.active,.sidebar .list-group-item.active:focus,.sidebar .list-group-item.active:hover{background-color:#1e4fd8;border-color:#1e4fd8}
.home-domain-search .input-group-wrapper .advanced-input .btn-success{background-color:#f59e0b;border-color:#f59e0b}
.upgrade .products .product .header{background-color:#1943b8}
.upgrade .products .product .btn{background-color:#1943b8}
.domain-pricing .tld-pricing-header div:nth-child(odd){border-color:#1e4fd8}
.page-item.active .page-link,.pagination>.active>a,.pagination>.active>a:focus,.pagination>.active>a:hover,.pagination>.active>span,.pagination>.active>span:focus,.pagination>.active>span:hover{background-color:#1e4fd8;border-color:#1e4fd8}

/* *****************************************************
    SiteB4U by Sleek Web Designs - portal theme overrides
    Child theme: templates/swd (parent: twenty-one)

    Built from brand/theme/ in the siteb4u.com project:
      custom-manual.css          hand-written rules (this part)
      generated-overrides.css    color remap of twenty-one's theme.min.css
                                 (rebuild with build-overrides.py after WHMCS updates)

    Palette A "Tech Blue": primary #1E4FD8, secondary #0EA5E9,
    accent #F59E0B (always with navy text), dark #0F172A, light #F8FAFC.
***************************************************** */

/* ---------- Fonts (self-hosted Poppins, OFL) ---------- */
@font-face {
    font-family: "Poppins";
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url("../fonts/poppins-600.woff2") format("woff2");
}
@font-face {
    font-family: "Poppins";
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url("../fonts/poppins-700.woff2") format("woff2");
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6,
.card-title,
.btn,
.navbar-nav .nav-link {
    font-family: "Poppins", "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
}
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6,
.card-title {
    font-weight: 600;
    color: #0f172a;
}
.btn {
    font-weight: 600;
}

/* ---------- Outline action buttons: dark amber text (5.0:1 on white) ---------- */
.btn-outline-success,
.btn-outline-success.disabled,
.btn-outline-success:disabled {
    color: #b45309;
    border-color: #f59e0b;
}

/* ---------- Links ---------- */
a:hover,
a:focus {
    color: #173da8;
}

/* ---------- Header ---------- */
header.header .topbar,
header.header .topbar .btn,
header.header .topbar .active-client .btn {
    color: rgba(255, 255, 255, .8);
}
header.header .toolbar .nav-link {
    border-color: #dbe5fb;
    color: #1e4fd8;
}
header.header .toolbar .nav-link:hover {
    background-color: #eef3fe;
}
header.header .toolbar .nav-link .badge,
header.header .toolbar .badge-info {
    background-color: #1e4fd8;
    color: #fff;
}
.navbar-light .navbar-nav .nav-link:hover,
.navbar-light .navbar-nav .nav-link:focus,
.navbar-light .navbar-nav .active > .nav-link {
    color: #1e4fd8;
}

/* ---------- Breadcrumb bar ---------- */
.master-breadcrumb {
    background-color: #eef3fe;
}
.master-breadcrumb .breadcrumb {
    background-color: transparent;
}
.master-breadcrumb .breadcrumb-item.active {
    color: #0f172a;
}

/* ---------- Sidebar on phones: same title size as desktop (stock h3 is 28px) ---------- */
.sidebar-collapsed .panel-title {
    font-size: 1rem;
}

/* ---------- Homepage ---------- */
.primary-bg-color {
    background-color: #f8fafc;
}
.home-domain-search {
    background-image: linear-gradient(180deg, #eef3fe 0%, #f8fafc 100%);
}
.home-domain-search .input-group-wrapper {
    border-color: #c8d7f7;
    box-shadow: 0 6px 24px rgba(30, 79, 216, .08);
}
.card-accent-teal { border-top-color: #1e4fd8; }
.card-accent-pomegranate { border-top-color: #0ea5e9; }
.card-accent-sun-flower { border-top-color: #f59e0b; }
.card-accent-asbestos { border-top-color: #0f172a; }
.card-accent-green { border-top-color: #1e4fd8; }

/* ---------- Footer ---------- */
footer.footer,
footer.footer .nav-link,
footer.footer .copyright {
    color: #cbd5e1;
}
footer.footer .nav-link:hover,
footer.footer .nav-link:focus {
    color: #fff;
}
footer.footer .btn {
    background-color: rgba(255, 255, 255, .08);
    color: #fff;
}
footer.footer .btn:hover {
    background-color: rgba(255, 255, 255, .16);
}

/* ---------- Order form: legacy_boxes product list ---------- */
/* Order-form CSS loads after this file, so these rules are prefixed with "body" to win. */
body #order-boxes .fields-container {
    border-top-color: #0ea5e9;
    border-bottom-color: #0ea5e9;
}
body #order-boxes .fields-container .field-row:nth-child(odd) {
    background-color: #f8fafc;
    color: #0f172a;
}
body #order-boxes .fields-container .field-row:nth-child(even) {
    background-color: #eef3fe;
    color: #0f172a;
}
body #order-boxes .secure-warning {
    border-top-color: #fcd34d;
    border-bottom-color: #fcd34d;
    background-color: #fef3c7;
    color: #0f172a;
}

/* ---------- Order form: standard_cart ---------- */
body #order-standard_cart .sub-heading span,
body #order-standard_cart .sub-heading-borderless span {
    color: #1e4fd8;
}
body #order-standard_cart .view-cart-items-header,
body #order-standard_cart .empty-cart .btn {
    background-color: #1e4fd8;
}
body #order-standard_cart .view-cart-items {
    border-bottom-color: #1e4fd8;
}
body #order-standard_cart .order-summary {
    background-color: #0f172a;
    border-bottom-color: #0f172a;
}
body .domain-checker-container {
    background: linear-gradient(180deg, #fcd34d 0%, #f59e0b 100%);
}
body #order-standard_cart .mc-promo,
body .product-recommendations .product-recommendation {
    border-bottom-color: #1e4fd8;
}
body .product-recommendations .product-recommendation .btn-add {
    background-color: #1e4fd8;
    color: #fff;
}
body .product-recommendations .product-recommendation .expander {
    color: #1e4fd8;
}

/* ---------- Warning text and buttons in brand amber ---------- */
/* Bootstrap's #ffc107 text is 1.6:1 on white; dark amber is 5.0:1. */
.text-warning {
    color: #b45309 !important;
}
.btn-warning {
    background-color: #f59e0b;
    border-color: #f59e0b;
    color: #0f172a;
}
.btn-warning:hover,
.btn-warning:focus,
.btn-warning:not(:disabled):not(.disabled):active {
    background-color: #d97706;
    border-color: #d97706;
    color: #0f172a;
}

/* ---------- Homepage icons: SiteB4U 3D icon set (img/icons/*.webp) ---------- */
/* Matched by link so no template override is needed; any tile or card not listed keeps the stock icon. */
.action-icon-btns a:is([href$="announcements"], [href$="serverstatus.php"], [href$="knowledgebase"], [href$="/download"], [href$="downloads"], [href$="submitticket.php"], [href$="clientarea.php"], [href*="action=services"], [href*="action=domains"], [href$="supporttickets.php"], [href*="action=masspay"]) .ico-container {
    width: 72px;
    height: 72px;
    margin: 6px auto 10px;
    background: center / contain no-repeat;
    transition: transform .3s ease;
}
.action-icon-btns a:is([href$="announcements"], [href$="serverstatus.php"], [href$="knowledgebase"], [href$="/download"], [href$="downloads"], [href$="submitticket.php"], [href$="clientarea.php"], [href*="action=services"], [href*="action=domains"], [href$="supporttickets.php"], [href*="action=masspay"]) .ico-container i {
    display: none;
}
.action-icon-btns a:hover .ico-container {
    transform: scale(1.08);
}
.action-icon-btns a {
    color: #0f172a;
}
.action-icon-btns a:hover {
    color: #1e4fd8;
}
.action-icon-btns a[href$="announcements"] .ico-container { background-image: url("../img/icons/tile-announcements.webp"); }
.action-icon-btns a[href$="serverstatus.php"] .ico-container { background-image: url("../img/icons/tile-network-status.webp"); }
.action-icon-btns a[href$="knowledgebase"] .ico-container { background-image: url("../img/icons/tile-knowledgebase.webp"); }
.action-icon-btns a:is([href$="/download"], [href$="downloads"]) .ico-container { background-image: url("../img/icons/tile-downloads.webp"); }
.action-icon-btns a[href$="submitticket.php"] .ico-container { background-image: url("../img/icons/tile-submit-ticket.webp"); }
.action-icon-btns a[href$="clientarea.php"] .ico-container { background-image: url("../img/icons/tile-your-account.webp"); }
.action-icon-btns a[href*="action=services"] .ico-container { background-image: url("../img/icons/tile-manage-services.webp"); }
.action-icon-btns a[href*="action=domains"] .ico-container { background-image: url("../img/icons/tile-manage-domains.webp"); }
.action-icon-btns a[href$="supporttickets.php"] .ico-container { background-image: url("../img/icons/tile-support-requests.webp"); }
.action-icon-btns a[href*="action=masspay"] .ico-container { background-image: url("../img/icons/tile-make-payment.webp"); }
.card-accent-midnight-blue { border-top-color: #0f172a; }

/* Service cards: icon above the title, matched by the card's button link (needs :has, all current browsers). */
.card-columns.home .card-body:has(> a:is([href$="/store/ssd-web-hosting"], [href$="/store/basic-account"], [href$="/store/idx"], [href*="domain=register"], [href*="domain=transfer"]))::before {
    content: "";
    display: block;
    width: 112px;
    height: 112px;
    margin: 0 auto 12px;
    background: center / contain no-repeat;
}
.card-columns.home .card-body:has(> a[href$="/store/ssd-web-hosting"])::before { background-image: url("../img/icons/group-ssd-web-hosting.webp"); }
.card-columns.home .card-body:has(> a[href$="/store/basic-account"])::before { background-image: url("../img/icons/group-basic-account.webp"); }
.card-columns.home .card-body:has(> a[href$="/store/idx"])::before { background-image: url("../img/icons/group-idx.webp"); }
.card-columns.home .card-body:has(> a[href*="domain=register"])::before { background-image: url("../img/icons/group-register-domain.webp"); }
.card-columns.home .card-body:has(> a[href*="domain=transfer"])::before { background-image: url("../img/icons/group-transfer-domain.webp"); }

/* ---------- Order form swd_boxes: product icon per row ---------- */
body #order-boxes .product-radio {
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 0;
    padding: 6px 0;
    width: 100%;
    cursor: pointer;
}
body #order-boxes .product-radio input[type=radio] {
    flex: 0 0 auto;
    margin: 0;
}
body #order-boxes .swd-product-icon {
    flex: 0 0 56px;
    width: 56px;
    height: 56px;
    object-fit: contain;
}
body #order-boxes .swd-product-text {
    flex: 1 1 auto;
}

/* ---------- Header logo ---------- */
/* The header always loads /assets/img/logo.png (also used for invoice PDFs, 964px).
   Show the lighter header version from a fresh URL instead; browsers that do not
   support content on images keep showing logo.png, which is the same new logo. */
header.header .logo-img {
    content: url("../img/siteb4u-logo-header.png");
}

/* ---------- Footer (swd/footer.tpl) ---------- */
footer.footer.swd-footer {
    /* 80px bottom keeps the copyright clear of the reCAPTCHA badge (stock value) */
    padding: 56px 0 80px;
}
.swd-footer__columns {
    row-gap: 28px;
}
.swd-footer__logo img {
    width: 200px;
    height: auto;
}
.swd-footer__tagline {
    max-width: 320px;
    margin: 16px 0 12px;
    color: #cbd5e1;
    line-height: 1.6;
}
.swd-footer__social {
    margin: 0;
}
.swd-footer__heading {
    margin: 0 0 12px;
    color: #fff;
    font-size: .8rem;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.swd-footer__col li {
    margin-bottom: .45rem;
}
.swd-footer__col a,
.swd-footer__legal {
    color: #cbd5e1;
}
.swd-footer__col a:hover,
.swd-footer__col a:focus,
.swd-footer__legal:hover {
    color: #fff;
    text-decoration: underline;
}
.swd-footer__bottom {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 12px;
    margin-top: 36px;
    padding-top: 20px;
    border-top: 1px solid rgba(255, 255, 255, .12);
    color: #94a3b8;
    font-size: .85rem;
}
footer.footer.swd-footer .copyright {
    margin: 0;
    text-align: left;
}
@media (max-width: 767.98px) {
    .swd-footer__brand {
        text-align: center;
    }
    .swd-footer__tagline {
        margin-left: auto;
        margin-right: auto;
    }
    .swd-footer__bottom {
        justify-content: center;
        text-align: center;
    }
}

/* "Powered by WHMCompleteSolution" is added by WHMCS and must stay visible
   (license has no Branding Removal); keep it small and quiet. */
#main-body p:has(> a[href*="whmcs.com"]) {
    margin: 24px 0 0;
    color: #64748b;
    font-size: .8rem;
}
#main-body p:has(> a[href*="whmcs.com"]) a {
    color: #64748b;
}
