/* *****************************************************

    ** Custom Stylesheet **

    Any custom styling you want to apply should be
    defined here.

***************************************************** */
html {
    font-size: 1rem;
    scrollbar-gutter: stable;
}
body.modal-open {
    padding-right: 0 !important;
}

body, button, input, select, textarea {
    font-family: Arial,Helvetica,sans-serif;
    color: #333;
}
body {
    font-family: Arial,Helvetica,sans-serif;
    font-size: 1rem;
    line-height: 1.42857143;
    color: var(--tn-body-color);
    background-color: #fff;
    font-weight: normal;
}
label {
    font-size: .875em;
}
.text-green {
    color: #4CAF50;
}
.product-desc {
    padding-left: 20px !important;
}
.product-desc p:first-child {
    margin-bottom: 0;
    font-size: 14px;
}
.product-desc .ssl-desc {
    margin-bottom: 10px;
    font-size: 13px;
}
.product-desc .ssl-name {
    margin: 0;
    padding-top: 5px;
}
.product-desc .ssl-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.product-desc .ssl-price {
    font-size: 16px;
}
.product-desc .head-flex,
.product-info .head-flex {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 8px;
}
.product-desc .siteseal {
    height: 35px;
    width: auto;
    margin-left: 10px;
    cursor: pointer;
}
.product-desc .product-features {
    font-size: 14px;
}
section#header {
    margin: 0;
    padding: 0;
    background-color: #fff;
    border-radius: 0;
}
@media (min-width: 992px) {
    /* Bottom breathing room for the nav hover-underline: marketing shows a 4px gap between
       the bar's bottom and the dark boundary below (measured); the bar itself already hangs
       ~4px past the old header edge, so 8px total padding would double the gap — 4px lands
       the bar exactly 4px above #main-menu, matching marketing, without touching the
       underline's true offsets (text → 37px → bar). Desktop-only: the underline doesn't
       exist under 992px, and marketing's mobile header is exactly logo + 2×8px = 116px. */
    section#header { padding-bottom: 4px; }
}
section#header .logo img {
    max-height: 101px;
    width: 228px;
    display: inline-block;
    /* Symmetric 8/8 like marketing (navbar py .5rem, brand img margin 0): header row = 116px,
       logo centre == row centre == nav centre. Asymmetric 8/12 sat the nav 2px low. */
    margin-top: 8px;
    margin-bottom: 8px;
}
.topBar {
    padding: .25rem 0; /* BS5 .top-nav py-1 */
    max-height: 31px;  /* lock to the measured BS5 bar height (border 2 + navy 29) */
    background-color: var(--tn-dark);
    border-top: 2px solid #090b0f; /* BS5 $primary-dark-black-wash */
    width: 100%;
    color: #57677a;
    box-shadow: 0 .125rem .25rem rgba(0, 0, 0, .075); /* BS5 shadow-sm */
    position: relative;
    z-index: 3; /* let the shadow paint over the header content below */
    font-weight: 700; /* marketing body{font-weight:bold} (app.scss:43) — the whole bar computes 700 */
    /* Marketing body is Arial; WHMCS body is "Open Sans" (wider glyphs), which shifted the
       right-pinned links left-edge on desktop and the centred group on mobile. */
    font-family: Arial, Helvetica, sans-serif;
}
.topBar a {
    color: #fff;
}
/* Breadcrumb on the left, relocated portal links on the right — mirrors the new
   site's .top-nav (d-flex justify-content-between). Flex also contains the
   floated breadcrumb column so the bar height follows its content (BS5 py-1). */
.topBar .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
/* Portal links (login / register / cart / language / notifications) relocated
   from the white logo strip into the dark top bar, styled like the new site's
   .top-nav: white 13px links separated by thin vertical dividers, cart rendered
   as a plain link rather than the old dark button. */
.topBar ul.top-nav {
    display: flex;
    align-items: center;
    margin: 0;
    margin-left: auto; /* keep right-aligned even when the breadcrumb is hidden (xs) */
    padding: 0;
    float: none;
    list-style: none;
    white-space: nowrap;
}
.topBar ul.top-nav > li {
    display: flex;
    align-items: center;
    margin: 0;
    padding: 0;
    border-left: 0; /* drop the parent .primary-action #ddd divider */
}

.topBar ul.top-nav > li.vr {
    box-sizing: border-box;
    flex: 0 0 1px;          /* never let the flex row shrink/grow the hairline away */
    align-self: center;     /* deterministic — replaces stretch + auto vertical margins */
    width: 1px;
    height: 13px;           /* explicit height, not just min-height (which could collapse) */
    background-color: #ffffff;
    opacity: 0.25;
    margin: 0 4px;
}
.topBar ul.top-nav > li > a,
.topBar ul.top-nav > li > button,
.topBar ul.top-nav > li.primary-action > a.btn {
    display: block;
    padding: 0 5px;              /* marketing .top-nav a (was 10px — pushed the group 5px left) */
    color: #fff;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    font-family: inherit;        /* buttons don't inherit the body font */
    font-size: 13px;
    font-weight: inherit;
    line-height: 1.6;
    text-decoration: none;
    cursor: pointer;
}
.topBar ul.top-nav > li > a:hover,
.topBar ul.top-nav > li > button:hover,
.topBar ul.top-nav > li.primary-action > a.btn:hover {
    color: #fff;
    background: transparent;
    text-decoration: underline;
    text-underline-offset: 5px;
}
.topBar ul.top-nav > li > button:focus-visible,
.topBar ul.top-nav > li.primary-action > a.btn:focus-visible {
    outline: 1px auto -webkit-focus-ring-color;
    outline-offset: 1px;
}
.pull-right {
    float: right;
}
.pull-right {
    float: right !important;
}
.position-relative {
    position: relative;
}
.position-absolute {
    position: absolute;
}
.generate-password {
    position: absolute;
    right: 10px;
    top: 5px;
}
.topbar_icon {
    margin-top: 5px;
    margin-right: 10px;
    color: #57677A;
    font-size: 18px;
}
/* Breadcrumb — recreated from the BS5 .top-nav ol.breadcrumb design.
   Resets Bootstrap 3's boxed .breadcrumb (bg/padding/radius/"/" divider). */
.topBar .breadcrumb {
    font-family: Arial, Helvetica, sans-serif;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: 0;
    padding: 0;
    background: transparent;
    border-radius: 0;
    list-style: none;
    font-size: 13px; /* BS5 $font-size-xs within .top-nav */
    line-height: 1.6;
}
.topBar .breadcrumb-item > a {
    color: #fff;
    padding: 0 5px;
    text-decoration: none;
    transition: none;
}
.topBar .breadcrumb-item > a:hover {
    text-decoration: underline;
    text-underline-offset: 5px;
}
.topBar .breadcrumb-item.active {
    color: #8b9aad; /* BS5 $breadcrumb-active-color ($secondaryLightColor) */
}
.topBar .breadcrumb-item + .breadcrumb-item {
    padding-left: .5rem;
}
/* Replace BS3's "/" divider with the BS5 SVG chevron (fill #6c757d). */
.topBar .breadcrumb-item + .breadcrumb-item::before {
    float: left;
    padding: 0 .5rem 0 0;
    color: #6c757d;
    content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="8" height="8"><path d="M2.5 0L1 1.5 3.5 4 1 6.5 2.5 8l4-4-4-4z" fill="%236c757d"/></svg>');
}
.navbar-main {
    background-color: var(--tn-dark);
    border: 1px solid #090b0f; /* match the top-nav bar (.topBar) so both navy bars read as one system */
    font-size: 13px;
}
/* Container parity with the BS5 site (was BS3 750/970/1170, no >=1400 tier).
   width:100% neutralizes BS3's fixed widths so the max-width tiers cap cleanly.
   Padding matches the new site's 12px, but only from 576px up: below that the
   container is full-width, and 12px against BS3's -15px row gutters would push
   rows 3px past the viewport (horizontal scrollbar). Keeping BS3's 15px on mobile
   avoids that; at >=576px the capped container's auto-margins absorb the 3px.
   Aligns the logo, top banner, main body and footer columns to the new site. */
.container { width: 100%; }
@media (min-width: 576px)  { .container { max-width: 540px;  padding-left: 12px; padding-right: 12px; } }
@media (min-width: 768px)  { .container { max-width: 720px; } }
@media (min-width: 992px)  { .container { max-width: 960px; } }
@media (min-width: 1200px) { .container { max-width: 1140px; } }
@media (min-width: 1400px) { .container { max-width: 1320px; } }
.navbar-main .navbar-nav>.active>a, .navbar-main .navbar-nav>.active>a:focus, .navbar-main .navbar-nav>.active>a:hover, .navbar-main .navbar-nav>.open>a, .navbar-main .navbar-nav>.open>a:focus, .navbar-main .navbar-nav>.open>a:hover, .navbar-main .navbar-nav>li>a:focus, .navbar-main .navbar-nav>li>a:hover {
    color: #eee;
    background-color: #19212b;
}
/* Sticky footer — marketing parity (body d-flex flex-column min-vh-100 + footer mt-auto).
   Replaces the old padding-bottom/negative-margin trick, whose magic number had to equal
   the footer height exactly and drifted a fractional pixel at browser zoom (289 "worked"
   at 150% — a scale-rounding artifact, not a real value). margin-top:auto needs no number:
   the footer sits after the content, or at the viewport bottom on short pages, at any zoom.
   The body flex rules live in the body block further down (near html{height:100%}). */
.wrapper_footer {
    margin-top: auto;
}
/* VAT note — BS5 .footer-vat-note: muted light text on the dark footer,
   separated from the columns by a container-width divider. */
.allPrices {
    background-color: var(--tn-dark);
    color: rgba(255, 255, 255, .5);
    text-align: center;
    margin: 0;
    font-size: .885em; /* BS5 .footer-vat-note 0.72rem (html is 10px here, so use px) */
    font-weight: 300;
}
.allPrices .container {
    border-top: 1px solid #19222b;
}
.allPrices p {
    margin: 0;
    font-size: .72rem;
    line-height: 18px;   /* integer line box (was 1.6 × 11.52px = 18.421875), matches marketing
                            .footer-vat-note pin — with every footer line box integer, all internal
                            offsets are whole px and the 290px footer shifts only as one unit */
    color: #ffffff80;
    font-weight: 300;
}
.footer {
    background-color: var(--tn-dark);
    color: #fff;
    padding: 15px 0px;
    font-weight: 600; /* BS5 footer inherits the bold body; set manually here (as on .topBar) */
    padding-bottom: 2rem;   /* must stay an INTEGER px value (2rem = 32px): with the ANPC column
                               in row 1 (bottom 168) this puts the .allPrices divider at exactly
                               200 like marketing. Fractional values (e.g. 1.95rem = 31.2px) land
                               the price disclaimer on a sub-pixel Y and re-rasterize its text. */
}
/* The footer columns are floated directly in .container with no .row wrapper, so
   uneven column heights make the BS3 floats snag and stagger. Flex lays the
   %-width cols out in clean wrapping rows regardless of height (the new BS5 footer
   is a flex .row too). align-items:flex-start keeps each column top-aligned. */
.footer .container {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
}
.fs25 {
    font-size: 13px;
}
.pb-3 {
    padding-bottom: 1rem !important;
}
.footer .col {
    margin-right: 4px;   /* load-bearing for marketing parity: BS3 cols resolve % against the
                            container's CONTENT box (1296 → 216px), marketing's BS5 cols against
                            the full container (1320 → 220px); the 4px restores the 220 rhythm so
                            the column headings align with marketing at every width. */
}
/* 992–1199: BS3 has no lg tier here (col-lg-* starts at 1200), so the text columns fall
   back to col-sm-4 (33%) and wrap the footer into two rows — marketing's col-lg-* applies
   from 992 and keeps one row. Recreate the lg widths for this band; with the 4px margins
   the headings land on marketing's exact 160px rhythm (156 + 4). */
@media (min-width: 992px) and (max-width: 1199px) {
    .footer .col { width: 16.66666667%; }
    .footer .col.col-lg-3 { width: 25%; }
}

/* ANPC/SOL badges: full-width centered block on mobile (matches the new site's
   col-12 + align-items-center), a bit larger than before, capped to the column
   on very narrow screens. gap adds a little breathing room between the two. */
.footer-anpc {
    gap: 8px;
    display: flex;
    flex-direction: column;
    align-items: end;
    margin-top: 9px;
    margin-right: 0;
}
.footer .footer-anpc-img {
    height: 68px;
    width: auto;
}

@media (min-width: 992px) {
    /* Fill the space left after the four text columns instead of a fixed width.
       flex-basis 0 means this column can NEVER overflow the flex line, so it never
       wraps to a second row (a tuned width like 23.7666% overflowed by ~2px at
       container 1140 — i.e. at 150% browser zoom — wrapping the badges and growing
       the footer to 436.8px vs marketing's 290.8125). Growing into the remaining
       space puts the column's right edge at the container's content edge, and
       align-items:end then pins the images at container − 12px, exactly like
       marketing's col-lg-3 + gutter, at every container width. */
    .footer-anpc {
        flex: 1 1 0;
        min-width: 0;
        width: auto;   /* neutralize BS3 .col-sm-3/.col-lg-3 width so the flex basis rules */
    }
}
/* Footer links & headings — BS5 footer visual state (13px lowercase links,
   hover underline; column titles sized like the BS5 <h5>). */
.footer a {
    font-size: 13px;
    text-transform: lowercase;
    text-decoration: none;
}
.footer a:hover {
    text-decoration: underline;
    text-underline-offset: 5px;
}
.footer .fs25 {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 1.25rem;
    margin-bottom: 8px;
    margin-top: 9px;
    font-weight: 500;
    line-height: 1.2;
}
.footer a.nav-link {
    display: block;
    font-size: 13px;
    color: white;
    padding: 0;
    text-transform: lowercase;
    background: none;
    border: 0;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
    height: 21px;
    line-height: 21px;
    margin-right: 20px;
}
.footer a:link, .footer a:hover, .footer a:active, .footer a:visited {
    color: #fff;
}
.footer2 a:link, .footer2 a:hover, .footer2 a:active, .footer2 a:visited {
    color: #fff;
}
.footer span {
    display: block;
}
.footer2 {
    background-color: var(--tn-dark);
    border-top: 1px solid #19222b;
    font-weight: 600;
}
/* Copyright row — mirrors the new site's
   .d-flex.flex-column.flex-sm-row.justify-content-between.py-2: stacked and
   left-aligned on mobile, split to opposite ends in a row from 576px up. */
.footer2 .d-flex {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 8px 0; /* new site py-2 (.5rem) */
}
.nopadding {
    padding: 0px !important;
}
.allPrices .price-disclaimer {
    padding-top: 1rem;
    padding-bottom: 1rem;
}
.copyright {
    color: #fff;
    font-size: 14px;
    line-height: 22px;   /* integer line box (was 1.6 × 14px = 22.390625), matches marketing
                            footer .copyright p pin — see .allPrices p above */
    padding: 0;
    margin: 0; /* new site .copyright p my-0 */
}
.copyright a {
    text-decoration: none;
}
.copyright a:hover {
    text-decoration: underline;
    text-underline-offset: 5px;
}
.navbar-main li.account {
    background-color: #24900b;
}
ul.top-nav>li.primary-action>a.btn {
    background-color: var(--tn-dark);
}
body #order-standard_cart {
    font-size: inherit;
}
#order-standard_cart #frmCheckout .prepend-icon .field-icon {
    height: 40px;
    line-height: 40px;
}
#paymentGatewaysContainer .icheckbox_square-blue, #paymentGatewaysContainer .iradio_square-blue {
    height: 25px;
}
#order-standard_cart .field, #order-standard_cart .form-control {
    width: 95% !important;
}
#order-standard_cart .transfer-epp-code {
    padding: 10px;
    border: 1px solid var(--tn-border);
    border-radius: var(--tn-radius);
    background: var(--tn-surface-soft);
    margin: 15px 0;
}
#frmConfigureDomains > .row {
    margin-bottom: 10px;
}
#spotlightTlds .spotlight-tld-container .spotlight-tld {
  height: auto;
}
#spotlightTlds .spotlight-tld-container .spotlight-tld .spotlight-tld-hot{
    padding: 0 4px 0 4px;
    top: 0;
    right: calc((100% - 60px) / 2);
    background-color: #15579c;
    transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    font-size: 0.5rem;
    border-radius: 0 0 5px 5px;
}
.spotlight-tld .btn:not(.domain-contact-support) {
    margin: 0 auto;
}
.suggested-domains .list-group-item > span {
    vertical-align: sub;
}
.suggested-domains .promo.hot {
    font-size: 0.575rem;
}
#DomainSearchResults .domain-suggestion .promo.hot {
    display: inline-block;
}
#btnTransferDomain {
    display: flex;
    gap: 5px;
    margin: 0 auto;
}
.w-hidden {
    display: none;
}

.alert-darkgreen {
    color: #ffffff;
    background-color: #24900b;
    border-color: #167101;
}

.divide tr:first-child td {
    border: none !important;
}

@media (min-width: 576px) {
    .footer2 .d-flex {
        flex-direction: row;
        align-items: center;
    }
}
@media (max-width: 768px) {
    .footer .footer-anpc {
        align-items: center;
    }
}
/* Below the desktop grid only (was 1024px, which stripped the rhythm-bearing 4px
   margins inside the 992–1199 band where they must stay). */
@media (max-width: 991px) {
    .footer .col {
        margin-right: 0;
        padding-bottom: 6px !important;
    }
}
@media (min-width: 767px) and (max-width: 991px) {
    .footer-anpc {
        margin-left: 50px;
    }
}
/*** */
/* Styling when the button is disabled and loading */
.is-loading {
    opacity: 0.7;
    cursor: not-allowed;
}

@keyframes loadingDot {
    0%, 80%, 100% { opacity: 0.25; transform: scale(0.75); }
    40%           { opacity: 1;    transform: scale(1); }
}

.is-loading span {
    display: inline-block;
    width: 5px; height: 5px; border-radius: 50%;
    background: currentColor;
    animation: loadingDot 1.2s ease-in-out infinite;

    &:nth-child(2) { animation-delay: .2s; }
    &:nth-child(3) { animation-delay: .4s; }
}
.is-loading span:not(:last-child) {
    margin-right: 4px;
}
/**
 * WHMCS Main Style Sheet
 *
 * Additional styles for WHMCS beyond Bootstrap
 *
 * This stylesheet contains all the customized styling used
 * by WHMCS.  Overrides to Bootstrap styles can be found in
 * overrides.css.
 *
 * @project   WHMCS
 * @cssdoc    version 1.0-pre
 * @package   WHMCS
 * @author    WHMCS Limited <development@whmcs.com>
 * @copyright Copyright (c) WHMCS Limited 2005-2018
 * @license   http://www.whmcs.com/license/
 * @link      http://www.whmcs.com/
 */

html {
    height: 100%;
}

body {
    background-color: #f8f8f8;
    /* Sticky footer, marketing parity (their body: d-flex flex-column min-vh-100):
       .wrapper_footer{margin-top:auto} pushes the footer to the viewport bottom on
       short pages with no magic numbers. min-height (not height!) so long pages
       let the body grow — the old body{height:100%} capped the flex container and
       would strand the footer mid-content. */
    display: flex;
    flex-direction: column;
    min-height: 100%;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: 400;
}

a {
    color: var(--tn-primary);
}

/**
 * -------------------------
 * @section Sections
 * -------------------------
 */

section#main-body {
    margin: 0;
    padding: 20px 0;
    min-height: 350px;
    background-color: #fff;
}

section#main-content {
    margin-bottom: 1.5rem;
}

.main-content {
    margin-bottom: 1.5rem;
    min-height: 300px;
}
.main-content > p:last-child {
    font-family: Arial, Helvetica, sans-serif;
    font-size: .675rem;
}
section#footer {
    margin: 0;
    padding: 20px 10px;
    background-color: #f8f8f8;
    border-top: 1px solid #ddd;
    color: #666;
    font-size: 0.9em;
}
section#footer p {
    margin: 0;
}

@media (min-width: 450px) {
    section#footer {
        line-height: 32px;
    }
}

section#footer .back-to-top {
    float: right;
}
section#footer .back-to-top i {
    padding: 10px;
    background-color: #ddd;
    color: #888;
    border-radius: 3px;
    opacity: 0.7;
}

.adminreturndiv {
    display: none !important;
}

.alert-bordered-left {
    border: 0;
    border-left: 3px solid;
    border-radius: 0;
    text-align: left;
}

.truncate {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.text-md {
    font-size: 1.2em;
}

/**
 * -------------------------
 * @section Main Navbar
 * -------------------------
 */
.dropdown-toggle:focus-visible {
    outline: 1px auto -webkit-focus-ring-color;
    outline-offset: 1px;
}
.navbar-main > li.dropdown:hover > ul.dropdown-menu {
    display: block;
}
.navbar-main .navbar-toggle {
    border-color: transparent;
    /* BS3 gives the toggle 8px top/bottom margins — drop them so the dark
       #main-menu bar stays slim on mobile. */
    margin-top: 0;
    margin-bottom: 0;
}
.navbar-main .navbar-toggle .icon-bar {
    background-color: #eee;
}
.navbar-main .navbar-toggle:focus,
.navbar-main .navbar-toggle:hover {
    background-color: transparent;
}
.navbar-main .navbar-toggle:focus .icon-bar,
.navbar-main .navbar-toggle:hover .icon-bar {
    background-color: #bbb;
}

@media (max-width: 991px) {
    .navbar-main .navbar-nav>li>a {
        padding: 3px 20px;
    }

    .navbar-main .open .dropdown-menu .dropdown-header,
    .navbar-main .open .dropdown-menu>li>a {
        padding: 3px 25px;
    }
}

/**
 * -------------------------
 * @section General Styles
 * -------------------------
 */

div.header-lined h1 {
    margin-top: 0;
    margin-bottom: 15px;
    padding:6px 0;
    border-bottom:1px solid #ccc;
    font-weight: 400;
    color: var(--tn-primary);
}

div.header-lined .breadcrumb {
    margin-top: -15px;
    padding-left: 0;
    background: transparent;
    font-size: 0.8em;
    border-radius: 0 0 4px 4px;
}
div.header-lined .breadcrumb li a {
    color: #888;
}
div.header-lined .breadcrumb > .active {
    color: var(--tn-primary);
}

div.header-lined small {
    white-space: nowrap;
    overflow: hidden;
}

@media (max-width: 600px) {
    h1,.h1{font-size:26px}
    h2,.h2{font-size:20px}
    h3,.h3{font-size:16px}
    h4,.h4{font-size:14px}
    h5,.h5{font-size:12px}
    h6,.h6{font-size:11px}
    div.header-lined small {
        display: none;
    }
}

@media (min-width: 380px) {
    .btn-input-padded-responsive {
        padding-left: 20px;
        padding-right: 20px;
    }
}
@media (min-width: 500px) {
    .btn-input-padded-responsive {
        padding-left: 35px;
        padding-right: 35px;
    }
}

.form-horizontal .checkbox-inline.no-padding,
.no-padding {
    padding: 0;
}

/**
 * -------------------------
 * @section Margin Classes
 * -------------------------
 */

.margin-10 {
    margin: 10px;
}
.margin-bottom {
    margin-bottom: 20px;
}
.margin-top-5 {
    margin-top: 5px;
}
.margin-bottom-5 {
    margin-bottom: 5px;
}

/* Paired action buttons sit in a BS3 .row (margin:0 -15px) inside a padded
   panel-footer; zeroing the outer padding used to pin them flush to the panel
   edges. Restore a 15px outer inset so they align with the footer padding,
   keeping the tight 7px inner gap between the two buttons. */
.col-button-left {
    padding-left: 15px;
    padding-right: 7px;
}
.col-button-right {
    padding-left: 7px;
    padding-right: 15px;
}

/**
 * -------------------------
 * @section Form Classes
 * -------------------------
 */

.input-inline {
    display: inline-block;
}

.input-inline-100 {
    width: 100px;
}

.select-inline {
    display: inline-block;
    width: auto;
}

.form-group .field-error-msg {
    display: none;
    font-size: 0.85em;
    color: #cc0000;
}

/**
 * -------------------------
 * @section Responsive Pull Left & Right
 * -------------------------
 */

@media (min-width: 992px) {
    .pull-md-left {
        float: left;
    }
    .pull-md-right {
        float: right;
    }
}
@media (min-width: 768px) {
    .pull-sm-left {
        float: left;
    }
    .pull-sm-right {
        float: right;
    }
    .text-right-sm {
        text-align: right;
    }
}

/**
 * -------------------------
 * @section Login Page
 * -------------------------
 */

.logincontainer {
    margin: 40px auto 100px auto;
    padding: 0 10px;
    max-width: 500px;
}

.logincontainer.with-social {
    max-width: 650px;
}

.logincontainer .social-signin-btns {
    padding: 23px 0;
}

@media (max-width: 500px) {
    .logincontainer .social-signin-btns .btn {
        display: block;
        width: 100%;
    }
}

@media (max-width: 600px) {
    .logincontainer {
        margin: 0 auto 30px auto;
    }
}

@media (min-width: 768px) {
    .logincontainer.with-social .login-form {
        padding-right: 29px;
        border-right: 1px solid #ddd;
    }
    .logincontainer .social-signin-btns .btn {
        display: block;
        width: 100%;
    }
}

/**
 * -------------------------
 * @section Icons
 * -------------------------
 */

i.icon-rss {
    color: #ff6600;
}

/**
 * -------------------------
 * @section Main Menu
 * -------------------------
 */

section#main-menu {
    background-color: var(--tn-dark); /* was stale teal #006687; keep navy consistent with .navbar-main */
}

/**
 * -------------------------
 * @section Home Page Banner
 * -------------------------
 */

section#home-banner {
    margin: 0;
    padding: 50px 0 60px;
    background-color: var(--tn-dark);
    color: #fff;
}

section#home-banner.with-recaptcha {
    padding-bottom: 90px;
}

section#home-banner .tooltip-inner {
    background-color: var(--tn-primary);
}

section#home-banner .tooltip.left .tooltip-arrow {
    border-left-color: var(--tn-primary);
}

section#home-banner .tooltip.bottom .tooltip-arrow {
    border-bottom-color: var(--tn-primary);
}

section#home-banner .tooltip.right .tooltip-arrow {
    border-right-color: var(--tn-primary);
}

section#home-banner h2 {
    margin: 0;
    padding: 0 25px 10px 25px;
}

section#home-banner .form-control {
    border-radius: 0;
    border: 0;
    box-shadow: none;
    font-weight: 300;
}

section#home-banner .btn {
    border-radius: 0;
    border: 0;
    font-weight: 300;
    color: #fff;
}

section#home-banner .btn.search {
    background-color: var(--tn-primary);
}
section#home-banner .btn.transfer {
    background-color: #bbb;
}

@media (max-width: 992px) {
    section#home-banner h2 {
        font-size: 26px;
    }
}

@media (max-width: 767px) {
    section#home-banner h2 {
        font-size: 22px;
    }
}

/**
 * -------------------------
 * @section Home Page Shortcut Buttons
 * -------------------------
 */

.home-shortcuts {
    margin: 0;
    background: var(--tn-primary);
    color: #fff;
}
.home-shortcuts ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}
.home-shortcuts li {
    float: left;
    width: 24%;
    padding: 5px 3px;
    border-right: 1px solid #0E88B0;
    font-size: 0.9em;
    text-align: center;
    cursor: pointer;
    overflow: hidden;
    white-space: nowrap;
}
.home-shortcuts li:first-child {
    border-left: 1px solid #0E88B0;
}
.home-shortcuts li a {
    display: block;
    color: #fff;
    text-decoration: none;
}
.home-shortcuts li i {
    font-size: 22px;
}
.home-shortcuts li p {
    margin: 2px 0 0;
    text-transform: uppercase;
}
.home-shortcuts li span {
    display: none;
}
.home-shortcuts li:hover span {
    display: inline-block;
}
.home-shortcuts .lead {
    margin: 0;
    line-height: 55px;
}
@media (max-width: 992px) {
    .home-shortcuts ul {
        text-align: center;
    }
}
@media (max-width: 767px) {
    .home-shortcuts li {
        display: block;
        float: none;
        width: 100%;
        border-right: 0;
        border-bottom: 1px solid #0E88B0;
    }
    .home-shortcuts li:first-child {
        border-left: 0;
    }
    .home-shortcuts li:last-child {
        border: 0;
    }
    .home-shortcuts ul:hover li {
        width: 100%;
    }
}

/**
 * -------------------------
 * Client Homepage
 * -------------------------
 */

.text-domain {
    font-size: 12px;
    color: var(--tn-primary);
}

.client-home-panels .panel {
    border: 1px solid var(--tn-border-soft);
    border-radius: var(--tn-radius-lg);
    /* Clip children (heading top-corners, footer/body/list-group bottom-corners) to the
       larger radius so the square child backgrounds don't bleed past the rounded border.
       The hover box-shadow is drawn outside the border-box, so it is unaffected. */
    overflow: hidden;
    box-shadow: var(--tn-shadow-sm);
    transition: box-shadow var(--tn-transition), border-color var(--tn-transition),
        transform var(--tn-transition);
}
.client-home-panels .panel:hover {
    opacity: 1;
}
.client-home-panels .panel > .panel-heading {
    background-color: #fff;
    border-bottom: 0;
    font-weight: bold;
}
.client-home-panels .panel > .panel-heading .panel-title .btn {
    color: #fff;
    border: 0;
}
.client-home-panels .panel > .panel-heading .panel-title .btn:hover {
    color: #000;
}
.client-home-panels .panel small {
    color: #888;
}
.client-home-panels .panel > .panel-body {
    padding: 0;
    max-height: 170px;
    overflow: auto;
}
.client-home-panels .panel > .panel-footer {
    border-top: 0;
}
.client-home-panels .panel > .panel-body p {
    padding: 10px 15px;
}
.client-home-panels .panel > .list-group {
    max-height: 170px;
    overflow: auto;
    border-top: 1px solid var(--tn-border);
    border-bottom: 1px solid var(--tn-border);
}
.client-home-panels .panel > .list-group .list-group-item {
    padding: 4px 10px;
}

.client-home-panels .panel > .list-group .list-group-item:last-child {
    border-bottom: 0;
}

.cpanel-feature-row > div {
    padding: 5px;
}

.home-kb-search {
    margin-bottom: 15px;
}
.home-kb-search .form-control {
    padding-left: 50px;
    background-color: #fff;
    border: 1px solid #eee;
    color: #999;
    font-weight: 300;
}
.home-kb-search .form-control:focus {
    border-color: #eee;
    outline: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
}
.home-kb-search i {
    float: left;
    margin-top: -30px;
    margin-left: 20px;
    color: #777;
}

/**
 * -------------------------
 * Client Homepage Tiles
 * -------------------------
 */

.tiles {
    margin: 0 0 15px 0;
    border: 1px solid var(--tn-border);
    border-radius: var(--tn-radius-lg);
    box-shadow: var(--tn-shadow-sm);
    background-color: #fff;
    overflow: hidden;
}
/* Neutralize BS3's -15px row gutter so tiles sit flush to the rounded card edges. */
.tiles > .row {
    margin-left: 0;
    margin-right: 0;
}
.tiles .tile {
    padding: 12px 20px;
    background-color: var(--tn-surface-soft);
    border-right: 1px solid var(--tn-border-soft);
}
.tiles .tile a {
    text-decoration: none;
}
.tiles .tile:hover {
    background-color: #eef1f5;
    cursor: pointer;
}
.tiles .tile .highlight {
    margin-top: 4px;
    height: 2px;
    border-radius: 2px;
}
.tiles .tile:last-child {
    border: 0;
}
@media (max-width: 767px) {
    .tiles .tile:nth-child(2) {
        border: 0;
    }
    .tiles .tile:nth-child(1),
    .tiles .tile:nth-child(2) {
        border-bottom: 1px solid var(--tn-border);
    }
}
.tile .icon {
    position: absolute;
    top: 10px;
    right: 10px;
    font-size: 48px;
    line-height: 1;
    color: #ccc;
}
.tile .stat {
    margin-top: 20px;
    font-size: 40px;
    line-height: 1;
}
.tile .title {
    font-weight: bold;
    color: #888;
    text-transform: uppercase;
    font-size: 12px;
}

/**
 * -------------------------
 * Panel Accents
 * -------------------------
 */

.panel.panel-accent-gold {
    border-top: 3px solid var(--tn-warning);
    opacity: 0.9;
}
.panel.panel-accent-green {
    border-top: 3px solid var(--tn-success);
    opacity: 0.9;
}
.panel.panel-accent-red {
    border-top: 3px solid var(--tn-danger);
    opacity: 0.9;
}
.panel.panel-accent-blue {
    border-top: 3px solid var(--tn-primary);
    opacity: 0.9;
}
.panel.panel-accent-orange {
    border-top: 3px solid var(--tn-warning);
    opacity: 0.9;
}
.panel.panel-accent-pink {
    border-top: 3px solid var(--tn-primary);
    opacity: 0.9;
}
.panel.panel-accent-purple {
    border-top: 3px solid var(--tn-secondary);
    opacity: 0.9;
}
.panel.panel-accent-lime {
    border-top: 3px solid var(--tn-success);
    opacity: 0.9;
}
.panel.panel-accent-magenta {
    border-top: 3px solid var(--tn-danger);
    opacity: 0.9;
}
.panel.panel-accent-teal {
    border-top: 3px solid var(--tn-info);
    opacity: 0.9;
}
.panel.panel-accent-turquoise {
    border-top: 3px solid var(--tn-info);
    opacity: 0.9;
}
.panel.panel-accent-emerald {
    border-top: 3px solid var(--tn-success);
    opacity: 0.9;
}
.panel.panel-accent-amethyst {
    border-top: 3px solid var(--tn-secondary);
    opacity: 0.9;
}
.panel.panel-accent-wet-asphalt {
    border-top: 3px solid var(--tn-dark);
    opacity: 0.9;
}
.panel.panel-accent-midnight-blue {
    border-top: 3px solid var(--tn-dark);
    opacity: 0.9;
}
.panel.panel-accent-sun-flower {
    border-top: 3px solid var(--tn-warning);
    opacity: 0.9;
}
.panel.panel-accent-pomegranate {
    border-top: 3px solid var(--tn-danger);
    opacity: 0.9;
}
.panel.panel-accent-silver {
    border-top: 3px solid var(--tn-muted);
    opacity: 0.9;
}
.panel.panel-accent-asbestos {
    border-top: 3px solid var(--tn-muted);
    opacity: 0.9;
}

/**
 * -------------------------
 * Background Colors
 * -------------------------
 */

.bg-color-gold {
    background-color: var(--tn-warning);
}
.bg-color-green {
    background-color: var(--tn-success);
}
.bg-color-red {
    background-color: var(--tn-danger);
}
.bg-color-blue {
    background-color: var(--tn-primary);
}
.bg-color-orange {
    background-color: var(--tn-warning);
}
.bg-color-pink {
    background-color: var(--tn-primary);
}
.bg-color-purple {
    background-color: var(--tn-secondary);
}
.bg-color-lime {
    background-color: var(--tn-success);
}
.bg-color-magenta {
    background-color: var(--tn-danger);
}
.bg-color-teal {
    background-color: var(--tn-info);
}
.bg-color-turquoise {
    background-color: var(--tn-info);
}
.bg-color-emerald {
    background-color: var(--tn-success);
}
.bg-color-amethyst {
    background-color: var(--tn-secondary);
}
.bg-color-wet-asphalt {
    background-color: var(--tn-dark);
}
.bg-color-midnight-blue {
    background-color: var(--tn-dark);
}
.bg-color-sun-flower {
    background-color: var(--tn-warning);
}
.bg-color-pomegranate {
    background-color: var(--tn-danger);
}
.bg-color-silver {
    background-color: var(--tn-muted);
}
.bg-color-asbestos {
    background-color: var(--tn-muted);
}

/**
 * -------------------------
 * @section Twitter Feed
 * -------------------------
 */

div.home-twitter {
    margin-top: 20px;
    margin-bottom: 40px;
}
div.tweet > i {
    color: #2BABCF;
    float: left;
    margin-right: 15px;
}
div.tweet span {
    font-size: 12px;
    color: #ccc;
}

/**
 * -------------------------
 * @section Domain Checker
 * -------------------------
 */

div.domainresults div:not(.btn-group) {
    margin: 0;
    padding: 10px 25px;
    background-color: #ddd;
    color: #666;
    font-size: 1.0em;
    border-radius: 6px 6px 0 0;
}

div.domainresults div:not(.btn-group) span {
    padding-left: 20px;
    font-size: 14px;
    color: #888;
}

div.domainresults table tr td {
    padding: 5px 30px;
    line-height: 40px;
}

.domain-checker-container {
    margin: 20px 0;
    padding: 0;
    background-color: #ffce44;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    -o-border-radius: 10px;
    border-radius: 10px;
    background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#ffb201), to(#ffd960));
    background: -webkit-linear-gradient(top, #ffd960, #ffb201);
    background: -moz-linear-gradient(top, #ffd960, #ffb201);
    background: -ms-linear-gradient(top, #ffd960, #ffb201);
    background: -o-linear-gradient(top, #ffd960, #ffb201);
}

.domain-checker-bg {
    margin: 0;
    padding: 80px 0;
    background-repeat: no-repeat;
    background-position: 110% -5px;
    background-image:url('../img/globe.png');
}

@media (max-width: 992px) {
    .domain-checker-bg {
        padding: 40px 0;
    }
}

.domain-checker-container .input-group-box {
    margin: 0 auto;
    padding: 10px;
    width: 100%;
    background-color: #fff;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    -o-border-radius: 10px;
    border-radius: 10px;
}

.domain-bulk-options-box {
    position: absolute;
    top: 18px;
    right: 134px;
    z-index:100;
}

@media (max-width: 767px) {
    .domain-checker-container .input-group-box .input-group-btn {
        display: block;
        width: 100%;
    }
    .domain-checker-container .input-group-box .input-group-btn .btn {
        width: 100%;
        border-radius: 6px;
    }
    .domain-checker-container .input-group-box .form-control {
        border-radius: 6px !important;
        margin-bottom: 5px;
        float: none;
    }
}

.domain-check-availability {
    width: 100px;
}

.domain-step-options {
    min-height: 300px;
}

.domain-checker-result-headline {
    margin: 20px;
    font-size: 1.6em;
    text-align: center;
}
.domain-checker-available {
    color: #5cb85c;
}
.domain-checker-unavailable,
.domain-checker-invalid {
    color: #d9534f;
}

div.domainresults div.domain-checkout-area {
    display: none;
    float: right;
    padding: 8px 40px 0;
}

.domain-disclaimer-area {
    margin: 0 0 25px 0;
    font-size: 12px;
}

.domain-bulk-domain-well {
    width: 60%;
}

.domain-tld-pricing-table-responsive {
    border: 0;
    margin-bottom: 0;
}

a.domain-tld-pricing-category {
    display: block;
    text-align: center;
}

.featured-tlds-container {
    margin: 35px 0 15px;
}

.featured-tld {
    margin: 0 0 20px 0;
    border-radius: 4px;
    box-shadow: 0 6px 20px rgba(0,0,0,.1);
}
.featured-tld .img-container {
    padding: 20px 0;
    height: 115px;
    line-height: 75px;
    overflow: hidden;
    text-align: center;
}
@media (max-width: 767px) {
    .featured-tld .img-container {
        height: 80px;
        line-height: 40px;
    }
}
.featured-tld .img-container img {
    max-width: 70%;
    max-height: 100%;
}
.featured-tld .price {
    padding: 5px;
    background-color: #f9f9f9;
    color: #555;
    font-weight: 400;
    line-height: 28px;
    text-align: center;
    border-radius: 0 0 4px 4px;
}

.featured-tld .price.blog {
    background-color: #a0d5cb;
    color: #fff;
}
.featured-tld .price.club {
    background-color: #053796;
    color: #fff;
}
.featured-tld .price.com {
    background-color: #3aa4da;
    color: #fff;
}
.featured-tld .price.couk {
    background-color: #1d3774;
    color: #fff;
}
.featured-tld .price.host {
    background-color: #ed4d42;
    color: #fff;
}
.featured-tld .price.live {
    background-color: #ff9e19;
    color: #fff;
}
.featured-tld .price.name {
    background-color: #44b03e;
    color: #fff;
}
.featured-tld .price.net {
    background-color: #efc00e;
    color: #fff;
}
.featured-tld .price.online {
    background-color: #38ce6a;
    color: #fff;
}
.featured-tld .price.rocks {
    background-color: #fd563c;
    color: #fff;
}
.featured-tld .price.shop {
    background-color: #ff5900;
    color: #fff;
}
.featured-tld .price.social {
    background-color: #ff9a00;
    color: #fff;
}
.featured-tld .price.store {
    background-color: #0eadb3;
    color: #fff;
}
.featured-tld .price.tech {
    background-color: #0db04b;
    color: #fff;
}
.featured-tld .price.tv {
    background-color: #ea3438;
    color: #fff;
}
.featured-tld .price.website {
    background-color: #2db9ea;
    color: #fff;
}

.tld-filters {
    margin: 0 0 25px 0;
}
.tld-filters a {
    display: inline-block;
    margin-bottom: 4px;
    padding: 5px 6px;
    font-size: 90%;
    font-weight: normal;
    border-radius: 2px;
}

.domain-pricing .tld-row {
    padding-top: 3px;
    padding-bottom: 3px;
    border-bottom: 1px solid #f5f5f5;
}
.domain-pricing .tld-row.highlighted {
    background: #f3f9fd;
}

.domain-pricing .tld-pricing-header .col-xs-2,
.domain-pricing .tld-pricing-header .col-sm-2 {
    height: 56px;
}
.domain-pricing .tld-pricing-header .col-xs-2,
.domain-pricing .tld-pricing-header .col-sm-2,
.domain-pricing .tld-pricing-header .col-xs-4,
.domain-pricing .tld-pricing-header .col-sm-4 {
    padding-top: 4px;
    padding-bottom: 4px;
    border-bottom: 6px solid #97b5d2;
    background-color: #efefef;
    border-radius: 4px 4px 0 0;
}
.domain-pricing .no-bg {
    background-color: transparent !important;
}
.domain-pricing .tld-pricing-header div:nth-child(odd) {
    border-color: var(--tn-primary);
    background-color: #f5f5f5;
}
.domain-pricing .two-row-center {
    line-height: 28px;
    margin-top: 6px;
    margin-bottom: 6px;
    border-right: 2px solid #c7d7e6;
}

.domain-pricing .tld-row.no-tlds {
    display: none;
}

.tld-sale-group {
    padding: 1px 3px;
    color: #fff;
    font-size: 10px;
    text-transform: uppercase;
}
.tld-sale-group-hot {
    background-color: #f9615a;
}
.tld-sale-group-sale {
    background-color: #f7d458;
}
.tld-sale-group-new {
    background-color: #2ad588;
}

/**
 * -------------------------
 * @section Announcements Page
 * -------------------------
 */

div.announcement-single {
    margin: 0 0 20px 0;
}
div.announcement-single blockquote {
    margin-top: 30px;
}
div.announcement-single .label {
    margin-right: 10px;
}

.announcement-single {
    margin: 0 0 25px 0;
}
.announcement-single .title {
    font-size: 1.5em;
    font-weight: bold;
}
.announcement-single p {
    margin: 2px 0 10px;
}
.announcement-single .article-items {
    font-size: 0.85em;
    color: #888;
}

/**
 * -------------------------
 * @section Product Details Page
 * -------------------------
 */

div.product-details {
    margin: 0 0 20px 0;
}
div.product-details div.product-icon {
    margin: 0;
    padding: 0;
    background-color: #efefef;
    border-radius: 10px;
    padding: 10px 20px 20px 20px;
    font-size: 60px;
    line-height: 1em;
}

.product-status {
    margin: 0 0 20px 0;
    padding: 0;
    border-radius: 20px;
}
.product-status-pending {
    background-color: #F89406;
}
.product-status-active {
    background-color: #46A546;
}
.product-status-suspended {
    background-color: #0768B8;
}
.product-status-terminated,
.product-status-cancelled {
    background-color: #666;
}
.product-status-fraud {
    background-color: #000;
}
.product-status-text {
    padding: 5px;
    color: #fff;
    text-align: center;
    text-transform: uppercase;
}

div.product-details-tab-container {
    margin: 0;
    padding: 20px;
    border: 1px solid #ddd;
    border-top: 0;
}

.module-client-area {
    padding: 15px 15px 0 15px;
}

.ssl-inactive {
    cursor: pointer;
}

#tabOverview .nav-tabs>li>a {
    border-radius: var(--tn-radius) var(--tn-radius) 0 0;
}
#tabOverview .product-details-tab-container {
    border-radius: 0 0 var(--tn-radius) var(--tn-radius);
}

/* ── SSL Module (clientarea.tpl) ────────────────────────── */

/* Collapsible panel headings */
.ssl-panel-toggle {
    cursor: pointer;
}

/* Section headings inside detail panels */
.ssl-section-heading {
    margin-top: 0;
    border-bottom: 1px solid #eee;
    padding-bottom: 8px;
}

/* Chevron vertical alignment inside panel headings */
.ssl-chevron {
    margin-top: 2px;
}

/* Word-wrap for long validation URLs in table cells */
.ssl-break-all {
    word-break: break-all;
}

/* OR divider between manual and automated installation */
.ssl-or-divider {
    display: flex;
    align-items: center;
    margin: 20px 0;
}
.ssl-or-divider-line {
    flex: 1;
    height: 1px;
    background: #ddd;
}
.ssl-or-divider-text {
    padding: 0 15px;
    color: #aaa;
    font-size: 12px;
    font-weight: bold;
    letter-spacing: 1px;
}

/* Nested panel (Automated Installation accordion) */
.ssl-panel-nested {
    margin-bottom: 0;
}

/* Suppress bottom margin on tables that sit flush above a button */
.ssl-table-flush {
    margin-bottom: 0;
}

/* Top spacing for inline alert following content (validation timeout notice) */
.ssl-alert-spaced {
    margin-top: 15px;
}

.panel {
    font-size: 1em;
}
.wide-tooltip { 
    width: 300px;
}
.wide-tooltip .tooltip-inner { 
    max-width: 300px;
}

/**
 * -------------------------
 * @section List Tables
 * -------------------------
 */

.dataTables_wrapper .dataTables_info {
    margin: 0;
    padding: 9px 10px;
    background-color: var(--tn-dark);
    border: 0;
    border-bottom: 1px solid #fff;
    font-size: 0.9em;
    color: #fff;
    border-radius: 0;
    text-align: left !important;
}
div.dataTables_wrapper div.dataTables_info {
    padding: 21px 30px !important;
    font-weight: 300;
    border-radius: var(--tn-radius) var(--tn-radius) 0 0;
}

.dataTables_wrapper table.table-list {
    margin-top: 0 !important;
    margin-bottom: 6px !important;
    width: 100% !important;
}

.dataTables_wrapper table.table-list thead th {
    border-bottom: 4px solid #a2d27a;
    font-weight: normal;
}
.dataTables_wrapper table.table-list thead th:nth-child(even) {
    border-bottom: 4px solid #7bc144;
}

.dataTables_wrapper table.table-list thead th.sorting_asc,
.dataTables_wrapper table.table-list thead th.sorting_desc {
    background-color: #f6f6f6;
}



.dataTables_wrapper .dataTables_filter {
    float: right;
}
.dataTables_wrapper .dataTables_filter label {
    margin: 0;
    padding: 12px;
}
.dataTables_wrapper .dataTables_filter label .form-control {
    background: url('../../../assets/img/search.png') #fff no-repeat 8px 5px;
    padding: 7px 10px 7px 45px!important;
    border: 1px solid #fff;
    height: auto;
    width: 200px;
    font-size: 13px;
    border-radius: 2px;
}

@media (max-width: 600px) {
    .dataTables_wrapper .dataTables_info {
        padding: 9px 10px 40px;
    }
    .dataTables_wrapper .dataTables_filter {
        float: right;
        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%;
    }
}

.dataTables_wrapper .dataTables_length {
    background-color: rgba(var(--tn-primary-rgb), .05);
    font-size: 0.8em;
    color: #888;
    border-radius: 0 0 var(--tn-radius) var(--tn-radius);
}
.dataTables_wrapper .dataTables_length label {
    padding: 10px 10px 5px 30px;
}
.dataTables_wrapper .dataTables_length label .form-control {
    display: inline-block;
    padding: 2px;
    height: 25px;
    width: auto;
    border: 0;
}

.dataTables_wrapper .dataTables_paginate {
    float: right;
    padding: 6px 30px 0;
}

.dataTables_wrapper .dataTables_paginate .pagination > li > a,
.dataTables_wrapper .dataTables_paginate .pagination > li > span {
    padding: 4px 8px;
}

.pagination>li>a,
.pagination>li>span {
    color: #444;
}
.pagination>.active>a,
.pagination>.active>a:focus,
.pagination>.active>a:hover,
.pagination>.active>span,
.pagination>.active>span:focus,
.pagination>.active>span:hover {
    background-color: #4f5360;
    border-color: #4f5360;
}

table.dataTable.dtr-inline.collapsed tbody td:first-child:before, table.dataTable.dtr-inline.collapsed tbody th:first-child:before {
    top: inherit !important;
    box-shadow: none !important;
    line-height: 16px !important;
}

.table-container {
    padding: 0 0 25px 0;
}

table.table-list thead th {
    padding: 8px;
    background-color: #fff;
    border-bottom: 1px solid #ccc;
    color: #333;
    text-align: center;
}

.table-list > tbody > tr:hover {
    cursor: pointer;
    cursor: hand;
}
.table-list > tbody > tr:hover td {
    background-color: var(--tn-surface-soft);
    transition: var(--tn-transition);
}

table.table-list tbody td {
    padding: 10px;
    vertical-align: middle;
    font-size: 0.94em;
}

.table-list > tbody > tr > td a.border-left {
    border-left: 1px solid #eee;
    padding-left: 20px;
    display: block;
}


.table-list > tbody > tr > td {
    background-color: #fff;
}
.table-list > tbody > tr:nth-child(even) > td {
    background-color: #f8fcfd;
}

table.dtr-inline .dtr-title:empty {
    display: none !important;
}

table.dtr-inline .responsive-edit-button {
    display: none;
}

table.dtr-inline.collapsed .responsive-edit-button {
    display: inherit;
}
/**
 * -------------------------
 * @section Status Lights
 * -------------------------
 */

.status {
    display: block;
    font-size: 0.9em;
    line-height: 22px;
    border: 2px solid #ccc;
    border-radius: 3px;
    background-color: #fff;
    color: #333;
}

.status-custom {
    background-color: white;
    color: black;
    border: 1px solid black;
    padding: 1px;
}

.status-pending {
    color: #D9534F;
}
.status-pending.transfer {
    color: #A68500;
}
.status-active,
.status-open,
.status-completed {
    color: #3fad46;
}
.status-suspended {
    color: #F0AD4E;
}
.status-customer-reply {
    color: #ff6600;
}
.status-fraud,
.status-answered {
    color: #000000;
}
.status-expired,
.status-transferred.away{
    color: #004258;
}
.status-cancelled {
    color: #9FA29A;
}
.status-terminated {
    color: #666;
}
.status-onhold {
    color: #224488;
}
.status-inprogress {
    color: #cc0000;
}
.status-closed {
    color: #888;
}

.status-paid {
    color: #498302;
}
.status-unpaid {
    color: #ED3E48;
}
.status-cancelled {
    color: #87939F;
}
.status-collections {
    color: #9A141E;
}
.status-refunded {
    color: #319FC3;
}

.status-customer-reply {
    color: #ff6600;
}

.status-delivered {
    color: #224488;
}

.status-accepted {
    color: #498302;
}
.status-lost, .status-dead {
    color: #000;
}

/**
 * -------------------------
 * @section Affiliates Page
 * -------------------------
 */

.affiliate-stat {
    margin: 0;
    padding: 15px;
    font-size: 1.6em;
    text-align: center;
}

.affiliate-stat span {
    display: block;
    font-size: 2.4em;
}

.affiliate-stat i {
    float: left;
    padding: 10px;
    font-size: 4em;
}

.affiliate-referral-link {
    margin: 40px 0;
}

.affiliate-referral-link span {
    display: block;
    margin: 0;
    padding: 10px;
    font-size: 1.4em;
    border-radius: 10px;
    border: 1px solid #ccc;
    overflow: hidden;
}

@media (max-width: 1200px) {
    .affiliate-stat {
        font-size: 1.2em;
    }
    .affiliate-stat span {
        font-size: 2.1em;
    }
    .affiliate-stat i {
        font-size: 3.6em;
    }
}

@media (max-width: 992px) {
    .affiliate-stat {
        font-size: 1.0em;
    }
    .affiliate-stat span {
        font-size: 1.6em;
    }
    .affiliate-stat i {
        font-size: 3em;
    }
}

/**
 * -------------------------
 * @section Support Tickets
 * -------------------------
 */

.ticket-number {
    display: block;
    font-size: 1.2em;
    font-style: italic;
    color: #2a9fbb;
}
.ticket-subject.unread {
    font-weight: bold;
}

.ticket-attachments-message {
    padding-top: 4px;
    font-size: 0.8em;
}

.ticket-reply {
    margin: 10px 0;
    padding: 0;
    border: 1px solid #efefef;
    background-color: #fff;
}

.ticket-reply.staff {
    border: 1px solid #CCE4FC;
}

.ticket-reply .date {
    float: right;
    padding: 8px 10px;
    font-size: 0.8em;
}

.ticket-reply .user {
    padding: 5px 0;
    background-color: #f8f8f8;
}

.ticket-reply.staff .user {
    background-color: #F2F9FF;
}

.ticket-reply .user i {
    float: left;
    font-size: 2.2em;
    padding: 2px 15px;
}

.ticket-reply .user .name {
    display: block;
    font-size: 0.9em;
}

.ticket-reply .user .type {
    display: block;
    font-weight: bold;
    font-size: 0.8em;
}

.ticket-reply .message {
    padding: 12px 15px;
}

.ticket-reply .rating,
.ticket-reply .rating-done {
    float: right;
    padding: 5px 10px;
    unicode-bidi: bidi-override;
    direction: rtl;
    font-size: 24px;
}
.ticket-reply .rating span.star,
.ticket-reply .rating-done span.star {
    font-family: "Font Awesome 5 Pro";
    font-weight: normal;
    font-style: normal;
    display: inline-block;
}
.ticket-reply .rating-done .rated {
    display: inline-block;
    font-size: 12px;
    font-family: Tahoma;
}
.ticket-reply .rating span.star:hover {
    cursor: pointer;
}
.ticket-reply .rating span.star:before,
.ticket-reply .rating-done span.star:before {
    content: "\f005";
    padding-right: 0;
    color: #999;
}
.ticket-reply .rating span.star:hover:before,
.ticket-reply .rating span.star:hover ~ span.star:before,
.ticket-reply .rating-done span.star.active:before  {
    content: "\f005";
    color: #F2DE88;
}

.ticket-reply .attachments {
    margin: 0;
    padding: 10px 20px;
    border-top: 1px dashed #efefef;
    background-color: #f8f8f8;
    font-size: 0.8em;
}

.ticket-reply .attachments ul {
    margin: 0;
    padding: 0 0 0 15px;
    list-style: none;
}

.ticket-reply .clear {
    clear: both;
}

.panel > .list-group .ticket-details-children {
    line-height: 20px;
}
.panel > .list-group .ticket-details-children .title {
    font-size: 0.9em;
    color: #999;
}

/**
 * -------------------------
 * @section Support Ticket Feedback
 * -------------------------
 */

.ticketfeedbackstaffcont {
    margin: 10px auto;
    padding: 15px;
    width: 90%;
    background-color: #efefef;
    -moz-border-radius: 6px;
    -webkit-border-radius: 6px;
    -o-border-radius: 6px;
    border-radius: 6px;
}

.ticketfeedbackrating {
    padding: 0 100px;
}

.ticketfeedbackrating .rate {
    float: left;
    padding: 0 10px;
    min-width: 30px;
    text-align: center;
}

/**
 * -------------------------
 * @section Client Notifications
 * -------------------------
 */

.popover-user-notifications {
    border-radius: var(--tn-radius);
    padding: 5px 10px;
    border-color: #ddd;
    min-width: 310px;
    font-family: Arial, Helvetica, sans-serif;
}
.popover-user-notifications .popover-content {
    padding: 0;
}
.popover-user-notifications ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
.popover-user-notifications ul li {
    padding: 5px 0;
    min-height: 66px;
    border-bottom: 1px solid #ddd;
}
.popover-user-notifications ul li:last-child {
    border: 0;
}
.popover-user-notifications ul li a {
    display: block;
    padding: 10px 15px 10px 12px;
    text-decoration: none;
    color: #555;
    font-size: 0.95em;
}
.popover-user-notifications ul li a:hover {
    background-color: #f6f6f6;
}
.popover-user-notifications ul li i.fas,
.popover-user-notifications ul li i.far {
    float: left;
    padding-top: 6px;
    font-size: 21px;
}
.popover-user-notifications ul li i.fas.fa-check-circle,
.popover-user-notifications ul li i.far.fa-check-circle{
    color: #5cb85c;
}
.popover-user-notifications ul li i.fas.fa-warning,
.popover-user-notifications ul li i.far.fa-warning {
    color: #ecc317;
}
.popover-user-notifications ul li i.fas.fa-exclamation-circle,
.popover-user-notifications ul li i.far.fa-exclamation-circle{
    color: #ec2d45;
}
.popover-user-notifications ul li .message {
    margin-left: 40px;
}
.popover-user-notifications ul li.none {
    padding: 12px 0;
    min-height: auto;
    text-align: center;
    font-weight: bold;
}

/**
 * -------------------------
 * @section Captcha
 * -------------------------
 */

.captchaimage {
    margin: 0;
    padding: 3px 0 4px;
    -webkit-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
    transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
    text-align: right;
}

/**
 * -------------------------
 * @section Credit Cards
 * -------------------------
 */

div.credit-card {
    margin: 0 auto 30px;
    max-width: 400px;
    background-color: #f8f8f8;
    border: 1px solid #ccc;
    border-radius: 8px;
}

div.credit-card div.card-type {
    float: right;
    padding: 10px 20px;
    font-size: 1.2em;
}
div.credit-card div.card-icon {
    float: left;
    padding: 7px 7px;
    font-size: 1.2em;
}

div.credit-card div.card-number {
    padding: 10px;
    background-color: #ccc;
    font-size: 1.6em;
    text-align: center;
    clear: both;
}

div.credit-card div.card-start {
    float: left;
    padding: 20px 0 50px 50px;
    font-size: 1.3em;
    text-align: right;
}

div.credit-card div.card-expiry {
    float: right;
    padding: 20px 50px 50px 0;
    height: 120px;
    font-size: 1.3em;
    text-align: right;
}

div.credit-card div.end {
    clear: both;
}

@media (max-width: 600px) {
    div.credit-card {
        max-width: 250px;
    }
    div.credit-card div.card-type {
        font-size: 1.0em;
    }
    div.credit-card div.card-icon {
        font-size: 1.0em;
    }
    div.credit-card div.card-number {
        padding: 6px 10px;
        font-size: 1.2em;
    }
    div.credit-card div.card-start {
        padding: 20px 0 30px 50px;
        font-size: 0.9em;
    }
    div.credit-card div.card-expiry {
        padding: 20px 50px 30px 0;
        height: 80px;
        font-size: 0.9em;
    }
}

.auth3d-area {
    border: 1px solid #fff;
}

.submit-3d {
    width: 80%;
    border: 1px solid #fff;
}

.invoice-summary {
    margin: 0 0 25px 0;
    padding: 15px;
    height: 500px;
    background-color: #f8f8f8;
    border: 4px dashed #efefef;
    border-radius: 10px;
}

.invoice-summary-table {
    margin: 25px 0 25px 0;
    max-height: 300px;
    overflow: auto;
}

.invoice-summary-table td {
    font-size: 0.8em;
}

.invoice-summary-table td.total-row {
    background-color: #efefef;
    font-weight: bold;
}

/* Card colors colorpicked from website logos */
div.credit-card .logo-visa {
    color: #1a1f71;
}

div.credit-card .logo-amex {
    color: #43abdf;
}

div.credit-card .logo-mastercard {
    color: #ed0b00;
}

div.credit-card .logo-discover {
    color: #000000;
}

div.three-column-grid {
    display: inline-grid;
    grid-template-columns: repeat(3, auto) minmax(10em, 30em) auto;
    font-weight: 300;
    font-size: 13px;
}
div.three-column-grid > div {
    margin: 5px 0;
    padding-right: 5px;
}
div.three-column-grid > div > label {
    font-weight: normal;
}
#frmPayment .paymethod-info {
    margin: 5px 0;
    cursor: pointer;
}
#frmPayment .paymethod-info label {
    font-weight: normal;
    cursor: pointer;
}
/**
 * -------------------------
 * @section Sidebar Responsive Behaviour Classes
 * -------------------------
 */

div.sidebar .list-group-item-selected {
    background-color: #319FC3;
    color: #FFFFFF;
}
div.sidebar .list-group-item-selected .badge {
    background-color: #FFFFFF;
    color: #319FC3;
}

.sidebar.sidebar-secondary {
    clear: left;
}

@media (max-width: 991px) {

    .panel-actions {
        border: 0;
        box-shadow: none;
    }

    .panel-actions > .panel-heading > .panel-title {
        display: inline;
    }

    .panel-actions > .panel-heading {
        border-radius: 3px;
    }

    .panel-actions > .list-group {
        padding: 10px;
        overflow-x: scroll;
        overflow-y: none;
        white-space: nowrap;
    }

    .panel-actions > .list-group .list-group-item {
        display: inline-block;
        border: 1px solid #ddd !important;
        border-radius: 3px !important;
        white-space: nowrap;
        text-align: center;
        padding: 5px 25px;
        margin: 2px;
    }

    .panel-actions > .list-group .list-group-item > .badge {
        float: none;
        margin: -2px 0 0 10px;
    }

}

/**
 * -------------------------
 * @section Two Factor Authentication
 * -------------------------
 */

.twofa-setup .modal-body {
    min-height: 100px;
}
.twofa-setup .activation-msg {
    margin: 25px 0;
    padding: 15px;
    border: 1px dashed #ddd;
    text-align: center;
    font-weight: bold;
    font-size: 1.1em;
}
.twofa-setup .backup-code {
    margin: 20px auto;
    padding: 10px;
    background-color: #efefef;
    color: #444;
    text-align: center;
}

.twofa-module {
    margin: 10px 0;
    padding: 14px 20px;
    border: 1px solid #ccc;
    border-radius: 4px;
    cursor: pointer;
}
.twofa-module .col-radio {
    float: left;
    width: 35px;
    margin-top: 12px;
}
.twofa-module .col-logo {
    float: left;
    width: 80px;
    line-height: 40px;
    text-align: center;
}
.twofa-module .col-description {
    margin-left: 136px;
}
.twofa-module img {
    max-width: 100%;
    max-height: 40px;
}
.twofa-module.active {
    border-color: #337ab7;
}

/**
 * -------------------------
 * @section Popups
 * -------------------------
 */

#popup-backdrop {
    background-color: #2E363F;
    padding: 15px;
    height: 100%;
}

.popup-header-padding {
    margin-top: 5px;
    margin-bottom: 5px;
}

/**
 * -------------------------
 * @section Uncategorized
 * -------------------------
 */

.btn.btn-action {
    background-color: #72CA06;
    border-color: #498302;
}

/**
 * -------------------------
 * @section Knowledgebase
 * -------------------------
 */

.kb-category {
    margin: 0 0 10px 0;
}
.kb-category a {
    display: block;
    margin: 0 0 2px 0;
    font-weight: bold;
    text-decoration: none;
}
.kb-category a small {
    color: #888;
}

.kbarticles {
    padding: 0 0 25px 0;
    font-size: 0.8em;
}
.kbarticles a {
    font-size: 1.2em;
    font-weight: 700;
}
.kbarticles a .glyphicon {
    color: #8ce;
}
.kbcategories a.admin-inline-edit,
.kbarticles a.admin-inline-edit {
    font-size: 0.92em;
}

h3.kb-alsoread {
    padding: 8px 15px;
    background-color: #eee;
    border-radius: 6px;
    font-size: 0.9em;
}

.kb-article-title {
    margin: 0 0 22px 0;
    font-size: 1.6em;
}
.kb-article-title h2 {
    margin: 0;
}
.kb-article-title .btn-print {
    float: right;
    font-size: 1em;
}
.kb-article-content {
    margin: 0 0 30px 0;
    font-size: 1.2em;
    line-height: 1.2em;
    font-weight: 200;
}
.kb-rate-article {
    margin: 20px 0;
    padding: 15px 20px;
    background-color: #eff7ff;
    font-size: 1.4em;
    line-height: 38px;
    font-weight: 200;
    color: #4d7cab;
}
.kb-rate-article .btn-lg {
    padding: 0 16px;
}

.kb-article-details {
    color: #999;
    list-style: none;
    margin: 35px 5px;
    padding: 0;
    font-size: 0.9em;

}
.kb-article-details li {
    float: left;
    padding-right: 30px;
}

.kb-search .form-control {
    box-shadow: none;
    border-radius: 3px;
}
.kb-search > .input-group-btn > .btn {
    border-radius: 0 3px 3px 0;
}

/**
 * -------------------------
 * @section Domain Checker Responsive
 * -------------------------
 */

#stepResults {
    font-size: 20px;
}
#stepResults .label {
    font-size: 20px;
}

@media (max-width: 992px) {
    #stepResults {
        font-size: 14px;
    }
    #stepResults .label {
        font-size: 14px;
    }
    div.domainresults table tr td {
        padding: 5px 5px;
    }
}

/**
 * -------------------------
 * Printing
 * -------------------------
 */

@media print {
    .sidebar,
    #main-menu,
    #top-nav,
    .header-lined {
        display: none;
    }
    a[href]:after {
        content:"" !important;
    }
}

/**
 * -------------------------
 * Badges Spacing
 * -------------------------
 */

h3.with-badge::after {
    content: '.';
    color: #fff;
}

h3.with-badge span, h3.with-badge i {
    float: left;
    padding-right: 8px;
}

h3.with-badge .badge {
    line-height: initial;
    margin-top: 3px;
}

@media (min-width: 992px) {
    h3.with-badge .badge {
        padding: 3px 7px 3px 8px;
    }
    .sidebar .list-group-item .badge {
        margin-top: -2px;
        padding: 3px 7px 3px 8px;
        line-height: initial;
        min-width: 36px;
    }
}

/**
 * -------------------------
 * Admin Masquerade Notice
 * -------------------------
 */

.admin-masquerade-notice {
    margin: 25px 0 0 auto;
    padding: 4px 10px;
    max-width: 240px;
    font-family: Tahoma;
    font-size: 0.7em;
    text-align: right;
}
.admin-masquerade-notice a {
    text-decoration: underline;
}

a.admin-inline-edit {
    margin-left: 6px;
    font-weight: 400;
    color: #888;
}
a.admin-inline-edit:hover {
    color: #444;
    text-decoration: none;
}

/**
 * -------------------------
 * Language Chooser
 * -------------------------
 */

.language-popover {
    max-width: 450px;
    width: 100%;
    background-color: rgba(20, 20, 20, 0.98);
    background-image: url('../img/worldmap.png');
    background-repeat: no-repeat;
    font-size: 0.8em;
}
.language-popover.popover.bottom > .arrow:after {
    border-bottom-color: rgba(20, 20, 20, 0.97);
}
.language-popover .popover-content ul {
    margin: 6px 0 14px 0;
    padding: 0;
    max-width: 400px;
    list-style-type: none;
    overflow: hidden;
}
.language-popover .popover-content li {
    float: left;
    display: inline;
    padding: 0 20px 0 40px;
    width: 33.333%;
    line-height: 2em;
}
.language-popover .popover-content li a {
    color: #f2f2f2;
}

@media (max-width: 480px) {
    .language-popover {
        max-width: 250px;
        background-position: -50px 0;
    }
    .language-popover .popover-content li {
        padding: 0 20px;
        width: 50%;
    }
}

/**
 * -------------------------
 * Login or Register Popover
 * -------------------------
 */

.login-popover {
    font-size: 12px;
}
.login-popover .form-group {
    margin-bottom: 5px;
}
.login-popover hr {
    margin: 5px 0;
}

/**
 * -------------------------
 * Mass Pay
 * -------------------------
 */

tr.masspay-invoice-detail td {
    font-size: 0.8em;
}
tr.masspay-total td {
    background-color: #efefef;
    font-weight: bold;
}

/**
 * -------------------------
 * Error Page
 * -------------------------
 */

.error-container {
    text-align: center;
}
.error-container h1 {
    margin-top: 40px;
}
.error-container .buttons {
    margin: 25px 0;
}
.error-container .buttons .btn {
    margin: 5px;
}

/**
 * -------------------------
 * Collapsable Panels
 * -------------------------
 */

.panel-collapsable > .panel-heading {
    cursor: pointer;
}
.panel-collapsable > .panel-body-collapsed {
    display: none;
}

/**
 * -------------------------
 * Licensing Addon
 * -------------------------
 */

.licensing-addon-latest-download h3 {
    margin-top: 0;
}

/**
 * -------------------------
 * Domain Checker Captchas
 * -------------------------
 */

#google-recaptcha-domainchecker {
    width: 304px;
    height: 78px;
    margin-top: 15px;
    margin-bottom: 15px;
}

#default-captcha-domainchecker {
    margin-top: 15px;
    margin-bottom: -63px;
}

#default-captcha-domainchecker #inputCaptcha {
    width: 100px;
    border-radius: 4px;
}

.domainchecker-homepage-captcha #google-recaptcha-domainchecker {
    margin-bottom: -46px;
}

@media (max-width: 991px) {
    #google-recaptcha-domainchecker {
        padding-left: 2.5%;
    }

    #default-captcha-domainchecker {
        margin-bottom: -25px;
    }
}

@media (max-width: 736px) {
    #google-recaptcha-domainchecker {
        transform: scale(0.935);
        transform-origin: 0 0;
        -webkit-transform: scale(0.935);
        -webkit-transform-origin: 0 0;
    }
}

@media (max-width: 384px) {
    #google-recaptcha-domainchecker {
        transform: scale(0.96);
        transform-origin: 0 0;
    }
}

@media (max-width: 360px) {
    #google-recaptcha-domainchecker {
        transform: scale(0.89);
        transform-origin: 0 0;
    }
}

@media (max-width: 320px) {
    #google-recaptcha-domainchecker {
        padding-left: 13.5%;
        transform: scale(0.83);
        transform-origin: 0 0;
        -webkit-transform: scale(0.785);
        -webkit-transform-origin: 0 0;
    }
}

/**
 * -------------------------
 * Email Verification
 * -------------------------
 */

.email-verification {
    margin: 0;
    padding: 10px;
    font-weight: 300;
    background-color: #f8f8f8;
    border-bottom: 1px solid #eee;
    color: #333;
}
.email-verification .text {
    display: block;
    padding: 6px 0;
}
.email-verification .btn {
    margin: 3px 0;
    padding: 3px 10px;
    background-color: #50525f;
    border-color: #50525f;
    color: #fff;
    font-style: normal;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.email-verification .btn:active,
.email-verification .btn[disabled]:hover {
    background-color: #50525f;
    border-color: #50525f;
    color: #fff;
}
.email-verification .btn.close {
    margin-left: 10px;
    background-color: transparent;
    color: rgba(55, 55, 55, 0.5);
    font-size: 22px;
    opacity: 1;
}
.email-verification .btn.close:hover {
    color: rgba(55, 55, 55, 0.8);
}
.email-verification .fas,
.email-verification .far {
    color: #666;
    float: left;
    padding: 2px 10px 0 0;
    font-size: 24px;
}

@media (min-width: 768px) {
    .email-verification .text {
        padding-top: 9px;
        padding-bottom: 0;
    }
    .email-verification .btn {
        margin: 0;
        padding: 9px 25px;
    }
    .email-verification .button {
        float: right;
    }
    .email-verification .fas,
    .email-verification .far {
        font-size: 36px;
    }
}

.email-verification.success {
    background-color: #ebfde4;
    border-bottom: 1px solid #e3f7d5;
    color: #5cb85c;
}
.email-verification.success .fas,
.email-verification.success .far {
    color: #6fbb51;
}
.email-verification.failed {
    background-color: #fdf8e3;
    border-bottom: 1px solid #f7f3d0;
    color: #b3a879;
}
.email-verification.failed .fas,
.email-verification.failed .far {
    color: #b3a879;
}

/**
 * -------------------------
 * Markdown Editor
 * -------------------------
 */

.md-editor {
    border: 1px solid #ddd;
    border-radius: 3px;
}
.md-editor > .btn-toolbar {
    background-color: #fff !important;
}
.md-editor > textarea.markdown-editor,
.md-editor > .md-preview {
    padding: 15px !important;
    border-top: 1px solid #ddd !important;
    border-bottom: 1px solid #ddd !important;
    background-color: #fff !important;
}
div.md-editor.active {
    display: block;
    border: 1px solid #ddd;
    outline: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
}
.markdown-editor-status {
    padding: 2px 10px;
    font-size: 9pt;
    color: #959694;
    text-align: right;

}

.small-font {
    font-size: 0.9em;
}

/**
 * -------------------------
 * Markdown Content Formatting
 * -------------------------
 */

.markdown-content h1 {
    font-size: 1.6em;
    color: #333;
}
.markdown-content h2 {
    font-size: 1.4em;
    color: #333;
}
.markdown-content h3 {
    font-size: 1.2em;
    color: #333;
}
.markdown-content h4 {
    font-size: 1.1em;
    color: #333;
}

.markdown-content pre {
    padding: 15px;
    background-color: #444;
    color: #f8f8f8;
    border: 0;
}
.markdown-content pre code {
    white-space: pre;
    word-break: normal;
    word-wrap: normal;
}

.markdown-content blockquote {
    font-size: 1em;
}

.markdown-content table {
    margin: 10px 0;
    background-color: #fff;
    border: 1px solid #ddd;
}
.markdown-content table > thead > tr > th {
    padding: 4px 10px;
    background-color: #f8f8f8;
    border: 1px solid #ddd;
    font-weight: bold;
    text-align: center;
}
.markdown-content table > tbody > tr > td {
    padding: 3px 8px;
    border: 1px solid #ddd;
}

/**
 * -------------------------
 * Sidebar Panels
 * -------------------------
 */

.panel-sidebar {
    border-color: #eee;
    font-size: 15px;
}
.panel-sidebar>.panel-heading {
    color: #333;
    background-color: #ffffff;
    border-bottom: 0;
}

.panel-primary>.panel-heading {
    color: #fff;
    background-color: #337ab7;
    border-color: #337ab7
}

.panel-primary>.panel-heading+.panel-collapse>.panel-body {
    border-top-color: #337ab7
}

.panel-primary>.panel-heading .badge {
    color: #337ab7;
    background-color: #fff
}

.panel-primary>.panel-footer+.panel-collapse>.panel-body {
    border-bottom-color: #337ab7
}

.panel-success {
    border-color: #d6e9c6
}

.panel-success>.panel-heading {
    color: #3c763d;
    background-color: #dff0d8;
    border-color: #d6e9c6
}

.panel-success>.panel-heading+.panel-collapse>.panel-body {
    border-top-color: #d6e9c6
}

.panel-success>.panel-heading .badge {
    color: #dff0d8;
    background-color: #3c763d
}

.panel-success>.panel-footer+.panel-collapse>.panel-body {
    border-bottom-color: #d6e9c6
}

.panel-info {
    border-color: #bce8f1
}

.panel-info>.panel-heading {
    color: #31708f;
    background-color: #d9edf7;
    border-color: #bce8f1
}

.panel-info>.panel-heading+.panel-collapse>.panel-body {
    border-top-color: #bce8f1
}

.panel-info>.panel-heading .badge {
    color: #d9edf7;
    background-color: #31708f
}

.panel-info>.panel-footer+.panel-collapse>.panel-body {
    border-bottom-color: #bce8f1
}

.panel-warning {
    border-color: #faebcc
}

.panel-warning>.panel-heading {
    color: #8a6d3b;
    background-color: #fcf8e3;
    border-color: #faebcc
}

.panel-warning>.panel-heading+.panel-collapse>.panel-body {
    border-top-color: #faebcc
}

.panel-warning>.panel-heading .badge {
    color: #fcf8e3;
    background-color: #8a6d3b
}

.panel-warning>.panel-footer+.panel-collapse>.panel-body {
    border-bottom-color: #faebcc
}

.panel-danger {
    border-color: #ebccd1
}

.panel-danger>.panel-heading {
    color: #a94442;
    background-color: #f2dede;
    border-color: #ebccd1
}

.panel-danger>.panel-heading+.panel-collapse>.panel-body {
    border-top-color: #ebccd1
}

.panel-danger>.panel-heading .badge {
    color: #f2dede;
    background-color: #a94442
}

.panel-danger>.panel-footer+.panel-collapse>.panel-body {
    border-bottom-color: #ebccd1
}

.panel-heading i.far,
.panel-heading i.fas,
.panel-heading i.fal,
.panel-heading i.fab {
    font-size:0.85em;
}

.panel-sidebar .panel-title {
    font-size: 1.1em;
    font-weight: 300;
    font-family: Arial, Helvetica, sans-serif;
    line-height: 26px;
    color: #555;
}
.panel-sidebar .panel-minimise {
    margin-top: 4px;
    color: #333;
    cursor: pointer;
    transition: transform 200ms ease;
}
.panel-sidebar .panel-minimise.minimised {
    transform: rotate(180deg);
    margin-top: 7px;
}
.panel.panel-sidebar > .panel-footer {
    color: #333;
    background-color: #f5f5f5;
    border-top: 0;
    /* !important: a WHMCS-core rule delivered via {$headoutput} loads after
       custom.css and flattens this padding; it is not in any theme file we
       can reorder, so this is the only reliable override. */
    padding-left: 15px !important;
    padding-right: 15px !important;
}
#order-standard_cart .secondary-cart-body .view-cart-items-header {
    border-radius: var(--tn-radius) var(--tn-radius) 0 0;
}
#order-standard_cart .secondary-cart-body  .view-cart-tabs .tab-content {
    border-inline: 1px solid #dddddd;
    border-bottom: 1px solid #dddddd;
    border-radius: 0 0 var(--tn-radius) var(--tn-radius);
}
#order-standard_cart .secondary-cart-sidebar #orderSummary.order-summary {
    border-radius: var(--tn-radius);
}
#order-standard_cart .secondary-cart-sidebar .order-summary .btn-continue-shopping {
    margin-top: 10px;
    background-color: #ffffff;
}
#order-standard_cart .products .col-md-6 > .product {
    padding: 1px 0 10px 0;
    margin: 0 0 20px 0;
    background: #fff;
    border: 1px solid var(--tn-border-soft);
    border-radius: var(--tn-radius);
    box-shadow: var(--tn-shadow-sm);
}
#order-standard_cart .products .col-md-6 > .product header {
    border-radius: var(--tn-radius) var(--tn-radius) 0 0;
}
/* The CC-recipient input-group is injected with a full-bleed negative side
   margin on its own ID, which cancels the footer padding and pins it to the
   edges. Reset it at the ID (keep .margin-bottom-5's bottom margin intact). */
#containerAddCcEmail {
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.panel-sidebar .list-group-item {
    line-height: 24px;
}
.panel-sidebar .list-group-item i:not(.fa-circle):not(.fa-dot-circle):not(.no-transform) {
    float: right;
    line-height: 24px;
    font-size: 16px;
    color: #ccc;
}
.panel-sidebar .list-group-item.disabled,
.panel-sidebar .list-group-item.disabled:focus,
.panel-sidebar .list-group-item.disabled:hover {
    background-color: transparent;
    opacity: 0.5;
}

.panel-sidebar a.list-group-item:hover i.fas,
.panel-sidebar a.list-group-item:hover i.far {
    color: #666 !important;
}
.panel-sidebar a.list-group-item.active,
.panel-sidebar a.list-group-item.active:focus,
.panel-sidebar a.list-group-item.active:hover {
    background-color: var(--tn-primary);
    border-color: var(--tn-primary);
}
.panel-sidebar a.list-group-item.active i,
.panel-sidebar a.list-group-item.active:focus i,
.panel-sidebar a.list-group-item.active:hover i {
    color: #fff;
}
.panel-sidebar.view-filter-btns .list-group-item.active,
.panel-sidebar.view-filter-btns .list-group-item.active:focus,
.panel-sidebar.view-filter-btns .list-group-item.active:hover {
    background-color: #eee;
    border-color: #eee;
    color: #555;
}

.panel-sidebar .recent-ticket {
    line-height: 20px;
}
span.ticket-number, span.ticket-subject {
    font-size: 0.876rem;
}

/**
 * -------------------------
 * Store
 * -------------------------
 */

.store-order-container {
    margin: 20px 0;
    padding: 30px;
}
.store-order-container h2 {
    margin-top: 0;
}
.store-order-container .btn {
    padding: 10px 30px;
    font-size: 1.15em;
    font-weight: 300;
}

.store-order-container .store-domain-tabs {
    margin-top: 20px;
}
.store-order-container .store-domain-tabs li a {
    margin-right: 10px;
    padding: 7px 15px;
    background-color: #f9f9f9;
    border-bottom: 1px solid #ddd;
}
.store-order-container .store-domain-tabs li.active a {
    background-color: #fff;
    border-bottom: 1px solid transparent;
}
.store-order-container .store-domain-tab-content {
    margin-bottom: 20px;
    padding: 20px;
    border: 1px solid #ddd;
    border-top: 0;
}
.store-order-container .store-domain-tab-content a {
    text-decoration: underline;
}
.store-order-container .store-domain-tab-content a:hover {
    text-decoration: none;
}

.store-order-container .payment-term h4 {
    margin-top: 25px;
}
@media (min-width: 768px) {
    .store-order-container .payment-term {
        float: right;
    }
    .store-order-container .payment-term h4 {
        margin-top: 0;
    }
}

.store-order-container .domain-validation {
    display: block;
    padding-top: 5px;
    font-size: 1.2em;
    font-weight: 300;
    color: #888;
}
.store-order-container .domain-validation.ok {
    color: #53a22d;
}

.store-promoted-product {
    margin: 50px 0;
    padding: 30px 30px 50px 30px;
    background-color: #f6f6f6;
}
.store-promoted-product .icon {
    height: 200px;
    line-height: 200px;
    text-align: center;
    overflow: hidden;
}
.store-promoted-product .icon img {
    max-width: 100%;
    max-height: 100%;
}
.store-promoted-product ul.features {
    margin: 20px 0;
    padding: 0;
    list-style: none;
    font-size: 1.1em;
    font-weight: 300;
}
.store-promoted-product ul.features li {
    float: left;
    width: 50%;
    margin-bottom: 5px;
}
.store-promoted-product ul.features li .fa:not(.fa-spinner) {
    font-size: 1.2em;
    color: #91c590;
    margin-left: 20px;
    margin-right: 10px;
}
.store-promoted-product .btn {
    margin-top: 10px;
    padding: 10px 30px;
    font-size: 1.2em;
    font-weight: 300;
}

/**
 * -------------------------
 * Promotional Content Formatting
 * -------------------------
 */

.promo-banner {
    margin: 0;
    padding: 15px 10px 20px 10px;
    background-color: #fff;
    border: 1px solid #ddd;
    font-size: 1em;
    overflow: auto;
}
.promo-banner .icon {
    float: left;
    margin: 0 20px 0 0;
}
.promo-banner img {
    max-width: 300px;
    max-height: 200px;
}
.promo-banner .icon-left {
    margin-bottom: 10px;
    text-align: center;
}
@media (max-width: 767px) {
    .promo-banner form {
        text-align: center;
    }
}
@media (min-width: 768px) {
    .promo-banner img {
        max-width: 100%;
        max-height: 100%;
    }
    .promo-banner .icon-left {
        float: left;
        margin: 0;
        width: 155px;
    }
    .promo-banner .content {
        margin-left: 185px;
    }
}

.promo-banner h3 {
    margin: 0;
    padding: 0;
    font-size: 24px;
    font-weight: 300;
}
.promo-banner h4 {
    font-size: 18px;
    font-weight: 300;
}

.promo-banner p {
    margin: 5px 0;
}

.promo-banner ul {
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 0.92em;
}
.promo-banner ul li {
    margin-bottom: 4px;
}
@media (min-width: 1200px) {
    .promo-banner ul li {
        float: left;
        width: 50%;
    }
}

.promo-banner .fa:not(.fa-spinner) {
    font-size: 1.2em;
    color: #91c590;
    margin-left: 20px;
    margin-right: 10px;
}

.promo-banner a {
    color: #ff6600;
    text-decoration: underline;
}
.promo-banner .btn {
    margin: 6px 0 0 0;
    padding: 8px 30px;
    background-color: #ff6600;
    border: 0;
    color: #fff;
}

@media (max-width: 650px) {
    .promo-banner .icon {
        width: 100%;
        margin-bottom: 15px;
    }
}

.promo-banner-rounded {
    border-radius: 4px;
}

.promo-banner-slim {
    padding: 10px;
}
.promo-banner-slim .icon-left {
    width: 85px;
}
.promo-banner-slim .content {
    margin-left: 110px;
}
.promo-banner-slim h3 {
    font-size: 18px;
}
.promo-banner-slim h4 {
    font-size: 14px;
}
.promo-banner-slim .btn {
    margin: 0 20px 0 0;
    padding: 6px 20px;
}

.promo-banner.ssl {
    border-top: 3px solid #4da24c;
}
.promo-banner.ssl .btn {
    background-color: #4da24c;
}

.promo-banner.weebly {
    border-top: 3px solid #2990ea;
}
.promo-banner.weebly .btn {
    background-color: #2990ea;
}

.promo-banner.spamexperts {
    border-top: 3px solid #589ed7;
}
.promo-banner.spamexperts .btn {
    background-color: #589ed7;
}

.promo-banner-slim.weebly .icon-left {
    width: 160px;
}
.promo-banner-slim.weebly .content {
    margin-left: 185px;
}

.promo-banner.sitelock {
    border-top: 3px solid #f2952d;
}
.promo-banner.sitelock .btn {
    background-color: #f2952d;
}

.promo-banner.codeguard {
    border-top: 3px solid #a9cc5f;
}
.promo-banner.codeguard a {
    color: #a9cc5f;
}
.promo-banner.codeguard .btn {
    background-color: #a9cc5f;
}

.mc-panel-promo {
    font-size: 0.95em;
}
.mc-panel-promo img {
    display: block;
    margin: 0 auto 6px;
    max-width: 90%;
    max-height: 87px;
}

/**
 * -------------------------
 * MarketConnect Service SSO
 * -------------------------
 */

.panel-mc-sso {
    padding: 0 10px 10px 10px;
}
.panel-mc-sso img {
    max-width: 100%;
    max-height: 120px;
}
.panel-mc-sso .row {
    margin-left: -5px;
    margin-right: -5px;
}
.panel-mc-sso .col-sm-6 {
    padding-left: 5px;
    padding-right: 5px;
}
.panel-mc-sso .form-control,
.panel-mc-sso .btn,
.panel-mc-sso small {
    margin-top: 5px;
}
.panel-mc-sso small {
    display: block;
}

/**
 * -------------------------
 * Social buttons
 * -------------------------
 */

.social-signin-btns {
    text-align: center;
}
.social-signin-btns .btn {
    margin-bottom: 5px;
}

.btn-social {
    position: relative;
    padding-left: 44px;
    text-align: left;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.btn-social i.fas,
.btn-social i.far {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    padding-right: 2px;
    width: 32px;
    line-height: 34px;
    font-size: 1.6em;
    text-align: center;
    border-right: 1px solid rgba(0, 0, 0, 0.2);
}
.btn-facebook {
    color: #fff;
    background-color: #4267b2;
    border-color: rgba(0, 0, 0, 0.2)
}
.btn-facebook:hover, .btn-facebook:focus, .btn-facebook:active, .btn-facebook.active, .open .dropdown-toggle.btn-facebook {
    color: #fff;
    background-color: #30487b;
    border-color: rgba(0, 0, 0, 0.2)
}
.btn-facebook:active, .btn-facebook.active, .open .dropdown-toggle.btn-facebook {
    background-image: none
}
.btn-facebook.disabled, .btn-facebook[disabled], fieldset[disabled] .btn-facebook, .btn-facebook.disabled:hover, .btn-facebook[disabled]:hover, fieldset[disabled] .btn-facebook:hover, .btn-facebook.disabled:focus, .btn-facebook[disabled]:focus, fieldset[disabled] .btn-facebook:focus, .btn-facebook.disabled:active, .btn-facebook[disabled]:active, fieldset[disabled] .btn-facebook:active, .btn-facebook.disabled.active, .btn-facebook[disabled].active, fieldset[disabled] .btn-facebook.active {
    background-color: #4267b2;
    border-color: rgba(0, 0, 0, 0.2)
}
.btn-google {
    color: #000;
    background-color: #fff;
    border-color: rgba(0, 0, 0, 0.2)
}
.btn-google img {
    margin-bottom: 2px;
}
.btn-social.btn-google {
    padding-left: 41px;
}
.btn-google:hover, .btn-google:focus, .btn-google:active, .btn-google.active, .open .dropdown-toggle.btn-google {
    color: #000;
    border-color: rgba(0, 0, 0, 0.5)
}
.btn-google:active, .btn-google.active, .open .dropdown-toggle.btn-google {
    background-image: none
}
.btn-google.disabled, .btn-google[disabled], fieldset[disabled] .btn-google, .btn-google.disabled:hover, .btn-google-plus[disabled]:hover, fieldset[disabled] .btn-google-plus:hover, .btn-google-plus.disabled:focus, .btn-google-plus[disabled]:focus, fieldset[disabled] .btn-google-plus:focus, .btn-google-plus.disabled:active, .btn-google-plus[disabled]:active, fieldset[disabled] .btn-google-plus:active, .btn-google-plus.disabled.active, .btn-google-plus[disabled].active, fieldset[disabled] .btn-google-plus.active {
    background-color: #eee;
    border-color: rgba(0, 0, 0, 0.2)
}
.btn-twitter {
    color: #fff;
    background-color: #2ba9e1;
    border-color: rgba(0, 0, 0, 0.2)
}
.btn-twitter:hover, .btn-twitter:focus, .btn-twitter:active, .btn-twitter.active, .open .dropdown-toggle.btn-twitter {
    color: #fff;
    background-color: #1c92c7;
    border-color: rgba(0, 0, 0, 0.2)
}
.btn-twitter:active, .btn-twitter.active, .open .dropdown-toggle.btn-twitter {
    background-image: none
}
.btn-twitter.disabled, .btn-twitter[disabled], fieldset[disabled] .btn-twitter, .btn-twitter.disabled:hover, .btn-twitter[disabled]:hover, fieldset[disabled] .btn-twitter:hover, .btn-twitter.disabled:focus, .btn-twitter[disabled]:focus, fieldset[disabled] .btn-twitter:focus, .btn-twitter.disabled:active, .btn-twitter[disabled]:active, fieldset[disabled] .btn-twitter:active, .btn-twitter.disabled.active, .btn-twitter[disabled].active, fieldset[disabled] .btn-twitter.active {
    background-color: #2ba9e1;
    border-color: rgba(0, 0, 0, 0.2)
}

.providerPreLinking {
    min-height: 52px;
}
.providerLinkingFeedback {
    display: none;
}

/**
 * -------------------------
 * Registration page
 * -------------------------
 */

#registration {
    margin: 0;
    padding: 0 0 40px 0;
}

#registration .field-container {
    margin: 0 0 30px 0;
}

#registration label {
    font-weight: 300;
    color: #666;
    font-size: 13px;
}

#registration .info-text-sm {
    font-size: 0.85em;
    text-align: center;
}

.marketing-email-optin {
    margin: 0 0 20px 0;
    padding: 10px 20px 20px;
    background-color: #f8f8f8;
    border-radius: 3px;
}

/*
 * Section Dividers
 */

#registration .sub-heading {
    height: 0;
    border-top: 1px solid #DDD;
    text-align: center;
    margin-top: 20px;
    margin-bottom: 30px;
}
#registration .sub-heading span {
    display: inline-block;
    position: relative;
    padding: 0 17px;
    top: -11px;
    font-size: 16px;
    color: var(--tn-primary);
    background-color: #fff;
}

/**
 * Form fields
 */
input#client-type-pf, input#client-type-pj {
    margin: 0;
}
/* Client-type radio switch — flex rows so the two options stay left-aligned and
   evenly spaced whether inline (desktop) or stacked (mobile). The .input-group +
   .radio-inline combo otherwise indents the second option when it wraps. */
#registration .form-group.form-inline .radio-inline,
body #order-standard_cart .form-group.form-inline .radio-inline {
    display: flex;
    align-items: center;
    padding-left: 0;
    margin-left: 0;
    margin-right: 20px;
    margin-bottom: 8px;
}
#registration .form-group.form-inline .radio-inline .control-label,
body #order-standard_cart .form-group.form-inline .radio-inline .control-label {
    padding-left: 20px;
    margin-bottom: 0;
}
#registration .intl-tel-input.separate-dial-code .selected-dial-code {
    line-height: 40px;
}
#registration .prepend-icon,
body #order-standard_cart .prepend-icon {
    top: 0;
    left: 0;
    display: inline-block;
    vertical-align: top;
    position: relative;
    width: 100%;
    font-weight: normal;
}
#registration .field,
#registration .form-control,
body #order-standard_cart .field,
body #order-standard_cart .form-control {
    position: relative;
    vertical-align: top;
    border: 1px solid var(--tn-border);
    display: -moz-inline-stack;
    display: inline-block;
    color: #626262;
    outline: none;
    background: #fff;
    height: 40px;
    width: 100%;
    border-radius: var(--tn-radius);
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, .075);
    transition: border-color var(--tn-transition), box-shadow var(--tn-transition);
    /* 16px, matching .form-control above — see the note there. height:40px is pinned,
       so this is a zero-reflow change. Labels (13px) and help text (12px) stay put. */
    font-size: 16px;
}
#registration .input-group-lg > .form-control {
    height: 46px;
    padding: 10px 16px;
    font-size: 18px;
    line-height: 1.3333333;
    border-radius: 6px 0 0 6px;
}
#registration .form-control-qty {
    width: 70px;
    text-align: center;
}
#registration .form-control-static-inline {
    display: inline-block;
}
#registration .field:focus,
#registration .form-control:focus,
body #order-standard_cart .field:focus,
body #order-standard_cart .form-control:focus {
    outline: none;
    border-color: var(--tn-focus-border);
    box-shadow: 0 0 0 0.15rem rgba(21, 87, 156, 0.15);
    box-shadow: 0 0 0 0.15rem color-mix(in srgb, var(--tn-focus-border) 15%, transparent);
}
#registration textarea.field,
body #order-standard_cart textarea.field {
    height: auto;
}
#registration .prepend-icon .field,
body #order-standard_cart .prepend-icon .field {
    -webkit-appearance: none;
    padding-left: 36px;
}
#registration .prepend-icon .field-icon i,
body #order-standard_cart .prepend-icon .field-icon i {
    position: relative;
    font-size: 14px;
}
#registration .prepend-icon .field-icon,
body #order-standard_cart .prepend-icon .field-icon {
    top: 0;
    z-index: 4;
    width: 42px;
    height: 36px;
    color: inherit;
    line-height: 42px;
    position: absolute;
    text-align: center;
    -webkit-transition: all 0.5s ease-out;
    -moz-transition: all 0.5s ease-out;
    -ms-transition: all 0.5s ease-out;
    -o-transition: all 0.5s ease-out;
    transition: all 0.5s ease-out;
    pointer-events: none;
}
#registration .field-icon i,
body #order-standard_cart .field-icon i {
    color: #bbb;
}

#registration .field[disabled],
#registration .field[readonly],
#registration .form-control[disabled],
#registration .form-control[readonly],
body #order-standard_cart .field[disabled],
body #order-standard_cart .field[readonly],
body #order-standard_cart .form-control[disabled],
body #order-standard_cart .form-control[readonly] {
    background-color: #f8f8f8;
    opacity: 1;
}

#registration .field-help-text,
body #order-standard_cart .field-help-text {
    display: block;
    margin-top: 5px;
    margin-bottom: 10px;
    color: #888;
    font-size: 12px;
}

/* Security notice: tame the oversized lock icon from the cart bundle
   (all.min.css sets it to 2.8em) and realign it with the text. */
body #order-standard_cart .checkout-security-msg {
    padding-left: 42px;
}
body #order-standard_cart .checkout-security-msg i {
    margin-left: -28px;
    font-size: 1.6em;
}

/* Native (non-iCheck) radios / checkboxes on brand palette, shared by the
   register form and the cart checkout client-type + terms controls. */
input#client-type-pf, input#client-type-pj,
input.accepttos, #order-standard_cart input.no-icheck[type="checkbox"] {
    accent-color: var(--tn-primary);
}

input[type=checkbox], input[type=radio] {
    margin: 3px 0 0;
}

/* Product configuration "Continue" submit (standard_2026/configureproduct.tpl).
   Fixed width so the button doesn't stretch to its label + arrow icon. The ID beats
   .btn/.btn-lg on specificity, so this holds even though the cart's all.min.css
   loads after this file. */
#btnCompleteProductConfig {
    width: 145px;
}

/**
 * -------------------------
 * Password Strength Meter
 * -------------------------
 */

.password-strength-meter .progress {
    margin-bottom: 5px;
}
.password-strength-meter p {
    margin-bottom: 15px;
}

#inputAttachments {
    height: 40px;
    line-height: 25px;
    margin-bottom: 0;
}
/**
 * -------------------------
 * Service Upgrade
 * -------------------------
 */

.upgrade .product-to-be-upgraded {
    margin: 20px 0;
    padding: 15px;
    background-color: #f8f8f8;
}
.upgrade .product-to-be-upgraded h4,
.upgrade .product-to-be-upgraded h5 {
    margin: 0;
}
.upgrade .products {
    margin-left: -5px;
    margin-right: -5px;
}
.upgrade .products .column {
    padding-left: 5px;
    padding-right: 5px;
}
.upgrade .products .product {
    margin: 20px 0;
    padding: 0;
    background-color: #fff;
}
.upgrade .products .product .current,
.upgrade .products .product .recommended {
    padding: 5px;
    background-color: #ffbc00;
    color: #f5f5f5;
    font-weight: bold;
    text-align: center;
}
.upgrade .products .product .recommended {
    background-color: #25ac2f;
}
.upgrade .products .product ul {
    border-left: 1px solid #eee;
    border-right: 1px solid #eee;
}
.upgrade .products .product .footer {
    border: 1px solid #eee;
    border-top: 0;
}
.upgrade .products .product .header {
    margin: 0;
    padding: 20px;
    background-color: var(--tn-primary);
    color: #fff;
    min-height: 150px;
}
.upgrade .products .product .header p {
    font-size: 1.1em;
    font-weight: 300;
}
.upgrade .products .product ul {
    margin: 0;
    padding: 20px 25px;
    list-style: none;
}
.upgrade .products .product ul li {
    line-height: 25px;
    font-size: 0.9em;
    text-align: right;
    color: #aaa;
    border-bottom: 1px solid #eee;
}
.upgrade .products .product ul li:last-child {
    border: 0;
}
.upgrade .products .product ul li span {
    float: left;
    color: #444;
}
.upgrade .products .fas,
.upgrade .products .far {
    font-size: 1.3em;
}
.upgrade .products .fa-check {
    color: #23ad2e;
}
.upgrade .products .product .footer {
    margin: 0;
    padding: 20px;
}
.upgrade .products .product .footer select {
    margin-bottom: 10px;
}
.upgrade .products .product .btn {
    background-color: var(--tn-primary);
    color: #fff;
}
.upgrade .products .product .btn:hover,
.upgrade .products .product .btn:focus {
    background-color: var(--tn-primary-hover);
    color: #fff;
}

/**
 * Helper Alerts
 */
.alert .fas.pull-left {
    margin: -3px 0 0 -3px;
}
.alert .alert-text {
    margin-left: 56px;
}
.panel-sidebar .alert {
    padding: 10px 15px;
    margin-bottom: 5px;
}

/**
 * iCheck controls
 */

.checkbox-inline.icheck-label, .radio-inline.icheck-label {
    padding-left: 0;
    margin-left: 30px;
    margin-right: 20px;
}

.icheck-label .iradio_square-blue {
    margin-right: 5px;
    margin-left: -30px;
    margin-top: -2px;
}

/**
 * JsonForm
 */

form[data-role="json-form"] .has-error input.form-control,
form[data-role="json-form"] .has-error textarea.form-control,
form[data-role="json-form"] .has-error select.form-control {
    background-color: #fff0f0;
    transition: 0.2s;
}

form[data-role="json-form"] .has-error .tooltip-inner {
    background-color: #9d2a0b;
}

form[data-role="json-form"] .has-error .tooltip.top .tooltip-arrow {
    border-top-color: #9d2a0b;
}

/**
 * Credit Card Input
 */

.cc-number-field {
    background-image: url(../../../assets/img/payment/unknown.png);
    background-repeat: no-repeat;
    background-position: right 10px center;
}
.cc-number-field.visa {
    background-image: url(../../../assets/img/payment/visa.png);
}
.cc-number-field.mastercard {
    background-image: url(../../../assets/img/payment/mastercard.png);
}
.cc-number-field.amex {
    background-image: url(../../../assets/img/payment/amex.png);
}
.cc-number-field.dinersclub {
    background-image: url(../../../assets/img/payment/dinersclub.png);
}
.cc-number-field.discover {
    background-image: url(../../../assets/img/payment/discover.png);
}
.cc-number-field.unionpay {
    background-image: url(../../../assets/img/payment/unionpay.png);
}
.cc-number-field.jcb {
    background-image: url(../../../assets/img/payment/jcb.png);
}
.cc-number-field.maestro {
    background-image: url(../../../assets/img/payment/maestro.png);
}
.cc-number-field.forbrugsforeningen {
    background-image: url(../../../assets/img/payment/forbrugsforeningen.png);
}
.cc-number-field.dankort {
    background-image: url(../../../assets/img/payment/dankort.png);
}

/* =====================================================================
   Bootstrap 5 Visual Language Layer
   ---------------------------------------------------------------------
   Recreates the trustnetsolutions.ro Bootstrap 5 look & feel on top of
   the WHMCS Six (Bootstrap 3.4.1) markup. CSS-only, no template/JS/markup
   changes, no panel->card conversion. This block loads last in the last
   theme-owned stylesheet, so it overrides earlier rules at equal
   specificity without needing !important.
   ===================================================================== */

:root {
    --tn-primary: #15579c;
    --tn-primary-hover: #12467e;
    --tn-primary-rgb: 21, 87, 156;
    --tn-secondary: #333e4b;
    --tn-secondary-hover: #232c36;
    --tn-dark: #222d3a;;

    --tn-success: #16a34a;
    --tn-success-hover: #128a3e;
    --tn-warning: #d97706;
    --tn-warning-hover: #b45309;
    --tn-danger: #dc2626;
    --tn-danger-hover: #b91c1c;
    --tn-info: #0891b2;
    --tn-info-hover: #0e7490;

    --tn-body-color: #212529;
    --tn-muted: #6c757d;
    --tn-border: #dee2e6;
    --tn-border-soft: #eaeaea;
    --tn-border-translucent: rgba(0, 0, 0, .175);
    --tn-surface-soft: #f8f9fa;

    /* NB: Bootstrap 3 sets html{font-size:10px}, so rem here would be 10px-based.
       These are expressed in px to hit the true BS5 (16px-based) values. */
    --tn-radius: 8px;       /* BS5 .5rem  */
    --tn-radius-sm: 4px;    /* BS5 .25rem */
    --tn-radius-lg: 12px;   /* BS5 .75rem */

    --tn-shadow-xs: 0 1px 2px rgba(34, 45, 58, .15);
    --tn-shadow-sm: 0 1px 4px rgba(34, 45, 58, .15);
    --tn-shadow: 0 8px 16px rgba(34, 45, 58, .15);
    --tn-shadow-lg: 0 16px 48px rgba(34, 45, 58, .175);

    --tn-focus-ring: 0 0 0 4px rgba(var(--tn-primary-rgb), .25);
    --tn-focus-border: #8aabcd;
    --tn-transition: .15s ease-in-out;
}

/* --- 1. Typography --------------------------------------------------- */
/* BS5: relaxed line-height (1.6), lighter heading weight (500), primary
   links. Fonts (Open Sans / Raleway) and base font-size are kept intact. */
body {
    line-height: 1.6;
}
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    font-weight: 500;
    line-height: 1.2;
}
a {
    color: var(--tn-primary);
    transition: color var(--tn-transition);
}
a:hover,
a:focus {
    color: var(--tn-primary-hover);
    text-underline-offset: 5px;
    outline: 0;
}
.btn {
    outline: none;
}

.btn:focus-visible,
a:focus-visible {
    outline: 1px auto -webkit-focus-ring-color;
    outline-offset: 1px;
}

/* --- 2. Buttons ------------------------------------------------------ */
/* BS5: softer radius, weight 400, soft shadow, smooth transitions and a
   4px focus ring. Contextual variants recolored to the token palette. */
.btn {
    border-radius: var(--tn-radius-sm);
    font-weight: 400;
    box-shadow: var(--tn-shadow-xs);
    transition: color var(--tn-transition), background-color var(--tn-transition),
        border-color var(--tn-transition), box-shadow var(--tn-transition);
}
.btn:focus,
.btn:active:focus,
.dropdown-toggle:focus {
    outline: 0;
    box-shadow: none;
}
.btn-default {
    border-color: var(--tn-border);
}
.btn-primary {
    background-color: var(--tn-primary);
    border-color: var(--tn-primary);
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active {
    background-color: var(--tn-primary-hover);
    border-color: var(--tn-primary-hover);
}
.btn-secondary {
    background-color: var(--tn-secondary);
    border-color: var(--tn-secondary);
    color: #fff;
}
.btn-secondary:hover,
.btn-secondary:focus,
.btn-secondary:active {
    background-color: var(--tn-secondary-hover);
    border-color: var(--tn-secondary-hover);
    color: #fff;
}
.btn-success {
    background-color: var(--tn-success);
    border-color: var(--tn-success);
}
.btn-success:hover,
.btn-success:focus,
.btn-success:active {
    background-color: var(--tn-success-hover);
    border-color: var(--tn-success-hover);
}
.btn-danger {
    background-color: var(--tn-danger);
    border-color: var(--tn-danger);
}
.btn-danger:hover,
.btn-danger:focus,
.btn-danger:active {
    background-color: var(--tn-danger-hover);
    border-color: var(--tn-danger-hover);
}
.btn-warning {
    background-color: var(--tn-warning);
    border-color: var(--tn-warning);
    color: #fff;
}
.btn-warning:hover,
.btn-warning:focus,
.btn-warning:active {
    background-color: var(--tn-warning-hover);
    border-color: var(--tn-warning-hover);
    color: #fff;
}
.btn-info {
    background-color: var(--tn-info);
    border-color: var(--tn-info);
    color: #fff;
}
.btn-info:hover,
.btn-info:focus,
.btn-info:active {
    background-color: var(--tn-info-hover);
    border-color: var(--tn-info-hover);
    color: #fff;
}

/* --- 3. Forms -------------------------------------------------------- */
/* BS5: softer radius and the blue focus ring replaces BS3's glow. Padding is
   left alone so input-groups stay aligned.
   font-size is 16px, not BS3's 14px, to match the marketing site's standard
   control tier ($ctl-font-size) and because iOS Safari focus-zooms any field
   under 16px — the viewport here sets no maximum-scale. Costs no layout: the
   explicit height:40px below pins the box (40 - 16*1.42857 - 2 border = 15.1px
   of room against 6px declared padding). The 18px .input-group-lg domain-search
   fields keep their own size and match the marketing hero's lg tier. */
.form-control {
    border-radius: var(--tn-radius);
    border-color: var(--tn-border);
    box-shadow: none;
    transition: border-color var(--tn-transition), box-shadow var(--tn-transition);
    height: 40px;
    font-size: 16px;
}
.form-control:focus {
    outline: none;
    border-color: var(--tn-focus-border);
    box-shadow: 0 0 0 0.15rem rgba(21, 87, 156, 0.15);
    box-shadow: 0 0 0 0.15rem color-mix(in srgb, var(--tn-focus-border) 15%, transparent);
}
.input-group-addon {
    border-radius: var(--tn-radius);
    border-color: var(--tn-border);
    background-color: var(--tn-surface-soft);
}
/* BS3 sizes an input-group button by its own padding, so next to our taller
   40px .form-control it renders short and centered. Match the input height.
   No drop shadow: it's a joined button, the shadow reads as detached. */
.input-group-btn > .btn {
    height: 40px;
    box-shadow: none;
}
.input-group-lg .input-group-btn > .btn {
    height: 46px;
}

/* BS4/5 utility classes WHMCS emits that BS3 has no rule for. Without these,
   markup like the "additional options" select (form-inline + w-100 + btn-block)
   collapses to a tiny auto-width control because BS3's
   `.form-inline .form-control{width:auto;display:inline-block}` wins. Honour the
   intended stacked, full-width layout. Spacing uses px (BS3 sets html to 10px,
   so rem-based BS5 values would be a quarter of their intended size). */
.w-100 {
    width: 100%;
}
.form-inline .form-control.w-100 {
    display: block;
    width: 100%;
    margin-bottom: 10px;
}
.mr-2 {
    margin-right: 8px;
}
.mt-1 {
    margin-top: 4px;
}
/* A default-size button paired with an input (contacts submit, change-password
   "Generare Parolă", etc.) renders ~34px vs the 40px .form-control. Bump vertical
   padding to 9px so default buttons in the page body land at 40px, text still
   centred. Scoped to .main-content (plus any default block button) so the thin
   top-nav and modal footer buttons are untouched; sized variants (btn-sm/-xs/-lg,
   e.g. the sidebar action buttons) keep their own height. */
.main-content .btn:not(.btn-sm):not(.btn-xs):not(.btn-lg),
.btn-block:not(.btn-sm):not(.btn-xs):not(.btn-lg) {
    padding-top: 9px;
    padding-bottom: 9px;
}
.main-content .suggested-domains .btn:not(.domain-contact-support) {
    padding: 4px 10px 5px 10px;
}
/* Domain suggestion rows: the price+button block is float:right but the row
   (.list-group-item) has no clearfix, so a taller-than-line float overflows into
   the next row and — once the overflow accumulates — collides with a later
   right-float and shoves it into the middle (the "straggler" rows). Clearfix each
   row so its float is contained and the next row starts clean. No visual change
   otherwise. */
.suggested-domains .list-group-item::before,
.suggested-domains .list-group-item::after {
    content: " ";
    display: table;
}
.suggested-domains .list-group-item::after {
    clear: both;
}
/* Login page: widen the gap between the submit and the "forgot password" link.
   Scoped to #login so button groups (which must stay flush) are unaffected. */
#login + .btn {
    margin-left: 12px;
}

/* --- 4. Panels (read as BS5 cards) ---------------------------------- */
/* BS5 card: larger radius, translucent border, soft shadow, understated
   header. Panels stay panels (no markup change), only restyled. */
.panel {
    border: 1px solid var(--tn-border-soft);
    border-radius: var(--tn-radius);
    box-shadow: var(--tn-shadow-sm);
    overflow: hidden;
}
.panel-heading {
    border-top-left-radius: calc(var(--tn-radius) - 1px);
    border-top-right-radius: calc(var(--tn-radius) - 1px);
}
.panel-default {
    border-color: #eee;
}
.panel-default > .panel-heading {
    background-color: rgba(var(--tn-primary-rgb), .03);
    border-bottom-color: var(--tn-border);
    color: var(--tn-body-color);
}
.panel-footer {
    border-top-color: var(--tn-border);
    border-bottom-left-radius: calc(var(--tn-radius) - 1px);
    border-bottom-right-radius: calc(var(--tn-radius) - 1px);
}

/* --- 5. Tables ------------------------------------------------------- */
/* BS5: lighter borders and subtle zebra/hover tints. */
.table > thead > tr > th,
.table > tbody > tr > th,
.table > tfoot > tr > th,
.table > thead > tr > td,
.table > tbody > tr > td,
.table > tfoot > tr > td {
    border-top-color: var(--tn-border);
}
.table > thead > tr > th {
    border-bottom-color: var(--tn-border);
}
.table-bordered,
.table-bordered > thead > tr > th,
.table-bordered > tbody > tr > th,
.table-bordered > tfoot > tr > th,
.table-bordered > thead > tr > td,
.table-bordered > tbody > tr > td,
.table-bordered > tfoot > tr > td {
    border-color: var(--tn-border);
}
.table-striped > tbody > tr:nth-of-type(odd) > td,
.table-striped > tbody > tr:nth-of-type(odd) > th {
    background-color: rgba(0, 0, 0, .03);
}
.table-hover > tbody > tr:hover > td,
.table-hover > tbody > tr:hover > th {
    background-color: rgba(0, 0, 0, .05);
}

/* --- 6. Alerts ------------------------------------------------------- */
/* BS5: softer radius and subtle tinted backgrounds per state. The child's
   custom .alert-darkgreen is left untouched. */
.alert {
    border-radius: var(--tn-radius);
}
.alert-link {
    font-weight: 700;
}
.alert-success {
    color: #0f5132;
    background-color: #e7f4ec;
    border-color: #badbcc;
}
.alert-info {
    color: #055160;
    background-color: #e3f5f9;
    border-color: #b6e6ef;
}
.alert-warning {
    color: #7a4405;
    background-color: #fdf3e7;
    border-color: #f6d9b3;
}
.alert-danger {
    color: #8f1f1f;
    background-color: #fbeaea;
    border-color: #f3c0c0;
}

/* --- 7. Navigation --------------------------------------------------- */
/* Keep the on-brand dark navy (already == BS5 $primary-dark-blue). Modernize
   hover/active to the primary accent with smooth transitions. The green
   .account item is deliberately excluded so its styling is preserved. */
.navbar-main {
    background-color: var(--tn-dark);
}
.navbar-main .nav > li:not(.account) > a {
    transition: background-color var(--tn-transition), color var(--tn-transition);
    font-weight: bold;
}
.navbar-main .nav > li:not(.account) > a:hover,
.navbar-main .nav > li:not(.account) > a:focus,
.navbar-main .nav > li:not(.account).active > a,
.navbar-main .nav > li:not(.account).open > a {
    background-color: #19212b;
    color: #fff;
}
.navbar-main #primary-nav .dropdown-menu {
    padding: 8px 0; /* BS5 .5rem (html is 10px here) */
    border-radius: 0 0 var(--tn-radius) var(--tn-radius);
    border-color: var(--tn-border-soft);
    box-shadow: var(--tn-shadow);
    margin-top: 1px;
}
    /* --- 8. Dropdowns ---------------------------------------------------- */
/* BS5: softer radius, elevated shadow, roomy items, primary active state. */
.dropdown-menu {
    border-radius: var(--tn-radius);
    border-color: var(--tn-border-translucent);
    box-shadow: var(--tn-shadow);
    padding: 8px 0; /* BS5 .5rem (html is 10px here) */
}
.dropdown-menu > li > a {
    padding: 6px 16px; /* BS5 dropdown item ~.25rem 1rem */
    transition: background-color var(--tn-transition), color var(--tn-transition);
}
.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus {
    background-color: var(--tn-surface-soft);
    color: var(--tn-body-color);
}
.dropdown-menu > .active > a,
.dropdown-menu > .active > a:hover,
.dropdown-menu > .active > a:focus {
    background-color: var(--tn-primary);
    color: #fff;
}

/* --- 9. Modals ------------------------------------------------------- */
/* BS5: larger radius, translucent border, softer (sm) shadow. */
.modal-content {
    border-radius: var(--tn-radius-lg);
    border: 1px solid var(--tn-border-translucent);
    box-shadow: var(--tn-shadow-sm);
}
.modal-header {
    border-bottom-color: var(--tn-border);
}
.modal-footer {
    border-top-color: var(--tn-border);
}

/* --- 10. Badges ------------------------------------------------------ */
/* BS5: non-pill radius, bold weight. */
.badge {
    border-radius: var(--tn-radius);
    font-weight: 700;
    padding: .35em .65em;
}

/* --- 11. Labels ------------------------------------------------------ */
/* BS5-style subtle radius (parent forces 0) + token-aligned colors. */
.panel.panel-default .label {
    border-radius: var(--tn-radius-sm);
    padding: .2em .6em .2em;
}
.panel.panel-default .label-primary {
    background-color: var(--tn-primary);
}
.panel.panel-default .label-success {
    background-color: var(--tn-success);
}
.panel.panel-default .label-info {
    background-color: var(--tn-info);
}
.panel.panel-default .label-warning {
    background-color: var(--tn-warning);
}
.panel.panel-default .label-danger {
    background-color: var(--tn-danger);
}

/* --- 12. Pagination -------------------------------------------------- */
/* BS5: primary links, soft hover, primary active state. */
.pagination > li > a,
.pagination > li > span {
    color: var(--tn-primary);
    border-color: var(--tn-border);
    transition: background-color var(--tn-transition), color var(--tn-transition);
}
.pagination > li:first-child > a,
.pagination > li:first-child > span {
    border-top-left-radius: var(--tn-radius);
    border-bottom-left-radius: var(--tn-radius);
}
.pagination > li:last-child > a,
.pagination > li:last-child > span {
    border-top-right-radius: var(--tn-radius);
    border-bottom-right-radius: var(--tn-radius);
}
.pagination > li > a:hover,
.pagination > li > a:focus,
.pagination > li > span:hover,
.pagination > li > span:focus {
    background-color: var(--tn-surface-soft);
    color: var(--tn-primary-hover);
    border-color: var(--tn-border);
}
.pagination > .active > a,
.pagination > .active > a:hover,
.pagination > .active > a:focus,
.pagination > .active > span,
.pagination > .active > span:hover,
.pagination > .active > span:focus {
    background-color: var(--tn-primary);
    border-color: var(--tn-primary);
    color: #fff;
}

/* --- 13. Wells ------------------------------------------------------- */
/* BS5: soft surface, larger radius, no inset shadow. */
.well {
    border-radius: var(--tn-radius);
    background-color: var(--tn-surface-soft);
    border-color: var(--tn-border);
    box-shadow: none;
}

/* --- 14. Progress bars ---------------------------------------------- */
/* BS5: softer track, larger radius, primary fill. */
.progress {
    border-radius: var(--tn-radius);
    background-color: #e9ecef;
    box-shadow: none;
}
.progress-bar {
    background-color: var(--tn-primary);
    transition: width .6s ease;
}
/* ---- End Bootstrap 5 Visual Language Layer ---- */
