/* HostCrew client area: nexus (Bootstrap 4) in the hostcrew.com colours, dark by default, light when the visitor
   chose it on the site (same saved choice). Colours come only from the site's tokens (css/chrome.css, generated from
   /assets/site.css), so a token change on the site changes the client area too. Loaded after nexus's styles. */

/* ---- Page ---- */
html,body{background:var(--bg)}
body{color:var(--text);font-family:Geist,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
#main-body,section#main-body{background:transparent;color:var(--text);padding:36px 0 56px}
h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{color:var(--text);letter-spacing:-.01em}
a{color:var(--accent)}a:hover{color:var(--text)}
.text-muted,small.text-muted,.form-text{color:var(--muted)!important}
hr{border-color:var(--line)}
::selection{background:rgba(116,194,85,.3)}

/* ---- Client bar (below the site header): notifications, signed-in account, the client menus and cart ---- */
.hc-client{background:var(--bg2);border-bottom:1px solid var(--line)}
.hc-client .topbar{background:transparent;border-bottom:1px solid var(--line);padding:6px 0;font-size:13.5px}
.hc-client .topbar .btn,.hc-client .topbar .input-group-text{background:transparent;border:0;color:var(--muted);font-size:13.5px}
.hc-client .topbar .btn:hover,.hc-client .topbar .btn-active-client{color:var(--text)}
.hc-client .main-navbar-wrapper{padding:0}
.hc-client .navbar-nav .nav-link,.hc-client .navbar-nav a{color:var(--muted);font-size:15px;padding:14px 14px}
.hc-client .navbar-nav .nav-link:hover,.hc-client .navbar-nav .active>.nav-link,.hc-client .navbar-nav .show>.nav-link{color:var(--text)}
.hc-client .navbar-nav>li:first-child>.nav-link{padding-left:0}
.hc-client-toggle{color:var(--text);border:1px solid var(--line2);border-radius:999px;padding:7px 14px;font-size:14px;margin:10px 0}
.hc-cart{align-items:center;gap:6px;color:var(--muted);font-size:15px;padding:10px 0 10px 14px}
.hc-cart:hover{color:var(--text);text-decoration:none}
.hc-cart .badge{background:var(--bg3);color:var(--text);border-radius:999px;font-weight:600;padding:3px 8px}
@media (max-width:1199.98px){.hc-client .container{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.hc-client .navbar-collapse{flex-basis:100%}.hc-client .navbar-nav>li>.nav-link{padding:10px 0}}

/* ---- Menus, popovers, tooltips ---- */
.dropdown-menu{background:var(--bg2);border:1px solid var(--line2);border-radius:14px;box-shadow:0 18px 40px rgba(0,0,0,.35);padding:6px}
.dropdown-item{color:var(--chip);border-radius:9px;padding:8px 12px;font-size:14.5px}
.dropdown-item:hover,.dropdown-item:focus,.dropdown-item.active,.dropdown-item:active{background:var(--bg3);color:var(--text)}
.dropdown-divider{border-color:var(--line)}
.popover{background:var(--bg2);border:1px solid var(--line2);border-radius:14px}
.popover-body{color:var(--text)}
.bs-popover-bottom>.arrow:after,.bs-popover-auto[x-placement^=bottom]>.arrow:after{border-bottom-color:var(--bg2)}
.client-alerts a{color:var(--text)}

/* ---- Breadcrumb (the site's mono style) ---- */
.master-breadcrumb{background:transparent;border:0;padding-top:18px}
.master-breadcrumb .breadcrumb{background:transparent;padding:0;margin:0;font:500 13px "Geist Mono",monospace;letter-spacing:.08em;text-transform:uppercase}
.master-breadcrumb .breadcrumb-item,.master-breadcrumb .breadcrumb-item a{color:var(--muted)}
.master-breadcrumb .breadcrumb-item.active{color:var(--text)}
.master-breadcrumb .breadcrumb-item+.breadcrumb-item:before{color:var(--line2)}

/* ---- Cards, sidebar, lists ---- */
.card,.panel{background:linear-gradient(180deg,var(--bg2),var(--bgend));border:1px solid var(--line);border-radius:18px;color:var(--text)}
.card-header,.card-footer{background:transparent;border-color:var(--line);color:var(--text)}
.card-header{padding:16px 20px}.card-body{padding:20px}
.card-title{color:var(--text)}
.sidebar .card,.sidebar .panel{border-radius:16px;overflow:hidden}
.list-group-item{background:transparent;border-color:var(--line);color:var(--chip)}
.list-group-item-action:hover,.list-group-item-action:focus{background:var(--bg3);color:var(--text)}
.list-group-item.active{background:var(--bg3);border-color:var(--line);color:var(--text);box-shadow:inset 3px 0 0 var(--green)}
.badge-info,.badge-primary{background:var(--bg3);color:var(--text)}
.badge-success{background:rgba(116,194,85,.18);color:var(--accent)}
.badge-danger{background:rgba(229,103,94,.18);color:var(--red)}
.badge-warning{background:rgba(227,179,65,.18);color:var(--amber)}

/* ---- Tables ---- */
.table{color:var(--text)}
.table th,.table td,.table thead th{border-color:var(--line)}
.table thead th{color:var(--muted);font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.06em}
.table-striped tbody tr:nth-of-type(odd){background:rgba(255,255,255,.02)}
:root[data-theme=light] .table-striped tbody tr:nth-of-type(odd){background:rgba(12,14,18,.025)}
.table-hover tbody tr:hover,.table-list tbody tr:hover{background:var(--bg3);color:var(--text)}
.dataTables_wrapper,.dataTables_info,.dataTables_length,.dataTables_filter{color:var(--muted)}
.page-link{background:var(--bg2);border-color:var(--line);color:var(--chip)}
.page-item.active .page-link{background:var(--text);border-color:var(--text);color:var(--bg)}
.page-item.disabled .page-link{background:transparent;border-color:var(--line);color:var(--dim)}

/* ---- Forms ---- */
.form-control,.custom-select,.input-group-text{background:var(--bg);border:1px solid var(--line2);color:var(--text);border-radius:10px}
.form-control:focus,.custom-select:focus{background:var(--bg);border-color:var(--green);color:var(--text);box-shadow:0 0 0 3px rgba(116,194,85,.18)}
.form-control::placeholder{color:var(--dim)}
.form-control:disabled,.form-control[readonly]{background:var(--bg3);color:var(--muted)}
label,.col-form-label{color:var(--chip)}
.custom-control-label:before{background:var(--bg);border-color:var(--line2)}
.custom-control-input:checked~.custom-control-label:before{background:var(--green);border-color:var(--green)}

/* ---- Buttons (the site's pill buttons) ---- */
.btn{border-radius:999px;font-weight:550}
.btn-primary,.btn-success{background:var(--text);border-color:var(--text);color:var(--bg)}
.btn-primary:hover,.btn-primary:focus,.btn-success:hover,.btn-success:focus,.btn-primary:not(:disabled):not(.disabled):active{background:var(--green);border-color:var(--green);color:#07080b}
.btn-default,.btn-secondary,.btn-light,.btn-outline-primary,.btn-outline-secondary{background:transparent;border:1px solid var(--line2);color:var(--text)}
.btn-default:hover,.btn-secondary:hover,.btn-light:hover,.btn-outline-primary:hover,.btn-outline-secondary:hover{background:transparent;border-color:var(--text);color:var(--text)}
.btn-danger{background:transparent;border:1px solid var(--red);color:var(--red)}
.btn-danger:hover{background:var(--red);color:#07080b}
.btn-link{color:var(--accent)}
.btn:focus,.btn.focus{box-shadow:0 0 0 3px rgba(116,194,85,.25)}

/* ---- Alerts ---- */
.alert{border-radius:14px;border:1px solid var(--line2);background:var(--bg2);color:var(--text)}
.alert-success{border-color:rgba(116,194,85,.45);box-shadow:inset 3px 0 0 var(--green)}
.alert-info{border-color:rgba(90,169,230,.45);box-shadow:inset 3px 0 0 var(--blue)}
.alert-warning{border-color:rgba(227,179,65,.45);box-shadow:inset 3px 0 0 var(--amber)}
.alert-danger{border-color:rgba(229,103,94,.45);box-shadow:inset 3px 0 0 var(--red)}
.alert a,.alert .alert-link{color:var(--text);text-decoration:underline}

/* ---- Tabs, modals ---- */
.nav-tabs{border-color:var(--line)}
.nav-tabs .nav-link{color:var(--muted);border:0;border-bottom:2px solid transparent}
.nav-tabs .nav-link:hover{color:var(--text);border-color:transparent}
.nav-tabs .nav-link.active,.nav-tabs .nav-item.show .nav-link{background:transparent;color:var(--text);border-bottom-color:var(--green)}
.modal-content{background:var(--bg2);border:1px solid var(--line2);border-radius:18px;color:var(--text)}
.modal-header,.modal-footer{border-color:var(--line)}
.close{color:var(--text);text-shadow:none;opacity:.6}.close:hover{color:var(--text);opacity:1}
.modal-backdrop.show{opacity:.7}

/* ---- Language / currency bar above the footer (only when enabled) ---- */
.hc-client-foot{border-top:1px solid var(--line);padding:16px 0}
.hc-client-foot .btn{color:var(--muted);border-color:var(--line2)}

/* ---- Width: the site's column (.wrap), not Bootstrap's fixed steps ---- */
.container{max-width:1240px;padding-left:24px;padding-right:24px}
@media (min-width:1680px){.container{max-width:1440px}}
@media (min-width:2000px){.container{max-width:1600px}}

/* ---- Homepage: domain search band and the "How can we help" tiles ---- */
.home-domain-search,.home-domain-search.bg-white{background:var(--bg2)!important;border-bottom:1px solid var(--line);color:var(--text)}
.home-domain-search h2,.home-domain-search .h2{color:var(--text)}
.home-domain-search .input-group-wrapper{background:var(--bg);border:1px solid var(--line2);border-radius:999px;padding:6px;box-shadow:none}
.home-domain-search .input-group-wrapper .form-control{border:0;background:transparent}
.home-domain-search .input-group-wrapper .form-control:focus{box-shadow:none}
.home-domain-search a{color:var(--accent)}
[class*="card-accent-"]{background:linear-gradient(180deg,var(--bg2),var(--bgend))!important;border:1px solid var(--line)!important;border-radius:18px!important;color:var(--text)!important;box-shadow:none!important;transition:border-color .2s,transform .2s}
[class*="card-accent-"]:hover{border-color:var(--line2)!important;transform:translateY(-2px);text-decoration:none}
[class*="card-accent-"] i,[class*="card-accent-"] .ico-container i{color:var(--accent)!important}
:root[data-theme=light] :is(.card,.panel,[class*="card-accent-"],.home-domain-search .input-group-wrapper){box-shadow:var(--card-shadow)!important}
.home-domain-search #btnTransfer,.home-domain-search .btn-success{background:transparent!important;border:1px solid var(--line2)!important;color:var(--text)!important;margin-left:6px}
.home-domain-search #btnTransfer:hover{border-color:var(--text)!important}

/* ---- Cart, checkout, domain search, store pages (their stylesheet can load after this one, hence "body") ---- */
body .bg-white,body .view-cart-empty,body .input-group-box,body .product,body #order-standard_cart .product,body .domain-checker-container{background:var(--bg2)!important;color:var(--text);border-color:var(--line)!important}
body .product{border:1px solid var(--line)!important;border-radius:18px;overflow:hidden}
body .product header,body .product .product-desc,body .product footer{background:transparent;color:var(--text);border-color:var(--line)}
body .panel-heading,body .card-header,body .panel-heading.card-header{background:transparent!important;color:var(--text);border-color:var(--line)}
body .panel-title,body h3.panel-title{color:var(--text)}
body .form-control,body select.form-control,body textarea.form-control,body .field{background:var(--bg);border-color:var(--line2);color:var(--text)}
body .form-control:focus{background:var(--bg);color:var(--text)}
body .badge-secondary{background:var(--bg3);color:var(--chip)}
body .btn-default.active,body .btn-default:active{background:var(--bg3);border-color:var(--line2);color:var(--text)}
body .nav-tabs .nav-link.active{background:transparent;color:var(--text)}
body .btn-continue-shopping,body #continueShopping{color:var(--muted)}
body .multiselect-selected-text,body .domain-checker-container label,body .search-options label{color:var(--chip)}
body .summary-container,body .order-summary{background:var(--bg2);border:1px solid var(--line);border-radius:18px;color:var(--text)}
body .order-summary h2{background:transparent;color:var(--text);border-bottom:1px solid var(--line)}
/* The two order forms (standard_cart for domains and checkout, legacy_modern for the store) style by ID. */
:is(#order-standard_cart,#order-modern) :is(.bg-white,.tld-pricing-header,.tld-column,.domain-promo-box,.domain-pricing .row,.view-cart-items,.view-cart-items-header,.item,.empty-cart,.secondary-cart-body,.summary-container){background:var(--bg2)!important;color:var(--text);border-color:var(--line)!important}
:is(#order-standard_cart,#order-modern) :is(.form-control,select,textarea,input[type=text],input[type=email],input[type=password],input[type=number],.field){background:var(--bg)!important;border-color:var(--line2)!important;color:var(--text)!important}
:is(#order-standard_cart,#order-modern) :is(label,.multiselect-selected-text,.tld-pricing-header,h1,h2,h3,h4,.item-title,.item-price){color:var(--text)}
:is(#order-standard_cart,#order-modern) .badge-secondary{background:var(--bg3)!important;color:var(--chip)!important;border:1px solid var(--line2)}
:is(#order-standard_cart,#order-modern) .badge-success{background:rgba(116,194,85,.18)!important;color:var(--accent)!important}
:is(#order-standard_cart,#order-modern) .nav-tabs .nav-link.active{background:transparent!important;color:var(--text)!important;border-color:var(--line) var(--line) transparent!important}
:is(#order-standard_cart,#order-modern) .btn-continue-shopping{color:var(--muted)!important}
.domain-checker-bg{background:var(--bg2)!important;border-bottom:1px solid var(--line)}
:is(.domain-checker-bg,#order-standard_cart) .input-group-box{background:var(--bg)!important;border:1px solid var(--line2);border-radius:16px;box-shadow:none}
:is(#order-standard_cart,#order-modern) .tld-pricing-header :is(div,[class*=col]){background:transparent!important;color:var(--muted)!important;border-color:var(--line)!important}
.domain-checker-bg label{color:var(--chip)!important}
.btn-warning{background:transparent!important;border:1px solid var(--line2)!important;color:var(--text)!important}
.btn-warning:hover{border-color:var(--text)!important}
.text-primary{color:var(--accent)!important}
.text-info{color:var(--blue)!important}
.text-success{color:var(--accent)!important}
.text-danger{color:var(--red)!important}
.text-warning{color:var(--amber)!important}

/* ---- Signed-in extras: verification banners, return-to-admin, account labels ---- */
.verification-banner{background:var(--bg2)!important;border-bottom:1px solid var(--line);color:var(--text)}
.verification-banner .text,.verification-banner span{color:var(--chip)!important}
.verification-banner .btn{background:transparent;border:1px solid var(--line2);color:var(--text)}
.verification-banner .close,.verification-banner button.close span{color:var(--muted)!important;opacity:1}
.verification-banner.email-verification{box-shadow:inset 3px 0 0 var(--amber)}
.btn-return-to-admin{background:var(--bg3)!important;border:1px solid var(--line2)!important;color:var(--text)!important}
.label,.label-info,.label-default{display:inline-block;border-radius:999px;padding:2px 9px;font-size:12px;font-weight:600}
.label-info{background:rgba(90,169,230,.18)!important;color:var(--blue)!important}
.label-success{background:rgba(116,194,85,.18)!important;color:var(--accent)!important}
.label-danger{background:rgba(229,103,94,.18)!important;color:var(--red)!important}
.label-warning{background:rgba(227,179,65,.18)!important;color:var(--amber)!important}
.label-default{background:var(--bg3)!important;color:var(--chip)!important}

/* ---- Data tables (services, domains, invoices, quotes, emails, tickets). Header cells keep their sort arrows:
   only background-color changes. ---- */
body table.dataTable thead th,body .table-list thead th,body .table thead th{background-color:var(--bg2)!important;color:var(--muted)!important;border-color:var(--line)!important}
body table.dataTable thead th.sorting_asc,body table.dataTable thead th.sorting_desc{color:var(--text)!important}
body table.dataTable tbody td,body .table-list tbody td,body table.dataTable tbody tr{background-color:transparent!important;color:var(--text);border-color:var(--line)!important}
body table.dataTable tbody tr:hover td,body .table-list tbody tr:hover td{background-color:var(--bg3)!important}
body .dataTables_wrapper .dataTables_filter input,body .dataTables_wrapper .dataTables_length select{background:var(--bg)!important;border:1px solid var(--line2)!important;color:var(--text)!important}
body .table-container,body .dataTables_wrapper{background:transparent;color:var(--text)}
body td.dataTables_empty{color:var(--muted)}

/* ---- Client home: stat tiles and panels ---- */
body .tiles .tile,body a.tile{background-color:var(--bg2)!important;color:var(--text)!important;border-color:var(--line)!important}
body a.tile:hover{background-color:var(--bg3)!important;text-decoration:none}
body .tile .stat{color:var(--text)!important}body .tile .title{color:var(--muted)!important}
body .tile .highlight{opacity:.9}
body .card-footer,body .panel-footer{background:transparent!important;border-color:var(--line)!important;color:var(--muted)}
body .card-header .btn[class*="bg-color-"],body .btn.btn-default[class*="bg-color-"]{background:transparent!important;border:1px solid var(--line2)!important;color:var(--text)!important}
body .card-header .btn[class*="bg-color-"]:hover{border-color:var(--text)!important}

/* ---- Status labels and info buttons in the site's tones ---- */
body .label.status{border-radius:999px;font-weight:600;padding:3px 10px}
body .status-open,body .status-active,body .status-paid,body .status-answered,body .status-completed{background:rgba(116,194,85,.18)!important;color:var(--accent)!important}
body .status-unpaid,body .status-overdue,body .status-suspended,body .status-customer-reply{background:rgba(227,179,65,.18)!important;color:var(--amber)!important}
body .status-cancelled,body .status-closed,body .status-terminated,body .status-expired,body .status-refunded,body .status-draft{background:var(--bg3)!important;color:var(--muted)!important}
body .status-fraud,body .status-collections{background:rgba(229,103,94,.18)!important;color:var(--red)!important}
body .btn-info{background:transparent!important;border:1px solid var(--line2)!important;color:var(--text)!important}
body .btn-info:hover{border-color:var(--text)!important}
body .alert-block,body .alert.alert-info{background:var(--bg2)!important;color:var(--text)!important}
/* Store hidden: the "place an order" link inside the empty products panel. */
[menuItemName="Active Products/Services"] .card-body a[href*="cart.php"]{display:none}
