/*
  Premium futuristic theme refresh
  - blue / cyan palette
  - stronger motion on buttons and cards
  - dashboard specific premium components
*/

:root{
  /* AI trade cyborg – black + neon */
  --inv-bg-top:#03040a;
  --inv-bg-mid:#02020a;
  --inv-bg-bot:#000000;
  /* Keep UI glow on surfaces, but make the page background truly black */
  --inv-bg-gradient: #000;

  --inv-surface: rgba(2, 6, 23, 0.72);
  --inv-surface-2: rgba(2, 6, 23, 0.86);
  --inv-card-bg: rgba(2, 6, 23, 0.78);
  --inv-card-bg-strong: rgba(2, 6, 23, 0.92);
  --inv-card-border: rgba(148, 163, 184, 0.22);
  --inv-card-border-hover: rgba(34, 211, 238, 0.68);

  --inv-text: #eaf2ff;
  --inv-text-soft:#b9c7dd;
  --inv-muted:#7a8aa5;

  --inv-accent:#22d3ee;   /* neon cyan */
  --inv-accent-2:#60a5fa; /* electric blue */
  --inv-accent-3:#a855f7; /* neon violet */
  --inv-soft-glow: rgba(34, 211, 238, 0.12);
  --inv-divider: rgba(148, 163, 184, 0.14);

  --inv-danger:#ff6b8a;
  --inv-warning:#ffbe5c;
  --inv-success:#2fe0a3;

  --inv-shadow: 0 22px 60px rgba(0, 0, 0, 0.70);
  --inv-shadow-hover: 0 32px 82px rgba(0, 0, 0, 0.82);
  --inv-glow: 0 0 0 1px rgba(34,211,238,0.10), 0 0 46px rgba(96,165,250,0.16), 0 0 62px rgba(168,85,247,0.10);
}

html, body{
  min-height:100%;
  background: #000 !important;
  color: var(--inv-text) !important;
}

body{
  position: relative;
}

body::before{
  content:"";
  position: fixed;
  inset: 0;
  pointer-events:none;
  background:
    linear-gradient(rgba(255,255,255,0.016), rgba(255,255,255,0.016)),
    repeating-linear-gradient(180deg, rgba(255,255,255,0.014) 0, rgba(255,255,255,0.014) 1px, transparent 1px, transparent 132px);
  mix-blend-mode: screen;
  opacity:.16;
  z-index: 0;
}

.wrapper,
.content-wrapper,
.content,
.login-page,
.register-page,
.modal,
.main-footer,
footer,
.login-card-body,
.register-card-body{
  background: transparent !important;
  color: var(--inv-text) !important;
}

.wrapper,
.content-wrapper,
.main-header,
.main-sidebar,
.modal,
.main-footer{
  position: relative;
  z-index: 1;
}

h1,h2,h3,h4,h5,h6,
.card-title,
label,
p,
span,
a,
.small,
.brand-text,
.info-box-content,
.dataTables_wrapper,
.content-header,
.content,
.table,
.form-control,
.custom-select,
.nav-link,
.dropdown-item,
.modal-title,
.select2-container--default .select2-selection--single .select2-selection__rendered{
  color: var(--inv-text);
}

.text-muted,
small,
.form-text,
.dataTables_info,
.card-subtitle,
.stats-label,
.section-subtitle,
.page-subtitle,
.withdraw-hint,
.plan-note,
.calc-copy,
.input-hint,
.trade-meta-item span:first-child{
  color: var(--inv-muted) !important;
}

.main-header.navbar{
  background:
    radial-gradient(circle at 0% 0%, rgba(34,211,238,0.18), transparent 52%),
    linear-gradient(180deg, rgba(2,6,23,0.92), rgba(2,6,23,0.72)) !important;
  border-bottom: 1px solid rgba(148,163,184,0.18) !important;
  box-shadow: 0 14px 38px rgba(0,0,0,0.55);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.main-header .nav-link{
  color: var(--inv-text-soft) !important;
  border-radius: 999px;
  transition: transform .24s ease, background-color .24s ease, color .24s ease;
}

.main-header .nav-link:hover{
  background: rgba(255,255,255,0.06) !important;
  color: #fff !important;
  transform: translateY(-1px);
}

.main-footer,
footer{
  background: linear-gradient(180deg, rgba(2,6,23,0.70), rgba(2,6,23,0.92)) !important;
  border-top: 1px solid var(--inv-divider) !important;
  color: var(--inv-muted) !important;
}

.card,
.small-box,
.info-box,
.box,
.invoice,
.modal-content,
.login-box .card,
.register-box .card,
.login-card-body,
.register-card-body,
.user-panel,
.stats-card,
.trade-card,
.dashboard-hero,
.withdraw-page-card,
.withdraw-option-card,
.premium-modal-shell,
.premium-field,
.calc-panel,
.choice-card,
.withdraw-choice-card,
.instruction-item,
.quick-actions-card{
  background:
    radial-gradient(circle at 0% 0%, rgba(34,211,238,0.10), transparent 55%),
    radial-gradient(circle at 100% 0%, rgba(168,85,247,0.08), transparent 55%),
    linear-gradient(180deg, rgba(2,6,23,0.92), rgba(2,6,23,0.80)) !important;
  border: 1px solid var(--inv-card-border) !important;
  color: var(--inv-text) !important;
  border-radius: 22px !important;
  box-shadow: var(--inv-shadow), var(--inv-glow) !important;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

.card,
.info-box,
.stats-card,
.trade-card,
.withdraw-page-card,
.withdraw-option-card,
.choice-card,
.withdraw-choice-card,
.quick-actions-card{
  position: relative;
  overflow: hidden;
  transition: transform .32s ease, border-color .32s ease, box-shadow .32s ease, background .32s ease;
}

.card::before,
.info-box::before,
.stats-card::before,
.trade-card::before,
.withdraw-page-card::before,
.withdraw-option-card::before,
.choice-card::before,
.withdraw-choice-card::before,
.quick-actions-card::before,
.login-box .card::before,
.register-box .card::before{
  content:"";
  position:absolute;
  inset:-1px;
  background: radial-gradient(circle at top right, rgba(89,216,255,0.12), transparent 30%);
  pointer-events:none;
}

.card:hover,
.small-box:hover,
.info-box:hover,
.stats-card:hover,
.trade-card:hover,
.withdraw-page-card:hover,
.withdraw-option-card:hover,
.choice-card:hover,
.withdraw-choice-card:hover,
.quick-actions-card:hover,
.login-box .card:hover,
.register-box .card:hover{
  transform: translateY(-6px);
  border-color: var(--inv-card-border-hover) !important;
  box-shadow: var(--inv-shadow-hover), 0 0 0 1px rgba(89,216,255,0.16), 0 0 48px rgba(59,130,246,0.18) !important;
}

.card-header,
.box-header,
.modal-header,
.modal-footer,
.card-footer{
  background: rgba(255,255,255,0.03) !important;
  border-color: var(--inv-divider) !important;
}

.modal-content{
  overflow:hidden;
}

#uni_modal{
  padding: .5rem;
}

#uni_modal .modal-dialog{
  margin: 1.75rem auto;
  pointer-events: auto;
}

#uni_modal .modal-content{
  width: 100%;
  max-height: calc(100vh - 1rem);
  overflow: auto;
  pointer-events: auto;
}

#uni_modal .modal-body{
  overflow-y: auto;
}

.modal-header{
  padding: 1rem 1.25rem !important;
}

.modal-title{
  font-weight: 800 !important;
  letter-spacing: .02em;
}

/* ===== TABLES & DATATABLES – theme ===== */
.table-responsive{
  background: transparent !important;
  color: var(--inv-text) !important;
  border-radius: 16px;
  overflow: hidden;
}

.dataTables_wrapper{
  background: var(--inv-card-bg-strong) !important;
  border: 1px solid var(--inv-card-border);
  border-radius: 18px;
  padding: 1rem 1.25rem;
  box-shadow: var(--inv-shadow);
  color: var(--inv-text) !important;
}

.dataTables_wrapper .dataTables_filter{
  margin-bottom: 1rem;
}

.dataTables_wrapper .dataTables_filter label{
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-weight: 600;
  color: var(--inv-text-soft);
  margin: 0;
}

.dataTables_wrapper .dataTables_filter input{
  margin-left: 0 !important;
  min-height: 42px !important;
  padding: 0.5rem 1rem !important;
  border-radius: 12px !important;
  background: rgba(0,0,0,0.4) !important;
  border: 1px solid rgba(148,163,184,0.3) !important;
  color: var(--inv-text) !important;
  width: 100% !important;
  max-width: 280px;
}

.dataTables_wrapper .dataTables_filter input:focus{
  border-color: var(--inv-accent) !important;
  box-shadow: 0 0 0 3px rgba(34,211,238,0.15) !important;
}

.dataTables_wrapper .dataTables_length{
  margin-top: 1rem;
  padding-top: 0.75rem;
  border-top: 1px solid var(--inv-divider);
}

.dataTables_wrapper .dataTables_length label{
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin: 0;
  font-weight: 500;
  color: var(--inv-text-soft);
}

.dataTables_wrapper .dataTables_length select{
  margin: 0 0.35rem !important;
  min-height: 38px !important;
  padding: 0.35rem 1.75rem 0.35rem 0.75rem !important;
  border-radius: 10px !important;
  background: rgba(0,0,0,0.4) !important;
  border: 1px solid rgba(148,163,184,0.3) !important;
  color: var(--inv-text) !important;
}

.dataTables_wrapper .dataTables_info{
  margin-top: 0.75rem;
  padding: 0.5rem 0;
  color: var(--inv-muted) !important;
  font-size: 0.875rem;
}

.dataTables_wrapper .dataTables_paginate{
  margin-top: 0.75rem;
  padding-top: 0.5rem;
}

.dataTables_wrapper .paginate_button{
  margin: 0 2px !important;
  padding: 0.4rem 0.75rem !important;
  min-height: auto !important;
}

.dataTables_wrapper .paginate_button:hover{
  background: rgba(34,211,238,0.15) !important;
  border-color: rgba(34,211,238,0.5) !important;
  color: var(--inv-accent) !important;
}

.dataTables_scroll,
.dataTables_scrollHead,
.dataTables_scrollBody,
.dataTables_scrollFoot,
.table,
table,
table.dataTable{
  background: transparent !important;
  color: var(--inv-text) !important;
  border-color: rgba(148,163,184,0.10) !important;
}

/* Table: distinct row design + accent header */
table.dataTable{
  border-collapse: separate;
  border-spacing: 0 6px;
  width: 100% !important;
}

table.dataTable thead th{
  background: linear-gradient(180deg, rgba(15,23,42,0.98) 0%, rgba(8,16,32,0.98) 100%) !important;
  color: var(--inv-accent) !important;
  border: none !important;
  border-bottom: 2px solid rgba(34,211,238,0.5) !important;
  font-weight: 700 !important;
  font-size: 0.7rem !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  padding: 0.85rem 1rem !important;
  white-space: nowrap;
}

table.dataTable thead th:first-child{
  border-radius: 12px 0 0 0;
  padding-left: 1.25rem;
}

table.dataTable thead th:last-child{
  border-radius: 0 12px 0 0;
  padding-right: 1.25rem;
}

/* Sort icons – theme color */
table.dataTable thead th.sorting:after,
table.dataTable thead th.sorting_asc:after,
table.dataTable thead th.sorting_desc:after,
table.dataTable thead th.sorting:before,
table.dataTable thead th.sorting_asc:before,
table.dataTable thead th.sorting_desc:before{
  opacity: 0.9;
}

table.dataTable thead th.sorting:after,
table.dataTable thead th.sorting_asc:after,
table.dataTable thead th.sorting_desc:after{
  color: var(--inv-accent) !important;
}

/* Body rows: card-like with gap and rounded ends */
table.dataTable tbody tr{
  background: rgba(15,23,42,0.5) !important;
  transition: background 0.2s ease, box-shadow 0.2s ease;
}

table.dataTable tbody tr:nth-child(even){
  background: rgba(15,23,42,0.75) !important;
}

table.dataTable tbody tr:hover{
  background: rgba(34,211,238,0.08) !important;
  box-shadow: 0 0 0 1px rgba(34,211,238,0.2);
}

table.dataTable td{
  border: none !important;
  border-top: 1px solid rgba(148,163,184,0.08) !important;
  border-bottom: 1px solid rgba(148,163,184,0.08) !important;
  padding: 0.85rem 1rem !important;
  vertical-align: middle !important;
}

table.dataTable tbody tr:hover td{
  border-top-color: rgba(34,211,238,0.15) !important;
  border-bottom-color: rgba(34,211,238,0.15) !important;
}

table.dataTable td:first-child{
  border-left: 1px solid rgba(148,163,184,0.08) !important;
  border-radius: 10px 0 0 10px;
  padding-left: 1.25rem;
}

table.dataTable td:last-child{
  border-right: 1px solid rgba(148,163,184,0.08) !important;
  border-radius: 0 10px 10px 0;
  padding-right: 1.25rem;
}

table.dataTable tbody tr:hover td:first-child{
  border-left-color: rgba(34,211,238,0.2) !important;
}

table.dataTable tbody tr:hover td:last-child{
  border-right-color: rgba(34,211,238,0.2) !important;
}

/* Plain .table (non-DataTable) – same vibe */
.table thead th{
  background: linear-gradient(180deg, rgba(15,23,42,0.98) 0%, rgba(8,16,32,0.98) 100%) !important;
  color: var(--inv-accent) !important;
  border-bottom: 2px solid rgba(34,211,238,0.5) !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  padding: 0.75rem 1rem !important;
}

.table td,
.table th{
  border-color: rgba(148,163,184,0.10) !important;
  padding: 0.65rem 1rem !important;
}

.table-hover tbody tr:hover{
  background: rgba(89,216,255,0.06) !important;
}

.form-control,
.custom-select,
.dataTables_wrapper .dataTables_filter input,
.dataTables_wrapper .dataTables_length select,
.select2-container--default .select2-selection--single,
.input-group-text,
.form-select,
textarea{
  min-height: 48px;
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(148,163,184,0.14) !important;
  color: var(--inv-text) !important;
  border-radius: 16px !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
}

.form-control::placeholder,
textarea::placeholder{
  color: rgba(201,216,234,0.52) !important;
}

.form-control:focus,
.custom-select:focus,
.select2-container--default.select2-container--focus .select2-selection--single,
textarea:focus{
  border-color: rgba(34,211,238,0.55) !important;
  box-shadow: 0 0 0 .18rem rgba(34,211,238,0.10), 0 0 28px rgba(96,165,250,0.12), 0 0 34px rgba(168,85,247,0.10) !important;
}

.btn{
  position: relative;
  overflow: hidden;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.5rem;
  min-height: 46px;
  padding: .72rem 1rem !important;
  border-radius: 16px !important;
  font-weight: 800 !important;
  letter-spacing: .015em;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease, filter .25s ease;
}

.btn::before{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:-130%;
  width:48%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.28), transparent);
  transform: skewX(-22deg);
  transition:left .55s ease;
}

.btn:hover::before{
  left: 145%;
}

.btn:hover{
  transform: translateY(-2px);
}

.btn:focus{
  box-shadow: 0 0 0 .18rem rgba(34,211,238,0.14) !important;
}

.btn-primary,
.btn-info,
.btn-success,
.bg-green,
button.bg-green,
a.bg-green{
  background: linear-gradient(135deg, var(--inv-accent-2), var(--inv-accent)) !important;
  border: 1px solid rgba(34,211,238,0.40) !important;
  color: #fff !important;
  box-shadow: 0 18px 38px rgba(0,0,0,0.55), 0 0 38px rgba(34,211,238,0.10);
}

.btn-warning,
.bg-orange,
button.bg-orange,
a.bg-orange{
  background: linear-gradient(135deg, #ff9d42, #ffd166) !important;
  border: 1px solid rgba(255,209,102,0.28) !important;
  color: #0b1220 !important;
  box-shadow: 0 16px 30px rgba(255,185,74,0.18);
}

.btn-danger,
.bg-red,
button.bg-red,
a.bg-red{
  background: linear-gradient(135deg, #ff5d7c, #ff8fab) !important;
  border: 1px solid rgba(255,143,171,0.28) !important;
  color: #fff !important;
  box-shadow: 0 16px 30px rgba(255,93,124,0.18);
}

.btn-secondary,
.btn-default{
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid rgba(148,163,184,0.16) !important;
  color: var(--inv-text) !important;
}

.btn[disabled],
.btn.disabled,
button[disabled]{
  opacity: .55 !important;
  cursor: not-allowed !important;
  box-shadow: none !important;
  transform: none !important;
}

.page-link,
.dataTables_wrapper .paginate_button{
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(148,163,184,0.14) !important;
  color: var(--inv-text) !important;
  border-radius: 12px !important;
}

.page-item.active .page-link,
.dataTables_wrapper .paginate_button.current{
  background: linear-gradient(135deg, var(--inv-accent-2), var(--inv-accent)) !important;
  border-color: rgba(34,211,238,0.40) !important;
  color: #fff !important;
}

.main-sidebar,
aside.main-sidebar,
.sidebar{
  background:
    radial-gradient(circle at top left, rgba(34,211,238,0.10), transparent 32%),
    radial-gradient(circle at top right, rgba(168,85,247,0.07), transparent 38%),
    linear-gradient(180deg, rgba(2,6,23,0.96), rgba(0,0,0,0.96)) !important;
  border-right: 1px solid rgba(148,163,184,0.18) !important;
}

/* Sidebar on the right (dashboard + administrator) - body prefix beats AdminLTE body:not() rules on all pages */
body .wrapper.sidebar-right .main-sidebar,
body .wrapper.sidebar-right aside.main-sidebar{
  left: auto !important;
  right: 0 !important;
  margin-left: 0 !important;
  border-right: none !important;
  border-left: 1px solid rgba(148,163,184,0.18) !important;
}

body .wrapper.sidebar-right .content-wrapper,
body .wrapper.sidebar-right .main-header{
  margin-left: 0 !important;
  margin-right: 250px !important;
}

body.sidebar-collapse .wrapper.sidebar-right .main-sidebar,
body.sidebar-collapse .wrapper.sidebar-right aside.main-sidebar{
  margin-left: 0 !important;
  margin-right: -250px !important;
}

body.sidebar-collapse .wrapper.sidebar-right .content-wrapper,
body.sidebar-collapse .wrapper.sidebar-right .main-header{
  margin-right: 0 !important;
  margin-left: 0 !important;
}

.brand-link{
  background: rgba(2, 24, 18, 0.92) !important;
  border-bottom: 1px solid rgba(148,163,184,0.12) !important;
}

.brand-link,
.brand-link .brand-text,
.brand-link .brand-image{
  transition: transform .25s ease, opacity .25s ease;
}

.brand-link:hover .brand-text,
.brand-link:hover .brand-image{
  transform: translateY(-1px);
}

.user-panel{
  padding: 1rem .95rem !important;
  margin: .55rem .2rem 1rem !important;
}

.user-panel .info{
  width:100%;
}

.user-panel .info a{
  display:block;
  color: var(--inv-text) !important;
  text-decoration:none;
}

.user-panel .info a:first-child{
  font-weight: 800;
  letter-spacing: .02em;
  margin-bottom: .3rem;
}

.user-panel .info a:last-child{
  color: var(--inv-accent) !important;
  font-size: .95rem;
  font-weight: 700;
}

.nav-sidebar .nav-header{
  color: rgba(201,216,234,0.64) !important;
  letter-spacing: .18em;
  font-size: .68rem;
  font-weight: 800;
  margin-top: .8rem;
}

.nav-sidebar .nav-link{
  position:relative;
  color: rgba(232,244,255,0.88) !important;
  border-radius: 16px !important;
  margin-bottom: .25rem;
  transition: transform .24s ease, background-color .24s ease, border-color .24s ease;
  border:1px solid transparent;
}

.nav-sidebar .nav-link:hover{
  background: rgba(255,255,255,0.05) !important;
  border-color: rgba(89,216,255,0.12) !important;
  transform: translateX(4px);
}

.nav-sidebar .nav-link.active,
.nav-sidebar .nav-item.menu-open > .nav-link{
  background: linear-gradient(135deg, rgba(59,130,246,0.24), rgba(89,216,255,0.14)) !important;
  border: 1px solid rgba(89,216,255,0.24) !important;
  color: #fff !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.06);
}

.sidebar-dark-danger,
.sidebar-dark-danger .nav-sidebar > .nav-item > .nav-link.active,
.accent-danger,
.navbar-maroon,
.bg-maroon{
  background: transparent !important;
}

.futuristic-public header#home,
.futuristic-auth,
.portal-app .content-wrapper,
body.portal-app{
  background: transparent !important;
}

.dashboard-home{
  padding-bottom: 1rem;
}

.dashboard-home .page-title{
  margin: 0 0 .4rem;
  font-size: clamp(2rem, 3.2vw, 3rem);
  line-height: 1.05;
  font-weight: 900;
  letter-spacing: -.03em;
  background: linear-gradient(135deg, #ffffff 0%, #c9ecff 52%, #77d9ff 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color: transparent;
}

/* TERMINAL LAYOUT SHELL */
.terminal-shell{
  display:flex;
  flex-direction:column;
  gap:1rem;
}

.terminal-ticker{
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  padding:.6rem .9rem;
  border-radius:999px;
  background:radial-gradient(circle at 0 0,rgba(34,211,238,.22),transparent 60%),
             linear-gradient(90deg,rgba(15,23,42,.96),rgba(15,23,42,.92));
  border:1px solid rgba(148,163,184,.35);
  box-shadow:0 18px 38px rgba(0,0,0,.75);
}

.terminal-ticker-item{
  display:flex;
  align-items:center;
  gap:.5rem;
  padding:.25rem .7rem;
  border-radius:999px;
  background:rgba(15,23,42,.9);
  border:1px solid rgba(51,65,85,.9);
  font-size:.78rem;
  text-transform:uppercase;
  letter-spacing:.16em;
}

.terminal-ticker-label{
  opacity:.7;
}

.terminal-ticker-value{
  font-weight:700;
}

.terminal-grid{
  display:grid;
  grid-template-columns:minmax(0,2.1fr) minmax(0,1fr);
  gap:1rem;
  align-items:flex-start;
}

/* If the global rail is empty, collapse it (opt-in via JS). */
.terminal-3panel-grid.rail-empty{
  grid-template-columns: minmax(0, 1fr) !important;
}
.terminal-3panel-grid.rail-empty .terminal-rail-global{
  display: none !important;
}

.terminal-main{
  display:flex;
  flex-direction:column;
  gap:1rem;
}

.terminal-rail{
  display:flex;
  flex-direction:column;
  gap:1rem;
}

.terminal-widget{
  width:100%;
}

/* 3-PANEL GLOBAL SHELL (all pages) */
.terminal-3panel{
  padding-bottom: 140px; /* space for dock + fixed footer */
}

.terminal-3panel-grid{
  padding: .75rem .75rem 0;
}

.terminal-rail-global{
  position: sticky;
  top: calc(3.25rem + .75rem); /* below navbar */
}

.terminal-canvas{
  min-height: calc(100vh - 220px);
}

.terminal-dock{
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  height: 56px;
  z-index: 1060; /* above footer + overlays, below modals */
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 1rem;
  padding: 0 1rem;
  background:
    radial-gradient(circle at 0 0, rgba(34,211,238,0.20), transparent 55%),
    linear-gradient(180deg, rgba(2,6,23,0.86), rgba(0,0,0,0.92));
  border-top: 1px solid rgba(148,163,184,0.18);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

/* If AdminLTE footer is fixed, keep it above the dock */
.layout-footer-fixed .wrapper .main-footer{
  bottom: 56px !important;
  z-index: 1050;
}

/* Ensure footer doesn't steal clicks from dock */
.layout-footer-fixed .wrapper .main-footer{
  pointer-events: none;
}
.layout-footer-fixed .wrapper .main-footer *{
  pointer-events: auto;
}

.terminal-dock-left,
.terminal-dock-right{
  display:flex;
  align-items:center;
  gap:.6rem;
  min-width: 0;
}

.terminal-dot{
  width:10px;
  height:10px;
  border-radius:999px;
  background: var(--inv-accent);
  box-shadow: 0 0 12px rgba(34,211,238,0.75);
  flex: 0 0 auto;
}

.terminal-dock-label{
  font-size:.72rem;
  letter-spacing:.24em;
  text-transform:uppercase;
  color: rgba(233,242,255,0.72);
  white-space: nowrap;
}

.terminal-dock-value{
  font-size:.86rem;
  letter-spacing:.04em;
  color: rgba(233,242,255,0.92);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 36vw;
}

.terminal-dock-sep{
  opacity:.35;
}

/* Bottom navigation inside dock */
.terminal-bottom-nav{
  display:none;
}

.terminal-bottom-item{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.25rem;
  padding:.25rem .75rem;
  border-radius:999px;
  border:1px solid transparent;
  font-size:.74rem;
  text-transform:uppercase;
  letter-spacing:.18em;
  color:rgba(226,232,255,0.8);
  white-space:nowrap;
  background:rgba(15,23,42,0.8);
  cursor:pointer;
  transition:background .22s ease,border-color .22s ease,color .18s ease,transform .18s ease;
}

.terminal-bottom-item i{
  font-size:.8rem;
}

.terminal-bottom-item:hover{
  background:rgba(15,23,42,1);
  border-color:rgba(148,163,184,0.5);
  color:#fff;
  transform:translateY(-1px);
}

.terminal-bottom-item.active{
  background:linear-gradient(135deg,var(--inv-accent-2),var(--inv-accent));
  border-color:rgba(34,211,238,0.6);
  color:#fff;
  box-shadow:0 0 18px rgba(34,211,238,0.4);
}

.terminal-bottom-group{
  position:relative;
}

.terminal-bottom-menu{
  position:absolute;
  right:0;
  bottom:110%;
  min-width:180px;
  background:rgba(15,23,42,0.98);
  border-radius:14px;
  border:1px solid rgba(148,163,184,0.45);
  box-shadow:0 18px 40px rgba(0,0,0,0.8);
  padding:.4rem 0;
  display:none;
  z-index:1040;
}

.terminal-bottom-menu a{
  display:block;
  padding:.35rem .85rem;
  font-size:.8rem;
  color:rgba(226,232,255,0.9);
  text-decoration:none;
  white-space:nowrap;
}

.terminal-bottom-menu a:hover{
  background:rgba(37,99,235,0.45);
}

.terminal-bottom-group.open .terminal-bottom-menu{
  display:block;
}

/* Radial menu */
.radial-launcher{
  position:fixed;
  left: auto;
  top: auto;
  bottom:80px;
  right:24px;
  width:56px;
  height:56px;
  border-radius:999px;
  background:radial-gradient(circle at 30% 0,rgba(59,130,246,0.9),rgba(37,99,235,0.95));
  box-shadow:0 18px 40px rgba(0,0,0,0.8),0 0 28px rgba(37,99,235,0.8);
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  cursor:pointer;
  z-index:2000;
  user-select:none;
  touch-action:none;
}

.radial-launcher-icon{
  font-size:1.2rem;
}

.radial-menu{
  position:fixed;
  left: auto;
  top: auto;
  bottom:80px;
  right:24px;
  width:220px;
  height:220px;
  margin-bottom:-82px;
  margin-right:-82px;
  pointer-events:none;
  z-index:1995;
}

.radial-menu-inner{
  position:relative;
  width:100%;
  height:100%;
}

.radial-menu-item{
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  width:60px;
  height:60px;
  border-radius:999px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  font-size:.7rem;
  text-align:center;
  padding:4px;
  background:rgba(15,23,42,0.96);
  border:1px solid rgba(148,163,184,0.55);
  color:rgba(226,232,255,0.95);
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease,transform .22s ease;
}

.radial-menu-item i{
  font-size:.9rem;
  margin-bottom:2px;
}

.radial-menu.open .radial-menu-item{
  opacity:1;
  pointer-events:auto;
}

.radial-menu.open .radial-menu-item.radial-hidden{
  display:none !important;
}

@media (max-width: 767.98px){
  .radial-launcher{
    bottom:96px;
  }
  .radial-menu{
    bottom:96px;
  }
}

@media (max-width: 991.98px){
  .terminal-rail-global{
    position: static;
    top: auto;
  }

  .terminal-3panel-grid{
    padding-bottom: .5rem;
  }

  .terminal-dock-value{
    max-width: 48vw;
  }
}

@media (max-width: 991.98px){
  .terminal-grid{
    grid-template-columns:minmax(0,1fr);
  }

  .terminal-ticker{
    border-radius:18px;
  }
}

.dashboard-home .page-subtitle{
  max-width: 760px;
  margin-bottom: 1.25rem;
}

.dashboard-hero,
.withdraw-page-card.hero-card,
.premium-modal-shell .modal-hero{
  padding: 1.2rem 1.2rem 1.1rem;
}

.hero-pill,
.mini-badge,
.value-pill{
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  padding:.38rem .72rem;
  border-radius:999px;
  background: rgba(89,216,255,0.10);
  border: 1px solid rgba(89,216,255,0.18);
  color: var(--inv-accent);
  font-size: .82rem;
  font-weight: 800;
}

.stats-row > div,
.trade-grid > div{
  margin-bottom: 1rem;
}

.stats-card{
  min-height: 172px;
  padding: 1.15rem;
}

.stats-icon{
  width: 54px;
  height: 54px;
  display:grid;
  place-items:center;
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(59,130,246,0.24), rgba(89,216,255,0.12));
  border: 1px solid rgba(89,216,255,0.16);
  color: var(--inv-accent);
  font-size: 1.15rem;
  margin-bottom: .95rem;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.06);
}

.stats-label{
  font-size: .92rem;
  margin-bottom: .45rem;
}

.stats-value{
  font-size: clamp(1.15rem, 2vw, 1.75rem);
  font-weight: 900;
  letter-spacing: -.03em;
}

.section-title{
  display:flex;
  align-items:center;
  gap:.75rem;
  margin: .55rem 0 1rem;
  font-weight: 800;
  letter-spacing: .01em;
  color: #f8fcff;
}

.section-title::before{
  content:"";
  width: 38px;
  height: 2px;
  border-radius:999px;
  background: linear-gradient(90deg, var(--inv-accent), transparent);
}

.trade-card{
  height:100%;
  padding: 1.1rem;
}

.trade-meta{
  display:grid;
  gap:.65rem;
  margin-bottom: 1rem;
}

.trade-meta-item{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  padding:.7rem .85rem;
  border-radius: 16px;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(148,163,184,0.08);
}

.trade-meta-item span:last-child{
  text-align:right;
  font-weight: 800;
}

.progress{
  height: 14px !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,0.05) !important;
  overflow:hidden;
  margin-bottom: 1rem;
}

.progress-bar{
  font-weight: 800;
  font-size: .72rem;
  letter-spacing: .03em;
  display:flex;
  align-items:center;
  justify-content:center;
}

.progress-bar.bg-success{
  background: linear-gradient(90deg, #16c47f, #50f0b1) !important;
}

.progress-bar.bg-warning{
  background: linear-gradient(90deg, #f59e0b, #ffd166) !important;
  color:#0b1220 !important;
}

/* Public landing page */
.futuristic-public #nav-wrap,
.futuristic-public nav#nav-wrap.opaque{
  background: linear-gradient(180deg, rgba(7,18,36,0.78), rgba(7,18,36,0.38)) !important;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.futuristic-public #about,
.futuristic-public #contact_us{
  background: transparent !important;
}

.futuristic-public #about .main-col,
.futuristic-public #contact_us .d-flex,
.futuristic-public #testimonials .text-container{
  position:relative;
  z-index:1;
}

.futuristic-public .banner-text h3,
.futuristic-public #about_me,
.futuristic-public .address,
.futuristic-public #testimonials blockquote{
  background: linear-gradient(180deg, rgba(10,22,46,0.78), rgba(7,17,37,0.72));
  border: 1px solid rgba(148,163,184,0.14);
  border-radius: 22px;
  box-shadow: var(--inv-shadow);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.futuristic-public .banner-text h3{
  padding: 1rem 1.1rem;
}

.futuristic-public #about_me,
.futuristic-public .address,
.futuristic-public #testimonials blockquote{
  padding: 1.1rem 1.2rem;
}

.futuristic-auth .login-box{
  width: min(94vw, 430px);
}

.futuristic-auth .login-box-msg{
  color: var(--inv-text-soft);
}

.futuristic-auth .login-label{
  display: block;
  font-size: 0.9rem;
  font-weight: 600;
  color: var(--inv-text-soft);
  margin-bottom: 0.5rem;
  letter-spacing: 0.04em;
}

/* Login icons – tech style (color + glow) */
.futuristic-auth .input-group-text{
  background: rgba(0,20,30,0.85) !important;
  border: 1px solid rgba(56,189,248,0.35) !important;
  border-left: none !important;
  color: var(--inv-text-soft);
}
.futuristic-auth .input-group .form-control{
  border-right: none !important;
}
.futuristic-auth .input-group .form-control:focus + .input-group-append .input-group-text,
.futuristic-auth .input-group:focus-within .input-group-text{
  border-color: rgba(56,189,248,0.6) !important;
  box-shadow: 0 0 14px rgba(56,189,248,0.2);
}
/* User icon – cyan/tech */
.futuristic-auth .form-group:first-of-type .input-group-text span{
  color: #22d3ee !important;
  text-shadow: 0 0 12px rgba(34,211,238,0.7), 0 0 24px rgba(34,211,238,0.35);
}
/* Lock icon – green/secure */
.futuristic-auth .form-group:last-of-type .input-group-text span{
  color: #4ade80 !important;
  text-shadow: 0 0 12px rgba(74,222,128,0.7), 0 0 24px rgba(74,222,128,0.35);
}

/* Premium modal / lock-in / withdrawal */
.premium-modal-shell{
  padding: 1.2rem;
  min-height: 100%;
}

.modal-hero h3,
.hero-title{
  margin: 0 0 .35rem;
  font-size: 1.45rem;
  font-weight: 900;
  letter-spacing: -.03em;
}

.modal-hero p,
.hero-copy{
  margin: 0;
}

.hero-grid,
.summary-grid,
.amount-quick-grid,
.withdraw-amount-grid,
.withdraw-option-grid,
.info-chip-grid,
.quick-actions-grid{
  display:grid;
  gap:.85rem;
}

.hero-grid,
.summary-grid{
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.amount-quick-grid,
.withdraw-option-grid{
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

/* Lock In plans: force portrait tiles (not wide rows) */
.lockin-premium-shell .amount-quick-grid.plan-visual-grid{
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
}
.lockin-premium-shell .amount-quick-grid.plan-visual-grid .plan-visual-card{
  min-height: 540px !important;
  display: flex !important;
  flex-direction: column !important;
  padding: 0 !important;
  overflow: hidden !important;
  text-align: left !important;
}
.lockin-premium-shell .amount-quick-grid.plan-visual-grid .plan-image-wrap{
  min-height: calc(540px * 0.80) !important; /* ~80% image area */
}
.lockin-premium-shell .amount-quick-grid.plan-visual-grid .plan-content{
  flex: 0 0 auto !important;
  margin-top: 0 !important;
  padding: .95rem .95rem 1rem !important;
  background: linear-gradient(180deg, rgba(2,6,23,0.25), rgba(2,6,23,0.92)) !important;
  text-align: center !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .2rem !important;
}
.lockin-premium-shell .amount-quick-grid.plan-visual-grid .plan-content .plan-computed-text{
  display: none !important;
}
.lockin-premium-shell .amount-quick-grid.plan-visual-grid .plan-image-wrap{
  flex: 1 1 auto !important;
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: auto !important;
  border-radius: 18px 18px 0 0 !important;
  margin: 0 !important;
}
.lockin-premium-shell .amount-quick-grid.plan-visual-grid .plan-image{
  object-fit: cover !important;
  object-position: center !important;
}
.lockin-premium-shell .amount-quick-grid.plan-visual-grid .plan-content strong{
  font-size: 1.05rem !important;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.lockin-premium-shell .amount-quick-grid.plan-visual-grid .plan-content span{
  color: rgba(226,232,240,0.88) !important;
  font-size: .82rem !important;
  line-height: 1.25;
}
.lockin-premium-shell .amount-quick-grid.plan-visual-grid .plan-computed-text{
  color: #7dd3fc !important;
  font-weight: 800 !important;
}
.lockin-premium-shell .amount-quick-grid.plan-visual-grid .plan-badge{
  z-index: 3 !important;
}

/* ===== Dark-green override layer (cards, tables, layout) ===== */
body.portal-app,
.portal-app .content-wrapper,
.dashboard-home{
  background:
    radial-gradient(circle at 20% 20%, rgba(16, 185, 129, 0.24), transparent 40%),
    radial-gradient(circle at 80% 60%, rgba(5, 46, 22, 0.55), transparent 40%),
    var(--inv-bg-gradient) !important;
}

.main-header.navbar{
  background:
    radial-gradient(circle at 0% 0%, rgba(34,197,94,0.26), transparent 52%),
    linear-gradient(180deg, rgba(3, 30, 20, 0.96), rgba(1, 12, 8, 0.94)) !important;
  border-bottom-color: var(--inv-divider) !important;
}

.main-sidebar,
aside.main-sidebar,
.sidebar{
  background:
    radial-gradient(circle at top left, rgba(34,197,94,0.22), transparent 32%),
    radial-gradient(circle at top right, rgba(16,185,129,0.16), transparent 38%),
    linear-gradient(180deg, rgba(3, 24, 18, 0.98), rgba(0, 6, 3, 0.98)) !important;
  border-color: rgba(56,189,149,0.35) !important;
}

.terminal-dock{
  background:
    radial-gradient(circle at 0 0, rgba(34,197,94,0.28), transparent 55%),
    linear-gradient(180deg, rgba(2, 20, 12, 0.96), rgba(0, 8, 4, 0.98)) !important;
  border-top-color: rgba(56,189,149,0.35) !important;
}

.card,
.small-box,
.info-box,
.box,
.invoice,
.modal-content,
.login-box .card,
.register-box .card,
.login-card-body,
.register-card-body,
.user-panel,
.stats-card,
.trade-card,
.dashboard-hero,
.withdraw-page-card,
.withdraw-option-card,
.premium-modal-shell,
.premium-field,
.calc-panel,
.choice-card,
.withdraw-choice-card,
.quick-actions-card{
  background:
    radial-gradient(circle at 0% 0%, rgba(34,197,94,0.20), transparent 55%),
    radial-gradient(circle at 100% 0%, rgba(16,185,129,0.16), transparent 55%),
    linear-gradient(180deg, rgba(3, 30, 20, 0.96), rgba(1, 12, 8, 0.94)) !important;
  border-color: var(--inv-card-border) !important;
}

.dataTables_wrapper .dataTables_scrollHead,
.dataTables_wrapper .dataTables_scrollBody,
.dataTables_wrapper .dataTables_scrollFoot,
.table,
.table thead,
.table tbody tr{
  background-color: rgba(3, 24, 18, 0.96) !important;
}

.withdraw-amount-grid{
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.quick-actions-grid{
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.metric-chip,
.info-chip{
  padding: .95rem 1rem;
  border-radius: 18px;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(148,163,184,0.10);
}

.metric-chip span,
.info-chip span{
  display:block;
}

.metric-chip span:first-child,
.info-chip span:first-child{
  color: var(--inv-muted);
  font-size: .82rem;
  margin-bottom: .35rem;
}

.metric-chip span:last-child,
.info-chip strong,
.metric-chip strong,
.info-chip span:last-child{
  font-size: 1rem;
  font-weight: 900;
}

.premium-field{
  padding: 1rem;
}

.premium-field + .premium-field{
  margin-top: .9rem;
}

.premium-label{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:.8rem;
  margin-bottom: .55rem;
  font-weight: 800;
}

.choice-card,
.withdraw-choice-card,
.amount-chip{
  cursor:pointer;
  padding: .95rem .8rem;
  text-align:center;
  border-radius: 18px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(148,163,184,0.12);
  transition: transform .25s ease, border-color .25s ease, background-color .25s ease, box-shadow .25s ease;
}

.choice-card:hover,
.withdraw-choice-card:hover,
.amount-chip:hover{
  transform: translateY(-3px);
  border-color: rgba(89,216,255,0.26);
}

.choice-card.active,
.withdraw-choice-card.active,
.amount-chip.active{
  background: linear-gradient(135deg, rgba(59,130,246,0.22), rgba(89,216,255,0.12));
  border-color: rgba(89,216,255,0.32);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.06), 0 0 0 1px rgba(89,216,255,0.08);
}

.choice-card.disabled,
.withdraw-choice-card.disabled,
.amount-chip.disabled{
  opacity:.42;
  cursor:not-allowed;
  pointer-events:none;
}

.choice-card strong,
.withdraw-choice-card strong,
.amount-chip strong{
  display:block;
  font-size: 1.05rem;
  font-weight: 900;
  margin-bottom: .25rem;
}

.choice-card span,
.withdraw-choice-card span,
.amount-chip span{
  color: var(--inv-muted);
  font-size: .82rem;
}

.plan-visual-grid{
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  gap: 22px;
}

.plan-visual-card{
  position: relative;
  display: flex;
  flex-direction: column;
  text-align: left;
  padding: .9rem;
  min-height: 520px;
}

.plan-visual-card .plan-badge{
  position: absolute;
  top: .9rem;
  right: .9rem;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 64px;
  padding: .4rem .7rem;
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(59,130,246,0.92), rgba(89,216,255,0.92));
  color: #031224;
  font-size: .88rem;
  font-weight: 900;
  box-shadow: 0 10px 24px rgba(59,130,246,0.28);
}

.plan-image-wrap{
  width: 100%;
  max-width: 320px;
  aspect-ratio: 3 / 4;
  margin: 0 auto;
  overflow: hidden;
  border-radius: 16px;
  position: relative;
  background: rgba(2,6,23,0.75);
}



.plan-image{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}


.plan-image-wrap::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to bottom, transparent 40%, rgba(5,15,35,.8));
}

  
.plan-content{
  margin-top: auto;
  display: flex;
  flex-direction: column;
  gap: .3rem;
  position: relative;
  z-index: 1;
}

.plan-content strong{
  display: block;
  margin-bottom: 0;
  font-size: 1.08rem;
}

.plan-content span{
  display: block;
  line-height: 1.45;
}

.plan-visual-card:hover .plan-image,
.plan-visual-card.active .plan-image{
  transform: translateY(-4px) scale(1.03);
  filter: drop-shadow(0 22px 34px rgba(89,216,255,0.28));
}

.calc-panel,
.quick-actions-card{
  padding: 1rem;
}

.calc-panel{
  margin-top: .95rem;
}

.calc-panel .calc-title,
.quick-actions-card .calc-title{
  margin-bottom: .75rem;
  font-weight: 800;
}

.calc-row{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  padding:.72rem .2rem;
  border-bottom: 1px dashed rgba(148,163,184,0.12);
}

.calc-row:last-child{
  border-bottom:0;
  padding-bottom:0;
}

.calc-row strong{
  font-weight: 900;
}

.calc-row.total strong:last-child,
.glow-value,
.amount-preview{
  color: var(--inv-accent);
}

.submit-row{
  display:flex;
  gap:.8rem;
  margin-top: 1rem;
}

.submit-row .btn{
  flex:1;
}

.withdraw-page-card{
  padding: 1.15rem;
}

.withdraw-page-grid{
  display:grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
  gap: 1rem;
}

.instruction-list{
  display:grid;
  gap:.8rem;
}

.instruction-item{
  display:flex;
  align-items:flex-start;
  gap:.8rem;
  padding: .95rem 1rem;
}

.instruction-item .icon{
  width: 38px;
  height: 38px;
  display:grid;
  place-items:center;
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(59,130,246,0.22), rgba(89,216,255,0.12));
  color: var(--inv-accent);
  flex: 0 0 38px;
}

.instruction-item strong{
  display:block;
  margin-bottom:.18rem;
}

.withdraw-option-card{
  padding: 1rem;
}

.withdraw-option-card .action-title{
  font-size: 1.04rem;
  font-weight: 900;
  margin-bottom: .35rem;
}

.withdraw-option-card .action-copy{
  margin-bottom: .9rem;
}

.withdraw-option-card .btn{
  width:100%;
}

.note-box,
.warning-note{
  padding: .85rem .95rem;
  border-radius: 16px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(148,163,184,0.12);
}

.text-green{ color: var(--inv-success) !important; }
.text-red{ color: var(--inv-danger) !important; }
.text-orange{ color: var(--inv-warning) !important; }

.alert{
  border-radius: 16px !important;
  border: 1px solid rgba(148,163,184,0.12) !important;
}

.alert-danger{
  background: rgba(255,93,124,0.12) !important;
  color: #ffd8e0 !important;
}

.alert-success{
  background: rgba(47,224,163,0.12) !important;
  color: #d6fff0 !important;
}

@media (max-width: 991.98px){
  .withdraw-page-grid,
  .hero-grid,
  .summary-grid,
  .quick-actions-grid{
    grid-template-columns: 1fr;
  }

  .withdraw-amount-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px){
  .content-header{ padding: 14px .75rem 6px !important; }
  .card-body{ padding: .95rem !important; }
  .card-header{ padding: .82rem .95rem !important; }
  .main-footer{ padding: .75rem .9rem !important; }
  .premium-modal-shell{ padding: .95rem; }
  .amount-quick-grid,
  .withdraw-option-grid,
  .withdraw-amount-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575.98px){
  .stats-card{ min-height: 154px; }
  .trade-meta-item{
    flex-direction:column;
    gap:.35rem;
  }
  .trade-meta-item span:last-child{
    text-align:left;
  }
  .amount-quick-grid,
  .withdraw-option-grid,
  .withdraw-amount-grid,
  .quick-actions-grid{
    grid-template-columns: 1fr;
  }
  .submit-row{
    flex-direction:column;
  }
}

@media (max-width:900px){
  .plan-visual-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width: 768px){
  .amount-quick-grid,
  .withdraw-option-grid,
  .plan-visual-grid{
    grid-template-columns: 1fr;
  }
}


#uni_modal.lockin-premium-modal{
  padding: .6rem !important;
}

#uni_modal.lockin-premium-modal .modal-dialog{
  width: min(1040px, calc(100vw - 1.2rem));
  max-width: 1040px;
  margin: 0 auto !important;
}

#uni_modal.lockin-premium-modal .modal-content{
  width: 100%;
  max-height: calc(100vh - 1.2rem);
  display: flex;
  overflow: hidden;
}

#uni_modal.lockin-premium-modal .modal-body{
  padding: 0 !important;
  overflow-y: auto;
  overflow-x: hidden;
}

#uni_modal.lockin-premium-modal .modal-header{
  padding: .9rem 1rem !important;
}

.lockin-premium-shell{
  padding: 1.25rem;
}

.lockin-premium-shell .plan-image-wrap{
  max-width: 320px;
  aspect-ratio: 3 / 4;
  min-height: 0;
}

.lockin-premium-shell .plan-image{
  width:100% !important;
  height:100% !important;
  object-fit: cover;
}

@media (max-width: 991.98px){
  #uni_modal.lockin-premium-modal .modal-dialog{
    width: calc(100vw - .9rem);
    max-width: calc(100vw - .9rem);
  }

  .lockin-premium-shell .plan-visual-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575.98px){
  #uni_modal.lockin-premium-modal{
    padding: .35rem !important;
  }

  #uni_modal.lockin-premium-modal .modal-dialog{
    width: calc(100vw - .5rem);
    max-width: calc(100vw - .5rem);
  }

  #uni_modal.lockin-premium-modal .modal-content{
    max-height: calc(100vh - .5rem);
    border-radius: 18px !important;
  }

  .lockin-premium-shell{
    padding: .95rem;
  }

  .lockin-premium-shell .plan-visual-grid{
    grid-template-columns: 1fr;
  }

  .lockin-premium-shell .plan-visual-card{
    min-height: 0;
  }

  /* Mobile: show full plan artwork (no left/right cropping). */
  .lockin-premium-shell .plan-image{
    object-fit: contain !important;
    object-position: center !important;
  }
  .lockin-premium-shell .amount-quick-grid.plan-visual-grid .plan-image{
    object-fit: contain !important;
    object-position: center !important;
  }
}

/* --- Lock-in modal v3 hard-fix --- */
.modal-backdrop{
  z-index: 1040 !important;
  background: rgba(2, 8, 23, 0.78) !important;
}

#uni_modal,
#uni_modal.show{
  z-index: 1060 !important;
}

#uni_modal .modal-dialog,
#uni_modal .modal-content,
#uni_modal .modal-body,
#uni_modal .modal-header,
#uni_modal .modal-header *,
#uni_modal .modal-body *{
  pointer-events: auto !important;
}

#uni_modal.lockin-premium-modal .modal-dialog{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

#uni_modal.lockin-premium-modal .modal-content{
  position: relative;
  isolation: isolate;
}

#uni_modal.lockin-premium-modal .modal-content::before{
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(180deg, rgba(89,216,255,0.05), rgba(255,255,255,0));
  pointer-events: none;
  z-index: 0;
}

#uni_modal.lockin-premium-modal .modal-header,
#uni_modal.lockin-premium-modal .modal-body{
  position: relative;
  z-index: 1;
}

#uni_modal.lockin-premium-modal .modal-header{
  border-bottom: 1px solid rgba(148,163,184,0.12) !important;
}

#uni_modal.lockin-premium-modal .modal-body{
  background: linear-gradient(180deg, rgba(4, 12, 26, 0.92), rgba(4, 12, 26, 0.98)) !important;
}

.lockin-premium-shell .hero-grid{
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.lockin-premium-shell .plan-visual-grid{
  align-items: stretch;
}

.lockin-premium-shell .plan-visual-card{
  width: 100%;
}

/* Make plan cards portrait-style in Lock In modal */
.lockin-premium-shell .plan-visual-grid{
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}
.lockin-premium-shell .plan-visual-card{
  min-height: 520px;
}
.lockin-premium-shell .plan-image-wrap{
  max-width: 100%;
  aspect-ratio: 3 / 4;
}

.lockin-premium-shell .plan-content span{
  min-height: 2.2em;
}

.lockin-action-bar .btn{
  box-shadow: 0 12px 24px rgba(2, 8, 23, 0.22);
}

@media (max-width: 991.98px){
  .lockin-premium-shell .hero-grid{
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575.98px){
  #uni_modal.lockin-premium-modal .modal-header{
    padding: .8rem .95rem !important;
  }

  .lockin-action-bar .btn{
    width: 100%;
  }
}


/* ===============================
   MOBILE SIDEBAR OVERLAY FIX
================================ */

@media (max-width: 768px){

  .main-sidebar,
  aside.main-sidebar{
    position: fixed !important;
    top: 0;
    left: 0;
    height: 100vh;
    z-index: 3000 !important;
    transform: translateX(-100%);
    transition: transform .35s ease;
  }

  body.sidebar-open .main-sidebar{
    transform: translateX(0);
  }

  body .wrapper.sidebar-right .main-sidebar,
  body .wrapper.sidebar-right aside.main-sidebar{
    left: auto !important;
    right: 0 !important;
    transform: translateX(100%);
  }

  body.sidebar-open .wrapper.sidebar-right .main-sidebar,
  body.sidebar-open .wrapper.sidebar-right aside.main-sidebar{
    transform: translateX(0);
  }

  body .wrapper.sidebar-right .content-wrapper,
  body .wrapper.sidebar-right .main-header{
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  /* Administrator: body-scoped right sidebar on mobile (no wrapper ancestry) */
  body.layout-fixed.layout-navbar-fixed.text-sm .main-sidebar,
  body.layout-fixed.layout-navbar-fixed.text-sm aside.main-sidebar{
    left: auto !important;
    right: 0 !important;
    transform: translateX(100%);
  }
  body.layout-fixed.layout-navbar-fixed.text-sm.sidebar-open .main-sidebar,
  body.layout-fixed.layout-navbar-fixed.text-sm.sidebar-open aside.main-sidebar{
    transform: translateX(0);
  }
  body.layout-fixed.layout-navbar-fixed.text-sm .content-wrapper,
  body.layout-fixed.layout-navbar-fixed.text-sm .main-header{
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .main-header{
    z-index: 3100 !important;
  }

  .content-wrapper{
    z-index: 1;
    position: relative;
  }

}

/* Dark overlay when sidebar open */

.sidebar-overlay{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.55);
  backdrop-filter: blur(2px);
  z-index: 2500;
  display: none;
}

body.sidebar-open .sidebar-overlay{
  display: block;
}

/* Fix mobile sidebar layering */
.main-sidebar{
    z-index: 1050 !important;
}

.sidebar-overlay{
    position: fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background: rgba(0,0,0,0.6);
    z-index:1040;
    display:none;
}

/* show overlay when sidebar open */
.sidebar-open .sidebar-overlay{
    display:block;
}

/* ensure content stays under sidebar */
.content-wrapper,
.main-header{
    z-index:1;
}
 

/* ===============================
   GLOBAL MODAL HARD FIX
   =============================== */

/* Force modal to top layer */
#uni_modal,
.modal {
    position: fixed !important;
    top: 0;
    left: 0;
    z-index: 200000 !important;
}

/* Modal dialog centering */
#uni_modal .modal-dialog {
    margin: 3rem auto !important;
    max-width: 600px;
    pointer-events: auto;
}

/* Modal content must be visible */
#uni_modal .modal-content {
    position: relative;
    z-index: 200001 !important;
}

.modal-backdrop {
    z-index: 1050 !important;
}

#uni_modal {
    z-index: 1060 !important;
}
#uni_modal .modal-dialog{
    pointer-events: auto;
}

#uni_modal{
    pointer-events: none;
}

#uni_modal .modal-content{
    pointer-events: auto;
}
/* REMOVE stacking contexts created by effects */
.wrapper,
.content-wrapper,
.card,
.card-body,
.table-responsive,
.dataTables_wrapper,
.dataTables_scrollBody,
.dataTables_scrollHead {
    transform: none !important;
    filter: none !important;
    backdrop-filter: none !important;
}

/* Prevent tables from trapping modal */
.table-responsive,
.dataTables_wrapper {
    position: static !important;
}

/* Dark dropdown for bank select */
#bank.form-select,
#bank.form-control {
    background: linear-gradient(180deg, rgba(3, 35, 24, 0.95), rgba(2, 16, 12, 0.98)) !important;
    color: rgba(226,255,242,0.95) !important;
    border: 1px solid rgba(56,189,149,0.30);
}

/* Dropdown menu background */
#bank option {
    background-color: rgba(3, 24, 18, 0.96);
    color: rgba(226,255,242,0.95);
}

/* Selected option highlight */
#bank option:checked {
    background-color: rgba(34,197,94,0.28);
    color: #ffffff;
}

/* Focus glow to match your theme */
#bank:focus {
    border-color: rgba(74,222,128,0.65);
    box-shadow: 0 0 0 2px rgba(34,197,94,0.25);
}


/* Prevent tables from trapping modal */
.table-responsive,
.dataTables_wrapper {
    position: static !important;
}

/* Dark dropdown for bank select */
#mop.form-select,
#mop.form-control {
    background: linear-gradient(180deg, rgba(3, 35, 24, 0.95), rgba(2, 16, 12, 0.98)) !important;
    color: rgba(226,255,242,0.95) !important;
    border: 1px solid rgba(56,189,149,0.30);
}

/* Dropdown menu background */
#mop option {
    background-color: rgba(3, 24, 18, 0.96);
    color: rgba(226,255,242,0.95);
}

/* Selected option highlight */
#mop option:checked {
    background-color: rgba(34,197,94,0.28);
    color: #ffffff;
}

/* Focus glow to match your theme */
#mop:focus {
    border-color: rgba(74,222,128,0.65);
    box-shadow: 0 0 0 2px rgba(34,197,94,0.25);
}


/* ===== ULTRA EXCHANGE THEME ===== */

.dashboard-home{
background:
radial-gradient(circle at 20% 20%,#071a2f 0%,transparent 40%),
radial-gradient(circle at 80% 60%,#052d27 0%,transparent 40%),
linear-gradient(180deg,#020617,#01030a);
min-height:100vh;
padding-bottom:120px;
}

/* ===== HERO ===== */

.dashboard-hero{
background:rgba(255,255,255,0.03);
backdrop-filter:blur(20px);
border:1px solid rgba(0,229,255,0.12);
border-radius:20px;
padding:28px;
box-shadow:
0 0 40px rgba(0,229,255,0.06),
inset 0 0 20px rgba(0,229,255,0.03);
}

/* ===== STATS CARDS ===== */

.stats-card{
position:relative;
background:linear-gradient(145deg,#071226,#020817);
border-radius:18px;
padding:22px;
border:1px solid rgba(255,255,255,0.06);
transition:.35s;
overflow:hidden;
}

.stats-card:before{
content:"";
position:absolute;
inset:0;
background:linear-gradient(120deg,transparent,rgba(0,229,255,0.18),transparent);
opacity:0;
transition:.5s;
}

.stats-card:hover:before{
opacity:1;
}

.stats-card:hover{
transform:translateY(-8px) scale(1.02);
box-shadow:
0 20px 40px rgba(0,0,0,.6),
0 0 30px rgba(0,229,255,.2);
}

/* ===== TRADE CARD ===== */

.trade-card{
background:linear-gradient(160deg,#040d1f,#01040b);
border-radius:20px;
padding:24px;
border:1px solid rgba(0,229,255,0.12);
position:relative;
overflow:hidden;
transition:.4s;
}

.trade-card:after{
content:"";
position:absolute;
width:220px;
height:220px;
background:radial-gradient(circle,#00e5ff55,transparent 70%);
top:-80px;
right:-80px;
filter:blur(40px);
}

.trade-card:hover{
transform:translateY(-10px);
box-shadow:
0 25px 60px rgba(0,0,0,.7),
0 0 40px rgba(0,229,255,.25);
}

/* ===== PROFIT TEXT ===== */

.live-profit{
font-size:18px;
font-weight:700;
color:#00f7ff;
text-shadow:0 0 12px #00e5ff;
animation:profitPulse 2s infinite;
}

@keyframes profitPulse{
0%{opacity:.7}
50%{opacity:1}
100%{opacity:.7}
}

/* ===== BUTTONS ===== */

.btn-primary{
background:linear-gradient(90deg,#00e5ff,#00ffa3);
border:none;
font-weight:700;
box-shadow:0 0 20px rgba(0,229,255,.4);
}

.btn-success{
background:linear-gradient(90deg,#00ffa3,#00e5ff);
border:none;
font-weight:700;
}

/* ===== PROGRESS ===== */

.progress{
height:12px;
background:#020617;
border-radius:20px;
overflow:hidden;
}

.progress-bar{
background:linear-gradient(90deg,#ffd700,#ff9f1c);
box-shadow:0 0 15px #ffd700;
font-size:10px;
}

/* ===== FINAL DARK-GREEN PATCH =====
   inv-theme.css contains some later sections with hardcoded cyan/blue values.
   This block is placed at the very end so it overrides those remaining blues. */

/* Background + major layout */
.dashboard-home{
  background:
    radial-gradient(circle at 20% 20%, rgba(16,185,129,0.24), transparent 40%),
    radial-gradient(circle at 80% 60%, rgba(5,46,22,0.55), transparent 40%),
    var(--inv-bg-gradient) !important;
  min-height: 100vh;
}

.dashboard-hero{
  background: rgba(3, 24, 18, 0.72) !important;
  border: 1px solid rgba(56,189,149,0.35) !important;
  box-shadow:
    0 0 40px rgba(34,197,94,0.10) !important,
    inset 0 0 20px rgba(34,197,94,0.04) !important;
}

.stats-card{
  background: linear-gradient(145deg, rgba(3, 30, 20, 0.96), rgba(1, 12, 8, 0.94)) !important;
  border: 1px solid rgba(56,189,149,0.22) !important;
}

.trade-card{
  background: linear-gradient(160deg, rgba(4, 13, 31, 0.65), rgba(1, 4, 11, 0.85)) !important;
  border: 1px solid rgba(56,189,149,0.22) !important;
}

/* Live / profit text */
.live-profit{
  color: var(--inv-accent) !important;
  text-shadow: 0 0 12px rgba(34,197,94,0.9) !important;
}

/* Buttons */
.btn-primary{
  background: linear-gradient(90deg, var(--inv-accent), var(--inv-accent-3)) !important;
  border: none !important;
  box-shadow: 0 0 20px rgba(34,197,94,0.35) !important;
}
.btn-success{
  background: linear-gradient(90deg, var(--inv-accent-3), var(--inv-accent-2)) !important;
  border: none !important;
}

/* Progress bars */
.progress{
  background: rgba(3, 24, 18, 0.85) !important;
}
.progress-bar{
  background: linear-gradient(90deg, var(--inv-accent-3), var(--inv-accent-2)) !important;
  box-shadow: 0 0 15px rgba(74,222,128,0.35) !important;
  color: var(--inv-text) !important;
}

/* Sidebar balance tabs (nav link states) */
.nav-sidebar .nav-link:hover{
  border-color: rgba(56,189,149,0.20) !important;
}
.nav-sidebar .nav-link.active,
.nav-sidebar .nav-item.menu-open > .nav-link{
  background: linear-gradient(135deg, rgba(34,197,94,0.24), rgba(74,222,128,0.14)) !important;
  border: 1px solid rgba(74,222,128,0.24) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.06), 0 0 0 1px rgba(74,222,128,0.14) !important;
}

/* Plan badges (top-right pill) */
.plan-visual-card .plan-badge,
.lockin-premium-shell .plan-badge{
  background: linear-gradient(135deg, rgba(34,197,94,0.92), rgba(74,222,128,0.92)) !important;
  box-shadow: 0 10px 24px rgba(34,197,94,0.28) !important;
}

/* Tables */
.table thead th{
  background: linear-gradient(180deg, rgba(8,16,32,0.98), rgba(3,24,18,0.98)) !important;
  border-bottom: 2px solid rgba(74,222,128,0.50) !important;
  color: var(--inv-accent) !important;
}
.table-hover tbody tr:hover{
  background: rgba(74,222,128,0.06) !important;
}

/* Form fields (textboxes) */
.form-control,
.custom-select,
.form-select,
textarea,
input.form-control{
  background: rgba(3, 24, 18, 0.96) !important;
  border-color: rgba(56,189,149,0.22) !important;
  color: var(--inv-text) !important;
}
.form-control::placeholder,
textarea::placeholder{
  color: rgba(183, 227, 201, 0.55) !important;
}
.form-control:focus,
.custom-select:focus,
.select2-container--default.select2-container--focus .select2-selection--single,
textarea:focus{
  border-color: rgba(34,197,94,0.65) !important;
  box-shadow: 0 0 0 .18rem rgba(34,197,94,0.10) !important;
}

/* ========== FINAL GREEN OVERRIDES (high specificity vs inline blue) ========== */

/* 1) Activate page */
body .activate-page-reactor .modal-hero{
  background: var(--inv-card-bg-strong) !important;
  border-color: var(--inv-card-border) !important;
  box-shadow: var(--inv-glow) !important;
}
body .activate-page-reactor .modal-hero .hero-pill{
  background: rgba(3, 35, 24, 0.95) !important;
  border-color: var(--inv-card-border) !important;
  color: var(--inv-accent-3) !important;
}
body .activate-page-reactor .metric-chip{
  background: var(--inv-surface-2) !important;
  border-color: var(--inv-card-border) !important;
}
body .activate-page-reactor .lockin-plan-card{
  background: var(--inv-card-bg-strong) !important;
  border-color: var(--inv-card-border) !important;
}
body .activate-page-reactor .lockin-plan-card:hover,
body .activate-page-reactor .lockin-plan-card.active{
  background: rgba(3, 45, 28, 0.98) !important;
  border-color: var(--inv-card-border-hover) !important;
  box-shadow: 0 0 0 1px rgba(34,197,94,0.25), 0 18px 40px rgba(0,0,0,0.45) !important;
}
body .activate-page-reactor .lockin-action-bar{
  background: var(--inv-card-bg-strong) !important;
  border-color: var(--inv-card-border) !important;
}
body .activate-page-reactor .lockin-summary-panel{
  background: var(--inv-surface-2) !important;
  border-color: var(--inv-card-border) !important;
}

/* 2) Home dashboard (.dashboard-home is a wrapper div, not on body) */
body .dashboard-home .plan-pill{
  background: rgba(3, 35, 24, 0.96) !important;
  border-color: var(--inv-card-border) !important;
  color: var(--inv-accent-3) !important;
}
body .dashboard-home .home-console.card,
body .dashboard-home .home-balance-card.card,
body .dashboard-home .home-activity.card,
body .dashboard-home .trade-card{
  background: var(--inv-card-bg) !important;
  border-color: var(--inv-card-border) !important;
}
body .dashboard-home .terminal-ticker{
  background: linear-gradient(90deg, rgba(3,24,18,0.98), rgba(3,35,24,0.92), rgba(3,24,18,0.98)) !important;
  border-color: var(--inv-card-border) !important;
}
body .dashboard-home .terminal-ticker-item{
  background: linear-gradient(135deg, rgba(34,197,94,0.12), rgba(20,184,166,0.08)) !important;
  border-color: rgba(74,222,128,0.22) !important;
}
body .dashboard-home .terminal-ticker-item:hover{
  background: linear-gradient(135deg, rgba(34,197,94,0.22), rgba(20,184,166,0.14)) !important;
  border-color: rgba(74,222,128,0.45) !important;
}

/* 3) Recharge / top-up */
body .recharge-page-intake{
  background: linear-gradient(180deg, var(--inv-bg-top), var(--inv-bg-bot)) !important;
}
#topupPageRoot .topup-form-card,
#topupPageRoot .topup-side-card{
  background: var(--inv-card-bg-strong) !important;
  border-color: var(--inv-card-border) !important;
}
#topupPageRoot .channel-grid-item{
  background: var(--inv-surface-2) !important;
  border-color: var(--inv-card-border) !important;
}
#topupPageRoot .channel-grid-item:hover,
#topupPageRoot .channel-grid-item.active{
  background: rgba(3, 45, 28, 0.98) !important;
  border-color: var(--inv-card-border-hover) !important;
}
#topupPageRoot .qr-panel-footer{
  background: rgba(1, 17, 12, 0.97) !important;
  border-color: var(--inv-card-border) !important;
}
/* QR overlay is a sibling of #topupPageRoot, not inside it */
body #qr-fullscreen-overlay{
  background: rgba(0, 8, 6, 0.92) !important;
}
body #qr-fullscreen-overlay .qr-fullscreen-inner{
  background: rgba(1, 17, 12, 0.97) !important;
  border-color: var(--inv-card-border) !important;
}
#topupPageRoot .drop-area{
  background: rgba(3, 28, 20, 0.92) !important;
  border-color: var(--inv-card-border) !important;
}
#topupPageRoot .drop-icon{
  background: rgba(34,197,94,0.12) !important;
  color: var(--inv-accent) !important;
}
#topupPageRoot .upload-chip{
  background: var(--inv-surface-2) !important;
  border-color: var(--inv-card-border) !important;
}

/* 4) Sidebar + lock-in shell tabs */
body .portal-app .nav-sidebar .nav-link:hover{
  background: rgba(34,197,94,0.10) !important;
  color: var(--inv-accent-3) !important;
}
body .portal-app .nav-sidebar .nav-link.active{
  background: linear-gradient(90deg, rgba(34,197,94,0.18), rgba(20,184,166,0.10)) !important;
  color: var(--inv-accent-3) !important;
  border-left-color: var(--inv-accent) !important;
}
body .lockin-premium-shell .lockin-action-bar,
body .lockin-inline-shell .lockin-action-bar{
  background: var(--inv-card-bg-strong) !important;
  border-color: var(--inv-card-border) !important;
}

/* 5) Tables + DataTables */
body .table thead th{
  background: linear-gradient(180deg, rgba(3,28,20,0.98), rgba(1,17,12,0.98)) !important;
  border-bottom: 2px solid rgba(74,222,128,0.45) !important;
  color: var(--inv-accent-3) !important;
}
body .table-hover tbody tr:hover{
  background: rgba(74,222,128,0.08) !important;
}
body .dataTables_wrapper .paginate_button.current{
  background: linear-gradient(180deg, rgba(34,197,94,0.35), rgba(20,184,166,0.22)) !important;
  border-color: rgba(74,222,128,0.5) !important;
  color: var(--inv-text) !important;
}
body .dataTables_wrapper .dataTables_filter input,
body .dataTables_wrapper .dataTables_length select{
  background: rgba(3, 24, 18, 0.96) !important;
  border-color: rgba(56,189,149,0.28) !important;
  color: var(--inv-text) !important;
}
body .dataTables_wrapper .dataTables_filter input:focus,
body .dataTables_wrapper .dataTables_length select:focus{
  border-color: rgba(34,197,94,0.65) !important;
  box-shadow: 0 0 0 .18rem rgba(34,197,94,0.12) !important;
  outline: none !important;
}

/* 6) Withdrawal orbit shell inputs */
body .withdraw-orbit-shell input.form-control,
body .withdraw-orbit-shell .form-control,
body .withdraw-orbit-shell select.form-select,
body .withdraw-orbit-shell textarea{
  background: rgba(3, 28, 20, 0.96) !important;
  border-color: rgba(56,189,149,0.30) !important;
  color: var(--inv-text) !important;
}
body .withdraw-orbit-shell input.form-control:focus,
body .withdraw-orbit-shell .form-control:focus,
body .withdraw-orbit-shell select.form-select:focus,
body .withdraw-orbit-shell textarea:focus{
  border-color: rgba(34,197,94,0.70) !important;
  box-shadow: 0 0 0 .2rem rgba(34,197,94,0.12) !important;
}

/* ========== FINAL GREEN OVERRIDES v2 (fix body.portal-app + tables + withdrawal + recharge) ========== */

/* Sidebar: .portal-app is ON <body>, not a child — was body .portal-app (no match) */
body.portal-app .main-sidebar .nav-sidebar .nav-link{
  background: rgba(3, 28, 22, 0.92) !important;
  border-color: rgba(56, 189, 149, 0.22) !important;
  color: var(--inv-text-soft) !important;
  box-shadow: none !important;
}
body.portal-app .main-sidebar .nav-sidebar .nav-link::before{
  background: linear-gradient(120deg, rgba(34,197,94,0.25), transparent) !important;
}
body.portal-app .main-sidebar .nav-sidebar .nav-link:hover{
  background: linear-gradient(90deg, rgba(3, 40, 28, 0.98), rgba(3, 28, 22, 0.96)) !important;
  border-color: rgba(74, 222, 128, 0.45) !important;
  box-shadow: 0 0 0 1px rgba(34,197,94,0.2), 0 0 22px rgba(34,197,94,0.12) !important;
  color: var(--inv-text) !important;
}
body.portal-app .main-sidebar .nav-sidebar .nav-link:hover i{
  color: var(--inv-accent-3) !important;
  text-shadow: 0 0 10px rgba(74,222,128,0.5) !important;
}
body.portal-app .main-sidebar .nav-sidebar .nav-link.active{
  background: linear-gradient(90deg, rgba(34,197,94,0.22), rgba(20,184,166,0.12)) !important;
  border-color: rgba(74, 222, 128, 0.55) !important;
  box-shadow: 0 0 0 1px rgba(34,197,94,0.35), 0 0 26px rgba(34,197,94,0.18) !important;
  color: var(--inv-text) !important;
}
body.portal-app .main-sidebar .nav-sidebar .nav-link.active i{
  color: var(--inv-accent-3) !important;
  text-shadow: 0 0 12px rgba(74,222,128,0.55) !important;
}
body.portal-app .user-panel{
  background: radial-gradient(circle at 0% 0%, rgba(34,197,94,0.22), transparent 50%),
              radial-gradient(circle at 100% 100%, rgba(20,184,166,0.14), transparent 55%),
              linear-gradient(145deg, rgba(3, 24, 18, 0.98), rgba(1, 14, 10, 0.99)) !important;
  border-color: var(--inv-card-border) !important;
  box-shadow: 0 18px 38px rgba(0, 0, 0, 0.65) !important;
}

/* Request withdrawal page — full shell (inline #020617 / rgba(15,23,42)) */
body.portal-app .withdraw-orbit-shell{
  background: linear-gradient(180deg, var(--inv-bg-top), var(--inv-bg-bot)) !important;
}
body.portal-app .withdraw-orbit-hero{
  background: radial-gradient(circle at top left, rgba(34,197,94,0.14), transparent 55%),
              radial-gradient(circle at bottom right, rgba(20,184,166,0.12), transparent 55%),
              rgba(3, 28, 22, 0.96) !important;
  border-color: var(--inv-card-border) !important;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.55) !important;
}
body.portal-app .withdraw-orbit-hero h2{
  color: var(--inv-text) !important;
}
body.portal-app .withdraw-orbit-hero p{
  color: var(--inv-text-soft) !important;
}
body.portal-app .withdraw-orbit-shell .orbit-pill{
  border-color: rgba(74, 222, 128, 0.45) !important;
  background: linear-gradient(120deg, rgba(34,197,94,0.22), rgba(20,184,166,0.16)) !important;
  color: var(--inv-accent-3) !important;
}
body.portal-app .withdraw-orbit-shell .orbit-metric,
body.portal-app .withdraw-orbit-shell .orbit-info{
  background: rgba(3, 35, 26, 0.94) !important;
  border-color: var(--inv-card-border) !important;
}
body.portal-app .withdraw-orbit-card{
  background: rgba(3, 28, 22, 0.96) !important;
  border-color: var(--inv-card-border) !important;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.5) !important;
}
body.portal-app .withdraw-orbit-card .orbit-note{
  background: rgba(2, 18, 14, 0.9) !important;
  border-color: rgba(56, 189, 149, 0.2) !important;
}

/* All tables — body rows (was navy #0f172a via AdminLTE / DataTables) */
body.portal-app .table tbody tr,
body.portal-app .table tbody td{
  background-color: rgba(3, 22, 16, 0.88) !important;
  border-color: rgba(56, 189, 149, 0.14) !important;
  color: var(--inv-text-soft) !important;
}
body.portal-app .table-striped tbody tr:nth-of-type(odd){
  background-color: rgba(3, 28, 20, 0.92) !important;
}
body.portal-app .table-striped tbody tr:nth-of-type(even){
  background-color: rgba(3, 22, 16, 0.88) !important;
}
body.portal-app .table-hover tbody tr:hover td,
body.portal-app .table-hover tbody tr:hover{
  background-color: rgba(34, 197, 94, 0.10) !important;
}
body.portal-app .dataTables_wrapper table.dataTable tbody tr,
body.portal-app .dataTables_wrapper table.dataTable tbody td{
  background-color: rgba(3, 22, 16, 0.88) !important;
}
body.portal-app .dataTables_wrapper table.dataTable.stripe tbody tr.odd,
body.portal-app .dataTables_wrapper table.dataTable.display tbody tr.odd{
  background-color: rgba(3, 28, 20, 0.92) !important;
}
body.portal-app .dataTables_wrapper table.dataTable.stripe tbody tr.even,
body.portal-app .dataTables_wrapper table.dataTable.display tbody tr.even{
  background-color: rgba(3, 22, 16, 0.88) !important;
}
body.portal-app .dataTables_wrapper table.dataTable tbody tr:hover > td{
  background-color: rgba(34, 197, 94, 0.10) !important;
}

/* Beat per-page !important on length select (e.g. withdrawalhistory) */
body.portal-app .dataTables_wrapper .dataTables_length select{
  background: linear-gradient(180deg, rgba(3, 32, 22, 0.98), rgba(2, 18, 14, 0.98)) !important;
  color: var(--inv-text) !important;
  border: 1px solid rgba(56, 189, 149, 0.35) !important;
}
body.portal-app .dataTables_wrapper .dataTables_length select option,
body.portal-app .dataTables_wrapper .dataTables_length select option:hover,
body.portal-app .dataTables_wrapper .dataTables_length select option:checked{
  background: rgba(3, 28, 20, 0.98) !important;
  color: var(--inv-text) !important;
}

body.portal-app .dataTables_wrapper .paginate_button:not(.current):not(.disabled){
  background: rgba(3, 28, 22, 0.92) !important;
  border-color: rgba(56, 189, 149, 0.28) !important;
  color: var(--inv-text-soft) !important;
}
body.portal-app .dataTables_wrapper .paginate_button:not(.current):not(.disabled):hover{
  background: rgba(34, 197, 94, 0.14) !important;
  border-color: rgba(74, 222, 128, 0.4) !important;
  color: var(--inv-text) !important;
}

/* Recharge / top-up: hero + QR/upload cards (blue gradients in inline CSS) */
body.portal-app #topupPageRoot .modal-hero{
  background: var(--inv-card-bg-strong) !important;
  border: 1px solid var(--inv-card-border) !important;
}
body.portal-app #topupPageRoot .hero-pill{
  background: rgba(3, 35, 24, 0.95) !important;
  border-color: var(--inv-card-border) !important;
  color: var(--inv-accent-3) !important;
}
body.portal-app #topupPageRoot .qr-card,
body.portal-app #topupPageRoot .upload-card{
  background: linear-gradient(180deg, rgba(3, 28, 22, 0.96), rgba(2, 16, 12, 0.98)) !important;
  border-color: rgba(56, 189, 149, 0.28) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.03) !important;
}
body.portal-app #topupPageRoot .drop-area{
  border-color: rgba(56, 189, 149, 0.4) !important;
  background: linear-gradient(180deg, rgba(3, 30, 22, 0.9), rgba(2, 18, 14, 0.94)) !important;
}
body.portal-app #topupPageRoot .drop-area:hover,
body.portal-app #topupPageRoot .drop-area.dragover{
  border-color: rgba(74, 222, 128, 0.55) !important;
  box-shadow: 0 0 0 1px rgba(34,197,94,0.15), 0 18px 34px rgba(0,0,0,0.35) !important;
}
body.portal-app #topupPageRoot .drop-icon{
  background: rgba(34,197,94,0.14) !important;
  color: var(--inv-accent-3) !important;
}
body.portal-app #topupPageRoot .upload-chip{
  border-color: rgba(56, 189, 149, 0.3) !important;
  background: rgba(34,197,94,0.12) !important;
  color: var(--inv-accent-3) !important;
}
body.portal-app #topupPageRoot .channel-grid-item.active{
  border-color: rgba(74, 222, 128, 0.55) !important;
  background: rgba(34,197,94,0.14) !important;
  color: var(--inv-accent-3) !important;
  box-shadow: 0 0 0 1px rgba(34,197,94,0.25) !important;
}

/* MOP list (code seller): Bank input was being forced blue via #bank.form-control */
#bank.form-control,
#bank.form-select{
  background: rgba(3, 24, 18, 0.96) !important;
  border-color: rgba(56, 189, 149, 0.30) !important;
  color: var(--inv-text) !important;
  box-shadow: none !important;
}
#bank.form-control::placeholder{
  color: rgba(183, 227, 201, 0.55) !important;
}
#bank.form-control:focus,
#bank.form-select:focus{
  border-color: rgba(34,197,94,0.70) !important;
  box-shadow: 0 0 0 .18rem rgba(34,197,94,0.10) !important;
  outline: none !important;
}

/* Also cover any similar blue override for the MOP selector/input */
#mop.form-control,
#mop.form-select{
  background: rgba(3, 24, 18, 0.96) !important;
  border-color: rgba(56, 189, 149, 0.30) !important;
  color: var(--inv-text) !important;
  box-shadow: none !important;
}
#mop.form-control::placeholder{
  color: rgba(183, 227, 201, 0.55) !important;
}
#mop.form-control:focus,
#mop.form-select:focus{
  border-color: rgba(34,197,94,0.70) !important;
  box-shadow: 0 0 0 .18rem rgba(34,197,94,0.10) !important;
  outline: none !important;
}

/* ========== FINAL GREEN OVERRIDES: Radial Menu (dark green) ========== */
.radial-launcher{
  background: radial-gradient(circle at 30% 0, rgba(34,197,94,0.95), rgba(20,184,166,0.92)) !important;
  box-shadow: 0 18px 40px rgba(0,0,0,0.85), 0 0 28px rgba(34,197,94,0.70) !important;
}
.radial-launcher .radial-launcher-icon{
  color: rgba(240,255,248,0.98) !important;
}
.radial-launcher .radial-launcher-icon i{
  text-shadow: 0 0 14px rgba(34,197,94,0.45) !important;
}

.radial-menu-item{
  background: rgba(3,28,22,0.96) !important;
  border: 1px solid rgba(56,189,149,0.55) !important;
  color: rgba(226,255,242,0.95) !important;
}
.radial-menu-item i{
  color: rgba(74,222,128,0.98) !important;
  text-shadow: 0 0 12px rgba(74,222,128,0.30) !important;
}
.radial-menu-item.active{
  opacity: 1 !important;
  /* Disable "selected page" highlight; keep same look as non-active items */
  border-color: rgba(56,189,149,0.55) !important;
  box-shadow: none !important;
  background: rgba(3,28,22,0.96) !important;
}

/* Extra safety: if any later rules add stronger glow for active, nullify them */
.radial-menu-item.active i{
  text-shadow: 0 0 12px rgba(74,222,128,0.30) !important;
}

/* ===== Mobile DataTables: horizontal scroll (avoid overlapping cards) ===== */
@media (max-width: 767.98px){
  /* Make the SAME wrapper that clips the table on mobile act as the scroll container.
     DataTables sometimes recalculates layout; scrolling the table itself is unreliable. */
  body.portal-app .card-body.table-responsive,
  body.portal-app .table-responsive,
  body.portal-app .dataTables_wrapper{
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-x;
  }

  /* Force overflow by ensuring table cannot shrink smaller than needed. */
  body.portal-app table.dataTable{
    width: 900px !important;
    min-width: 900px !important;
    max-width: none !important;
    table-layout: auto !important;
  }

  body.portal-app table.dataTable thead th,
  body.portal-app table.dataTable tbody td{
    white-space: nowrap !important;
  }

  /* Green scrollbar styling (WebKit) for the wrapper scroller */
  body.portal-app .card-body.table-responsive::-webkit-scrollbar{
    height: 10px;
  }
  body.portal-app .card-body.table-responsive::-webkit-scrollbar-track{
    background: rgba(3,28,22,0.45);
    border-radius: 999px;
  }
  body.portal-app .card-body.table-responsive::-webkit-scrollbar-thumb{
    background: rgba(34,197,94,0.60);
    border-radius: 999px;
    border: 2px solid rgba(3,28,22,0.45);
  }
  body.portal-app .card-body.table-responsive{
    scrollbar-color: rgba(34,197,94,0.75) rgba(3,28,22,0.45);
    scrollbar-width: thin;
  }
}

/* Administrator: body-scoped right sidebar (no wrapper ancestry) */
body.layout-fixed.layout-navbar-fixed.text-sm .main-sidebar,
body.layout-fixed.layout-navbar-fixed.text-sm aside.main-sidebar {
  left: auto !important;
  right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
body.layout-fixed.layout-navbar-fixed.text-sm .main-sidebar::before {
  left: auto !important;
  right: 0 !important;
}
body.layout-fixed.layout-navbar-fixed.text-sm .content-wrapper,
body.layout-fixed.layout-navbar-fixed.text-sm .main-header {
  margin-left: 0 !important;
  margin-right: 250px !important;
}
body.layout-fixed.layout-navbar-fixed.text-sm.sidebar-collapse .main-sidebar,
body.layout-fixed.layout-navbar-fixed.text-sm.sidebar-collapse aside.main-sidebar {
  margin-right: -250px !important;
}
body.layout-fixed.layout-navbar-fixed.text-sm.sidebar-collapse .content-wrapper,
body.layout-fixed.layout-navbar-fixed.text-sm.sidebar-collapse .main-header {
  margin-right: 0 !important;
  margin-left: 0 !important;
}