/* =====================================================================
   STARWAVEFX THEME  ·  v1  ·  full override layer for the Spike CRM
   ---------------------------------------------------------------------
   Re-skins the ENTIRE client portal (header, sidebar, footer, popups,
   dropdowns, tables, forms, buttons, badges) to the new StarwaveFX design (purple base + gold hero)
   for BOTH light and dark (data-bs-theme), and fixes every hover state so
   nothing ever flashes the old blue.
   SAFE: only colour / background / border / shadow / radius / font are
   changed — never display/position/flex/grid — so all JS keeps working.
   LOAD AFTER styles.css + update-styles.css.
   ===================================================================== */

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

/* ---------- brand accent : drives the whole template ---------- */
:root{
  --primary-color-hex:#7c3aed;
  --primary-color-rgb:rgb(124,58,237);
  --primary-color-rgb-value:124,58,237;
  --primary-color-subtle-rgba:rgb(176 107 255 / 16%);
  --secondary-color-hex:#b06bff;
  --secondary-color-rgb:rgb(176,107,255);

  --pm-accent:#b06bff;
  --pm-accent-2:#7c3aed;
  --pm-grad:linear-gradient(135deg,#b06bff 0%,#7c3aed 100%);
  --sw-gold:linear-gradient(135deg,#f7d06b 0%,#d4a63c 100%);
  --pm-grad-soft:linear-gradient(135deg,rgba(176,107,255,.18),rgba(124,58,237,.10));
  --pm-radius-card:14px;
  --pm-radius-ctrl:9px;
}
:root,[data-bs-theme="light"],[data-bs-theme="dark"]{
  --bs-primary:#7c3aed;
  --bs-primary-rgb:124,58,237;
  --bs-link-color:var(--pm-accent-2);
  --bs-link-hover-color:var(--pm-accent);
  --bs-font-sans-serif:'Inter',system-ui,-apple-system,"Segoe UI",sans-serif;
}
body{font-family:var(--bs-font-sans-serif);}

/* ============================ DARK THEME ============================ */
[data-bs-theme="dark"]{
  --bs-body-bg:#0e0720;
  --bs-body-color:#ffffff;
  --bs-secondary-color:#a496c4;
  --bs-tertiary-color:#a496c4;
  --bs-border-color:rgba(176,107,255,0.14);
  --bs-card-bg:#1a1033;
  --bs-card-border-color:rgba(176,107,255,0.14);
  --bs-secondary-bg:#1a1033;
  --bs-tertiary-bg:#150c28;
  --bs-emphasis-color:#ffffff;
  --bs-heading-color:#ffffff;
  --bs-dropdown-bg:#1a1033;
  --bs-dropdown-link-color:#cbbde0;
  --bs-dropdown-border-color:rgba(176,107,255,.14);
  --bs-modal-bg:#1a1033;
  --pm-surface-grad:linear-gradient(180deg,rgba(26,16,51,.95) 0%,rgba(20,11,40,.98) 100%);
  --pm-glow:0 24px 80px rgba(0,0,0,.45), 0 0 48px -10px rgba(176,107,255,.15);
  --pm-muted:#a496c4;
  --pm-chrome:linear-gradient(180deg,rgba(26,16,51,.96),rgba(20,11,40,.98));
  --pm-card-border-grad:linear-gradient(135deg,rgba(176,107,255,.5),rgba(124,58,237,.3));
}
[data-bs-theme="dark"] body{ background:#0e0720 !important; }
[data-bs-theme="dark"] body::before{
  content:""; position:fixed; inset:0; z-index:-1; pointer-events:none;
  background:
    radial-gradient(ellipse 95% 320px at 50% -20px, rgba(124,58,237,.30), transparent 72%),
    radial-gradient(ellipse 55% 280px at 100% -10px, rgba(176,107,255,.14), transparent 72%),
    #0e0720;
}

/* ============================ LIGHT THEME =========================== */
[data-bs-theme="light"],html:not([data-bs-theme="dark"]){
  --bs-body-bg:#f4f0fb;
  --bs-body-color:#0a1726;
  --bs-secondary-color:#41526b;
  --bs-border-color:rgba(124,58,237,0.18);
  --bs-card-bg:#ffffff;
  --bs-card-border-color:rgba(124,58,237,0.18);
  --pm-surface-grad:linear-gradient(180deg,#ffffff 0%,#ffffff 100%);
  --pm-glow:0 12px 32px rgba(60,30,90,.10), 0 2px 8px rgba(60,30,90,.06);
  --pm-muted:#6b5c85;
  --pm-chrome:#ffffff;
  --pm-card-border-grad:linear-gradient(135deg,rgba(140,70,220,.95),rgba(108,40,190,.78));
}
/* light-theme readability boost */
[data-bs-theme="light"] .sidebar-link,html:not([data-bs-theme="dark"]) .sidebar-link{color:#4a3d6b !important;font-weight:500;}
[data-bs-theme="light"] .sidebar-link:hover{color:var(--pm-accent-2) !important;}
[data-bs-theme="light"] .breadcrumb a,html:not([data-bs-theme="dark"]) .breadcrumb a{color:#5a6b80 !important;}
[data-bs-theme="light"] .text-muted,[data-bs-theme="light"] .fs-3,html:not([data-bs-theme="dark"]) .text-muted{color:#5a6b80 !important;}
[data-bs-theme="light"] h1,[data-bs-theme="light"] h2,[data-bs-theme="light"] h3,[data-bs-theme="light"] h4,[data-bs-theme="light"] h5,[data-bs-theme="light"] h6,[data-bs-theme="light"] p,[data-bs-theme="light"] label,[data-bs-theme="light"] td,[data-bs-theme="light"] span:not(.badge){color:#1f2d40;}
[data-bs-theme="light"] .table thead th{color:#41526b !important;}

[data-bs-theme="light"] body,html:not([data-bs-theme="dark"]) body{ background:#f4f0fb !important; }
[data-bs-theme="light"] body::before,html:not([data-bs-theme="dark"]) body::before{
  content:""; position:fixed; inset:0; z-index:-1; pointer-events:none;
  background:
    radial-gradient(ellipse 95% 300px at 50% -20px, rgba(124,58,237,.14), transparent 72%),
    #f4f0fb;
}

/* ============================== CARDS ============================== */
.card{
  border:1.5px solid transparent !important;
  border-radius:var(--pm-radius-card) !important;
  background:var(--pm-surface-grad) padding-box, var(--pm-card-border-grad) border-box !important;
  -webkit-background-clip:padding-box, border-box !important;
  background-clip:padding-box, border-box !important;
  box-shadow:var(--pm-glow) !important;
}
/* nested cards: subtle plain border, no gradient/glow */
.card .card{
  background:var(--pm-surface-grad) !important;
  -webkit-background-clip:border-box !important;
  background-clip:border-box !important;
  border:1px solid var(--bs-card-border-color) !important;
  box-shadow:none !important;
}
[data-bs-theme="light"] .card .card{background:#f6f9fd !important;}
[data-bs-theme="dark"] .card.bg-light-subtle{background:#150c28 !important;}
.info-card,.bg-primary-subtle{background:rgba(176,107,255,0.08) !important;border:1px solid rgba(176,107,255,0.18) !important;}

/* Auth pages (signin/signup/etc.): the card sits inside .auth-login (rounded-3 +
   overflow-hidden) and .auth-login-shape, which clipped the card's 14px gradient
   ring at a tighter radius -> doubled/offset curve at the corners. Match the
   wrapper radii to the card radius so only ONE clean outer line shows. */
.auth-login,
.auth-login-shape{
  border:0 !important;
  border-radius:var(--pm-radius-card) !important;
}
.auth-login-wrapper.card{
  border-radius:var(--pm-radius-card) !important;
}

/* ===================================================================
   BUTTONS  +  ALL HOVER STATES  (fixes "old colour on hover")
   =================================================================== */
.btn{border-radius:var(--pm-radius-ctrl);}
.btn-primary,
.btn-primary:not(:disabled):not(.disabled):active,
.btn-primary:focus{
  background:var(--pm-grad) !important;border:none !important;color:#ffffff !important;
  box-shadow:0 8px 24px rgba(124,58,237,.25) !important;
}
.btn-primary:hover{filter:brightness(1.10);background:var(--pm-grad) !important;color:#ffffff !important;}
[data-bs-theme="light"] .btn-primary,[data-bs-theme="light"] .btn-primary:hover{color:#fff !important;}

.btn-outline-primary{border-color:var(--pm-accent) !important;color:var(--pm-accent) !important;background:transparent !important;}
.btn-outline-primary:hover,
.btn-check:checked+.btn-outline-primary,
.btn-check:active+.btn-outline-primary{background:var(--pm-grad) !important;color:#ffffff !important;border-color:transparent !important;}

.btn.bg-primary-subtle,.btn.text-primary.bg-primary-subtle{background:rgba(176,107,255,.08) !important;color:var(--pm-accent) !important;border:1px solid rgba(176,107,255,.18) !important;}
.btn.bg-primary-subtle:hover,.btn.text-primary.bg-primary-subtle:hover{background:rgba(176,107,255,.16) !important;color:var(--pm-accent) !important;}
.btn-light:hover,.btn-secondary:hover{background:rgba(176,107,255,.10) !important;color:var(--pm-accent) !important;border-color:rgba(176,107,255,.22) !important;}
.btn-link{color:var(--pm-accent-2) !important;} .btn-link:hover{color:var(--pm-accent) !important;}

a:hover{color:var(--pm-accent) !important;}
.text-primary{color:var(--pm-accent) !important;}
.text-bg-primary,.bg-primary{background:var(--pm-grad) !important;color:#ffffff !important;}
.border-primary,.border-start.border-primary{border-color:var(--pm-accent) !important;}

/* ===================================================================
   SIDEBAR  (incl. .primary-hover-bg ::before overlay + active state)
   =================================================================== */
[data-bs-theme="dark"] .left-sidebar{background:var(--pm-chrome) !important;}
.left-sidebar{border-right:1px solid var(--bs-border-color) !important;}

.sidebar-link{color:#ffffff !important;border-radius:10px !important;transition:color .15s,background .15s;}
.sidebar-link .hide-menu,.sidebar-link iconify-icon{color:inherit !important;}
.sidebar-link:hover{color:var(--pm-accent) !important;}

.primary-hover-bg::before,
.primary-hover-bg:hover::before,
.primary-hover-bg.active::before,
.primary-hover-bg[aria-expanded="true"]::before{
  background:rgba(176,107,255,.10) !important;border-radius:10px !important;
}
.primary-hover-bg:hover .hide-menu,
.primary-hover-bg:hover iconify-icon,
.primary-hover-bg.active .hide-menu,
.primary-hover-bg.active iconify-icon{color:var(--pm-accent) !important;}
/* active leaf gets the full gradient below -> remove the faint cyan film over it */
.primary-hover-bg.active:not(.has-arrow)::before{background:transparent !important;}

/* Active nav item (leaf / sub-item) → cyan->blue gradient like the action buttons */
.sidebar-link.active:not(.has-arrow),
.sidebar-item .sidebar-link.active:not(.has-arrow),
.left-sidebar .sidebar-nav ul .sidebar-item .sidebar-link.active:not(.has-arrow){
  background:var(--pm-grad) !important;color:#ffffff !important;
  border:1px solid transparent !important;
  box-shadow:0 8px 20px -8px rgba(0,150,220,.6) !important;
}
.sidebar-link.active:not(.has-arrow) iconify-icon,
.sidebar-link.active:not(.has-arrow) .hide-menu,
.sidebar-link.active:not(.has-arrow) .pm-ico{color:#ffffff !important;}
/* Parent of an open submenu keeps a subtle tint (avoids two gradient bars) */
.sidebar-link.has-arrow.active{
  background:rgba(176,107,255,.10) !important;color:var(--pm-accent) !important;
  border:1px solid rgba(176,107,255,.18) !important;
}
.sidebar-link.has-arrow.active iconify-icon,
.sidebar-link.has-arrow.active .hide-menu,
.sidebar-link.has-arrow.active .pm-ico{color:var(--pm-accent) !important;}

.sidebar-icon{background:var(--pm-muted) !important;}
.sidebar-item .sidebar-link:hover .sidebar-icon{background:var(--pm-accent) !important;}
.sidebar-item .sidebar-link.active .sidebar-icon{background:transparent !important;}

.sidebar-link.btn-primary{background:var(--pm-grad) !important;color:#ffffff !important;border:none !important;}
.sidebar-link.btn-primary:hover{filter:brightness(1.08);color:#ffffff !important;}

/* ===================================================================
   TOPBAR / HEADER  + icon & dropdown hovers
   =================================================================== */
.topbar,[data-bs-theme="dark"] .topbar,.app-header{
  background:var(--pm-chrome) !important;border-bottom:1px solid var(--bs-border-color) !important;
}
.topbar .nav-icon-hover,.topbar .nav-link{color:var(--pm-muted) !important;}
.topbar .nav-icon-hover:hover,.topbar .nav-link:hover{color:var(--pm-accent) !important;}
.nav-icon-hover::before{background:rgba(176,107,255,.12) !important;}

.dropdown-menu{background:var(--pm-surface-grad) !important;border:1px solid var(--bs-border-color) !important;border-radius:12px !important;box-shadow:var(--pm-glow) !important;}
.dropdown-item{color:var(--bs-body-color) !important;border-radius:8px !important;}
.dropdown-item:hover,.dropdown-item:focus,.dropdown-item.active,
.language-option:hover{background:rgba(176,107,255,.10) !important;color:var(--pm-accent) !important;}

.offcanvas,.mobile-sidebar{background:var(--pm-chrome) !important;color:var(--bs-body-color) !important;}

/* ============================ BADGES / PROGRESS ===================== */
.badge.bg-success,.bg-success{background:rgba(88,212,232,.16) !important;color:#58d4e8 !important;}
.badge.bg-warning,.bg-warning{background:rgba(255,213,79,.16) !important;color:#ffd54f !important;}
.badge.bg-danger,.bg-danger{background:rgba(255,77,109,.16) !important;color:#ff4d6d !important;}
.badge.bg-primary{background:var(--pm-grad) !important;color:#ffffff !important;}
.rounded-circle.bg-success{background:#58d4e8 !important;}
.rounded-circle.bg-warning{background:#ffd54f !important;}
.progress{background:var(--bs-tertiary-bg) !important;border-radius:999px !important;height:8px !important;}
.progress-bar,.progress-bar.bg-success{background:var(--pm-grad) !important;}
.round-40{border-radius:11px !important;}
.text-bg-primary.round-40{background:var(--pm-grad) !important;color:#ffffff !important;}

/* ===================== FORMS · INPUTS · SELECT2 ===================== */
.form-control,.form-select,.dataTables_filter input,.dataTables_length select{
  background:var(--bs-tertiary-bg) !important;border:1px solid var(--bs-border-color) !important;
  border-radius:var(--pm-radius-ctrl) !important;color:var(--bs-body-color) !important;
}
.form-control:focus,.form-select:focus{border-color:rgba(176,107,255,.45) !important;box-shadow:0 0 0 3px rgba(176,107,255,.12) !important;}
.form-control::placeholder{color:var(--pm-muted) !important;}
.form-check-input:checked{background-color:var(--pm-accent-2) !important;border-color:var(--pm-accent-2) !important;}
.select2-container--default .select2-selection--single,
.select2-dropdown{background:var(--bs-tertiary-bg) !important;border-color:var(--bs-border-color) !important;color:var(--bs-body-color) !important;}
.select2-container--default .select2-results__option--highlighted[aria-selected]{background:var(--pm-accent-2) !important;}

/* =============================== MODALS / POPUPS ==================== */
.modal-content{background:var(--pm-surface-grad) !important;border:1px solid var(--bs-card-border-color) !important;border-radius:var(--pm-radius-card) !important;box-shadow:var(--pm-glow) !important;}
.modal-header,.modal-footer{border-color:var(--bs-border-color) !important;}
.modal-header.bg-primary-subtle{background:rgba(176,107,255,.08) !important;}
[data-bs-theme="dark"] .btn-close{filter:invert(1) grayscale(100%) brightness(1.4);}

.swal2-popup{background:var(--pm-surface-grad) !important;border:1px solid var(--bs-border-color) !important;border-radius:var(--pm-radius-card) !important;color:var(--bs-body-color) !important;}
.swal2-styled.swal2-confirm{background:var(--pm-grad) !important;color:#ffffff !important;border-radius:var(--pm-radius-ctrl) !important;}

/* =============================== TABLES ============================= */
.table{--bs-table-bg:transparent;--bs-table-color:var(--bs-body-color);}
.table thead th{background:rgba(124,58,237,.08) !important;color:var(--pm-muted) !important;border-color:var(--bs-border-color) !important;font-weight:500 !important;}
.table td,.table th{border-color:var(--bs-border-color) !important;}
.table-hover tbody tr:hover>*{background:rgba(176,107,255,.03) !important;}
.page-link{color:var(--pm-accent) !important;background:transparent !important;border-color:var(--bs-border-color) !important;}
.page-item.active .page-link{background:var(--pm-grad) !important;border-color:transparent !important;color:#ffffff !important;}
.page-link:hover{background:rgba(176,107,255,.10) !important;}

/* ====================== BREADCRUMB / TABS / NAV ===================== */
.breadcrumb a{color:var(--pm-muted) !important;} .breadcrumb a:hover{color:var(--pm-accent) !important;}
.breadcrumb-item.active{color:var(--bs-body-color) !important;}
.nav-tabs .nav-link{color:var(--pm-muted) !important;border:none !important;}
.nav-tabs .nav-link:hover{color:var(--pm-accent) !important;}
.nav-tabs .nav-link.active{color:var(--pm-accent) !important;background:transparent !important;border-bottom:2px solid var(--pm-accent) !important;}

.mt5-detail-row .p-2.bg-primary-subtle{background:var(--pm-grad-soft) !important;border:1px solid rgba(176,107,255,.18);border-radius:10px;}
.border-start.border-4.border-primary{border-color:var(--pm-accent) !important;}

/* ====================== HELPERS for redesigned pages =============== */
.pm-title{background:linear-gradient(90deg,#fff,var(--pm-accent));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:700;letter-spacing:-.3px;}
[data-bs-theme="light"] .pm-title{background:linear-gradient(90deg,#0a1726,var(--pm-accent));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.pm-icon-tile{width:48px;height:48px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:var(--pm-grad-soft);border:1px solid rgba(176,107,255,.18);color:var(--pm-accent);box-shadow:0 0 24px rgba(176,107,255,.14);}
.pm-icon-tile svg{width:24px;height:24px;}
.pm-icon-tile.sm{width:36px;height:36px;border-radius:9px;} .pm-icon-tile.sm svg{width:18px;height:18px;}

[data-bs-theme="dark"] .tooltip-inner{background:#1a1033;border:1px solid var(--bs-border-color);color:#fff;}
::-webkit-scrollbar{width:8px;height:8px;} ::-webkit-scrollbar-track{background:transparent;}
::-webkit-scrollbar-thumb{background:rgba(176,107,255,.25);border-radius:4px;} ::-webkit-scrollbar-thumb:hover{background:rgba(176,107,255,.4);}

/* paramount custom-icon helper (use with the SVG sprite) */
.pm-ico{display:inline-flex;width:1.25em;height:1.25em;vertical-align:-0.18em;color:currentColor;}
.pm-ico svg{width:100%;height:100%;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;}
.sidebar-link .pm-ico{color:inherit;font-size:1.2rem;}

/* sub-item icons (replaced the old bullet dots) */
.sidebar-icon.pm-subicon{background:transparent !important;width:auto !important;height:auto !important;display:inline-flex;align-items:center;}
.sidebar-icon.pm-subicon::before,.sidebar-icon.pm-subicon::after{display:none !important;content:none !important;}
.sidebar-icon.pm-subicon .pm-ico{font-size:1.02rem;color:inherit;}
.sidebar-item .sidebar-link:hover .pm-subicon .pm-ico{color:var(--pm-accent);}
.sidebar-item .sidebar-link.active:not(.has-arrow) .pm-subicon .pm-ico{color:#ffffff !important;}

/* ===================== AUTH PAGES (signin / signup / forgot) ===================== */
/* dark gradient themed background (body already paints the glow); wrapper just centers */
.pm-auth{
  min-height:100vh; position:relative;
  display:flex; align-items:center; justify-content:center;
  padding:84px 16px 44px; background:transparent !important;
}
/* top-right controls (language + light/dark toggle) */
.pm-auth > .container{
  position:absolute; top:16px; right:18px; left:auto; width:auto; max-width:none; margin:0; padding:0; z-index:6;
}
.pm-auth > .container .user-setting-bar{
  display:flex; align-items:center; gap:6px; margin:0; padding:0; list-style:none;
}
.pm-auth > .container .user-setting-bar .nav-link{ color:var(--pm-muted) !important; }
.pm-auth > .container .user-setting-bar .nav-link:hover{ color:var(--pm-accent) !important; }

/* centered card */
.pm-auth-wrap{ position:relative; z-index:1; width:100%; max-width:440px; }
.pm-auth-card.card{ width:100%; border-radius:18px !important; }
.pm-auth-card .card-body{ position:relative; }

.pm-auth-subtitle{
  margin:.55rem 0 0; letter-spacing:.3em; font-size:12px; font-weight:600;
  text-transform:uppercase; color:var(--pm-muted) !important;
}
.pm-auth-divider{ border:0; border-top:1px solid var(--bs-border-color); margin:18px 0 22px; opacity:1; }

/* segmented Sign In / Sign Up toggle */
.pm-auth-tabs{
  display:grid; grid-template-columns:1fr 1fr; gap:6px;
  background:var(--bs-tertiary-bg); border:1px solid var(--bs-border-color);
  border-radius:12px; padding:5px;
}
.pm-auth-tab{
  text-align:center; padding:11px 0; border-radius:8px; font-weight:600; font-size:15px;
  color:var(--pm-muted); text-decoration:none; transition:all .15s ease;
}
.pm-auth-tab:hover{ color:var(--bs-body-color); }
.pm-auth-tab.active{
  background:var(--pm-grad); color:#ffffff !important;
  box-shadow:0 6px 16px -6px rgba(0,150,220,.6);
}

/* labelled inputs */
.pm-auth-label{ display:block; margin-bottom:7px; font-size:13px; font-weight:500; color:var(--bs-body-color); }
.pm-auth-input.form-control{
  height:48px; border-radius:11px; padding:0 14px;
  background:var(--bs-tertiary-bg) !important;
  border:1px solid var(--bs-border-color) !important; color:var(--bs-body-color) !important;
}
.pm-auth-input.form-control::placeholder{ color:var(--pm-muted); opacity:.8; }
.pm-auth-input.form-control:focus{
  border-color:var(--pm-accent) !important; background:var(--bs-tertiary-bg) !important;
  box-shadow:0 0 0 3px rgba(176,107,255,.15) !important;
}
.pm-auth-field{ position:relative; }
.pm-auth-field .pm-auth-input{ padding-right:46px; }
.pm-auth-eye{
  position:absolute; right:14px; top:50%; transform:translateY(-50%);
  cursor:pointer; color:var(--pm-muted); font-size:20px; line-height:0;
}
.pm-auth-eye:hover{ color:var(--pm-accent); }

.pm-auth-link{ color:var(--pm-accent) !important; text-decoration:none; font-size:13px; font-weight:500; }
.pm-auth-link:hover{ text-decoration:underline; }

/* gradient action button */
.pm-auth-btn.btn{
  height:50px; border-radius:11px; font-weight:600; font-size:15px;
  background:var(--pm-grad) !important; border:0 !important; color:#ffffff !important;
  box-shadow:0 10px 24px -8px rgba(0,150,220,.6) !important;
}
.pm-auth-btn.btn:hover{ filter:brightness(1.06); color:#ffffff !important; }

/* ---- auth: signup-specific (wider card, phone row, select2, sub-text) ---- */
.pm-auth-wrap--wide{ max-width:500px; }
.pm-auth-sub-desc{ color:var(--pm-muted); font-size:13px; margin:0; }
.pm-auth-input.form-select{ appearance:auto; }

.pm-auth-phone{ display:flex; gap:8px; align-items:stretch; }
.pm-auth-phone .pm-auth-input{ flex:1 1 auto; min-width:0; }
.pm-auth-phone > select.form-control{ flex:0 0 132px; }

.pm-auth .select2-container{ width:100% !important; }
.pm-auth-phone > .select2-container{ flex:0 0 132px; width:132px !important; }
.pm-auth .select2-container--default .select2-selection--single{
  height:48px !important; border-radius:11px !important; padding:0 10px;
  background:var(--bs-tertiary-bg) !important; border:1px solid var(--bs-border-color) !important;
  display:flex; align-items:center;
}
.pm-auth .select2-container--default .select2-selection--single .select2-selection__rendered{
  color:var(--bs-body-color) !important; line-height:normal; padding:0 4px;
}
.pm-auth .select2-container--default .select2-selection--single .select2-selection__arrow{ height:46px; right:6px; }
.pm-auth .select2-container--open .select2-selection--single{ border-color:var(--pm-accent) !important; }

/* ---- inner pages: reveal the body gradient behind content (match auth) ---- */
/* Spike paints an opaque dark on these wrappers, hiding the glow on the
   dashboard & inner pages. Make them transparent so the same top / top-right
   gradient that auth pages show comes through. Sidebar + topbar keep their
   solid --pm-chrome, so the glow stays in the content area only. */
/* High specificity (scoped under the #main-wrapper ID) so these beat Spike's
   own [data-bs-theme="dark"] .page-wrapper / .body-wrapper background rules. */
#main-wrapper,
[data-bs-theme="dark"] #main-wrapper,
[data-bs-theme="dark"] #main-wrapper .page-wrapper,
[data-bs-theme="dark"] #main-wrapper .body-wrapper,
[data-bs-theme="dark"] #main-wrapper .container-fluid,
[data-bs-theme="light"] #main-wrapper .page-wrapper,
[data-bs-theme="light"] #main-wrapper .body-wrapper,
html:not([data-bs-theme="dark"]) #main-wrapper .page-wrapper,
html:not([data-bs-theme="dark"]) #main-wrapper .body-wrapper{
  background:transparent !important; background-color:transparent !important;
}


/* ============================================================
   STARWAVEFX GOLD ACCENTS
   Purple is the default hero (buttons/tabs/badges). Gold is
   reserved for: sidebar ACTIVE item, Sign Out, header Add Funds.
   ============================================================ */
.sidebar-link.active:not(.has-arrow),
.sidebar-item .sidebar-link.active:not(.has-arrow),
.left-sidebar .sidebar-nav ul .sidebar-item .sidebar-link.active:not(.has-arrow){
  background:var(--sw-gold) !important; color:#231903 !important;
}
.sidebar-link.active:not(.has-arrow) iconify-icon,
.sidebar-link.active:not(.has-arrow) .hide-menu,
.sidebar-link.active:not(.has-arrow) .pm-ico,
.sidebar-item .sidebar-link.active:not(.has-arrow) .pm-subicon .pm-ico{ color:#231903 !important; }

/* Sign Out (unique href) */
a.btn[href="signout"], a.btn-primary[href="signout"]{
  background:var(--sw-gold) !important; color:#231903 !important; border:0 !important;
}
a.btn[href="signout"]:hover{ filter:brightness(1.06); color:#231903 !important; }

/* Header "Add Funds" (lives inside .topbar) */
.topbar .btn-primary, .topbar a.btn-primary{
  background:var(--sw-gold) !important; color:#231903 !important; border:0 !important;
}
.topbar .btn-primary:hover{ filter:brightness(1.06); color:#231903 !important; }

/* opt-in gold for any element we tag explicitly */
.sw-gold{ background:var(--sw-gold) !important; color:#231903 !important; border:0 !important; }
.sw-gold:hover{ filter:brightness(1.06); color:#231903 !important; }

/* ============================================================
   UTILITY COVERAGE (dark) — catches Bootstrap utilities that
   inner pages use raw (text-dark, bg-white, bg-light badges).
   ============================================================ */
[data-bs-theme="dark"] .text-dark{ color:var(--bs-body-color) !important; }
[data-bs-theme="dark"] .bg-white{ background:var(--bs-card-bg) !important; color:var(--bs-body-color) !important; }
[data-bs-theme="dark"] .badge.bg-light{ background:rgba(176,107,255,.12) !important; color:var(--pm-muted) !important; }
[data-bs-theme="dark"] .bg-light:not(.badge):not(.btn){ background:var(--bs-tertiary-bg) !important; color:var(--bs-body-color) !important; }

/* ============================================================
   FIXES: kill leftover teal (old accent), theme popup, center auth logo
   ============================================================ */
/* 1) input focus rings -> purple (was leaking Spike's teal) */
.form-control:focus, .form-select:focus, textarea:focus,
.pm-auth-input:focus, .modal .form-control:focus,
.select2-container--default.select2-container--focus .select2-selection--single{
  border-color:var(--pm-accent) !important;
  box-shadow:0 0 0 .2rem rgba(176,107,255,.28) !important;
  outline:0 !important;
}

/* 2) password-strength badges: met = purple (was teal/green), unmet stays a dark chip */
.valid_badge.bg-success{ background:var(--pm-grad) !important; color:#ffffff !important; border:0 !important; }
.valid_badge.bg-danger{ background:rgba(255,90,90,.16) !important; color:#ff9a9a !important; border:0 !important; }

/* 3) SweetAlert success popup -> theme colours (was old-brand green/teal) */
.swal2-icon.swal2-success{ border-color:rgba(176,107,255,.35) !important; color:var(--pm-accent) !important; }
.swal2-icon.swal2-success .swal2-success-ring{ border-color:rgba(176,107,255,.35) !important; }
.swal2-icon.swal2-success [class^='swal2-success-line']{ background-color:var(--pm-accent) !important; }
.swal2-icon.swal2-success .swal2-success-circular-line-left,
.swal2-icon.swal2-success .swal2-success-circular-line-right,
.swal2-icon.swal2-success .swal2-success-fix{ background-color:transparent !important; }
.swal2-title{ color:var(--bs-body-color) !important; }

/* 4) center the auth logo even though the theme-toggle JS sets display:flex inline */
.pm-auth-card .dark-logo, .pm-auth-card .light-logo{ margin-left:auto !important; margin-right:auto !important; }

/* favicon loader background follows the theme (was always dark) */
.preloader{ background:var(--bs-body-bg) !important; }
