/* ==========================================================================
   PermaSys · Permanent Systems — child theme for WHMCS Twenty-One
   Palette: brown #9A4A0F · orange #D9822B · sand #F7EDE3 · ink #2B2622
   Part 1: automatic recolouring of every
   Twenty-One / standard_cart rule that used the default blue (#336699 family).
   Part 2: hand-tuned brand touches (header, footer, cart banner).
   Third-party promo banners and social-login buttons keep their own colours.
   ========================================================================== */

/* ---------- Part 1 · automatic recolouring (generated) ---------- */
/* Twenty-One theme.css */
a { color: #9a4a0f; }
a:hover { color: #582a0a; }
.table-primary, .table-primary > th, .table-primary > td { background-color: #f3deca; }
.table-primary th, .table-primary td, .table-primary thead th, .table-primary tbody + tbody { border-color: #e5b88f; }
.table-hover .table-primary:hover { background-color: #eed0b5; }
.table-hover .table-primary:hover > td, .table-hover .table-primary:hover > th { background-color: #eed0b5; }
.form-control:focus { border-color: #e1ae7f; box-shadow: 0 0 0 0.2rem rgba(154, 74, 15, 0.25); }
.btn:focus, .btn.focus { box-shadow: 0 0 0 0.2rem rgba(154, 74, 15, 0.25); }
.btn-primary { background-color: #9a4a0f; border-color: #9a4a0f; }
.btn-primary:hover { background-color: #793a0d; border-color: #6e350c; }
.btn-primary:focus, .btn-primary.focus { background-color: #793a0d; border-color: #6e350c; box-shadow: 0 0 0 0.2rem rgba(197, 95, 22, 0.5); }
.btn-primary.disabled, .btn-primary:disabled { background-color: #9a4a0f; border-color: #9a4a0f; }
.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active, .show > .btn-primary.dropdown-toggle { background-color: #6e350c; border-color: #622f0b; }
.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus, .show > .btn-primary.dropdown-toggle:focus { box-shadow: 0 0 0 0.2rem rgba(197, 95, 22, 0.5); }
.btn-outline-primary { color: #9a4a0f; border-color: #9a4a0f; }
.btn-outline-primary:hover { background-color: #9a4a0f; border-color: #9a4a0f; }
.btn-outline-primary:focus, .btn-outline-primary.focus { box-shadow: 0 0 0 0.2rem rgba(154, 74, 15, 0.5); }
.btn-outline-primary.disabled, .btn-outline-primary:disabled { color: #9a4a0f; }
.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active, .show > .btn-outline-primary.dropdown-toggle { background-color: #9a4a0f; border-color: #9a4a0f; }
.btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-primary.dropdown-toggle:focus { box-shadow: 0 0 0 0.2rem rgba(154, 74, 15, 0.5); }
.btn-link { color: #9a4a0f; }
.btn-link:hover { color: #582a0a; }
.dropdown-item.active, .dropdown-item:active { background-color: #9a4a0f; }
.custom-control-input:checked ~ .custom-control-label::before { border-color: #9a4a0f; background-color: #9a4a0f; }
.custom-control-input:focus ~ .custom-control-label::before { box-shadow: 0 0 0 0.2rem rgba(154, 74, 15, 0.25); }
.custom-control-input:focus:not(:checked) ~ .custom-control-label::before { border-color: #e1ae7f; }
.custom-control-input:not(:disabled):active ~ .custom-control-label::before { background-color: #ebc8a8; border-color: #ebc8a8; }
.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before { border-color: #9a4a0f; background-color: #9a4a0f; }
.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before { background-color: rgba(154, 74, 15, 0.5); }
.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before { background-color: rgba(154, 74, 15, 0.5); }
.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before { background-color: rgba(154, 74, 15, 0.5); }
.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before { background-color: rgba(154, 74, 15, 0.5); }
.custom-select:focus { border-color: #e1ae7f; box-shadow: 0 0 0 0.2rem rgba(154, 74, 15, 0.25); }
.custom-file-input:focus ~ .custom-file-label { border-color: #e1ae7f; box-shadow: 0 0 0 0.2rem rgba(154, 74, 15, 0.25); }
.custom-range:focus::-webkit-slider-thumb { box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(154, 74, 15, 0.25); }
.custom-range:focus::-moz-range-thumb { box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(154, 74, 15, 0.25); }
.custom-range:focus::-ms-thumb { box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(154, 74, 15, 0.25); }
.custom-range::-webkit-slider-thumb { background-color: #9a4a0f; }
.custom-range::-webkit-slider-thumb:active { background-color: #ebc8a8; }
.custom-range::-moz-range-thumb { background-color: #9a4a0f; }
.custom-range::-moz-range-thumb:active { background-color: #ebc8a8; }
.custom-range::-ms-thumb { background-color: #9a4a0f; }
.custom-range::-ms-thumb:active { background-color: #ebc8a8; }
.nav-pills .nav-link.active, .nav-pills .show > .nav-link { background-color: #9a4a0f; }
.page-link { color: #9a4a0f; }
.page-link:hover { color: #582a0a; }
.page-link:focus { box-shadow: 0 0 0 0.2rem rgba(154, 74, 15, 0.25); }
.page-item.active .page-link { background-color: #9a4a0f; border-color: #9a4a0f; }
.badge-primary { background-color: #9a4a0f; }
a.badge-primary:hover, a.badge-primary:focus { background-color: #6e350c; }
a.badge-primary:focus, a.badge-primary.focus { box-shadow: 0 0 0 0.2rem rgba(154, 74, 15, 0.5); }
.alert-primary { color: #452108; background-color: #f7eade; border-color: #f3deca; }
.alert-primary hr { border-top-color: #eed0b5; }
.alert-primary .alert-link { color: #251204; }
.progress-bar { background-color: #9a4a0f; }
.list-group-item.active { background-color: #9a4a0f; border-color: #9a4a0f; }
.list-group-item-primary { color: #452108; background-color: #f3deca; }
.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus { color: #452108; background-color: #eed0b5; }
.list-group-item-primary.list-group-item-action.active { background-color: #452108; border-color: #452108; }
.bg-primary { background-color: #9a4a0f !important; }
a.bg-primary:hover, a.bg-primary:focus, button.bg-primary:hover, button.bg-primary:focus { background-color: #6e350c !important; }
.border-primary { border-color: #9a4a0f !important; }
.text-primary { color: #9a4a0f !important; }
a.text-primary:hover, a.text-primary:focus { color: #582a0a !important; }
.input-group .btn-reveal-pw:hover, .input-group .btn-reveal-pw:active { color: #9a4a0f; }
.status-onhold { background-color: #9a4a0f; }
.status-payment-pending { background-color: #9a4a0f; }
.status-delivered { background-color: #9a4a0f; }
.twofa-module.active { border-color: #b75814; }
.upgrade .products .product .header { background-color: #7e3d0e; }
.upgrade .products .product .btn { background-color: #7e3d0e; }
#registration .sub-heading span { color: #9a4a0f; }
.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 { border-bottom: 6px solid #e7bd97; }
.domain-pricing .tld-pricing-header div:nth-child(odd) { border-color: #9a4a0f; }
@media (min-width: 768px) {
  .domain-pricing .two-row-center { border-right: 2px solid #f3e0ce; }
}

/* standard_cart style.css */
body #order-standard_cart .sub-heading span, body #order-standard_cart .sub-heading-borderless span { color: #9a4a0f; }
body #order-standard_cart .view-cart-items-header { background-color: #9a4a0f; }
body #order-standard_cart .view-cart-items { border-bottom: 2px solid #9a4a0f; }
body #order-standard_cart .view-cart-items .item-domain { color: #401f07; }
body #order-standard_cart .empty-cart .btn { background-color: #9a4a0f; }
body .domain-pricing .tld-pricing-header .col-xs-2, body .domain-pricing .tld-pricing-header .col-sm-2, body .domain-pricing .tld-pricing-header .col-xs-4, body .domain-pricing .tld-pricing-header .col-sm-4 { border-bottom: 6px solid #e7bd97; }
body .domain-pricing .tld-pricing-header div:nth-child(odd) { border-color: #9a4a0f; }
body .domain-pricing .two-row-center { border-right: 2px solid #f3e0ce; }

/* ---------- Part 2 · brand touches (win over Part 1) ---------- */
:root { --ps-brown: #9A4A0F; --ps-brown-dark: #7A3A0B; --ps-orange: #D9822B; --ps-sand: #F7EDE3; --ps-ink: #2B2622; }

body { color: var(--ps-ink); }
a { color: var(--ps-brown); }
a:hover, a:focus { color: var(--ps-brown-dark); }

/* top bar and header */
header.header .topbar { background: linear-gradient(90deg, var(--ps-brown), var(--ps-orange)); color: rgba(255,255,255,.85); }
header.header .topbar .btn,
header.header .topbar .active-client .btn,
header.header .topbar .active-client .input-group-text { color: rgba(255,255,255,.9); }
header.header .logo-img { max-height: 64px; }
header.header .main-navbar-wrapper { border-top: 3px solid var(--ps-orange); }
header.header .navbar a { color: var(--ps-ink); }
header.header .navbar-nav > li > a:hover,
header.header .navbar-nav > li.active > a,
header.header .navbar-nav .nav-link:hover { color: var(--ps-brown); }
header.header .dropdown-item.active, header.header .dropdown-item:active { background-color: var(--ps-brown); color: #fff; }
header.header .toolbar .nav-link:hover { color: var(--ps-brown); border-color: var(--ps-orange); }
header.header .search:focus-within { border-color: var(--ps-orange); }

/* breadcrumb and soft backgrounds */
.master-breadcrumb, .master-breadcrumb .breadcrumb { background-color: var(--ps-sand); }
.primary-bg-color { background-color: #FBF6F0; }

/* sidebar, cards, tabs, pagination */
.list-group-item.active, .card-sidebar .list-group-item.active { background-color: var(--ps-brown); border-color: var(--ps-brown); color: #fff; }
.nav-pills .nav-link.active, .nav-pills .show > .nav-link { background-color: var(--ps-brown); }
.page-item.active .page-link { background-color: var(--ps-brown); border-color: var(--ps-brown); }
.page-link { color: var(--ps-brown); }

/* form focus */
.form-control:focus, .custom-select:focus { border-color: var(--ps-orange); box-shadow: 0 0 0 .2rem rgba(217,130,43,.25); }
.custom-control-input:checked ~ .custom-control-label::before { background-color: var(--ps-brown); border-color: var(--ps-brown); }

/* footer: same gradient as permasys.com.br */
footer.footer { background: linear-gradient(90deg, var(--ps-brown), var(--ps-orange)); color: #fff; }
footer.footer .nav-link, footer.footer a { color: #fff; }
footer.footer .btn { background-color: rgba(255,255,255,.15); }

/* order form (standard_cart) — prefixed with body because the cart CSS loads later: order summary box and the domain search banner */
body .domain-checker-container { background: linear-gradient(180deg, #F7EDE3, #F2C9A0); }
body #order-standard_cart .order-summary { background-color: var(--ps-brown); border-bottom-color: var(--ps-orange); }


