/**
 * Priortech WHMCS Custom CSS Theme Override
 * Designed to align WHMCS client area with the WordPress landing page aesthetics.
 * Features: Rich dark violet scheme, pill-shaped UI components, glassmorphism, 
 * layered shadows, high-legibility contrast ratios, and interactive animations.
 */

:root {
  /* Color Palette (Extracted from Priortech landing page) */
  --priortech-bg-dark: #0f0926;
  /* Deep rich dark violet */
  --priortech-bg-darker: #190f38;
  /* Near-black violet for depth sections/footer */
  --priortech-card-dark: #190f38;
  /* Slightly lighter dark violet for dark cards */
  --priortech-card-light: #ffffff;
  /* High contrast white card as seen in the landing page */

  /* Brand Accents */
  --priortech-primary: #633df2;
  /* Tanzanite Purple / Main Accent */
  --priortech-primary-hover: #7b57ff;
  /* Hover states for interactive elements */
  --priortech-primary-rgb: 99, 61, 242;
  --priortech-secondary: #251654;
  /* Secondary button / focus outlines */
  --priortech-accent-purple: #c3b4ff;
  /* Light pastel purple for subtitles & highlights */

  /* Status Colors */
  --priortech-success: #10b981;
  /* Safe green for active status, online servers */
  --priortech-info: #3b82f6;
  /* Information messages */
  --priortech-warning: #f59e0b;
  /* Warning alerts */
  --priortech-danger: #ef4444;
  /* Errors & unpaid invoices */

  /* Text Contrast - Dark Backgrounds */
  --text-primary-light: #ffffff;
  --text-muted-light: #a8a2bc;
  --text-accent-light: #c3b4ff;

  /* Text Contrast - Light Cards */
  --text-primary-dark: #110a27;
  --text-muted-dark: #6b6678;

  /* Borders & Shadows */
  --priortech-border-color: rgba(255, 255, 255, 0.08);
  --priortech-border-focus: rgba(99, 61, 242, 0.4);
  --priortech-border-dark-theme: rgba(99, 61, 242, 0.15);
  --priortech-card-shadow: 0 12px 40px rgba(0, 0, 0, 0.4);

  /* Layered offset shadow matching the landing page hosting plan cards */
  --priortech-card-shadow-offset: 8px 8px 0px 0px rgba(99, 61, 242, 0.2);

  /* Shape & Spacings */
  --border-radius-lg: 20px;
  /* Large border radius for cards */
  --border-radius-md: 12px;
  /* Medium border radius for inputs */
  --border-radius-sm: 8px;
  /* Small border radius for badges */
  --border-radius-pill: 9999px;
  /* Pill shape for main buttons and tags */

  /* Transition timings */
  --transition-smooth: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* ==========================================
   1. GLOBAL STYLES & RESET OVERRIDES
   ========================================== */
body {
  background-color: var(--priortech-bg-dark) !important;
  color: var(--text-primary-light) !important;
  font-family: 'Outfit', 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
  background-image: radial-gradient(circle at 10% 20%, rgba(99, 61, 242, 0.08) 0%, transparent 40%),
    radial-gradient(circle at 90% 80%, rgba(123, 87, 255, 0.05) 0%, transparent 50%) !important;
  background-attachment: fixed !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Link treatments */
a {
  color: var(--priortech-accent-purple);
  transition: var(--transition-smooth);
}

a:hover,
a:focus {
  color: var(--text-primary-light);
  text-decoration: none;
}

/* Page Header Titles Override */
h1,
h2,
h3,
h4,
h5,
h6,
.page-header h1,
.page-header h2,
.page-header h3,
#main-body h1,
#main-body h2 {
  color: var(--text-primary-light) !important;
  font-weight: 700;
}

/* ==========================================
   2. LAYOUT WRAPPERS (ELIMINATING WHITE PANELS)
   ========================================== */
#main-body,
.main-body,
#main-content,
.main-content,
#content,
.content-area,
.app-main,
.container-main,
.body-container,
#wrapper,
.wrapper,
.container,
.row {
  background-color: transparent !important;
  background: transparent !important;
}

/* Top bar / Logo background override */
#header,
.topbar,
.logo-container,
.header-container {
  background-color: var(--priortech-bg-darker) !important;
  border-bottom: 1px solid var(--priortech-border-color) !important;
}

/* Header buttons & text colors */
#header a,
#header .dropdown-toggle {
  color: var(--text-primary-light) !important;
}

#header a:hover {
  color: var(--priortech-accent-purple) !important;
}

#header .btn,
#header a.btn {
  background-color: var(--priortech-primary) !important;
  border: none !important;
  color: #ffffff !important;
  border-radius: var(--border-radius-pill) !important;
  font-weight: 600 !important;
}

#header .btn:hover,
#header a.btn:hover {
  background-color: var(--priortech-primary-hover) !important;
  box-shadow: 0 4px 12px rgba(99, 61, 242, 0.4) !important;
}

/* Style Breadcrumbs */
.breadcrumb {
  background-color: rgba(255, 255, 255, 0.03) !important;
  border: 1px solid var(--priortech-border-color) !important;
  border-radius: var(--border-radius-pill) !important;
  padding: 8px 24px !important;
  margin-bottom: 24px !important;
}

.breadcrumb>li {
  color: var(--text-muted-light) !important;
}

.breadcrumb>li a {
  color: var(--priortech-accent-purple) !important;
}

.breadcrumb>li a:hover {
  color: var(--text-primary-light) !important;
}

.breadcrumb>li+li:before {
  color: var(--text-muted-light) !important;
}

/* ==========================================
   3. Z-INDEX & POSITIONING HIERARCHY
   ========================================== */
.navbar-fixed-top,
.header,
.app-header {
  z-index: 1020 !important;
}

.dropdown-menu {
  z-index: 1030 !important;
}

.modal {
  z-index: 1050 !important;
}

.tooltip,
.popover {
  z-index: 1070 !important;
}

/* ==========================================
   4. NAVIGATION & NAVIGATION BAR
   ========================================== */
.navbar-main,
.navigation,
.navbar-custom,
.navbar-default,
#nav {
  background: var(--priortech-card-dark) !important;
  border: 1px solid var(--priortech-border-dark-theme) !important;
  border-radius: var(--border-radius-pill) !important;
  margin: 15px auto !important;
  padding: 4px 20px !important;
  box-shadow: var(--priortech-card-shadow) !important;
  width: 100% !important;
}

.navbar-nav>li>a {
  color: var(--text-primary-light) !important;
  border-radius: var(--border-radius-pill);
  padding: 8px 16px !important;
  transition: var(--transition-smooth);
}

.navbar-nav>li>a:hover,
.navbar-nav>li.active>a,
.navbar-nav>li.open>a {
  background: rgba(255, 255, 255, 0.08) !important;
  color: var(--priortech-accent-purple) !important;
}

/* Dropdown menus styling & contrast fix */
.dropdown-menu {
  background: var(--priortech-card-dark) !important;
  border: 1px solid var(--priortech-border-dark-theme) !important;
  border-radius: var(--border-radius-md) !important;
  box-shadow: var(--priortech-card-shadow) !important;
  padding: 8px !important;
}

.dropdown-menu li,
.dropdown-menu li a,
.dropdown-menu>li>a,
.dropdown-menu .dropdown-item,
.dropdown-menu a {
  color: var(--text-primary-light) !important;
  background: transparent !important;
  border-radius: var(--border-radius-sm);
  padding: 10px 18px !important;
  transition: var(--transition-smooth);
  display: block;
}

.dropdown-menu li a:hover,
.dropdown-menu>li>a:hover,
.dropdown-menu .dropdown-item:hover,
.dropdown-menu a:hover {
  background: var(--priortech-primary) !important;
  color: #ffffff !important;
}

/* Divider colors */
.dropdown-menu .divider {
  background-color: var(--priortech-border-color) !important;
  margin: 6px 0 !important;
}

/* ==========================================
   5. CARDS & PANELS (FIXING WHITE SIDEBARS)
   ========================================== */
.card,
.panel,
.well,
.thumbnail {
  background-color: var(--priortech-card-dark) !important;
  border: 1px solid var(--priortech-border-dark-theme) !important;
  border-radius: var(--border-radius-lg) !important;
  box-shadow: var(--priortech-card-shadow) !important;
  margin-bottom: 24px !important;
  overflow: hidden;
  transition: var(--transition-smooth);
}

/* Sidebar panel bodies - force dark backgrounds with white text */
.panel-body,
.card-body,
.well-lg,
.well-sm,
.well {
  background-color: var(--priortech-card-dark) !important;
  color: var(--text-primary-light) !important;
  border: none !important;
}

/* Panel headers */
.panel-heading,
.card-header {
  background-color: rgba(99, 61, 242, 0.1) !important;
  border-bottom: 1px solid var(--priortech-border-dark-theme) !important;
  padding: 15px 20px !important;
  font-weight: 600;
  color: var(--text-primary-light) !important;
}

.panel-title,
.card-title {
  color: var(--text-primary-light) !important;
  font-weight: 600;
}

/* Panel footers */
.panel-footer,
.card-footer {
  background-color: rgba(99, 61, 242, 0.05) !important;
  border-top: 1px solid var(--priortech-border-dark-theme) !important;
  padding: 12px 20px !important;
}

/* Left sidebar panel links styling */
.list-group-navigation,
.sidebar .list-group,
.list-group {
  background: var(--priortech-card-dark) !important;
  border: none !important;
  padding: 0 !important;
  margin-bottom: 0 !important;
}

.list-group-item {
  background-color: var(--priortech-card-dark) !important;
  border: none !important;
  border-bottom: 1px solid var(--priortech-border-color) !important;
  color: var(--text-muted-light) !important;
  padding: 12px 20px !important;
  transition: var(--transition-smooth);
}

.list-group-item:last-child {
  border-bottom: none !important;
}

.list-group-item:hover {
  background-color: rgba(255, 255, 255, 0.03) !important;
  color: var(--text-primary-light) !important;
  padding-left: 24px !important;
}

.list-group-item.active,
.list-group-item.active:hover,
.list-group-item.active:focus {
  background-color: var(--priortech-primary) !important;
  color: var(--text-primary-light) !important;
  box-shadow: 0 4px 12px rgba(99, 61, 242, 0.3) !important;
}

.list-group-item .badge {
  background-color: rgba(255, 255, 255, 0.1) !important;
  color: var(--text-accent-light) !important;
}

/* ==========================================
   6. FORMS & INPUTS
   ========================================== */
.form-control,
input[type="text"],
input[type="password"],
input[type="email"],
input[type="search"],
select,
textarea {
  background-color: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid var(--priortech-border-dark-theme) !important;
  border-radius: var(--border-radius-md) !important;
  color: var(--text-primary-light) !important;
  padding-top: 12px !important;
  padding-bottom: 12px !important;
  padding-right: 16px !important;
  padding-left: 48px !important;
  height: auto !important;
  font-size: 0.95rem !important;
  box-shadow: none !important;
  transition: var(--transition-smooth);
}

textarea.form-control,
textarea {
  padding-left: 16px !important;
}

.form-control:focus,
input:focus,
select:focus,
textarea:focus {
  background-color: rgba(255, 255, 255, 0.07) !important;
  border-color: var(--priortech-primary) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px var(--priortech-border-focus) !important;
}

/* KB Search / Domain Checker Input Styling */
.home-search input,
.home-search .form-control,
input.kb-search-input,
.kb-search-input {
  border-radius: var(--border-radius-pill) !important;
  background-color: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid var(--priortech-border-dark-theme) !important;
  color: var(--text-primary-light) !important;
  padding: 14px 28px !important;
}

/* ==========================================
   7. BUTTONS & ACTIONS (PILL DESIGN)
   ========================================== */
.btn {
  border-radius: var(--border-radius-pill) !important;
  font-weight: 600 !important;
  letter-spacing: 0.3px;
  padding: 10px 24px !important;
  transition: var(--transition-smooth) !important;
  border: none !important;
  text-transform: none;
}

/* Primary Action Buttons */
.btn-primary,
.btn-checkout,
.btn-order-now,
.btn-success {
  background-color: var(--priortech-primary) !important;
  color: var(--text-primary-light) !important;
  box-shadow: 0 4px 14px rgba(99, 61, 242, 0.3) !important;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-checkout:hover,
.btn-order-now:hover,
.btn-success:hover {
  background-color: var(--priortech-primary-hover) !important;
  color: var(--text-primary-light) !important;
  box-shadow: 0 6px 20px rgba(99, 61, 242, 0.5) !important;
  transform: translateY(-1px);
}

/* Secondary Action Buttons */
.btn-secondary,
.btn-default {
  background-color: rgba(255, 255, 255, 0.08) !important;
  color: var(--text-primary-light) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
}

.btn-secondary:hover,
.btn-default:hover {
  background-color: rgba(255, 255, 255, 0.15) !important;
  color: var(--text-primary-light) !important;
}

/* Side Update button overrides to maintain pill shape */
.panel-body .btn-update,
.card-body .btn {
  border-radius: var(--border-radius-pill) !important;
}

/* ==========================================
   8. DASHBOARD STATISTICS TILES
   ========================================== */
.tile {
  border-radius: var(--border-radius-lg) !important;
  background-color: var(--priortech-card-dark) !important;
  border: 1px solid var(--priortech-border-dark-theme) !important;
  padding: 20px !important;
  margin-bottom: 20px !important;
  box-shadow: var(--priortech-card-shadow) !important;
  transition: var(--transition-smooth) !important;
  display: block;
}

.tile:hover {
  transform: translateY(-3px) !important;
  border-color: rgba(99, 61, 242, 0.5) !important;
  box-shadow: 0 15px 30px rgba(99, 61, 242, 0.15) !important;
}

/* Tile stats text visibility overrides */
.tile .stat,
.tile .heading,
.tile .title {
  color: var(--text-primary-light) !important;
}

/* Tile Color Accents on bottom borders */
.tile {
  border-bottom: 4px solid var(--priortech-primary) !important;
}

.tile.tile-blue,
.tile.tile-services {
  border-bottom-color: var(--priortech-primary) !important;
}

.tile.tile-green,
.tile.tile-domains {
  border-bottom-color: var(--priortech-success) !important;
}

.tile.tile-red,
.tile.tile-tickets {
  border-bottom-color: var(--priortech-danger) !important;
}

.tile.tile-gold,
.tile.tile-invoices {
  border-bottom-color: var(--priortech-warning) !important;
}

/* ==========================================
   9. PROMO BANNERS & NOTIFICATIONS (ACCORDION & site builder)
   ========================================== */
.home-promo-banner,
.promo-container,
.site-builder-banner,
.product-promo,
.promo-banner {
  background-color: var(--priortech-card-dark) !important;
  border: 1px solid var(--priortech-border-dark-theme) !important;
  border-radius: var(--border-radius-lg) !important;
  color: var(--text-primary-light) !important;
  padding: 24px !important;
  box-shadow: var(--priortech-card-shadow) !important;
  border-top: 1px solid var(--priortech-border-dark-theme) !important;
  /* overrides standard colored top-borders */
  margin-bottom: 24px !important;
}

.promo-banner a,
.promo-container a,
.home-promo-banner a {
  color: var(--priortech-accent-purple) !important;
  font-weight: 600 !important;
}

.promo-banner a:hover,
.promo-container a:hover {
  color: #ffffff !important;
}

/* ==========================================
   10. TABLES & DATA LISTS
   ========================================== */
.table {
  background-color: transparent !important;
  color: var(--text-primary-light) !important;
  border-collapse: separate;
  border-spacing: 0 8px;
}

.table th {
  background-color: rgba(99, 61, 242, 0.1) !important;
  color: var(--text-accent-light) !important;
  border: none !important;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 0.8rem;
  letter-spacing: 1px;
  padding: 12px 16px !important;
}

.table td {
  background-color: rgba(255, 255, 255, 0.02) !important;
  border: none !important;
  border-top: 1px solid var(--priortech-border-color) !important;
  border-bottom: 1px solid var(--priortech-border-color) !important;
  padding: 16px !important;
  vertical-align: middle !important;
}

.table tr td:first-child {
  border-left: 1px solid var(--priortech-border-color) !important;
  border-top-left-radius: var(--border-radius-md);
  border-bottom-left-radius: var(--border-radius-md);
}

.table tr td:last-child {
  border-right: 1px solid var(--priortech-border-color) !important;
  border-top-right-radius: var(--border-radius-md);
  border-bottom-right-radius: var(--border-radius-md);
}

.table-hover tbody tr:hover td {
  background-color: rgba(99, 61, 242, 0.06) !important;
  border-color: rgba(99, 61, 242, 0.3) !important;
  color: var(--text-primary-light) !important;
}

/* ==========================================
   11. ALERTS & BADGES
   ========================================== */
.alert {
  border-radius: var(--border-radius-md) !important;
  border: none !important;
  font-weight: 500;
  padding: 15px 20px !important;
}

.alert-info {
  background-color: rgba(59, 130, 246, 0.15) !important;
  color: #93c5fd !important;
  border-left: 4px solid var(--priortech-info) !important;
}

.alert-success {
  background-color: rgba(16, 185, 129, 0.15) !important;
  color: #a7f3d0 !important;
  border-left: 4px solid var(--priortech-success) !important;
}

.alert-danger {
  background-color: rgba(239, 68, 68, 0.15) !important;
  color: #fca5a5 !important;
  border-left: 4px solid var(--priortech-danger) !important;
}

.alert-warning {
  background-color: rgba(245, 158, 11, 0.15) !important;
  color: #fde047 !important;
  border-left: 4px solid var(--priortech-warning) !important;
}

.badge {
  border-radius: var(--border-radius-pill) !important;
  font-size: 0.75rem !important;
  font-weight: 600 !important;
  padding: 5px 12px !important;
  text-transform: uppercase;
}

.badge-success,
.badge-active {
  background-color: rgba(16, 185, 129, 0.2) !important;
  color: var(--priortech-success) !important;
  border: 1px solid rgba(16, 185, 129, 0.3);
}

.badge-info,
.badge-pending {
  background-color: rgba(59, 130, 246, 0.2) !important;
  color: var(--priortech-info) !important;
  border: 1px solid rgba(59, 130, 246, 0.3);
}

.badge-danger,
.badge-unpaid,
.badge-overdue {
  background-color: rgba(239, 68, 68, 0.2) !important;
  color: var(--priortech-danger) !important;
  border: 1px solid rgba(239, 68, 68, 0.3);
}

/* ==========================================
   12. FOOTER AREA
   ========================================== */
footer,
#footer,
.app-footer {
  background-color: var(--priortech-bg-darker) !important;
  border-top: 1px solid var(--priortech-border-color) !important;
  padding: 40px 0 !important;
  color: var(--text-muted-light) !important;
}

footer a,
#footer a {
  color: var(--text-muted-light);
}

footer a:hover,
#footer a:hover {
  color: var(--text-primary-light);
}

/* ==========================================
   13. SPECIFIC TEMPLATE & BUGS PATCHING
   ========================================== */

/* Fix Register/Form Fieldset Titles (jarring white blocks in register forms) */
#main-body legend,
#main-body .fieldset-title,
#main-body .section-title,
#main-body .sub-heading,
.fieldset-title,
legend,
.field-title,
.section-title,
.sub-heading {
  background-color: transparent !important;
  background: transparent !important;
  color: var(--priortech-accent-purple) !important;
  border: none !important;
  border-bottom: 1px solid var(--priortech-border-dark-theme) !important;
  padding: 10px 0 !important;
  margin-bottom: 24px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  font-size: 0.85rem !important;
  letter-spacing: 1.5px !important;
  width: auto !important;
  display: inline-block !important;
  box-shadow: none !important;
}

/* Fix text and input contrasts in register forms */
#main-body .form-group input,
#main-body .form-group select,
#main-body .form-group textarea,
#main-body .form-control {
  color: var(--text-primary-light) !important;
  background-color: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid var(--priortech-border-dark-theme) !important;
}

#main-body .form-group input,
#main-body .form-group select {
  padding-left: 52px !important;
  /* Forces inputs with absolute icons to clear text overlapping */
}

#main-body .form-group textarea {
  padding-left: 16px !important;
  /* Keep textarea padding clean */
}

#main-body .form-group label,
#main-body .control-label,
#main-body label {
  color: var(--text-muted-light) !important;
  font-weight: 500;
}

/* Fix standard_cart product/addon split white/dark blocks */
#order-standard_cart .products .product-container,
#order-standard-cart .products .product-container,
.product-container,
#order-standard_cart .products .product,
#order-standard-cart .products .product,
.product,
.product-block,
.product-info,
.product-status {
  background-color: var(--priortech-card-dark) !important;
  background: var(--priortech-card-dark) !important;
  color: var(--text-primary-light) !important;
  border: 1px solid var(--priortech-border-dark-theme) !important;
  border-radius: var(--border-radius-lg) !important;
  box-shadow: var(--priortech-card-shadow) !important;
  overflow: hidden !important;
}

/* Fix product pricing and description backgrounds and text colors */
#order-standard_cart .product-container .product-desc,
#order-standard-cart .product-container .product-desc,
#order-standard_cart .product-container .product-pricing,
#order-standard-cart .product-container .product-pricing,
.product-container .product-desc,
.product-container .product-pricing,
.product-desc,
.product-pricing {
  background-color: transparent !important;
  background: transparent !important;
  border: none !important;
  color: var(--text-primary-light) !important;
}

/* Fix standard_cart product/addon card header */
#order-standard_cart .product-container header,
#order-standard-cart .product-container header,
#order-standard_cart .product-container .product-header,
#order-standard-cart .product-container .product-header,
.product-container header,
.product-container .product-header,
.product-header {
  background-color: rgba(99, 61, 242, 0.15) !important;
  background: rgba(99, 61, 242, 0.15) !important;
  border-bottom: 1px solid var(--priortech-border-dark-theme) !important;
  color: var(--text-primary-light) !important;
  padding: 15px 20px !important;
}

#order-standard_cart .product-container header span,
#order-standard-cart .product-container header span,
#order-standard_cart .product-container .product-header span,
#order-standard-cart .product-container .product-header span,
.product-container header span,
.product-container .product-header span {
  color: var(--text-primary-light) !important;
  font-weight: 700 !important;
  font-size: 1.15rem !important;
}

/* Fix product pricing internal elements */
#order-standard_cart .product-container .product-pricing .price,
#order-standard-cart .product-container .product-pricing .price,
.product-container .product-pricing .price,
.product-pricing .price,
.product-pricing .pricing {
  color: var(--text-primary-light) !important;
  font-size: 1.6rem !important;
  font-weight: 700 !important;
}

#order-standard_cart .product-container .product-pricing .billingcycle,
#order-standard-cart .product-container .product-pricing .billingcycle,
.product-container .product-pricing .billingcycle,
.product-pricing .billingcycle {
  color: var(--text-muted-light) !important;
  font-size: 0.85rem !important;
}

.product-desc ul,
.product-desc li {
  color: var(--text-muted-light) !important;
}

/* Fix Currency / Country / Form Dropdown Options (Bootstrap-Select, Nice-Select, Select2 & Native Options) */
select option,
select.form-control option,
.form-control select option,
.bootstrap-select .dropdown-menu,
.bootstrap-select .dropdown-menu.inner,
.bootstrap-select .dropdown-menu li,
.bootstrap-select .dropdown-menu li a,
.select2-container--default .select2-selection--single,
.select2-dropdown,
.select2-results__option,
.select2-search--dropdown,
.nice-select,
.nice-select .list,
.nice-select .option {
  background-color: var(--priortech-card-dark) !important;
  background: var(--priortech-card-dark) !important;
  color: var(--text-primary-light) !important;
  border-color: var(--priortech-border-dark-theme) !important;
}

.bootstrap-select .dropdown-menu li a:hover,
.bootstrap-select .dropdown-menu li.selected a,
.select2-results__option--highlighted[aria-selected],
.nice-select .option:hover,
.nice-select .option.focus,
.nice-select .option.selected.focus {
  background-color: var(--priortech-primary) !important;
  color: #ffffff !important;
}

.bootstrap-select button.dropdown-toggle {
  background-color: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid var(--priortech-border-dark-theme) !important;
  color: var(--text-primary-light) !important;
  border-radius: var(--border-radius-md) !important;
}

/* Fix Domain Pricing Table Header visibility */
thead th,
thead,
.table thead th,
.table>thead>tr>th,
.cart-table-header,
.table-container thead {
  background-color: rgba(99, 61, 242, 0.15) !important;
  background: rgba(99, 61, 242, 0.15) !important;
  color: var(--text-accent-light) !important;
  border-bottom: 2px solid var(--priortech-border-dark-theme) !important;
  font-weight: 600 !important;
}

/* Fix Add Web Hosting / Domain Transfer promo boxes at the bottom */
.cart-promo-box,
.promo-box,
.promo-card,
.domain-promo-box {
  background-color: var(--priortech-card-dark) !important;
  border: 1px solid var(--priortech-border-dark-theme) !important;
  border-radius: var(--border-radius-lg) !important;
  color: var(--text-primary-light) !important;
  box-shadow: var(--priortech-card-shadow) !important;
  padding: 24px !important;
}

.cart-promo-box h3,
.cart-promo-box h4,
.cart-promo-box p,
.promo-box h3,
.promo-box p,
.domain-promo-box h3,
.domain-promo-box p {
  color: var(--text-primary-light) !important;
}

.cart-promo-box .btn,
.promo-box .btn {
  border-radius: var(--border-radius-pill) !important;
}

/* Fix Yellow Domain Search Hero Banner background */
.domain-search-bg,
.domain-intro-container,
.domain-search-container,
.domain-search-header,
.domain-search-banner {
  background: linear-gradient(135deg, var(--priortech-bg-dark) 0%, var(--priortech-card-dark) 100%) !important;
  border: 1px solid var(--priortech-border-dark-theme) !important;
  border-radius: var(--border-radius-lg) !important;
  box-shadow: var(--priortech-card-shadow) !important;
  color: var(--text-primary-light) !important;
  padding: 40px !important;
}

.domain-search-bg p,
.domain-intro-container p,
.domain-search-container p {
  color: var(--text-muted-light) !important;
}

/* Fix Mailing List/Opt-In Option Legibility (Screenshot 5) */
#main-body .marketing-emails-opt-in,
#main-body .marketing-email-optin,
#main-body .email-optin,
#main-body .opt-in,
#main-body .marketing-opt-in,
#main-body .optin,
#main-body .email-marketing-opt-in,
.marketing-emails-opt-in,
.marketing-email-optin,
.email-optin,
.opt-in,
.marketing-opt-in,
.optin,
.email-marketing-opt-in {
  background: var(--priortech-card-dark) !important;
  /* Force override any theme-level white backgrounds */
  background-color: var(--priortech-card-dark) !important;
  color: var(--text-primary-light) !important;
  border: 1px solid var(--priortech-border-dark-theme) !important;
  border-radius: var(--border-radius-lg) !important;
  padding: 24px !important;
  margin-top: 24px !important;
  box-shadow: var(--priortech-card-shadow) !important;
}

#main-body .marketing-emails-opt-in h1,
#main-body .marketing-emails-opt-in h2,
#main-body .marketing-emails-opt-in h3,
#main-body .marketing-emails-opt-in h4,
#main-body .marketing-emails-opt-in p,
#main-body .marketing-emails-opt-in label,
.marketing-emails-opt-in h2,
.marketing-emails-opt-in h3,
.marketing-emails-opt-in p,
.marketing-emails-opt-in label,
#main-body label[for="inputDefaultMarketingOptIn"] {
  color: var(--text-primary-light) !important;
}

#main-body .marketing-emails-opt-in p,
.marketing-emails-opt-in p {
  color: var(--text-muted-light) !important;
  font-size: 0.95rem !important;
  margin-bottom: 15px !important;
}

/* Fix Blue Backgrounds & Borders in Navigation Menu Bar (Screenshot 2) */
#main-menu,
#main-menu-container,
#main-nav,
.navbar-main,
.navigation,
.navbar-custom,
.navbar-default,
.navbar-inverse,
#primary-nav,
#secondary-nav {
  background-color: var(--priortech-card-dark) !important;
  background-image: none !important;
  border: none !important;
  border-bottom: 1px solid var(--priortech-border-dark-theme) !important;
}

.navbar-nav>li>a:hover,
.navbar-nav>li.active>a,
.navbar-nav>li.open>a,
.navbar-nav .open>a,
.navbar-nav .open>a:hover,
.navbar-nav .open>a:focus {
  background-color: rgba(255, 255, 255, 0.06) !important;
  color: var(--priortech-accent-purple) !important;
  border-top-color: transparent !important;
}

/* ==========================================
   14. DOMAIN SELECTION AREA OVERRIDES (FIXING WHITE BACKGROUNDS)
   ========================================== */

/* Main container and individual option boxes */
#order-standard_cart .domain-selection-options,
#order-standard-cart .domain-selection-options,
.domain-selection-options,
#order-standard_cart .domain-selection-options .option,
#order-standard-cart .domain-selection-options .option,
.domain-selection-options .option {
  background-color: var(--priortech-card-dark) !important;
  background: var(--priortech-card-dark) !important;
  border: 1px solid var(--priortech-border-dark-theme) !important;
  color: var(--text-primary-light) !important;
  border-radius: var(--border-radius-lg) !important;
  box-shadow: var(--priortech-card-shadow) !important;
}

#order-standard_cart .domain-selection-options .option,
#order-standard-cart .domain-selection-options .option,
.domain-selection-options .option {
  padding: 24px !important;
  margin-bottom: 16px !important;
  transition: var(--transition-smooth);
}

/* Hover and active/selected states for options */
#order-standard_cart .domain-selection-options .option:hover,
#order-standard-cart .domain-selection-options .option:hover,
.domain-selection-options .option:hover {
  background-color: rgba(255, 255, 255, 0.02) !important;
  border-color: rgba(99, 61, 242, 0.3) !important;
}

#order-standard_cart .domain-selection-options .option.selected,
#order-standard_cart .domain-selection-options .option.active,
#order-standard-cart .domain-selection-options .option.selected,
#order-standard-cart .domain-selection-options .option.active,
.domain-selection-options .option.selected,
.domain-selection-options .option.active,
#order-standard_cart .domain-selection-options .option input[type="radio"]:checked+label,
#order-standard-cart .domain-selection-options .option input[type="radio"]:checked+label,
.domain-selection-options .option input[type="radio"]:checked+label,
#order-standard_cart .domain-selection-options .option input[type="radio"]:checked~label,
#order-standard-cart .domain-selection-options .option input[type="radio"]:checked~label,
.domain-selection-options .option input[type="radio"]:checked~label {
  background-color: rgba(99, 61, 242, 0.08) !important;
  border-color: var(--priortech-primary) !important;
  box-shadow: 0 0 0 1px var(--priortech-primary) !important;
}

/* Labels and subtext inside options */
#order-standard_cart .domain-selection-options .option label,
#order-standard-cart .domain-selection-options .option label,
.domain-selection-options .option label,
.domain-selection-options .option label span,
.domain-selection-options .option .radio-inline {
  color: var(--text-primary-light) !important;
  font-weight: 600 !important;
  font-size: 1rem !important;
}

.domain-selection-options .option .domain-input-group,
.domain-selection-options .option .form-group {
  margin-top: 15px !important;
  background-color: transparent !important;
  border: none !important;
}

/* Specific styling for the inputs inside domain selection panel */
.domain-selection-options .option .form-control,
.domain-selection-options .option input,
.domain-selection-options .option select,
#order-standard_cart .domain-selection-options .option .form-control,
#order-standard-cart .domain-selection-options .option .form-control {
  background-color: rgba(255, 255, 255, 0.04) !important;
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid var(--priortech-border-dark-theme) !important;
  color: var(--text-primary-light) !important;
  border-radius: var(--border-radius-md) !important;
  height: 48px !important;
  padding: 10px 16px !important;
  padding-left: 16px !important;
  box-shadow: none !important;
}

/* Input group addon (e.g. www. prefix) */
.domain-selection-options .option .input-group-addon,
.domain-selection-options .option .input-group-text,
#order-standard_cart .domain-selection-options .option .input-group-addon,
#order-standard-cart .domain-selection-options .option .input-group-addon {
  background-color: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid var(--priortech-border-dark-theme) !important;
  color: var(--text-muted-light) !important;
  border-top-left-radius: var(--border-radius-md) !important;
  border-bottom-left-radius: var(--border-radius-md) !important;
  padding: 10px 16px !important;
  line-height: 26px !important;
}

/* Domain action button inside the panel (e.g., Use / Check / Transfer button) */
.domain-selection-options .option .input-group-btn .btn,
.domain-selection-options .option .btn-primary,
.domain-selection-options .option button[type="submit"],
#order-standard_cart .domain-selection-options .option .btn-primary,
#order-standard-cart .domain-selection-options .option .btn-primary {
  background-color: var(--priortech-primary) !important;
  color: #ffffff !important;
  border-radius: var(--border-radius-pill) !important;
  font-weight: 600 !important;
  padding: 10px 24px !important;
  box-shadow: 0 4px 14px rgba(99, 61, 242, 0.3) !important;
  border: none !important;
  height: 48px !important;
}

.domain-selection-options .option .input-group-btn .btn:hover,
.domain-selection-options .option .btn-primary:hover,
.domain-selection-options .option button[type="submit"]:hover {
  background-color: var(--priortech-primary-hover) !important;
  box-shadow: 0 6px 20px rgba(99, 61, 242, 0.5) !important;
  transform: translateY(-1px);
}

/* ==========================================
   15. SEARCH BARS & GENERAL INPUTS (ELIMINATING WHITE BACKGROUNDS)
   ========================================== */

/* Target search inputs, text inputs, form controls, and table filters on all pages */
input[type="search"],
input[type="text"].search-input,
.search-input,
.search-form input,
.search-box input,
.kb-search-input,
.domain-checker-container input[type="text"],
.domain-search-input,
.dataTables_filter input,
.dataTables_filter label input,
#order-standard_cart input[type="text"],
#order-standard-cart input[type="text"],
.form-control,
input[type="text"],
input[type="password"],
input[type="email"],
select,
textarea {
  background-color: rgba(255, 255, 255, 0.04) !important;
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid var(--priortech-border-dark-theme) !important;
  color: var(--text-primary-light) !important;
}

/* Ensure placeholder text is legible */
::placeholder,
.form-control::placeholder,
input::placeholder {
  color: var(--text-muted-light) !important;
  opacity: 0.6 !important;
}

/* Focus states for all inputs */
input:focus,
select:focus,
textarea:focus,
.form-control:focus {
  background-color: rgba(255, 255, 255, 0.08) !important;
  border-color: var(--priortech-primary) !important;
  box-shadow: 0 0 0 3px var(--priortech-border-focus) !important;
}

/* ==========================================
   16. DATA TABLES FOOTERS, LENGTHS, PAGINATION (Screenshot 3)
   ========================================== */

.dataTables_wrapper,
.dataTables_wrapper .row,
.dataTables_wrapper .row:last-child,
.dataTables_wrapper .bottom,
.pagination,
.panel-footer,
.card-footer,
.table-footer {
  background-color: transparent !important;
  background: transparent !important;
  border-color: var(--priortech-border-color) !important;
  color: var(--text-primary-light) !important;
}

/* Page table length selector (Show XX entries) */
.dataTables_length select,
.dataTables_length label select {
  background-color: rgba(255, 255, 255, 0.04) !important;
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid var(--priortech-border-dark-theme) !important;
  color: var(--text-primary-light) !important;
  border-radius: var(--border-radius-md) !important;
  padding: 6px 12px !important;
}

/* Paginate buttons styling */
.pagination>li>a,
.pagination>li>span {
  background-color: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid var(--priortech-border-dark-theme) !important;
  color: var(--text-primary-light) !important;
  margin: 0 3px !important;
  border-radius: var(--border-radius-sm) !important;
}

.pagination>li>a:hover,
.pagination>li>span:hover,
.pagination>li.active>a,
.pagination>li.active>span {
  background-color: var(--priortech-primary) !important;
  color: #ffffff !important;
  border-color: var(--priortech-primary) !important;
}

/* ==========================================
   17. ORDER SUMMARY & ADDONS CONTRAST FIXES
   ========================================== */

/* Order Summary Box Background */
#orderSummary,
.order-summary,
#order-summary,
.order-summary-container,
.order-summary-sidebar,
.secondary-sidebar .panel,
#orderSummary .panel,
#orderSummary .panel-default {
  background-color: var(--priortech-card-dark) !important;
  background: var(--priortech-card-dark) !important;
  border: 1px solid var(--priortech-border-dark-theme) !important;
  box-shadow: var(--priortech-card-shadow) !important;
  border-radius: var(--border-radius-lg) !important;
  overflow: hidden !important;
}

/* Order Summary Header Styling */
#orderSummary .panel-heading,
.order-summary-header,
#orderSummary .panel-title,
#orderSummary h3,
#orderSummary h2,
#orderSummary .title {
  background-color: rgba(99, 61, 242, 0.15) !important;
  background: rgba(99, 61, 242, 0.15) !important;
  color: var(--text-primary-light) !important;
  border-bottom: 1px solid var(--priortech-border-dark-theme) !important;
  padding: 15px 20px !important;
  font-weight: 600 !important;
}

/* Order Summary Body Content & Text */
#orderSummary .panel-body,
.order-summary-body,
.order-summary-content,
#orderSummary div,
#orderSummary p,
#orderSummary span,
#orderSummary td,
#orderSummary th,
#orderSummary label,
#orderSummary .product-name,
#orderSummary .price,
#orderSummary .pricing,
#orderSummary .billing-cycle,
#orderSummary .total-due-today,
#orderSummary .total-due-today-price {
  color: var(--text-primary-light) !important;
  background-color: transparent !important;
  background: transparent !important;
}

/* Muted / Sub-details inside Order Summary */
#orderSummary .text-muted,
#orderSummary .muted,
#orderSummary .product-group-name,
#orderSummary .addon-name,
#orderSummary .setup-fee,
#orderSummary .recurring-fee,
#orderSummary .summary-item-desc {
  color: var(--text-muted-light) !important;
}

/* Order Summary Footer Styling */
#orderSummary .panel-footer,
.order-summary-footer {
  background-color: rgba(99, 61, 242, 0.05) !important;
  border-top: 1px solid var(--priortech-border-dark-theme) !important;
  padding: 15px 20px !important;
  color: var(--text-primary-light) !important;
}

/* Available Addons Header Background & Contrast Fix */
.addon-header,
.addon-title,
.header-themed,
.addons-container .sub-heading,
#order-standard_cart .addon-header,
#order-standard-cart .addon-header,
#order-standard_cart .header-themed,
#order-standard-cart .header-themed {
  background-color: transparent !important;
  background: transparent !important;
  color: var(--text-primary-light) !important;
  border: none !important;
  box-shadow: none !important;
  padding: 10px 0 !important;
}

.addon-header h1,
.addon-header h2,
.addon-header h3,
.header-themed h1,
.header-themed h2,
.header-themed h3 {
  color: var(--text-primary-light) !important;
}
/* ==========================================
   18. CART / ORDER SUMMARY – FORCE DARK BACKGROUNDS
   (fixes white/light product rows with white text)
   ========================================== */

/* Main cart table container */
#order-standard_cart .cart-body,
#order-standard_cart .view-cart-items,
#order-standard_cart .cart-items,
#order-standard_cart .table-responsive,
#order-standard_cart table.table,
#order-standard_cart .panel-body,
.cart-body,
.view-cart-items,
.cart-items {
  background-color: var(--priortech-card-dark) !important;
  background: var(--priortech-card-dark) !important;
  color: var(--text-primary-light) !important;
  border: none !important;
}

/* Table header (Product/Options | Price/Cycle) */
#order-standard_cart thead,
#order-standard_cart thead tr,
#order-standard_cart thead th,
#order-standard_cart .cart-table-header,
.cart-table thead,
.cart-table thead th {
  background-color: rgba(99, 61, 242, 0.18) !important;
  background: rgba(99, 61, 242, 0.18) !important;
  color: var(--text-primary-light) !important;
  border-bottom: 1px solid var(--priortech-border-dark-theme) !important;
}

/* Individual product / addon rows */
#order-standard_cart tbody tr,
#order-standard_cart tbody td,
#order-standard_cart .item,
#order-standard_cart .cart-item,
#order-standard_cart .product-row,
.cart-item,
.view-cart-items .item,
.cart-body tr,
.cart-body td {
  background-color: var(--priortech-card-dark) !important;
  background: var(--priortech-card-dark) !important;
  color: var(--text-primary-light) !important;
  border-color: var(--priortech-border-color) !important;
}

/* Alternating / hover rows (remove any light stripes) */
#order-standard_cart tbody tr:nth-child(even),
#order-standard_cart tbody tr:nth-child(odd),
#order-standard_cart tbody tr:hover,
.cart-body tr:nth-child(even),
.cart-body tr:nth-child(odd),
.cart-body tr:hover {
  background-color: rgba(255, 255, 255, 0.03) !important;
  color: var(--text-primary-light) !important;
}

/* Product name, domain, addon labels */
#order-standard_cart .item-title,
#order-standard_cart .product-name,
#order-standard_cart .addon-name,
#order-standard_cart .domain-name,
#order-standard_cart td,
#order-standard_cart .item-desc,
.cart-item .item-title,
.cart-item .product-name,
.view-cart-items .item-title {
  color: var(--text-primary-light) !important;
}

/* Muted secondary text (e.g. “Addon”, “1 Year”, renewal note) */
#order-standard_cart .text-muted,
#order-standard_cart .item-desc,
#order-standard_cart .cycle,
#order-standard_cart .renewal,
#order-standard_cart small,
.cart-item .text-muted,
.cart-item small {
  color: var(--text-muted-light) !important;
}

/* Price column */
#order-standard_cart .item-price,
#order-standard_cart .price,
#order-standard_cart td:last-child,
.cart-item .price {
  color: var(--text-primary-light) !important;
  font-weight: 600 !important;
}

/* “Edit” links & remove (×) buttons */
#order-standard_cart a,
#order-standard_cart .btn-link,
#order-standard_cart .edit-item,
#order-standard_cart .remove-item,
.cart-item a {
  color: var(--priortech-accent-purple) !important;
}
#order-standard_cart a:hover,
.cart-item a:hover {
  color: #ffffff !important;
}

/* Empty Cart button (keep your pill style) */
#order-standard_cart .btn-empty-cart,
.btn-empty-cart,
button[name="emptycart"] {
  background-color: var(--priortech-primary) !important;
  color: #ffffff !important;
  border-radius: var(--border-radius-pill) !important;
  border: none !important;
}

/* Any remaining white panels inside the cart area */
#order-standard_cart .panel,
#order-standard_cart .well,
#order-standard_cart .card,
#order-standard_cart .white-bg,
#order-standard_cart [style*="background"],
#order-standard_cart [style*="background-color"] {
  background-color: var(--priortech-card-dark) !important;
  background: var(--priortech-card-dark) !important;
  color: var(--text-primary-light) !important;
}
/* ==========================================
   19. RECOMMENDED FOR YOU / PRODUCT RECOMMENDATIONS
   (MarketConnect & cross-sell cards)
   ========================================== */

/* Outer recommendation card */
.product-recommendation,
.product-recommendations .product-recommendation,
#order-standard_cart .product-recommendation,
.recommendations .product-recommendation,
div.product-recommendation {
  background-color: var(--priortech-card-dark) !important;
  background: var(--priortech-card-dark) !important;
  border: 1px solid var(--priortech-border-dark-theme) !important;
  border-radius: var(--border-radius-lg) !important;
  box-shadow: var(--priortech-card-shadow) !important;
  color: var(--text-primary-light) !important;
  overflow: hidden !important;
  margin-bottom: 16px !important;
}

/* Header area of each recommendation card */
.product-recommendation .header,
.product-recommendation .cta,
.product-recommendation .content {
  background-color: transparent !important;
  background: transparent !important;
  color: var(--text-primary-light) !important;
  border: none !important;
}

/* Product title / headline */
.product-recommendation .headline,
.product-recommendation .content .headline,
.product-recommendation h3,
.product-recommendation h4 {
  color: var(--text-primary-light) !important;
  font-weight: 600 !important;
}

/* Tagline and secondary descriptive text */
.product-recommendation .tagline,
.product-recommendation .content .tagline,
.product-recommendation .body,
.product-recommendation .body p,
.product-recommendation p {
  color: var(--text-muted-light) !important;
}

/* Price display */
.product-recommendation .price,
.product-recommendation .breakdown-price,
.product-recommendation .cta .price {
  color: var(--text-primary-light) !important;
  font-weight: 600 !important;
}

/* “Add to Cart” buttons inside recommendations
   (retain the coloured buttons supplied by MarketConnect
    while ensuring text remains readable) */
.product-recommendation .btn-add,
.product-recommendation button.btn-add,
.product-recommendation .btn,
.product-recommendation a.btn {
  border-radius: var(--border-radius-pill) !important;
  font-weight: 600 !important;
  color: #ffffff !important;
}

/* Expand / chevron icon */
.product-recommendation .expander,
.product-recommendation .expander i {
  color: var(--priortech-accent-purple) !important;
}

/* Ensure any nested panels or white containers are overridden */
.product-recommendation .panel,
.product-recommendation .well,
.product-recommendation .card,
.product-recommendation [style*="background-color: #fff"],
.product-recommendation [style*="background-color:#fff"],
.product-recommendation [style*="background: #fff"],
.product-recommendation [style*="background:#fff"] {
  background-color: var(--priortech-card-dark) !important;
  background: var(--priortech-card-dark) !important;
  color: var(--text-primary-light) !important;
  border-color: var(--priortech-border-dark-theme) !important;
}

/* Section heading “Recommended for you” */
.product-recommendations h3,
.recommendations-heading,
#order-standard_cart h3,
.recommended-products h3 {
  color: var(--text-primary-light) !important;
}