/* =========================
   override 
   Goal: All blues → black (text/links/etc) EXCEPT buttons.
         Buttons: primary #E9DF00, secondary #5B5F97.
         Global font: Google Sora.
   ========================= */

/* 1) Load Google Font (safe to include in CSS for WP Additional CSS; for WHMCS, you can put this <link> in head.tpl too) */
@import url('https://fonts.googleapis.com/css2?family=Sora:wght@300;400;500;600;700&display=swap');

/* 2) Brand tokens */
:root {
  --brand-black: #000000;
  --brand-text: #000000;
  --brand-link: #000000;
  --brand-link-hover: #111111;
  --btn-primary-bg: #E9DF00; /* Yellow */
  --btn-primary-text: #000000;
  --btn-primary-hover-bg: #d9cf00;
  --btn-primary-focus-ring: rgba(233, 223, 0, 0.5);

  --btn-secondary-bg: #5B5F97; /* Indigo */
  --btn-secondary-text: #ffffff;
  --btn-secondary-hover-bg: #4f5386;
  --btn-secondary-focus-ring: rgba(91, 95, 151, 0.45);

  --focus-ring: rgba(0, 0, 0, 0.35);
  --border-muted: #e6e6e6;
}

/* 3) Typography – Sora everywhere */
html, body, body * {
  font-family: "Sora", system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue",
               Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif !important;
}

/* 4) Global text color to black (avoid buttons) *//*
body, p, h1, h2, h3, h4, h5, h6, .heading, .title, .subtitle, .lead,
.table, .card, .panel, .widget, .breadcrumb, .nav, .menu, .dropdown-menu,
.footer, .header, .site-header, .site-footer {
  color: var(--brand-text);
}*/

/* 5) Links: black; avoid button-like elements */
/*
a:not(.btn):not([class*="button"]):not(.badge),
.nav a, .menu a, .dropdown-menu a {
  color: var(--brand-link);
  text-decoration-color: currentColor;
}
a:not(.btn):hover,
.nav a:hover, .menu a:hover, .dropdown-menu a:hover {
  color: var(--brand-link-hover);
  text-decoration-color: currentColor;
}*/

/* 6) Kill “theme blue” accents (common utility classes) without touching buttons */
.text-primary, .link-primary, .badge-primary,
.alert-primary .alert-link,
a.text-primary, a.link-primary, #header.header .topbar { color: var(--brand-black) !important; }

.border-primary { border-color: var(--brand-black) !important; }
.bg-primary:not(.btn) { background-color: var(--brand-black) !important; color: #fff; }

/* Bootstrappy/utility fallbacks (often present in Hostiko/WHMCS) */
.text-info, a.text-info { color: var(--brand-black) !important; }
.badge-info { background-color: var(--brand-black) !important; }
a:hover.text-info { color: var(--brand-link-hover) !important; }

/* 7) Buttons */
/* Primary (Yellow) */
.btn-primary,
.button-primary,
input[type="submit"].button,
button.primary {
  background-color: var(--btn-primary-bg) !important;
  border-color: var(--btn-primary-bg) !important;
  color: var(--btn-primary-text) !important;
}
.btn-primary:hover,
.button-primary:hover,
input[type="submit"].button:hover,
button.primary:hover {
  background-color: var(--btn-primary-hover-bg) !important;
  border-color: var(--btn-primary-hover-bg) !important;
  color: var(--btn-primary-text) !important;
}

/* Secondary (Indigo) */
.btn-secondary,
.button-secondary,
button.secondary,
a.btn.outline-secondary.active { /* common alt selectors */
  background-color: var(--btn-secondary-bg) !important;
  border-color: var(--btn-secondary-bg) !important;
  color: var(--btn-secondary-text) !important;
}
.btn-secondary:hover,
.button-secondary:hover,
button.secondary:hover {
  background-color: var(--btn-secondary-hover-bg) !important;
  border-color: var(--btn-secondary-hover-bg) !important;
  color: var(--btn-secondary-text) !important;
}

/* If the theme uses .btn-info or .btn-primary as the “blue” button, convert it to Secondary */
.btn-info { 
  background-color: var(--btn-secondary-bg) !important;
  border-color: var(--btn-secondary-bg) !important;
  color: var(--btn-secondary-text) !important;
}
.btn-info:hover {
  background-color: var(--btn-secondary-hover-bg) !important;
  border-color: var(--btn-secondary-hover-bg) !important;
}

/* 8) Focus styles (accessibility) */
a:focus, button:focus, .btn:focus, input:focus, select:focus, textarea:focus {
  outline: 2px solid var(--focus-ring) !important;
  outline-offset: 2px !important;
  box-shadow: none !important;
}
.btn-primary:focus { outline-color: var(--btn-primary-focus-ring) !important; }
.btn-secondary:focus { outline-color: var(--btn-secondary-focus-ring) !important; }

/* 9) Tables, borders, dividers (neutralize blues) */
.table thead th, .table td, .table th,
hr, .divider, .card, .panel, .list-group-item {
  border-color: var(--border-muted) !important;
}

/* Skip filter for explicitly opted-out items */
.site-header img.no-filter, .site-header svg.no-filter,
.site-footer img.no-filter, .site-footer svg.no-filter {
  filter: none;
}

/* 11) Prefer SVGs inheriting text (if inline SVGs are used) */
.site-header svg *, .site-footer svg * {
  fill: currentColor !important;
  stroke: currentColor !important;
}
/* Ensure header/footer text is black so inherited SVGs appear black */
.site-header, .header, .site-footer, .footer { color: var(--brand-black) !important; }

/* 12) Nav, breadcrumbs, small UI bits (kill blue) *//*
.breadcrumb a, .pagination a, .pagination .page-link { color: var(--brand-link) !important; }
.breadcrumb a:hover, .pagination a:hover, .pagination .page-link:hover { color: var(--brand-link-hover) !important; }
*/

/* 13) Forms (focus, labels, links) */
.form-control:focus, .custom-select:focus {
  border-color: var(--brand-black) !important;
  box-shadow: 0 0 0 2px var(--focus-ring) !important;
}
label, .form-text, .help-block, .small, small { color: var(--brand-black) !important; }


/* Additional customizations below this line */
/* KB Button text */
.input-group .input-group-append .btn {
    color: var(--cta-primary-text) !important;
}

/* Product Page product boxes */
#order-standard_cart .products .product div.product-desc,
#order-standard_cart .products .product footer {
    width: 100% !important;
}

#header .navbar-collapse ul li a:hover {
    color: var(--brand-text) !important;
}

/* Hiding pricing carousel on homepage */
body .pricing-carousel {
    display: none;
}

/* Hide My Quote from nav menu */
.navbar .navbar-nav li[menuitemname="My Quotes"] {
    display: none;
}

/* Hiding Quote from client area dashboard */
#main-body .col-6.col-xl-3:nth-of-type(2):has(a[href="clientarea.php?action=quotes"]) {
    display: none;
}
/* Hiding Recent Support Tickets from client area dashboard */
.main-body .client-home-cards  .col-md-6.col-lg-12.col-xl-6:has(div[menuitemname="Recent Support Tickets"]){
    display: none;
}

/* Hide mail link when viewing services as client */
.tab-pane .plesk-feature-row > div:first-of-type {
    display: none;
}

/* Hide footer buttons */
.footer .container > ul.list-inline.mb-7.text-center.float-lg-right,
.footer .container ul.nav.justify-content-center.justify-content-lg-start.mb-7 {
    display: none;
}

/* Hide footer (unused) */
body #main-body ~ section.footer-section ~ footer {
  display: none;
}

/* Footer heading color change */
.footer-section .row .heading {
  color: #FFF!important;
}

/* Hide IP message from checkout */
#order-standard_cart .alert.alert-warning.checkout-security-msg {
  display: none;
}