
/* =========================================================
   FPFX NEXT-GEN APP DASHBOARD THEME
   Black + Gold luxury UI for user dashboard
   ========================================================= */
:root{
  --fpfx-bg:#050505;
  --fpfx-bg-2:#090806;
  --fpfx-card:#11100e;
  --fpfx-card-2:#17130d;
  --fpfx-border:rgba(238,183,98,.22);
  --fpfx-border-strong:rgba(238,183,98,.45);
  --fpfx-gold:#EEB762;
  --fpfx-gold-2:#F3DBB2;
  --fpfx-text:#f8f8f8;
  --fpfx-muted:#b8b8b8;
  --fpfx-green:#22c55e;
  --fpfx-red:#ef4444;
  --fpfx-blue:#38bdf8;
}

body[data-theme="dark"],
body.boxed-size{
  background:
    radial-gradient(circle at top left, rgba(238,183,98,.10), transparent 28%),
    radial-gradient(circle at 85% 8%, rgba(243,219,178,.06), transparent 24%),
    linear-gradient(135deg,#000,#070604 45%,#000) !important;
  color:var(--fpfx-text) !important;
}

.main-content-container{
  padding-top:22px;
  position:relative;
}

.main-content-container:before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(238,183,98,.04) 1px, transparent 1px),
    linear-gradient(90deg,rgba(238,183,98,.04) 1px, transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),transparent 85%);
  z-index:-1;
}

.sidebar-area,
#layout-menu{
  background:rgba(6,6,6,.92) !important;
  border-right:1px solid var(--fpfx-border) !important;
  backdrop-filter:blur(18px);
}

.sidebar-area .logo{
  border-bottom:1px solid var(--fpfx-border) !important;
  background:linear-gradient(180deg,rgba(238,183,98,.08),rgba(255,255,255,.02));
}

.sidebar-area .logo img{
  max-height:52px;
  object-fit:contain;
}

.menu-title-text{
  color:var(--fpfx-gold) !important;
  letter-spacing:.14em;
  font-weight:800;
}

.menu-inner .menu-link{
  color:#d8d8d8 !important;
  border:1px solid transparent;
  border-radius:16px;
  margin:3px 10px;
  transition:all .25s ease;
}

.menu-inner .menu-link:hover,
.menu-item.active > .menu-link{
  color:#000 !important;
  background:linear-gradient(185.21deg,var(--fpfx-gold),var(--fpfx-gold-2)) !important;
  border-color:rgba(255,255,255,.12);
  box-shadow:0 16px 40px rgba(238,183,98,.12);
  transform:translateX(3px);
}

.menu-inner .menu-link:hover .menu-icon,
.menu-item.active .menu-icon{
  color:#000 !important;
}

header#header-area{
  background:rgba(5,5,5,.72) !important;
  border-bottom:1px solid var(--fpfx-border);
  backdrop-filter:blur(20px);
}

header#header-area *{
  color:#f4f4f4;
}

.footer-area{
  background:rgba(5,5,5,.72) !important;
  border-top:1px solid var(--fpfx-border);
  color:var(--fpfx-muted);
}

.card,
.bg-white{
  background:linear-gradient(145deg,rgba(24,22,19,.96),rgba(7,7,7,.98)) !important;
  border:1px solid var(--fpfx-border) !important;
  box-shadow:0 22px 55px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.04) !important;
  color:var(--fpfx-text) !important;
}

.card{
  border-radius:24px !important;
  overflow:hidden;
}

.card-body{
  color:var(--fpfx-text) !important;
}

.text-secondary,
.text-body,
p,
span,
td{
  color:var(--fpfx-muted) !important;
}

h1,h2,h3,h4,h5,h6,
.fw-semibold,
.fw-bold{
  color:#fff !important;
}

.text-danger-div,
.text-primary-div{
  background:linear-gradient(185deg,var(--fpfx-gold),var(--fpfx-gold-2));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent !important;
}

.btn,
button{
  border-radius:999px !important;
}

.btn-primary,
.btn-outline-light:hover,
.hover-white:hover,
.fpfx-btn-gold{
  background:linear-gradient(185deg,var(--fpfx-gold),var(--fpfx-gold-2)) !important;
  border-color:transparent !important;
  color:#050505 !important;
  font-weight:850;
  box-shadow:0 14px 34px rgba(238,183,98,.16);
}

.btn-outline-light,
.fpfx-btn-ghost{
  border:1px solid rgba(238,183,98,.35) !important;
  color:#fff !important;
  background:rgba(238,183,98,.06) !important;
  font-weight:750;
}

.badge{
  color:#fff !important;
}

.badge.bg-success,
.badge.text-success,
.bg-success.text-success{
  color:#7dffb1 !important;
  background:rgba(34,197,94,.12) !important;
  border:1px solid rgba(34,197,94,.28);
}

.badge.bg-danger,
.badge.text-danger,
.bg-danger.text-danger{
  color:#ff9f9f !important;
  background:rgba(239,68,68,.12) !important;
  border:1px solid rgba(239,68,68,.28);
}

.badge.bg-info,
.badge.text-info,
.bg-info.text-info{
  color:#b8ecff !important;
  background:rgba(56,189,248,.12) !important;
  border:1px solid rgba(56,189,248,.28);
}

/* tables: no cursor-follow / no tilt / premium static behavior */
.table-responsive,
.default-table-area,
.default-table-area *,
.table,
.table *,
tr,
td,
th{
  transform:none !important;
  perspective:none !important;
}

.table-responsive{
  border-radius:22px;
  overflow:auto !important;
  border:1px solid rgba(238,183,98,.16);
  background:rgba(255,255,255,.02);
}

.table{
  margin:0 !important;
  color:var(--fpfx-text) !important;
}

.table thead th{
  background:rgba(238,183,98,.09) !important;
  color:var(--fpfx-gold) !important;
  border-bottom:1px solid rgba(238,183,98,.22) !important;
  font-size:11px;
  letter-spacing:.10em;
  text-transform:uppercase;
  white-space:nowrap;
}

.table tbody td{
  border-color:rgba(255,255,255,.07) !important;
  color:#dedede !important;
  vertical-align:middle;
}

.table tbody tr{
  transition:background .2s ease, box-shadow .2s ease !important;
}

.table tbody tr:hover{
  background:rgba(238,183,98,.055) !important;
  box-shadow:inset 3px 0 0 var(--fpfx-gold);
}

.fpfx-dashboard-shell{
  position:relative;
  z-index:1;
}

.fpfx-hero-panel{
  position:relative;
  overflow:hidden;
  border:1px solid var(--fpfx-border-strong);
  border-radius:30px;
  background:
    radial-gradient(circle at 82% 12%,rgba(238,183,98,.22),transparent 32%),
    linear-gradient(145deg,rgba(24,20,14,.96),rgba(5,5,5,.98));
  padding:34px;
  box-shadow:0 28px 90px rgba(0,0,0,.42);
}

.fpfx-hero-panel:before{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  right:-220px;
  top:-220px;
  background:radial-gradient(circle,rgba(243,219,178,.20),transparent 62%);
  filter:blur(6px);
  pointer-events:none;
}

.fpfx-hero-content{
  position:relative;
  z-index:2;
}

.fpfx-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:var(--fpfx-gold);
  padding:8px 14px;
  border:1px solid rgba(238,183,98,.30);
  border-radius:999px;
  background:rgba(238,183,98,.08);
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:12px;
  font-weight:850;
}

.fpfx-dashboard-title{
  font-size:clamp(34px,4vw,60px);
  line-height:.98;
  font-weight:950;
  letter-spacing:-.05em;
  margin:18px 0 14px;
  background:linear-gradient(108deg,#999 4%,#fff 48%,#F3DBB2 78%,#999 102%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent !important;
}

.fpfx-hero-copy{
  max-width:740px;
  color:#c8c8c8 !important;
  font-size:16px;
  line-height:1.75;
}

.fpfx-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:24px;
}

.fpfx-hero-visual{
  position:relative;
  min-height:240px;
  border-radius:24px;
  background:linear-gradient(145deg,rgba(238,183,98,.13),rgba(255,255,255,.035));
  border:1px solid rgba(238,183,98,.20);
  overflow:hidden;
}

.fpfx-hero-visual:before{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);
  background-size:34px 34px;
  mask-image:linear-gradient(to bottom,#000,transparent 88%);
}

.fpfx-hero-visual svg{
  position:absolute;
  inset:38px 22px 24px;
  width:calc(100% - 44px);
  height:calc(100% - 62px);
}

.fpfx-hero-visual polyline{
  fill:none;
  stroke:url(#fpfxDashGold);
  stroke-width:6;
  stroke-linecap:round;
  stroke-linejoin:round;
  filter:drop-shadow(0 0 12px rgba(238,183,98,.55));
}

.fpfx-kpi-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  margin:24px 0;
}

.fpfx-kpi-card{
  position:relative;
  overflow:hidden;
  border:1px solid var(--fpfx-border);
  border-radius:24px;
  background:linear-gradient(145deg,rgba(24,22,18,.94),rgba(7,7,7,.98));
  padding:24px;
  box-shadow:0 18px 45px rgba(0,0,0,.25), inset 0 1px 0 rgba(255,255,255,.04);
  transition:border-color .25s ease, transform .25s ease, box-shadow .25s ease;
}

.fpfx-kpi-card:hover{
  transform:translateY(-4px);
  border-color:var(--fpfx-border-strong);
  box-shadow:0 20px 65px rgba(238,183,98,.08);
}

.fpfx-kpi-icon{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:16px;
  color:var(--fpfx-gold);
  background:rgba(238,183,98,.12);
  border:1px solid rgba(238,183,98,.26);
  margin-bottom:18px;
}

.fpfx-kpi-icon .material-symbols-outlined{
  color:var(--fpfx-gold) !important;
}

.fpfx-kpi-label{
  display:block;
  color:#a8a8a8 !important;
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-weight:800;
}

.fpfx-kpi-value{
  color:#fff !important;
  font-size:32px;
  font-weight:950;
  line-height:1;
  margin-top:8px;
}

.fpfx-kpi-sub{
  color:#9b9b9b !important;
  font-size:12px;
  margin-top:10px;
}

.fpfx-grid-2{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr);
  gap:22px;
  margin-bottom:24px;
}

.fpfx-panel{
  border:1px solid var(--fpfx-border);
  border-radius:26px;
  background:linear-gradient(145deg,rgba(21,19,16,.96),rgba(7,7,7,.98));
  box-shadow:0 22px 55px rgba(0,0,0,.28);
  overflow:hidden;
}

.fpfx-panel-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  padding:22px 24px;
  border-bottom:1px solid rgba(238,183,98,.14);
}

.fpfx-panel-head h3{
  margin:0;
  font-size:20px;
  font-weight:900;
}

.fpfx-panel-head p{
  margin:6px 0 0;
  color:#aaa !important;
  font-size:13px;
}

.fpfx-panel-body{
  padding:22px 24px;
}

.fpfx-chart-wrap{
  min-height:320px;
}

.fpfx-status-list{
  display:grid;
  gap:14px;
}

.fpfx-status-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:16px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:rgba(255,255,255,.025);
}

.fpfx-status-left{
  display:flex;
  align-items:center;
  gap:12px;
}

.fpfx-status-dot{
  width:12px;
  height:12px;
  border-radius:999px;
  background:var(--fpfx-gold);
  box-shadow:0 0 18px rgba(238,183,98,.45);
}

.fpfx-status-dot.green{background:var(--fpfx-green);box-shadow:0 0 18px rgba(34,197,94,.45);}
.fpfx-status-dot.red{background:var(--fpfx-red);box-shadow:0 0 18px rgba(239,68,68,.45);}
.fpfx-status-dot.blue{background:var(--fpfx-blue);box-shadow:0 0 18px rgba(56,189,248,.45);}

.fpfx-status-item strong{
  color:#fff;
  display:block;
}

.fpfx-status-item small{
  color:#aaa;
}

.fpfx-modern-table-panel{
  margin-bottom:24px;
}

.fpfx-table-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
  margin-bottom:16px;
}

.fpfx-search{
  min-width:260px;
  border:1px solid rgba(238,183,98,.20);
  background:rgba(255,255,255,.035);
  color:#fff;
  border-radius:999px;
  padding:12px 16px;
  outline:none;
}

.fpfx-search::placeholder{color:#777;}

.fpfx-chip{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:7px 10px;
  border-radius:999px;
  background:rgba(238,183,98,.08);
  border:1px solid rgba(238,183,98,.22);
  color:var(--fpfx-gold) !important;
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
}

.fpfx-progress-line{
  height:8px;
  width:100%;
  background:rgba(255,255,255,.08);
  border-radius:999px;
  overflow:hidden;
}

.fpfx-progress-line span{
  display:block;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,var(--fpfx-gold),var(--fpfx-gold-2));
  box-shadow:0 0 16px rgba(238,183,98,.36);
}

.fpfx-empty-state{
  padding:42px 24px;
  text-align:center;
}

.fpfx-empty-state .material-symbols-outlined{
  font-size:54px;
  color:var(--fpfx-gold) !important;
  opacity:.9;
}

.fpfx-empty-state h4{
  margin:14px 0 6px;
}

.fpfx-empty-state p{
  max-width:520px;
  margin:0 auto 18px;
}

.apexcharts-tooltip,
.apexcharts-menu{
  background:#101010 !important;
  border:1px solid var(--fpfx-border) !important;
  color:#fff !important;
}

.apexcharts-tooltip-title{
  background:#16120c !important;
  border-bottom:1px solid var(--fpfx-border) !important;
  color:#fff !important;
}

@media(max-width:1199px){
  .fpfx-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .fpfx-grid-2{grid-template-columns:1fr;}
}

@media(max-width:575px){
  .main-content-container{padding-inline:10px;}
  .fpfx-hero-panel{padding:22px;border-radius:24px;}
  .fpfx-kpi-grid{grid-template-columns:1fr;}
  .fpfx-panel-head{display:block;}
  .fpfx-search{width:100%;min-width:0;}
}


/* =========================================================
   FPFX FINAL GLOBAL CONSISTENCY LAYER
   Applies premium UI across all dashboard pages.
   ========================================================= */
.bg-primary,.bg-secondary,.bg-dark,.bg-light{
  background:linear-gradient(145deg,rgba(24,22,18,.96),rgba(7,7,7,.99))!important;
  border:1px solid rgba(238,183,98,.22)!important;
  color:#fff!important;
  box-shadow:0 22px 55px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.04)!important;
}
.rounded-3{border-radius:24px!important}
.material-symbols-outlined,.ri-home-line,.ri-login-box-line,.ri-shopping-cart-line,.ri-trophy-line,.ri-megaphone-line,.ri-user-line,.ri-shield-user-line,.ri-download-line,.ri-money-dollar-circle-line{color:#EEB762!important}
.form-control,.form-select,input,select,textarea{
  background:rgba(255,255,255,.045)!important;
  border:1px solid rgba(238,183,98,.20)!important;
  color:#fff!important;
  border-radius:16px!important;
}
.form-control:focus,.form-select:focus,input:focus,select:focus,textarea:focus{
  border-color:rgba(238,183,98,.55)!important;
  box-shadow:0 0 0 .2rem rgba(238,183,98,.12)!important;
}
.form-control::placeholder,textarea::placeholder{color:#777!important}
label,.form-label{color:#f5f5f5!important;font-weight:750}
.dropdown-menu{background:#090909!important;border:1px solid rgba(238,183,98,.22)!important;border-radius:18px!important;box-shadow:0 22px 55px rgba(0,0,0,.42)!important}
.dropdown-item{color:#d6d6d6!important;border-radius:12px!important}
.dropdown-item:hover{background:rgba(238,183,98,.11)!important;color:#EEB762!important}
.alert{border-radius:22px!important;background:linear-gradient(145deg,rgba(24,22,18,.96),rgba(7,7,7,.99))!important;border:1px solid rgba(238,183,98,.22)!important;color:#F3DBB2!important}
.fpfx-page-hero{
  margin-bottom:24px;padding:28px;border:1px solid rgba(238,183,98,.30);border-radius:28px;
  background:radial-gradient(circle at 85% 0,rgba(238,183,98,.18),transparent 35%),linear-gradient(145deg,rgba(24,22,18,.96),rgba(7,7,7,.99));
  box-shadow:0 28px 80px rgba(0,0,0,.36)
}
.fpfx-page-hero h1,.fpfx-page-hero h2{font-size:clamp(30px,3.5vw,52px);line-height:1;font-weight:950;letter-spacing:-.04em;background:linear-gradient(108deg,#999,#fff 48%,#F3DBB2 78%,#999);-webkit-background-clip:text;background-clip:text;color:transparent!important}
.fpfx-page-hero p{max-width:740px;color:#c8c8c8!important;line-height:1.7}
.table-responsive,.table-responsive *,table,table *,thead,tbody,tr,td,th{transform:none!important;perspective:none!important;will-change:auto!important}
.table-responsive{overflow:auto!important}
.card:hover,.bg-primary:hover,.bg-secondary:hover{transform:none}
@media(max-width:767px){.fpfx-page-hero{padding:22px;border-radius:24px}}


/* =========================================================
   FPFX FINAL PAGE FIXES: sidebar, withdrawal, white tables
   ========================================================= */
.menu-inner .menu-link,
.sidebar-area .menu-link,
#layout-menu .menu-link{
  background:transparent!important;
  color:#b8b8b8!important;
  border:1px solid transparent!important;
  box-shadow:none!important;
  transform:none!important;
}
.menu-inner .menu-link:hover,
.sidebar-area .menu-link:hover,
#layout-menu .menu-link:hover{
  background:rgba(238,183,98,.08)!important;
  color:#EEB762!important;
  border:1px solid rgba(238,183,98,.18)!important;
  box-shadow:none!important;
  transform:none!important;
}
.menu-inner .menu-item.active>.menu-link,
.sidebar-area .menu-item.active>.menu-link,
#layout-menu .menu-item.active>.menu-link{
  background:linear-gradient(90deg,rgba(238,183,98,.16),rgba(238,183,98,.05))!important;
  color:#EEB762!important;
  border:1px solid rgba(238,183,98,.35)!important;
  box-shadow:inset 3px 0 0 #EEB762!important;
  transform:none!important;
}
.menu-inner .menu-item.active>.menu-link i,
.menu-inner .menu-item.active>.menu-link span,
.menu-inner .menu-link:hover i,
.menu-inner .menu-link:hover span{color:#EEB762!important}

.withdrawal-form{
  padding:32px!important;
  background:radial-gradient(circle at 90% 0%,rgba(238,183,98,.10),transparent 35%),linear-gradient(145deg,rgba(24,22,18,.96),rgba(7,7,7,.99))!important;
  border:1px solid rgba(238,183,98,.28)!important;
  border-radius:28px!important;
  box-shadow:0 25px 70px rgba(0,0,0,.45)!important;
}
.withdrawal-form .form-control,
.withdrawal-form .form-select,
.withdrawal-form .select2-selection{
  background:#15120d!important;
  border:1px solid rgba(238,183,98,.28)!important;
  color:#fff!important;
  border-radius:18px!important;
  min-height:54px!important;
  padding:14px 18px!important;
}
.withdrawal-form .form-control::placeholder{color:#8f8f8f!important}
.withdrawal-form label{color:#fff!important;font-weight:800!important;margin-bottom:10px!important}
.wallet-warning{background:rgba(238,183,98,.07)!important;border:1px solid rgba(238,183,98,.35)!important;color:#D9B35E!important;border-radius:16px!important;padding:14px 18px!important}
.withdrawal-form textarea{min-height:110px!important}
.withdrawal-form .btn-withdrawal{min-width:300px;height:56px;font-size:16px;background:linear-gradient(185deg,#EEB762,#F3DBB2)!important;color:#050505!important;border:none!important;border-radius:999px!important;font-weight:900!important}

.withdrawal-history,
.withdrawal-history *,
.fpfx-account-card table,
.fpfx-account-card table *,
.table-responsive table,
.table-responsive table *{background:transparent!important}
.fpfx-account-card .table-responsive,
.table-responsive{background:#080808!important;border-radius:22px!important;border:1px solid rgba(238,183,98,.22)!important;overflow:auto!important}
.fpfx-account-card table,
.table{background:#080808!important;color:#fff!important}
.fpfx-account-card table thead th,
.table thead th{
  background:linear-gradient(90deg,rgba(238,183,98,.16),rgba(238,183,98,.08))!important;
  color:#EEB762!important;
  border-bottom:1px solid rgba(238,183,98,.25)!important;
  font-size:12px!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
.fpfx-account-card table tbody tr,
.table tbody tr{background:#0b0b0b!important;border-bottom:1px solid rgba(255,255,255,.06)!important}
.fpfx-account-card table tbody tr:hover,
.table tbody tr:hover{background:rgba(238,183,98,.07)!important}
.fpfx-account-card table tbody td,
.table tbody td{background:transparent!important;color:#d8d8d8!important;border-color:rgba(255,255,255,.06)!important}
.fpfx-account-card table .fpfx-status-badge.active{background:rgba(34,197,94,.12)!important;color:#22c55e!important;border-color:rgba(34,197,94,.35)!important}
.fpfx-account-card table .fpfx-status-badge.danger{background:rgba(239,68,68,.12)!important;color:#ff8b8b!important;border-color:rgba(239,68,68,.35)!important}


/* =========================================================
   FPFX EMERGENCY FINAL FIXES — AUTH, SIDEBAR, TABLES, FORMS
   Place at very end so it overrides old theme.
   ========================================================= */

/* SIDEBAR: remove ugly peach active state */
.menu-inner .menu-link,
.sidebar-area .menu-link,
#layout-menu .menu-link{
    background:transparent!important;
    color:#b8b8b8!important;
    border:1px solid transparent!important;
    box-shadow:none!important;
    transform:none!important;
}

.menu-inner .menu-link:hover,
.sidebar-area .menu-link:hover,
#layout-menu .menu-link:hover{
    background:rgba(238,183,98,.08)!important;
    color:#EEB762!important;
    border-color:rgba(238,183,98,.18)!important;
    box-shadow:none!important;
    transform:none!important;
}

.menu-inner .menu-item.active > .menu-link,
.sidebar-area .menu-item.active > .menu-link,
#layout-menu .menu-item.active > .menu-link{
    background:linear-gradient(90deg,rgba(238,183,98,.16),rgba(238,183,98,.045))!important;
    color:#EEB762!important;
    border-color:rgba(238,183,98,.35)!important;
    box-shadow:inset 3px 0 0 #EEB762!important;
    transform:none!important;
}

.menu-inner .menu-link i,
.menu-inner .menu-link span,
.sidebar-area .menu-link i,
.sidebar-area .menu-link span{
    color:inherit!important;
}

/* Buttons: consistent, not absurd on hover */
.btn,
button,
.btn-primary,
.btn-withdrawal,
.fpfx-btn-gold,
.fpfx-btn-ghost{
    min-height:44px;
    border-radius:999px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    font-weight:850!important;
    line-height:1!important;
    text-decoration:none!important;
    transition:transform .2s ease, opacity .2s ease, border-color .2s ease!important;
}

.btn-primary,
.btn-withdrawal,
.fpfx-btn-gold{
    background:linear-gradient(185deg,#EEB762,#F3DBB2)!important;
    color:#050505!important;
    border:0!important;
    box-shadow:0 14px 34px rgba(238,183,98,.16)!important;
}

.btn-primary:hover,
.btn-withdrawal:hover,
.fpfx-btn-gold:hover{
    transform:translateY(-2px)!important;
    color:#050505!important;
    opacity:.94!important;
}

.fpfx-btn-ghost,
.btn-cancel{
    background:rgba(238,183,98,.07)!important;
    color:#fff!important;
    border:1px solid rgba(238,183,98,.32)!important;
    box-shadow:none!important;
}

.fpfx-btn-ghost:hover,
.btn-cancel:hover{
    color:#EEB762!important;
    background:rgba(238,183,98,.11)!important;
    transform:translateY(-2px)!important;
}

/* Withdrawal form: proper premium structure */
.withdrawal-form{
    padding:34px!important;
    background:
        radial-gradient(circle at 88% 0%,rgba(238,183,98,.12),transparent 36%),
        linear-gradient(145deg,rgba(24,22,18,.98),rgba(7,7,7,.99))!important;
    border:1px solid rgba(238,183,98,.30)!important;
    border-radius:28px!important;
    box-shadow:0 26px 80px rgba(0,0,0,.48), inset 0 1px 0 rgba(255,255,255,.04)!important;
}

.withdrawal-form .row{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:22px!important;
    margin:0!important;
}

.withdrawal-form [class*="col-"]{
    width:100%!important;
    max-width:none!important;
    padding:0!important;
}

.withdrawal-form .mb-3{
    margin-bottom:22px!important;
}

.withdrawal-form label,
.withdrawal-form .form-label{
    display:block!important;
    color:#fff!important;
    font-weight:850!important;
    margin:0 0 10px!important;
}

.withdrawal-form .form-control,
.withdrawal-form .form-select,
.withdrawal-form .select2-selection{
    width:100%!important;
    min-height:56px!important;
    background:#15120d!important;
    color:#fff!important;
    border:1px solid rgba(238,183,98,.30)!important;
    border-radius:18px!important;
    padding:15px 18px!important;
    box-shadow:none!important;
}

.withdrawal-form .form-control:focus,
.withdrawal-form .form-select:focus{
    border-color:rgba(238,183,98,.65)!important;
    box-shadow:0 0 0 .2rem rgba(238,183,98,.13)!important;
}

.withdrawal-form textarea.form-control{
    min-height:120px!important;
}

.wallet-warning{
    background:rgba(238,183,98,.08)!important;
    border:1px solid rgba(238,183,98,.35)!important;
    color:#D9B35E!important;
    border-radius:16px!important;
    padding:14px 18px!important;
}

.wallet-warning p{
    margin:0!important;
}

.withdrawal-form .btn-withdrawal{
    min-width:310px!important;
    height:58px!important;
    padding:0 28px!important;
    font-size:16px!important;
}

/* TABLES: remove white table and cursor-move effects */
.table-responsive,
.table-responsive *,
table,
table *,
thead,
tbody,
tr,
td,
th{
    transform:none!important;
    perspective:none!important;
    will-change:auto!important;
}

.table-responsive{
    background:#080808!important;
    border:1px solid rgba(238,183,98,.24)!important;
    border-radius:22px!important;
    overflow:auto!important;
}

.table{
    background:#080808!important;
    color:#fff!important;
    margin:0!important;
}

.table thead th{
    background:linear-gradient(90deg,rgba(238,183,98,.18),rgba(238,183,98,.08))!important;
    color:#EEB762!important;
    border-bottom:1px solid rgba(238,183,98,.25)!important;
    font-size:12px!important;
    letter-spacing:.12em!important;
    text-transform:uppercase!important;
}

.table tbody tr{
    background:#0b0b0b!important;
    border-bottom:1px solid rgba(255,255,255,.06)!important;
}

.table tbody tr:hover{
    background:rgba(238,183,98,.075)!important;
}

.table tbody td{
    background:transparent!important;
    color:#d8d8d8!important;
    border-color:rgba(255,255,255,.06)!important;
}

/* AUTH PAGES */
.fpfx-auth-shell{
    min-height:100vh!important;
    display:grid!important;
    grid-template-columns:minmax(420px,.95fr) minmax(520px,1.05fr)!important;
    background:
        radial-gradient(circle at 10% 12%,rgba(238,183,98,.15),transparent 28%),
        linear-gradient(135deg,#000,#080604 55%,#000)!important;
    color:#fff!important;
    font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif!important;
}

.fpfx-auth-visual{
    min-height:100vh!important;
    padding:54px 48px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:space-between!important;
    border-right:1px solid rgba(238,183,98,.25)!important;
}

.fpfx-auth-panel-wrap{
    min-height:100vh!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:42px!important;
}

.fpfx-auth-panel{
    width:100%!important;
    max-width:560px!important;
    padding:38px!important;
    background:linear-gradient(145deg,rgba(24,22,18,.98),rgba(7,7,7,.99))!important;
    border:1px solid rgba(238,183,98,.32)!important;
    border-radius:30px!important;
    box-shadow:0 30px 90px rgba(0,0,0,.52)!important;
}

.fpfx-auth-panel.fpfx-register-panel{
    max-width:760px!important;
}

.fpfx-auth-panel .row,
#registrationForm .row{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:18px 18px!important;
    margin:0!important;
}

.fpfx-auth-panel [class*="col-"],
#registrationForm [class*="col-"]{
    width:100%!important;
    max-width:none!important;
    padding:0!important;
}

.fpfx-auth-panel .form-group,
.fpfx-auth-panel .mb-3,
.fpfx-auth-panel .mb-4{
    display:block!important;
    margin-bottom:18px!important;
}

.fpfx-auth-panel label,
.fpfx-auth-panel .form-label{
    display:block!important;
    color:#fff!important;
    font-weight:850!important;
    margin:0 0 9px!important;
    line-height:1.2!important;
}

.fpfx-auth-panel .form-control,
.fpfx-auth-panel input,
.fpfx-auth-panel select{
    width:100%!important;
    height:54px!important;
    min-height:54px!important;
    background:#15120d!important;
    border:1px solid rgba(238,183,98,.30)!important;
    color:#fff!important;
    border-radius:17px!important;
    padding:14px 17px!important;
    box-shadow:none!important;
}

.fpfx-auth-panel .form-control:focus,
.fpfx-auth-panel input:focus,
.fpfx-auth-panel select:focus{
    border-color:rgba(238,183,98,.68)!important;
    box-shadow:0 0 0 .2rem rgba(238,183,98,.13)!important;
}

.fpfx-auth-panel .form-control::placeholder{
    color:#8f8f8f!important;
}

.fpfx-auth-panel .btn-primary{
    width:100%!important;
    height:56px!important;
    margin-top:4px!important;
}

.fpfx-auth-panel .invalid-feedback{
    display:none!important;
    color:#ff8b8b!important;
    margin-top:7px!important;
    font-size:13px!important;
}

.fpfx-auth-panel .was-validated .form-control:invalid ~ .invalid-feedback,
.fpfx-auth-panel .form-control.is-invalid ~ .invalid-feedback{
    display:block!important;
}

.fpfx-auth-features{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
    margin:22px 0 26px!important;
}

.fpfx-auth-feature{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    min-height:46px!important;
    padding:12px 14px!important;
    background:rgba(238,183,98,.055)!important;
    border:1px solid rgba(238,183,98,.18)!important;
    border-radius:16px!important;
    color:#d6d6d6!important;
    font-size:13px!important;
}

.fpfx-auth-copy h1{
    max-width:720px!important;
}

@media(max-width:1100px){
    .fpfx-auth-shell{
        grid-template-columns:1fr!important;
    }
    .fpfx-auth-visual{
        display:none!important;
    }
    .fpfx-auth-panel-wrap{
        padding:22px!important;
    }
}

@media(max-width:680px){
    .fpfx-auth-panel,
    .fpfx-auth-panel.fpfx-register-panel{
        max-width:100%!important;
        padding:24px!important;
        border-radius:24px!important;
    }
    .fpfx-auth-panel .row,
    #registrationForm .row,
    .withdrawal-form .row,
    .fpfx-auth-features{
        grid-template-columns:1fr!important;
    }
    .withdrawal-form .btn-withdrawal{
        width:100%!important;
        min-width:0!important;
    }
}
