:root{
  --mags-light-border:#ebebeb;
  --mags-border-radius:20px;
  --mags-box-shadow:0 8px 32px rgba(0, 0, 0, 0.06);
  /* Finexy-style bento UI + MyJetPay logo: blue “MyJet”, lime “Pay”, emerald accents */
  --mags-blue:#005DC7;
  --mags-green:#76C83B;
  --mags-green-hover:#5fa82e;
  --mags-text:#1A1A1A;
  --mags-text-muted:#717171;
  --mags-success:#27C27D;
  --mags-danger:#FF5F5F;
  --mags-white:#FFFFFF;
  --mags-page-tint:#F5F5F5;
  --mags-primary:var(--mags-green);
  --mags-accent:var(--mags-green);
  --mags-gradient:linear-gradient(135deg, #005DC7 0%, #00b4d8 42%, #76C83B 100%);
  --mags-gradient-diagonal:linear-gradient(135deg, #005DC7, #27C27D, #76C83B);
  --mags-page-bg-fallback:var(--mags-page-tint);
  --mags-page-radial:
    radial-gradient(circle at 18% 22%, rgba(118, 200, 59, 0.14) 0%, transparent 48%),
    radial-gradient(circle at 82% 18%, rgba(0, 93, 199, 0.09) 0%, transparent 44%),
    radial-gradient(circle at 48% 88%, rgba(39, 194, 125, 0.11) 0%, transparent 46%);
}

html{

  height:100%;
}
body{
  font-family: 'Montserrat', sans-serif;
  position: relative;
  color: var(--mags-text-muted);
  background-color: var(--mags-page-tint);
  background-image: var(--mags-page-radial);
  background-attachment: fixed;
  font-weight:400;
  font-size:14px;
  height:100%;
}


.dropdown-item i{
  width:20px;
  text-align:center;
}
.btn{
  border-radius:50px;
  white-space: nowrap;
}
.btn-xs{
  padding: 0.25rem 0.5rem;
  font-size: 0.75rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}
.btn-primary {
  background: var(--mags-accent);
  color: #fff;
  border-color:var(--mags-green);
  font-weight:600;
}

.btn-primary:hover {
background: var(--mags-green-hover);
border-color:var(--mags-green-hover);
color:#fff;
}

.btn-orchid{
background: var(--mags-white);
color: var(--mags-text);
border:1px solid var(--mags-light-border);
}

.btn-orchid:hover {
background: #fafafa;
color: var(--mags-text);
border-color:#d0d0d0;
}

.btn-light{
  border:1px solid #efefef;
}
.btn-white{
  background:#fff;
  color:#000;
}

/* Sidebar */
.sidebar{
  position: fixed;
  z-index: 200;
  left: 0;
  top: 0;
  width: 220px;
  height: 100%;
  min-height: 600px;
  background: #fff;
  box-shadow: 4px 0 24px rgba(0,0,0,.04);
}
.sidebar .user-info{
  padding:20px;
}
.sidebar .sidebar-toggle{
  position:absolute;
  right:0px;
  top:0px;
  display:none;

}
.sidebar .logo{
  padding:20px;
}
.sidebar .logo img{
  max-width:100%;
}
.sidebar .logo a{
  text-decoration:none;
}
.sidebar .logo .logo-text{
  color:var(--mags-text);
  text-decoration:none;
  font-weight:600;
  font-size:24px;
  vertical-align: middle;
}
  .sidebar .logo .logo-text img{
      display:inline-block;
      max-width:30px;
  }
.sidebar .menu ul{
  list-style-type:none;
  padding:0px;
  margin:0px;
}
.sidebar ul li .sidebar-title{
  font-weight:600;
  padding:10px 20px;
  color:var(--mags-text-muted);
  opacity:1;
  font-size:12px;
  border-top:1px solid #efefef;
  border-bottom:1px solid #efefef;
}
.sidebar .menu ul li.divider{
  border-bottom:1px solid #efefef;
  margin:10px 0px;
}
.sidebar .menu ul li a{
  position: relative;
  display: block;
  margin: 0 20px 0 0;
  padding: 11px 10px 10px 20px;
  font-weight: 500;
  border-radius: 0 50px 50px 0;
  color: var(--mags-text-muted);
  text-decoration: none;
  opacity:1;
  /*
  background: #fafafa;
  opacity: 1;
  */
}
.sidebar .menu ul li a:hover,.sidebar .menu ul li.active a{
  background: #fafafa;
  opacity: 1;
}
.sidebar .menu ul li.active a{
  background:var(--mags-primary);
  opacity: 1;
  color:#fff;
  font-weight:600;
}


.sidebar .menu ul li a i{
  width:25px;
  text-align:center;
}


/* Page Wrapper */
.page-wrapper{
  padding-left:220px;
}

/* Header */
header{
    box-shadow: 0 1px 0 rgba(0,0,0,.06);
}

/* Footer */
.footer{
  text-align:center;
  margin-top:40px;
  padding:40px;
}
.footer b{
  color:var(--mags-primary);
}
.footer .footer-links a{
  color:var(--mags-text-muted);
  margin:0px 5px;
  text-decoration:none;
}


/* Page Content */
.page-content{padding:28px 40px;}
.page-content h1{
  font-size:24px;
  font-weight:700;
  color:var(--mags-text);
}

.box-white{
    padding: 20px;
    background: #fff;
    border-radius:var(--mags-border-radius);
    box-shadow: var(--mags-box-shadow);
}
.card{
      border-radius:var(--mags-border-radius);
      box-shadow: var(--mags-box-shadow);
      border:none;
}

.page-content .toolbar{
  float:right;
}

/* Accounts List */
.accounts-list .account-row{
  cursor:pointer;
}


/* Transactions List */
.transactions-list{

}


/* Dashboard */
.dashboard{

}


/* Helpers */
.balance-text.credit{
  font-size:24px;
  color:var(--mags-success);
}
.balance-text.debit{
  font-size:18px;
  color:var(--mags-danger);
}
.mag-hide{
  display:none !important;
}

.page-not-found{

}
.page-not-found .icon{
  font-size:40px;
}


/* Currency Dropdown Accounts */
.currency-accounts-dropdown{

}
.currency-accounts-dropdown button.name{
  font-weight:500;
  vertical-align: middle;
}
.currency-accounts-dropdown button.name span, .currency-accounts-dropdown button.name i{
  vertical-align: middle;
}
.currency-accounts-dropdown .options{
  width:250px;
  padding:0px;
}
.currency-accounts-dropdown .options .select-account{
  padding:2px 5px;
}
.currency-accounts-dropdown .options .select-account.active{
  background:#efefef;
  color:#000;
}
.currency-accounts-dropdown .options .select-account > span{
  display:block;
}
.currency-accounts-dropdown .options .select-account .account{
  font-weight:500;
}
.currency-accounts-dropdown .options .select-account .account-name{
  font-size:10px;
}
.currency-accounts-dropdown .options .select-account .account-balance{
  font-size:12px;
  color:green;
}
.currency-accounts-dropdown .options .select-account .account .currency-flag{
  float:right;
}



/* Transfers Info */
.internal-transfer-info .from, .internal-transfer-info .to{
  font-weight:bold;
}

.transactions-list-new .transaction {
  padding: 12px 16px;
  border-left: 4px solid transparent;
  background: #ffffff;
  margin-bottom: 8px;
  border-radius: var(--mags-border-radius);
  box-shadow: 0 1px 0 rgba(0,0,0,0.06);
  transition: background 0.2s ease, border-color 0.2s ease;
}

.transactions-list-new .transaction:nth-child(odd) {
  background: #f9fafb;
}

.transactions-list-new .transaction:hover {
  background: rgba(118, 200, 59, 0.08);
  border-left-color: var(--mags-green);
}

.transactions-list-new .transaction .date {
  font-weight: 500;
  font-size: 0.85rem;
  text-align: center;
  color: var(--mags-text-muted);
}

.transactions-list-new .transaction .description {
  font-weight: 600;
  font-size: 1rem;
  color: var(--mags-text);
  margin-bottom: 4px;
}

.transactions-list-new .transaction .amount {
  font-size: 1rem;
  font-weight: 600;
}

.transactions-list-new .transaction .amount.credit {
  color: var(--mags-success);
}

.transactions-list-new .transaction .amount.debit {
  color: var(--mags-danger);
}

.transactions-list-new .transaction .code {
  font-size: 0.75rem;
  color: #6c757d;
  background: #e9ecef;
  padding: 4px 6px;
  border-radius: 4px;
  display: inline-block;
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease;
}

.transactions-list-new .transaction .code:hover {
  background: #d6dde2;
  color: #343a40;
}

.transactions-list-new .transaction .fee {
  font-size: 0.75rem;
  color: #dc3545;
  font-weight: 500;
  margin-top: 2px;
}

.transactions-list-new .transaction .vendor-name {
  font-size: 0.85rem;
  color: var(--mags-primary);
  font-weight: 500;
}

.transactions-list-new .transaction .vendor-name:hover {
  color: var(--mags-green-hover);
  text-decoration: underline;
}

.transaction-type-badge {
  font-size: 0.65rem;
  padding: 2px 8px;
  border-radius: 50rem;
  display: inline-block;
  margin-top: 4px;
}






/* Products */

.products{

}
.products .product{
  
  border:1px solid #efefef;
  margin-bottom:10px;
}
.products .product .image img{
  max-width:100%;
  height:auto;
}
.products .product .name{
  font-weight:600;
}
.products .product .price{
  color:#dd4245;
  font-weight:600;
  padding:10px;
}



/* Product Info in Buy Now Modal */
.product-info {
background: #f8f9fa;
padding: 12px;
border-radius: 8px;
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
margin-bottom: 15px;
}

/* Product Title */
.product-info .product-title {
font-size: 1.2rem;
font-weight: bold;
color: #222;
margin-bottom: 5px;
}

/* Vendor Name */
.product-info .vendor-name {
font-size: 0.9rem;
font-weight: 500;
color: #555;
margin-bottom: 4px;
}

/* Price */
.product-info .price {
font-size: 1.1rem;
font-weight: bold;
color: #007bff;
margin-bottom: 6px;
}

.product-info .price span {
color: #28a745;
}

/* Description */
.product-info .description {
font-size: 0.95rem;
color: #666;
opacity: 0.9;
margin-bottom: 8px;
}


/* Tickets */

.go-to-url{
  cursor:pointer;
}

/* Tickets System */
.ticket-message-page{

}
.ticket-message-page .ticket-message{
  border-bottom:1px dashed #ccc;
  padding:20px 20px;
  background:#ffedeb;
}
.ticket-message-page .ticket-message.its-me{
  background:#fff;
}
.ticket-message-page .ticket-message .time{
  float:right;
}
.ticket-message-page .ticket-message .name{
  font-weight:bold;
}


.ticket-message-page .ticket-message .file{
  padding:2px 4px; border:1px solid #ccc;
  color:#000;
  text-decoration: none;
  background:#fff;
  border-radius:5px;
}

.ticket-message-page .ticket-form{
  border:1px solid #ccc;
  padding:10px;
}
.ticket-message-page .ticket-form textarea{
  margin-bottom:10px;
}
/* Custom Simple Select */
.custom-simple-select input{
  display:none;
}
.custom-simple-select .select-file{
  padding:4px;
  cursor:pointer;
}

/* Exchanges Design */
.currency-exchange-result,.wire-transfer-result{
  padding:10px;
  background:#efefef;
  border:1px solid #efefef;
}


.content-custom-account{
  padding:20px;
  background:#fff;
  border:1px solid #efefef;
  border-radius:5px;
  box-shadow:var(--mags-box-shadow);
}
.content-custom-account.medium{
 
  max-width:60%;
  margin:0 auto;
}
.profile-picture{
  width:100px;
  height:100px;
  border-radius:50%;
  overflow:hidden;
  margin:0 auto;
}

.balance-container {
  background-color: #f8f9fa;
  padding: 20px;
  border-radius: 5px;
  text-align: center;
  margin-top: 20px;
}
.balance-container h3 {
  margin: 0;
  font-size: 24px;
  color: #333;
}
.balance-container p {
  margin: 5px 0 0;
  font-size: 18px;
  color: #666;
}
.balance-container h4{
  margin: 0;
  font-size: 18px;
  color: #333;
}
.balance-positive{
  color: #28a745;
}
.heading-custom{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:20px;
}

.heading-custom .titles{

}
.heading-custom .titles .title-main{
  font-size:24px;
  color:#000;
  font-weight:600;
}

.page-content h2 {
  font-size: 20px;
}

.page-content h3 {
  font-size: 18px;
}

.page-content h4 {
  font-size: 16px;
}
.heading-custom .toolbar{

}




/* Register Page */
.register-page{
  padding:60px 0px;
  background-color: var(--mags-page-bg-fallback);
  background-image: var(--mags-page-radial);
  background-attachment: fixed;
  
}

.register-page .logo {
  padding:20px 0px;
}
.register-page .logo img{
  max-width:200px;
}
.register-page .register-container{
  max-width:600px;
  margin:0 auto;
  background:#fff;
 
  border-radius:var(--mags-border-radius);
  box-shadow:var(--mags-box-shadow);
}
.register-page h1 {
  font-size: 21px;
  font-weight: 600;
  margin-bottom: 20px;
  color:var(--mags-text);
}

.register-page h2 {
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 15px;
  color:var(--mags-text-muted);
}

.register-page .right-container{
  padding:20px;
  
}
.register-page .left-container{
  background: url('path/to/your/image.jpg') center top no-repeat;
  background-size: auto;
}
.register-page label{
  color:var(--mags-text);
}

/* Login Page */
.login-page{
background-color: var(--mags-page-bg-fallback);
background-image: var(--mags-page-radial);
background-attachment: fixed;

  padding:60px 0px;
  height: 100%;
 
}



.login-page .logo {
padding:20px 0px;
}


.login-page .logo img{
max-width:200px;
}


.login-page .login-container{
  max-width:600px;
  margin:0 auto;
  background:#fff;
  padding:0px;
  border-radius:var(--mags-border-radius);
  box-shadow:var(--mags-box-shadow);
  padding:20px;
}
.login-page h1 {
  font-size: 21px;
  font-weight: 600;
  margin-bottom: 20px;
  color:var(--mags-text);
}

.login-page h2 {
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 15px;
  color:var(--mags-text-muted);
}

.login-page .right-container{

  
}

.login-page .left-container{
  background: url('path/to/your/image.jpg') center top no-repeat;
  background-size: auto;
}
.login-page label{
  color:var(--mags-text);
}



.header-mobile{
background:#fff;
padding:20px;
display:none;
}

.header-mobile .logo img{
max-width:150px;;
}
.header-mobile .logo .logo-text{
color:var(--mags-text);
text-decoration:none;
font-weight:600;
font-size:24px;
vertical-align: middle;
}
.header-mobile .logo .logo-text img{
    display:inline-block;
    max-width:30px;
}
.header-mobile .sidebar-toggle .btn-link{
  font-size:26px;
}
.header-mobile .user-icon .btn-link{
  font-size:26px;

}
.header-mobile .home-icon .btn-link{
  font-size:26px;
}


.header-mobile .mobile-nav-links {
  
  
}
.header-mobile .mobile-nav-links a {
  display: flex;
  align-items: center;
  gap: 8px; /* Space between icon and text */
  flex: 1;
  text-decoration: none;
  color: var(--mags-text-muted);
  font-size: 0.85rem;
  transition: color 0.2s ease-in-out;
  justify-content: center;
}

.header-mobile .mobile-nav-links a:hover {
  color: var(--mags-primary);
}

.header-mobile .mobile-nav-links i {
  color: var(--mags-primary);
  font-size: 1.2rem; /* Adjust icon size */
  transition: transform 0.2s ease-in-out;
}

.header-mobile .mobile-nav-links a:hover i {
  transform: scale(1.2);
}

.header-mobile .mobile-nav-links p {
  margin: 0;
  font-size: 0.75rem;
  color: #6c757d;
  font-weight: 500;
}

.header-mobile .mobile-nav-links a:hover p {
  color: var(--mags-primary);
}

.badge{
  font-weight:500;
  padding:5px 10px;
  border-radius:4px;
}

/* Transaction Badge */
.transaction-badge {
  font-size: 0.75rem;
  font-weight: 500;
  border-radius: 20px; /* Rounded pill shape */
  padding: 4px 12px;
  text-transform: uppercase;
  color: inherit; /* Inherit text color */
}

/* Pending Badge */
.transaction-badge.bg-pending {
  background: #fef3c7; /* Light yellow */
  border: 1px solid #facc15; /* Yellow border */
}

/* Completed Badge */
.transaction-badge.bg-completed {
  background: #d1fae5; /* Light green */
  border: 1px solid #10b981; /* Green border */
}

/* Declined Badge */
.transaction-badge.bg-declined {
  background: #fee2e2; /* Light red */
  border: 1px solid #ef4444; /* Red border */
}

/* Reversed Badge */
.transaction-badge.bg-reversed {
  background: #e5e7eb; /* Light gray */
  border: 1px solid #9ca3af; /* Gray border */
}




.inside-modal{
  width:800px;
}


.fancybox__container{
--fancybox-bg: rgb(173 173 173 / 62%);
backdrop-filter: blur(5px);
}
.modal-backdrop{
  background: rgb(173 173 173 / 62%);
  backdrop-filter: blur(5px) !important;
  --bs-backdrop-opacity:none;
}
.modal-dialog{
  display: flex;
      align-items: center;
      min-height: calc(100% - var(--bs-modal-margin)* 2);
}
.modal-header{
  border:none;
}
.modal-content{
  border-radius:var(--mags-border-radius);
  border:0px;
  box-shadow:var(--mags-box-shadow);
}


/* Compact & Modern Product Card */
.product-card {
  background: var(--mags-white);
  color: var(--mags-text);
  border-radius: var(--mags-border-radius);
  padding: 16px;
  box-shadow: var(--mags-box-shadow);
  border: 1px solid var(--mags-light-border);
  transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 180px;
}

/* Hover Interaction */
.product-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 40px rgba(0, 0, 0, 0.07);
}

/* Product Title - Compact & Bold */
.product-card .card-title {
  font-size: 1.1rem;
  font-weight: 600;
  margin-bottom: 5px;
  color: var(--mags-text);
}

/* Vendor Name */
.product-card .vendor-name {
  font-size: 0.85rem;
  font-weight: 500;
  color: var(--mags-text-muted);
  margin-bottom: 4px;
}
.product-card .vendor-name a{
color:var(--mags-text-muted);
}


/* Product Price - Standout */
.product-card .price {
  font-size: 1.3rem;
  font-weight: bold;
  color: var(--mags-accent);
  margin-bottom: 8px;
}

/* Description - Subtle and Compact */
.product-card .description {
  font-size: 0.9rem;
  color: var(--mags-text-muted);
  opacity: 1;
  margin-bottom: 10px;
}

/* Buy Now Button - Compact & Stylish */
.product-card .buy-btn {
  background: var(--mags-accent);
  color: #fff;
  font-weight: 600;
  border-radius: 50px;
  padding: 8px 12px;
  font-size: 0.9rem;
  text-align: center;
  transition: background 0.2s ease-in-out, transform 0.1s ease-in-out;
}

.product-card .buy-btn:hover {
  background: var(--mags-green-hover);
  transform: scale(1.02);
}


/* Base Badge Style */
.transaction-type-badge {
display: inline-flex;
align-items: center;
gap: 5px;
padding: 4px 8px;
font-size: 0.75rem; /* Smaller font */
font-weight: 600;
border-radius: 20px;
color: #ffffff;
opacity: 0.85; /* Transparent effect */
text-transform: capitalize;
white-space: nowrap;
transition: opacity 0.2s ease-in-out, transform 0.1s ease-in-out;
}

/* Hover Effect - Makes badge more visible */
.transaction-type-badge:hover {
opacity: 1;
transform: scale(1.05);
}

/* Buy Points Badge */
.transaction-type-badge.buy-points {
background: #e8f5e9; /* Washed green */
color: #2e7d32; /* Darker green */
border: 1px solid #2e7d32; /* Green border */
}

/* Purchase Item Badge */
.transaction-type-badge.purchase-item {
background: #e3f2fd; /* Washed blue */
color: #1565c0; /* Darker blue */
border: 1px solid #1565c0; /* Blue border */
}

/* Withdraw Badge */
.transaction-type-badge.withdraw {
background: #ffebee; /* Washed red */
color: #b71c1c; /* Darker red */
border: 1px solid #b71c1c; /* Red border */
}

/* Transfer Badge */
.transaction-type-badge.transfer {
background: rgba(118, 200, 59, 0.12);
color: #3d7a1f;
border: 1px solid #76C83B;
}
/* Checkout Badge */
.transaction-type-badge.checkout {
background: #f3e8ff; /* Washed purple */
color: #7c3aed; /* Darker purple */
border: 1px solid #7c3aed; /* Purple border */
}

/* Unknown Transaction Badge */
.transaction-type-badge.unknown {
background: #eceff1; /* Washed slate blue */
color: #37474f; /* Darker slate blue */
border: 1px solid #37474f; /* Slate blue border */
}

/* FontAwesome Icons */
.transaction-type-badge i {
font-size: 0.8rem; /* Smaller icon */
}

/* General Price Styling */
.general-price {
font-size: 14 px; /* Slightly larger for better visibility */
font-weight:500;
color: var(--mags-primary);
display: inline-flex;
align-items: center;
gap: 6px;
transition: color 0.2s ease-in-out, transform 0.1s ease-in-out;
}

/* Currency Styling */
.general-price-container .currency {

color: #080000; /* Neutral grey for better contrast */
opacity: 0.9;
}

/* Discounted Price */
.general-price.discounted {
color: var(--mags-danger);
text-decoration: line-through;
font-weight: normal;
opacity: 0.75; /* Slightly faded to indicate it's not active */
}

/* Highlighted Sale Price */
.general-price.sale {
color: var(--mags-success);
font-weight: bold;
}

/* Hover Effect - Slight Scale and Color Change */
.general-price:hover {
color: var(--mags-primary);
transform: scale(1.05);
}

/* Price + Currency Container */
.general-price-container {
display: flex-inline;
align-items: center;
gap: 6px;
}

/* Animated Price Change */
@keyframes priceChange {
0% { transform: scale(1); opacity: 0.5; }
50% { transform: scale(1.1); opacity: 1; }
100% { transform: scale(1); opacity: 1; }
}

.general-price.animated {
animation: priceChange 0.3s ease-in-out;
}


.search-form{
margin-bottom:5px;
}


/* Dashboard Container */
.mags-dashboard {

}

/* Overview Cards - Smooth Hover Effect */
.mags-dashboard .card {
transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
}

.mags-dashboard .card:hover {
transform: translateY(-3px);
box-shadow: var(--mags-box-shadow);
}

.nav-link-balance{
color: var(--mags-primary);
font-weight:600;
}


/* Table Mags */
.table-mags{
color:var(--mags-text);
}
.table-mags th{
white-space:nowrap;
}
.select2-container{
z-index: 99999;
}

/* Select2 Bootstrap 5.3 Styling */
.select2-container .select2-selection--single {
height: calc(2.25rem + 2px); /* Match Bootstrap input height */
padding: 0.375rem 0.75rem; /* Match Bootstrap padding */
font-size: 1rem; /* Match Bootstrap font size */
line-height: 1.5; /* Match Bootstrap line height */
color: #495057; /* Match Bootstrap text color */
background-color: #fff; /* Match Bootstrap background color */
border: 1px solid #ced4da; /* Match Bootstrap border color */
border-radius: 0.375rem; /* Match Bootstrap border radius */
box-shadow: inset 0 1px 2px rgb(0 0 0 / 8%); /* Match Bootstrap box shadow */
}

.select2-container .select2-selection--single .select2-selection__rendered {
padding-left: 0; /* Remove extra padding */
color: #495057; /* Match Bootstrap text color */
}

.select2-container .select2-selection--single .select2-selection__arrow {
height: 100%; /* Match height */
right: 0.75rem; /* Match Bootstrap padding */
}

.select2-container--default .select2-selection--single:focus {
border-color: #86b7fe; /* Match Bootstrap focus border color */
outline: 0;
box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); /* Match Bootstrap focus shadow */
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
background-color: #0d6efd; /* Match Bootstrap primary color */
color: #fff; /* Match Bootstrap text color */
}

.select2-container--default .select2-selection--multiple {
padding: 0.375rem 0.75rem; /* Match Bootstrap padding */
border: 1px solid #ced4da; /* Match Bootstrap border color */
border-radius: 0.375rem; /* Match Bootstrap border radius */
background-color: #fff; /* Match Bootstrap background color */
}

.select2-container--default .select2-selection--multiple .select2-selection__choice {
background-color: #0d6efd; /* Match Bootstrap primary color */
border: none; /* Remove border */
color: #fff; /* Match Bootstrap text color */
padding: 0.25rem 0.5rem; /* Match Bootstrap badge padding */
border-radius: 0.375rem; /* Match Bootstrap border radius */
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
color: #fff; /* Match Bootstrap text color */
margin-right: 0.25rem; /* Match Bootstrap spacing */
}


.ticket-view {
background-color: #f9f9f9;
border: 1px solid #ddd;
border-radius: 8px;
padding: 20px;
margin-top: 20px;
}

.ticket-view .ticket-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 20px;
}

.ticket-view .ticket-info {
font-size: 16px;
}

.ticket-view .ticket-subject {
font-weight: bold;
font-size: 18px;
margin-bottom: 5px;
}

.ticket-view .ticket-participant {
color: #555;
}

.ticket-view .ticket-status .badge {
margin-right: 5px;
}

.ticket-view .ticket-messages {
margin-bottom: 20px;
}

.ticket-view .ticket-message {
margin-bottom: 15px;
padding: 10px;
border-radius: 5px;
}

.ticket-view .ticket-message.user {
background-color: #feeaff;
text-align: right;
}

.ticket-view .ticket-message.vendor {
background-color: #ffffff;
text-align: left;
}

.ticket-view .message-content {
font-size: 14px;
margin-bottom: 5px;
padding:4px;
}
.ticket-view .message-attachment a{
color: #007bff;
text-decoration: none;
}

.ticket-view .message-sender {
font-weight: bold;
font-size: 12px;
color: #333;
}

.ticket-view .message-date {
font-size: 12px;
color: #888;
}

.ticket-view .ticket-reply textarea {
resize: none;
}

.ticket-view .ticket-reply button {

}

.badge-count {
display: inline-block;
background-color: #dc3545; /* Red background */
color: #fff; /* White text */
font-size: 0.75rem; /* Small font size */
font-weight: bold;
padding: 4px 8px; /* Padding for size */
border-radius: 12px; /* Rounded shape */
min-width: 24px; /* Minimum width for alignment */
text-align: center; /* Center the text */
line-height: 1.2; /* Adjust line height */
vertical-align: middle;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Subtle shadow */
}

.vendor-circle{

}


.vendor-card {
border: 1px solid #ddd;
border-radius: 8px;
padding: 16px;
background-color: #fff;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
transition: transform 0.2s ease, box-shadow 0.2s ease;;
}

.vendor-card .vendor-image{
width:100%;
height:200px;
overflow:hidden;
display:block;
border-radius:8px;
background-position: center;;
background-size: cover;
background-repeat: no-repeat;
margin-bottom:10px;
}
.vendor-card .vendor-image img{
width:100%;
height:auto;
}

.vendor-card:hover {
transform: translateY(-5px);
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.vendor-card .vendor-name {
font-size: 18px;
font-weight: bold;
margin-bottom: 8px;
color: #333;
}

.vendor-card .vendor-description {
font-size: 14px;
color: #666;
margin-bottom: 16px;
}
.vendor-card .vendor-products {
font-size: 14px;
color: #666;
margin-bottom: 16px;
}

.fancybox__content>.f-button.is-close-btn{

color: #000; /* Light text for contrast */
border:none; /* Subtle border for visibility */
top:5px;
right:5px;
}

.code-red{
color:var(--mags-primary);
cursor:pointer;
}



.card-list {
display: flex;
flex-wrap: wrap;
gap: 20px;
margin-top: 20px;
}

.card-list .card-item {
background: #fff;
border: 1px solid #ddd;
border-radius: 8px;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
padding: 15px;
width: calc(33.333% - 20px);
box-sizing: border-box;
transition: transform 0.2s, box-shadow 0.2s;
}

.card-list .card-item:hover {
transform: translateY(-5px);
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

.card-list .card-item .card-details p {
margin: 5px 0;
font-size: 14px;
color: #333;
}

.card-list .card-item .card-actions {
margin-top: 10px;
display: flex;
justify-content: space-between;
}

.card-list .card-item .card-actions .btn {
font-size: 12px;
padding: 5px 10px;
border-radius: 4px;
}

.card-list .card-item .card-actions .btn-warning {
background-color: #ffc107;
color: #fff;
border: none;
}

.card-list .card-item .card-actions .btn-danger {
background-color: #dc3545;
color: #fff;
border: none;
}

.card-list .card-item .card-actions .btn:hover {
opacity: 0.9;
}

.profile-page{

}
.profile-page .profile-image{
width:100%;
height:200px;
overflow:hidden;
border-radius:8px;
background-position: center;;
background-size: cover;
background-repeat: no-repeat;
margin-bottom:10px;

}

.custom-filters input,
.custom-filters select {
font-size: 0.85rem;
}

.custom-filters .btn {
font-size: 0.75rem;
padding: 4px 10px;
}


.vendor-search-section{
  background: var(--mags-white);
  padding: 20px;
  border-radius: var(--mags-border-radius);
  box-shadow: var(--mags-box-shadow);
  border: 1px solid var(--mags-light-border);
  margin-bottom: 20px;
}



.front-theme .page-wrapper{

padding: 20px;
}
.page-design{
padding:20px;
}
.page-design .page-container {
max-width: 900px;
padding: 32px 24px;
border-radius: var(--mags-border-radius);
background: var(--mags-white);
margin: 32px auto 0 auto;
box-shadow: var(--mags-box-shadow);


}

.page-design .page-container .page-heading {
text-align:center;
}

.page-design .page-container .page-heading h1 {
font-size: 1.5rem;
font-weight: bold;
color: var(--mags-text);
margin: 0;
}

.page-design .page-container .page-content {

}


.card-container-table-mobile{


}

.card-container-table-mobile .card:nth-child(odd) {
background-color: #f9f9f9; /* Light gray for odd cards */
}

.card-container-table-mobile .card:nth-child(even) {
background-color: #ffffff; /* White for even cards */
}





.two-factor-page {
background-color: var(--mags-page-bg-fallback);
background-image: var(--mags-page-radial);
background-attachment: fixed;
padding: 60px 0px;
height: 100%;
}

.two-factor-page .logo {
padding: 20px 0px;
}
.two-factor-page .logo img {
max-width: 200px;
}
.two-factor-container {
max-width: 600px;
margin: 0 auto;
background: #fff;
padding: 20px;
border-radius: var(--mags-border-radius);
box-shadow: var(--mags-box-shadow);
}

.two-factor-container h1 {
font-size: 21px;
font-weight: 600;
margin-bottom: 20px;
color: var(--mags-text);
}

.two-factor-container p {
font-size: 14px;
font-weight: 500;
margin-bottom: 15px;
color: var(--mags-text-muted);
}


.form-label{
font-weight:600;
color:var(--mags-text);
}

.compliance-page {
padding: 40px 20px;
background: #f8f9fa;
}


.compliance-page .compliance-step-1 {
border-left: 4px solid #5a9bd5 !important;
background-color: #f0f7fc !important; /* Soft blue background */
}

.compliance-page .compliance-step-2 {
border-left: 4px solid #85c88a !important;
background-color: #f3faf4 !important; /* Soft green background */
}

.compliance-page .compliance-step-3 {
border-left: 4px solid #e6c76c !important;
background-color: #fdf9f0 !important; /* Soft yellow background */
}

.compliance-page .compliance-step-4 {
border-left: 4px solid #e28b8b !important;
background-color: #fcf2f2 !important; /* Soft red background */
}

.vendor-handler{

  font-weight: bold;
  color: var(--mags-primary);
  font-size: 1rem;
  text-decoration: none;
  cursor: pointer;
}


.vendor-handler:hover{
  text-decoration: underline;
  color: var(--mags-green-hover);
}


.checkout-page {
  max-width: 800px;
  background: var(--mags-white);
  border-radius: var(--mags-border-radius);
  padding: 32px 28px;
  box-shadow: var(--mags-box-shadow);
  margin: 48px auto 0 auto;
 
  transition: box-shadow 0.2s, transform 0.2s;
}
.checkout-page .alert-warning {
 background: linear-gradient(90deg, #fffbe6 60%, #fff3cd 100%);
border: 1px solid #ffe58f;
color: #856404;
border-radius: 6px;
font-size: 0.95rem;
padding: 8px 12px;
margin-bottom: 10px;
box-shadow: 0 1px 4px rgba(255, 243, 205, 0.10);

}
.checkout-page .checkout-logo {
height: 50px;
}

.checkout-page .total-amount {
font-size: 1.2rem;
color: var(--mags-text);
}

.checkout-page .card-title {
font-size: 1.5rem;
font-weight: bold;
color: var(--mags-text);
}

.checkout-page .card-text {
font-size: 1rem;
color: var(--mags-text-muted);
}

.checkout-page .btn i {
margin-right: 8px;
}


.alert-sm{
font-size: 0.85rem;
padding: 8px 12px;
border-radius: 4px;
}
.alert-xs{
font-size: 0.75rem;
padding: 6px 10px;
border-radius: 4px;
}


.rewards-balance-container {

padding: 20px;
border-radius: 5px;

margin-top: 20px;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.rewards-balance-container h3 {
margin: 0;
font-size: 24px;
color: #333;
}

.rewards-balance-container p {
margin: 5px 0 0;
font-size: 18px;
color: #666;
}

.rewards-balance-container h4 {
margin: 0;
font-size: 18px;
color: #007bff;
}

.rewards-positive {
color: #28a745;
}


/*Transaction Card */
.transaction-cards{
background:#f9fafa;
padding:20px;
border-radius:16px;
margin-bottom:10px;
}


.transaction-cards .transaction-card {
background-color: #ffffff;
border: 1px solid #f1f0f1;
border-left: 4px solid transparent;

padding: 20px;

transition: background 0.3s ease, border-left-color 0.3s ease;
box-shadow: var(--mags-box-shadow);
border-radius: var(--mags-border-radius);
margin-bottom:10px;
}

/* Stripe alternating cards */
.transaction-cards .transaction-card:nth-child(odd) {
/* background-color: #f9f9f9; */
}

/* Hover effect */
.transaction-cards .transaction-card:hover {
background-color: rgba(118, 200, 59, 0.06);
border-left-color: var(--mags-green);
box-shadow: 0 2px 12px rgba(118, 200, 59, 0.12);
}



.transaction-card .amount.credit {
color: #28a745;
}

.transaction-card .amount.debit {
color: #dc3545;
}

.transaction-card .reward-points {
font-size: 0.8rem;
color: #20c997;
font-weight: 600;
transition: opacity 0.2s ease;
}

.transaction-card .reward-points::before {
content: "🎉 ";
}

.transaction-card .code {
font-size: 0.75rem;
padding: 3px 8px;
border-radius: 6px;
background-color: #f1f3f5;
display: inline-block;
margin-top: 6px;
transition: background 0.3s ease;
}

.transaction-card .code:hover {
background-color: #dee2e6;
cursor: pointer;
}

.transaction-card .fee {
font-size: 0.75rem;
color: #dc3545;
font-weight: 500;
}

.transaction-card .date{
font-size:12px;
color: #6c757d;
font-weight: 500;
}

/* Recipient (e.g. To 2Way) */
.transaction-card .vendor-name {
font-size: 14px;
font-weight: 600;
color: #212529;
}

.transaction-card .vendor-name a {
color: #0d3efd; /* Bootstrap Primary */
font-weight: 600;
text-decoration: none;
}


.transaction-filters {
border: 1px solid #e9ecef;
border-left: 4px solid #0d6efd;
border-radius: 12px;
}


/* Magic Filters */
.magic-filters {
border: 1px solid #e9ecef;
border-left: 4px solid #0d6efd;
}

.magic-filters  .quick-filters{
padding-top:10px;
}
.magic-filters  .quick-filters .btn {
border-radius: 10px;
font-size: 0.8rem;
padding: 2px 12px;
margin-bottom:4px;
}
.magic-filters .quick-filters .title{
font-size: 12px;
font-weight: 600;
color: var(--mags-text);
margin-bottom: 10px;
}



.rewards-section .btn-pink {
background-color: var(--mags-primary);
color: #fff;
border: none;
}
.rewards-section .btn-pink:hover {
background-color: var(--mags-green-hover);
}

.rewards-section .card {
background-color: #ffffff;
border-radius: var(--mags-border-radius);
transition: all 0.3s ease;
}

.rewards-section .card:hover {
box-shadow: var(--mags-box-shadow);
}

.rewards-section .alert {
border-radius: 10px;
}

.prizes-section{

}
.prizes-section .prize-image {
width: 150px;
height: 200px;
background-size: cover;
background-position: center;
border-radius: 8px 8px 0 0;
overflow: hidden;
position: relative;
}

.prizes-section .prize-image .placeholder {
width: 100%;
height: 100%;
background-color: #f8f9fa;
display: flex;
align-items: center;
justify-content: center;
font-size: 2rem;
color: #adb5bd;
}
.reward-inside {
.reward-info {
  background-color: #f9f9f9;
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 16px;
  margin-bottom: 16px;

  .reward-header {
    display: flex;
    align-items: center;
    margin-bottom: 16px;

    .reward-image {
      width: 64px;
      height: 64px;
      background-size: cover;
      background-position: center;
      border-radius: 50%;
      margin-right: 16px;
    }

    .reward-title {
      font-size: 18px;
      font-weight: bold;
      margin: 0;
    }

    .description {
      font-size: 14px;
      color: #666;
      margin: 4px 0 0;
    }
  }

  .points-required,
  .stock {
    font-size: 14px;
    margin: 8px 0;

    span {
      font-weight: bold;
      color: #333;
    }
  }
}
}

.cursor-pointer {
cursor: pointer;
}

.transaction-option input{
appearance: none;
width: 20px;
height: 20px;
border: 2px solid #ced4da;
border-radius: 4px;
background-color: #ffffff;
transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out;
cursor: pointer;
display: inline-block;
position: relative;

/* Checkmark styling */
&:checked {
  background-color: #0d6efd;
  border-color: #0d6efd;
}

&:checked::after {
  content: '';
  position: absolute;
  top: 4px;
  left: 6px;
  width: 6px;
  height: 10px;
  border: solid #ffffff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

&:hover {
  border-color: #0d6efd;
}
}