/* =====================================================
   ServerNet — WHMCS Dark Theme
   Matches marketing site: dark slate + orange brand
   ===================================================== */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

html {
  font-size: 14px;
}

:root {
  /* ---- Brand colors ---- */
  --brand: #fb923c;
  --brand-dark: #ea580c;
  --brand-light: #fdba74;

  /* ---- Surface colors (dark theme) ---- */
  --white: #f1f5f9;

  --neutral-50: #1e293b;
  --neutral-100: #1e293b;
  --neutral-200: #334155;
  --neutral-300: #475569;
  --neutral-400: #64748b;
  --neutral-500: #94a3b8;
  --neutral-600: #cbd5e1;
  --neutral-700: #e2e8f0;
  --neutral-800: #f1f5f9;
  --neutral-900: #f8fafc;
  --neutral-950: #ffffff;

  /* Primary — brand orange */
  --primary-50: #fff7ed;
  --primary-100: #ffedd5;
  --primary-200: #fed7aa;
  --primary-300: #fdba74;
  --primary-400: #fb923c;
  --primary-500: #f97316;
  --primary-600: #ea580c;
  --primary-700: #c2410c;
  --primary-800: #9a3412;
  --primary-900: #7c2d12;
  --primary-950: #431407;

  --primary: var(--brand);
  --primary-lifted: var(--brand-dark);
  --primary-accented: #c2410c;

  /* Secondary */
  --secondary: #64748b;
  --secondary-lifted: #475569;
  --secondary-accented: #334155;

  /* Success */
  --success: #22c55e;
  --success-lifted: #16a34a;
  --success-accented: #15803d;

  /* Info */
  --info: #38bdf8;
  --info-lifted: #0ea5e9;
  --info-accented: #0284c7;

  /* Notice */
  --notice: #a78bfa;
  --notice-lifted: #8b5cf6;
  --notice-accented: #7c3aed;

  /* Warning */
  --warning: #fb923c;
  --warning-lifted: #f97316;
  --warning-accented: #ea580c;

  /* Error */
  --error: #ef4444;
  --error-lifted: #dc2626;
  --error-accented: #b91c1c;

  /* Grayscale */
  --grayscale: #94a3b8;
  --grayscale-lifted: #64748b;
  --grayscale-accented: #475569;

  /* Neutral */
  --neutral: #64748b;
  --neutral-lifted: #475569;
  --neutral-accented: #334155;

  /* Text */
  --text-inverted: #0f172a;
  --text-muted: #64748b;
  --text-lifted: #94a3b8;
  --text-accented: #cbd5e1;
  --text: #f1f5f9;

  /* Borders */
  --border-muted: #1e293b;
  --border: #334155;
  --border-lifted: #475569;
  --border-accented: #64748b;

  /* Backgrounds */
  --bg: #0f172a;
  --bg-muted: #0c1220;
  --bg-lifted: #1e293b;
  --bg-accented: #334155;
  --bg-inverted: #f1f5f9;

  /* Additional */
  --yellow-200: #fde68a;
  --yellow-300: #fcd34d;
  --teal-300: #5eead4;
  --teal-400: #2dd4bf;
  --emerald-300: #6ee7b7;
  --pink-400: #f472b6;

  /* Typography */
  --text-xs: 0.625rem;
  --text-sm: 0.75rem;
  --text-md: 0.875rem;
  --text-lg: 1rem;

  /* Spacing */
  --outline-sm: 1px;
  --outline-md: 2px;
  --outline-lg: 3px;

  /* Rounding */
  --rounding-sm: 0.375rem;
  --rounding-md: 0.5rem;
  --rounding-lg: 0.75rem;

  --letter-spacing: 0em;
  --disabled-opacity: 30%;
}

/* ---- Global ---- */
body, body.primary-bg-color {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  background-color: #0f172a !important;
  color: #f1f5f9 !important;
}

a {
  color: var(--brand);
}
a:hover {
  color: var(--brand-light);
}

/* ---- Header ---- */
#header .header,
#header {
  background-color: #0f172a !important;
  border-bottom: 1px solid #334155 !important;
}

.navbar, .navbar-light {
  background-color: rgba(15, 23, 42, 0.8) !important;
  backdrop-filter: blur(12px);
}

.navbar-brand {
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #fb923c !important;
  letter-spacing: -0.5px;
}
.navbar-brand img.logo-img {
  max-height: 40px;
}

.navbar .navbar-nav .nav-link,
.main-navbar-wrapper .navbar-nav .nav-link,
.main-navbar-wrapper .navbar-nav a,
#nav a,
.navbar-nav a {
  color: #ffffff !important;
  font-weight: 500;
}
.navbar .navbar-nav .nav-link:hover,
.main-navbar-wrapper .navbar-nav .nav-link:hover,
.navbar .navbar-nav .nav-link.active,
.main-navbar-wrapper .navbar-nav .nav-link.active,
.main-navbar-wrapper .navbar-nav a:hover,
#nav a:hover,
.navbar-nav a:hover {
  color: var(--brand) !important;
}

.topbar {
  background-color: #0c1220 !important;
  border-bottom: 1px solid #1e293b !important;
}
.topbar, .topbar .btn, .topbar span, .topbar a {
  color: #94a3b8 !important;
}

/* ---- Navbar dropdown ---- */
.dropdown-menu {
  background-color: #1e293b !important;
  border: 1px solid #334155 !important;
  box-shadow: 0 10px 25px rgba(0,0,0,0.3);
}
.dropdown-menu .dropdown-item {
  color: #cbd5e1 !important;
}
.dropdown-menu .dropdown-item:hover {
  background-color: #334155 !important;
  color: #ffffff !important;
}
.dropdown-menu .dropdown-divider {
  border-color: #334155;
}

/* ---- Breadcrumb ---- */
.master-breadcrumb {
  background-color: #0c1220 !important;
  border-bottom: 1px solid #1e293b !important;
}
.breadcrumb {
  background-color: transparent !important;
}
.breadcrumb-item, .breadcrumb-item a {
  color: #64748b !important;
}
.breadcrumb-item.active {
  color: #94a3b8 !important;
}
.breadcrumb-item + .breadcrumb-item::before {
  color: #475569 !important;
}

/* ---- Main body ---- */
#main-body {
  background-color: #0f172a !important;
}

/* ---- Cards & panels ---- */
.card, .panel, .panel-default {
  background-color: #1e293b !important;
  border: 1px solid #334155 !important;
  border-radius: 0.75rem;
}
.card-header, .panel-heading {
  background-color: #162032 !important;
  border-bottom: 1px solid #334155 !important;
  color: #f1f5f9 !important;
}
.card-body, .panel-body {
  color: #cbd5e1 !important;
}
.card-footer, .panel-footer {
  background-color: #162032 !important;
  border-top: 1px solid #334155 !important;
}

/* ---- Sidebar ---- */
.sidebar .list-group-item {
  background-color: #1e293b !important;
  border-color: #334155 !important;
  color: #cbd5e1 !important;
}
.sidebar .list-group-item:hover,
.sidebar .list-group-item.active {
  background-color: #334155 !important;
  color: #ffffff !important;
  border-color: #475569 !important;
}
.sidebar .list-group-item.active {
  border-left: 3px solid var(--brand) !important;
}

/* ---- Buttons ---- */
.btn-primary, .btn-success {
  background-color: var(--brand) !important;
  border-color: var(--brand) !important;
  color: #ffffff !important;
  font-weight: 600;
  border-radius: 0.5rem;
}
.btn-primary:hover, .btn-success:hover {
  background-color: var(--brand-dark) !important;
  border-color: var(--brand-dark) !important;
  box-shadow: 0 4px 14px rgba(251, 146, 60, 0.3);
}

.btn-default, .btn-secondary, .btn-outline-secondary {
  background-color: #1e293b !important;
  border-color: #334155 !important;
  color: #cbd5e1 !important;
  border-radius: 0.5rem;
}
.btn-default:hover, .btn-secondary:hover, .btn-outline-secondary:hover {
  background-color: #334155 !important;
  border-color: #475569 !important;
  color: #ffffff !important;
}

.btn-danger {
  background-color: #ef4444 !important;
  border-color: #ef4444 !important;
}
.btn-danger:hover {
  background-color: #dc2626 !important;
  border-color: #dc2626 !important;
}

.btn-info {
  background-color: #0ea5e9 !important;
  border-color: #0ea5e9 !important;
}

.btn-warning {
  background-color: #f97316 !important;
  border-color: #f97316 !important;
  color: #ffffff !important;
}

/* ---- Forms ---- */
.form-control, .custom-select, select.form-control {
  background-color: #1e293b !important;
  border: 1px solid #334155 !important;
  color: #f1f5f9 !important;
  border-radius: 0.5rem;
}
.form-control:focus, .custom-select:focus {
  border-color: var(--brand) !important;
  box-shadow: 0 0 0 0.2rem rgba(251, 146, 60, 0.15) !important;
}
.form-control::placeholder {
  color: #64748b !important;
}
.input-group-text {
  background-color: #334155 !important;
  border-color: #334155 !important;
  color: #94a3b8 !important;
}
label, .control-label {
  color: #cbd5e1 !important;
}

/* ---- Tables ---- */
.table {
  color: #cbd5e1 !important;
  background-color: transparent !important;
}
.table thead th {
  background-color: #162032 !important;
  border-color: #334155 !important;
  color: #94a3b8 !important;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 0.75rem;
  letter-spacing: 0.05em;
}
.table td, .table th {
  border-color: #1e293b !important;
  background-color: transparent !important;
}
.table tbody tr {
  background-color: #1e293b !important;
}
.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(15, 23, 42, 0.5) !important;
}
.table-striped tbody tr:nth-of-type(even) {
  background-color: #1e293b !important;
}
.table-hover tbody tr:hover {
  background-color: #334155 !important;
}
.table tbody tr td {
  color: #cbd5e1 !important;
}
.table tbody tr td a {
  color: var(--brand) !important;
}

/* ---- DataTables ---- */
.dataTables_wrapper {
  color: #94a3b8 !important;
}
.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter,
.dataTables_wrapper .dataTables_info,
.dataTables_wrapper .dataTables_paginate {
  color: #94a3b8 !important;
}
.dataTables_wrapper .dataTables_length select,
.dataTables_wrapper .dataTables_filter input {
  background-color: #1e293b !important;
  border-color: #334155 !important;
  color: #f1f5f9 !important;
}
table.dataTable tbody tr {
  background-color: #1e293b !important;
}
table.dataTable tbody tr:nth-child(odd) {
  background-color: rgba(15, 23, 42, 0.5) !important;
}
table.dataTable tbody tr:hover {
  background-color: #334155 !important;
}
table.dataTable tbody td {
  color: #cbd5e1 !important;
}
table.dataTable.no-footer {
  border-bottom-color: #334155 !important;
}
.dataTables_wrapper .dataTables_paginate .paginate_button {
  color: #94a3b8 !important;
}
.dataTables_wrapper .dataTables_paginate .paginate_button.current {
  background: var(--brand) !important;
  border-color: var(--brand) !important;
  color: #ffffff !important;
}
.dataTables_empty {
  color: #64748b !important;
}

/* ---- Alerts ---- */
.alert-info {
  background-color: rgba(14, 165, 233, 0.1) !important;
  border-color: rgba(14, 165, 233, 0.2) !important;
  color: #7dd3fc !important;
}
.alert-success {
  background-color: rgba(34, 197, 94, 0.1) !important;
  border-color: rgba(34, 197, 94, 0.2) !important;
  color: #86efac !important;
}
.alert-warning {
  background-color: rgba(251, 146, 60, 0.1) !important;
  border-color: rgba(251, 146, 60, 0.2) !important;
  color: #fdba74 !important;
}
.alert-danger {
  background-color: rgba(239, 68, 68, 0.1) !important;
  border-color: rgba(239, 68, 68, 0.2) !important;
  color: #fca5a5 !important;
}

/* ---- Badges ---- */
.badge-info, .badge-primary {
  background-color: var(--brand) !important;
  color: #ffffff !important;
}
.badge-success {
  background-color: #22c55e !important;
}
.badge-danger {
  background-color: #ef4444 !important;
}
.badge-secondary {
  background-color: #475569 !important;
}

/* ---- Cart ---- */
.cart-btn .badge {
  background-color: var(--brand) !important;
}

/* ---- Search ---- */
.search .form-control {
  background-color: #1e293b !important;
  border-color: #334155 !important;
}
.search .btn {
  background-color: #334155 !important;
  color: #94a3b8 !important;
}

/* ---- Modals ---- */
.modal-content {
  background-color: #1e293b !important;
  border: 1px solid #334155 !important;
}
.modal-header {
  border-bottom-color: #334155 !important;
}
.modal-header .modal-title {
  color: #f1f5f9 !important;
}
.modal-header .close {
  color: #94a3b8 !important;
}
.modal-footer {
  border-top-color: #334155 !important;
}
.modal-body {
  color: #cbd5e1 !important;
}

/* ---- Footer ---- */
#footer, .footer {
  background-color: #0c1220 !important;
  border-top: 1px solid #1e293b !important;
  color: #64748b !important;
}
.footer a, .footer .nav-link {
  color: #94a3b8 !important;
}
.footer a:hover, .footer .nav-link:hover {
  color: var(--brand) !important;
}
.footer .copyright {
  color: #475569 !important;
}

/* ---- Tabs ---- */
.nav-tabs {
  border-bottom-color: #334155 !important;
}
.nav-tabs .nav-link {
  color: #94a3b8 !important;
  border: 1px solid transparent;
}
.nav-tabs .nav-link:hover {
  border-color: #334155 !important;
  color: #ffffff !important;
}
.nav-tabs .nav-link.active {
  background-color: #1e293b !important;
  border-color: #334155 #334155 #1e293b !important;
  color: var(--brand) !important;
}
.tab-content {
  background-color: #1e293b !important;
  border: 1px solid #334155 !important;
  border-top: none !important;
}

/* ---- Pagination ---- */
.page-item .page-link {
  background-color: #1e293b !important;
  border-color: #334155 !important;
  color: #94a3b8 !important;
}
.page-item.active .page-link {
  background-color: var(--brand) !important;
  border-color: var(--brand) !important;
  color: #ffffff !important;
}
.page-item .page-link:hover {
  background-color: #334155 !important;
  color: #ffffff !important;
}

/* ---- Domain search ---- */
.domain-checker-container, .domain-pricing-table {
  background-color: #1e293b !important;
}

/* ---- Store/order ---- */
.store-product, .product-card {
  background-color: #1e293b !important;
  border: 1px solid #334155 !important;
  border-radius: 0.75rem;
}
.store-product:hover, .product-card:hover {
  border-color: var(--brand) !important;
}

/* ---- Login / register ---- */
.login-container, .register-container {
  background-color: #1e293b !important;
  border: 1px solid #334155 !important;
  border-radius: 0.75rem;
}

/* ---- Headings ---- */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  color: #f1f5f9 !important;
}

/* ---- Text utilities ---- */
.text-muted {
  color: #64748b !important;
}
.text-primary {
  color: var(--brand) !important;
}

/* ---- List groups ---- */
.list-group-item {
  background-color: #1e293b !important;
  border-color: #334155 !important;
  color: #cbd5e1 !important;
}

/* ---- Well / jumbotron ---- */
.well, .jumbotron {
  background-color: #1e293b !important;
  border: 1px solid #334155 !important;
}

/* ---- Popover ---- */
.popover {
  background-color: #1e293b !important;
  border-color: #334155 !important;
}
.popover-body {
  color: #cbd5e1 !important;
}

/* ---- Tooltip ---- */
.tooltip-inner {
  background-color: #334155 !important;
  color: #f1f5f9 !important;
}

/* ---- Progress bars ---- */
.progress {
  background-color: #334155 !important;
}
.progress-bar {
  background-color: var(--brand) !important;
}

/* ---- Selection ---- */
::selection {
  background-color: rgba(251, 146, 60, 0.3);
  color: #ffffff;
}

/* ---- Scrollbar ---- */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
::-webkit-scrollbar-track {
  background: #0f172a;
}
::-webkit-scrollbar-thumb {
  background: #334155;
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: #475569;
}

/* ---- Custom enhancements ---- */
.primary-content {
  min-height: 60vh;
}

/* Smooth transitions */
.btn, .form-control, .nav-link, .list-group-item, .card {
  transition: all 0.2s ease;
}

/* Active client bar */
.active-client .btn, .active-client .input-group-text {
  background-color: #1e293b !important;
  border-color: #334155 !important;
  color: #cbd5e1 !important;
}

/* Client alerts */
.client-alerts li a {
  color: #cbd5e1 !important;
}
.client-alerts li a:hover {
  background-color: #334155 !important;
}

/* Network issues banner */
.network-issues-notifications {
  background-color: rgba(251, 146, 60, 0.1) !important;
  border-color: rgba(251, 146, 60, 0.2) !important;
}

/* Return to admin button */
.btn-return-to-admin {
  background-color: var(--brand) !important;
  color: #ffffff !important;
}

/* Localisation modal */
.modal-localisation .modal-content {
  background-color: #1e293b !important;
}
.modal-localisation .item {
  background-color: #334155 !important;
  color: #cbd5e1 !important;
  border-radius: 0.5rem;
}
.modal-localisation .item.active,
.modal-localisation .item:hover {
  background-color: var(--brand) !important;
  color: #ffffff !important;
}

/* ---- Invoice ---- */
.invoice-header {
  background-color: #1e293b !important;
}

/* ---- Custom hr ---- */
hr {
  border-color: #334155 !important;
}

/* ---- Close buttons ---- */
.close, button.close {
  color: #94a3b8 !important;
  opacity: 1;
}
.close:hover {
  color: #ffffff !important;
}

/* ---- Homepage action icon buttons ---- */
.action-icon-btns a {
  background-color: #1e293b !important;
  border: 1px solid #334155 !important;
  color: #cbd5e1 !important;
  border-radius: 0.75rem !important;
}
.action-icon-btns a:hover {
  border-color: var(--brand) !important;
  color: #ffffff !important;
}
.action-icon-btns a .ico-container {
  color: #94a3b8 !important;
}
.action-icon-btns a:hover .ico-container {
  color: var(--brand) !important;
}
.action-icon-btns a[class*="card-accent-"]::before {
  background-color: var(--brand) !important;
}

/* ---- Homepage cards ---- */
.card-columns.home .card {
  background-color: #1e293b !important;
  border: 1px solid #334155 !important;
  border-radius: 0.75rem !important;
}
.card-columns.home .card p {
  color: #94a3b8 !important;
}

/* ---- Product group cards ---- */
.pricing-card-title {
  color: #f1f5f9 !important;
}

/* ---- Hide entire Configure Server section (hostname, root pw, NS fields) ---- */
/* Our Proxmox module auto-generates hostname and password on provisioning */

/* ---- Cart / order form fields ---- */
#order-standard_cart .form-control,
.cart-body .form-control,
#frmConfigureProduct .form-control {
  background-color: #1e293b !important;
  border-color: #334155 !important;
  color: #f1f5f9 !important;
}
#order-standard_cart .form-control:focus,
.cart-body .form-control:focus,
#frmConfigureProduct .form-control:focus {
  border-color: var(--brand) !important;
}
#order-standard_cart label,
.cart-body label,
#frmConfigureProduct label {
  color: #cbd5e1 !important;
}
.order-summary, .order-summary h2, .summary-totals {
  background-color: #1e293b !important;
  border-color: #334155 !important;
  color: #f1f5f9 !important;
}
.order-summary .line-item, .summary-totals td {
  color: #cbd5e1 !important;
  border-color: #334155 !important;
}
.sub-heading {
  background-color: #162032 !important;
  border-color: #334155 !important;
  color: #94a3b8 !important;
}

/* ---- Dropdown z-index fix ---- */
.sidebar, .cart-sidebar {
  position: relative;
  z-index: 1 !important;
}
.dropdown-menu {
  z-index: 1050 !important;
}
.navbar, .main-navbar-wrapper {
  z-index: 1040 !important;
}
.main-navbar-wrapper .dropdown-menu {
  z-index: 1050 !important;
}

/* ---- Dashboard stat tiles ---- */
.tile, a.tile {
  background-color: #1e293b !important;
  background: #1e293b !important;
  border-color: #334155 !important;
  color: #cbd5e1 !important;
}
.tile:hover, a.tile:hover {
  background-color: #334155 !important;
  background: #334155 !important;
}
.tile .stat, .tile .number {
  color: var(--brand) !important;
}
.tile .title {
  color: #94a3b8 !important;
}

/* ---- Primary bg color override ---- */
.primary-bg-color {
  background-color: #0f172a !important;
}

/* ---- Email verification banner ---- */
.verification-banner, .email-verification {
  background-color: rgba(251, 146, 60, 0.1) !important;
  border-color: rgba(251, 146, 60, 0.2) !important;
  color: #fdba74 !important;
}
.verification-banner a, .email-verification a {
  color: var(--brand) !important;
}

/* ---- Order form .item (product info card) ---- */
#order-standard_cart .item,
.cart-body .item {
  background-color: #1e293b !important;
  border-color: #334155 !important;
  color: #cbd5e1 !important;
}

/* ---- Order configure page ---- */
.product-info {
  background-color: #1e293b !important;
  border-color: #334155 !important;
  color: #cbd5e1 !important;
}
.product-info .product-name {
  color: #f1f5f9 !important;
}
.product-info .product-desc,
.product-info p {
  color: #94a3b8 !important;
}
.summary-container {
  background-color: #1e293b !important;
  border-color: #334155 !important;
  color: #cbd5e1 !important;
}
.summary-container h2,
.summary-container .summary-title {
  color: #f1f5f9 !important;
}
.summary-container .line-item,
.summary-container td,
.summary-container th {
  color: #cbd5e1 !important;
  border-color: #334155 !important;
}
.summary-container .total-due-today {
  color: #f1f5f9 !important;
}

/* ---- Product icon in service details ---- */
.product-icon {
  background-color: #1e293b !important;
  border-color: #334155 !important;
}

/* ---- Hide nameservers from Server Information ---- */
.server-info-row-nameservers,
.domain-details .nameservers {
  display: none !important;
}

/* ---- Markdown editor (ticket submission) ---- */
.md-header, div.md-header, .md-header.btn-toolbar {
  background-color: #162032 !important;
  background: #162032 !important;
  border-color: #334155 !important;
}
.md-header .btn, .md-header .btn-default, .md-header button {
  color: #cbd5e1 !important;
  background-color: transparent !important;
  background: transparent !important;
  border-color: #334155 !important;
}
.md-header .btn:hover, .md-header button:hover {
  color: #ffffff !important;
  background-color: #334155 !important;
}
.md-input, textarea.markdown-editor, textarea.md-input,
#inputMessage, textarea#inputMessage,
textarea.form-control.markdown-editor.md-input {
  background-color: #1e293b !important;
  border-color: #334155 !important;
  color: #f1f5f9 !important;
  background: #1e293b !important;
}
.md-footer {
  background-color: #162032 !important;
  border-color: #334155 !important;
  color: #64748b !important;
}
.md-preview {
  background-color: #1e293b !important;
  color: #cbd5e1 !important;
}

/* ---- File upload ---- */
.custom-file-label {
  background-color: #1e293b !important;
  border-color: #334155 !important;
  color: #94a3b8 !important;
}
.custom-file-label::after {
  background-color: #334155 !important;
  border-color: #334155 !important;
  color: #f1f5f9 !important;
}

/* ---- Checkout page ---- */
.account, .account.active, .account.border-bottom {
  background-color: #1e293b !important;
  border-color: #334155 !important;
  color: #cbd5e1 !important;
}
.account.active {
  border-left: 3px solid var(--brand) !important;
}
.account-select-container {
  background-color: #1e293b !important;
  border: 1px solid #334155 !important;
  border-radius: 0.75rem !important;
}
.account .name, .account strong {
  color: #f1f5f9 !important;
}
.account .address, .account .text-muted {
  color: #94a3b8 !important;
}
.iCheck-helper, .icheckbox_square-blue, .iradio_square-blue {
  background-color: transparent !important;
}
.payment-methods-container, .payment-method {
  background-color: #1e293b !important;
  border-color: #334155 !important;
  color: #cbd5e1 !important;
}
.total-due-today, .order-total {
  background-color: rgba(251, 146, 60, 0.15) !important;
  border-color: rgba(251, 146, 60, 0.3) !important;
  color: #f1f5f9 !important;
}
.security-notice, .fraud-notice {
  background-color: #1e293b !important;
  border-color: #334155 !important;
  color: #94a3b8 !important;
}
.checkout-container .sub-heading span {
  background-color: #0f172a !important;
  color: var(--brand) !important;
}
textarea.form-control {
  background-color: #1e293b !important;
  border-color: #334155 !important;
  color: #f1f5f9 !important;
}

/* ---- Outline buttons ---- */
.btn-outline-primary {
  color: var(--brand) !important;
  border-color: var(--brand) !important;
  background-color: transparent !important;
}
.btn-outline-primary:hover {
  background-color: var(--brand) !important;
  color: #ffffff !important;
}

/* ---- Store / Order form product cards ---- */
#order-standard_cart .product {
  background-color: #1e293b !important;
  border: 1px solid #334155 !important;
  border-radius: 0.75rem !important;
  color: #cbd5e1 !important;
}
#order-standard_cart .product header {
  background-color: #162032 !important;
  border-bottom: 1px solid #334155 !important;
  color: #f1f5f9 !important;
  border-radius: 0.75rem 0.75rem 0 0 !important;
}
#order-standard_cart .product header span {
  color: #f1f5f9 !important;
}
#order-standard_cart .product .product-desc,
#order-standard_cart .product .product-desc p,
#order-standard_cart .product .product-desc ul li {
  color: #94a3b8 !important;
}
#order-standard_cart .product .product-desc .feature-value {
  color: #f1f5f9 !important;
}
#order-standard_cart .product footer {
  background-color: #162032 !important;
  border-top: 1px solid #334155 !important;
  border-radius: 0 0 0.75rem 0.75rem !important;
}
#order-standard_cart .product .product-pricing,
#order-standard_cart .product .product-pricing .price {
  color: #f1f5f9 !important;
}
#order-standard_cart .product:hover {
  border-color: var(--brand) !important;
}

/* Cart sidebar */
.cart-sidebar .list-group-item {
  background-color: #1e293b !important;
  border-color: #334155 !important;
  color: #cbd5e1 !important;
}
.cart-sidebar .list-group-item.active,
.cart-sidebar .list-group-item:hover {
  background-color: #334155 !important;
  color: #ffffff !important;
}

/* Cart header */
.header-lined h1 {
  color: #f1f5f9 !important;
}
.header-lined p {
  color: #94a3b8 !important;
}
.header-lined {
  border-bottom-color: #334155 !important;
}

/* Cart body / checkout */
.cart-body {
  color: #cbd5e1 !important;
}
#order-standard_cart {
  color: #cbd5e1 !important;
}

/* Order summary / configure */
.order-summary, .sub-heading {
  background-color: #1e293b !important;
  border-color: #334155 !important;
  color: #cbd5e1 !important;
}

/* ---- VPS management panel (Proxmox module clientarea) ---- */
.module-section, .server-info-section {
  background-color: #1e293b !important;
  border: 1px solid #334155 !important;
  border-radius: 0.75rem !important;
}
.module-section h3, .module-section h4,
.server-info-section h3, .server-info-section h4 {
  color: #94a3b8 !important;
}
.module-section .table td,
.module-section .table th {
  color: #cbd5e1 !important;
  border-color: #334155 !important;
}

/* Status badges in VPS panel */
.badge-success, .label-success {
  background-color: #22c55e !important;
}
.badge-danger, .label-danger {
  background-color: #ef4444 !important;
}
.badge-warning, .label-warning {
  background-color: #f97316 !important;
  color: #ffffff !important;
}

/* Resource usage bars */
.progress {
  background-color: #334155 !important;
  border-radius: 0.5rem !important;
}
.progress-bar {
  background-color: var(--brand) !important;
}
.progress-bar.bg-success {
  background-color: #22c55e !important;
}
.progress-bar.bg-warning {
  background-color: #f97316 !important;
}
.progress-bar.bg-danger {
  background-color: #ef4444 !important;
}

/* Domain chooser option card */
.domain-selection-options .option {
  background-color: #1e293b !important;
  border-color: #334155 !important;
  color: #f1f5f9 !important;
}
.domain-selection-options .option:hover,
.domain-selection-options .option.active,
.domain-selection-options .option.selected {
  background-color: #243044 !important;
  border-color: #f97316 !important;
}
.domain-selection-options .option label,
.domain-selection-options .option p,
.domain-selection-options .option span {
  color: #f1f5f9 !important;
}

/* ---- Stripe / credit card payment form ---- */
#creditCardInputFields,
.cc-input-container {
  background-color: #1e293b !important;
  border-color: #334155 !important;
  color: #f1f5f9 !important;
  border-radius: 0.75rem !important;
}
#applyCreditContainer,
.apply-credit-container {
  background-color: #1e293b !important;
  border-color: #334155 !important;
  color: #cbd5e1 !important;
}
#creditCardInputFields label,
.cc-input-container label,
#creditCardInputFields p,
#creditCardInputFields .field-help-text {
  color: #cbd5e1 !important;
}
/* Payment method panels */
.payment-method .panel,
.payment-method .panel-body,
.payment-method .card-body,
.payment-method .card,
#paymentGatewayContainer,
#paymentGatewayContainer .panel,
#paymentGatewayContainer .panel-body,
#paymentGatewayContainer .card,
#paymentGatewayContainer .card-body {
  background-color: #1e293b !important;
  border-color: #334155 !important;
  color: #cbd5e1 !important;
}
/* Generic white panel/card overrides for payment views */
.invoice-container .panel,
.invoice-container .panel-body,
.invoice-container .card,
.invoice-container .card-body,
#invoicePaymentConfirm .panel,
#invoicePaymentConfirm .panel-body,
#invoicePaymentConfirm .card,
#invoicePaymentConfirm .card-body {
  background-color: #1e293b !important;
  border-color: #334155 !important;
  color: #cbd5e1 !important;
}
