/* Wallet - swiper + template styles */

/* Swiper container adjustments */
#walletSwiper { overflow: hidden; }
#walletSwiper .swiper-wrapper { align-items: stretch; }
#walletSwiper .swiper-slide { 
    width: 100% !important; 
    margin-left: 0 !important;
    margin-right: 0 !important;
}
/* Template width helper */
.width-300 { width: 300px; max-width: 100%; }

/* Deposit modal polish */
#depositModal .modal-content { border-radius: 1rem; }
#depositModal .input-group-text { background: var(--bs-light); }
#depositModal .form-select, #depositModal .form-control { box-shadow: none; }
#depositModal .badge { font-weight: 500; }

/*deposit summary tweaks */
#depositSummary { border-color: var(--bs-border-color); }
#depositSummary .row > [class^='col-'] h6 { font-weight: 600; }

/* Add Wallet modal polish */
#addWalletModal .modal-content { border-radius: 1rem; }
#addWalletModal .modal-header { border: 0; padding-bottom: .25rem; }
#addWalletModal .modal-title { font-weight: 700; }
#addWalletModal .form-select { border-radius: 999px; padding: .6rem 1rem; }
#addWalletModal .btn { border-radius: 999px; }
#addWalletModal .currency-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: .5rem; margin-top: .5rem; }
@media (min-width: 576px){ #addWalletModal .currency-grid { grid-template-columns: repeat(3,1fr); } }
#addWalletModal .currency-item { border: 1px solid var(--bs-border-color); border-radius: .75rem; padding: .75rem; cursor: pointer; background: #fff; display: flex; align-items: center; gap: .5rem; transition: border-color .15s ease, box-shadow .15s ease; }
#addWalletModal .currency-item .badge-dot { width: 28px; height: 28px; border-radius: 50%; background: var(--bs-primary-bg-subtle); color: var(--bs-primary); display: grid; place-items: center; font-weight: 700; }
#addWalletModal .currency-item.active { border-color: var(--bs-primary); box-shadow: 0 0 0 .15rem rgba(13,110,253,.15); }
/* Action row spacing and submit button style */
#addWalletModal .currency-preview + .d-flex.justify-content-between { margin-top: 1rem; }
#addWalletModal form button[type="submit"] {
  background-color: var(--bs-success);
  border-color: var(--bs-success);
  color: #fff;
}
#addWalletModal form button[type="submit"]:hover,
#addWalletModal form button[type="submit"]:focus {
  background-color: var(--bs-success);
  border-color: var(--bs-success);
  opacity: .95;
}

/* deposit page styles (moved from deposit.css) */
/* Card container */
.single-form-card {
    background: #fff;
    border: 1px solid var(--bs-border-color);
    border-radius: 1rem;
    box-shadow: 0 .35rem 1rem rgba(13,110,253,.06);
    overflow: hidden;
}
.single-form-card .card-title {
    padding: .9rem 1rem;
    border-bottom: 1px solid var(--bs-border-color);
    background: linear-gradient(180deg, rgba(13,110,253,.05), rgba(13,110,253,0));
}
.single-form-card .card-main {
    padding: 1rem 1rem 1.25rem 1rem;
}

/* Cardholder KYC dynamic fields */
#kyc-fields-dynamic {
    margin-top: 1rem;
}
#kyc-fields-dynamic .single-form-card {
    border: 1px solid var(--bs-border-color);
    border-radius: 1rem;
    box-shadow: 0 .25rem .85rem rgba(15, 23, 42, .08);
    background: #fff;
}
#kyc-fields-dynamic .single-form-card .card-header,
#kyc-fields-dynamic .single-form-card .card-title {
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--bs-border-color);
    background: linear-gradient(90deg, rgba(13,110,253,.08), rgba(13,110,253,0));
}
#kyc-fields-dynamic .single-form-card .card-body,
#kyc-fields-dynamic .single-form-card .card-main {
    padding: 1.25rem;
}
#kyc-fields-dynamic .single-form-card form .row {
    --bs-gutter-x: 1.25rem;
    --bs-gutter-y: 1rem;
}
#kyc-fields-dynamic .single-form-card form .form-control,
#kyc-fields-dynamic .single-form-card form .form-select {
    border-radius: .75rem;
    padding: .65rem 1rem;
    box-shadow: none;
}

/* Labels */
.single-select-inner.style-border label,
.single-input-inner.style-border label {
    font-weight: 600;
    color: var(--bs-body-color);
    margin-bottom: .35rem;
}

/* Selects */
.form-select.wallet-select,
.form-select.deposit-method-list {
    border-radius: 999px;
    padding: .6rem 1rem;
    border: 1px solid var(--bs-border-color);
    background-color: #fff;
    box-shadow: none;
}

/* Amount input group */
.input-group.input-group-right .form-control.deposit-amount {
    padding: .6rem 1rem;
    border-radius: 999px 0 0 999px !important;
    border: 1px solid var(--bs-border-color);
    border-right: 0;
    box-shadow: none;
}
.input-group.input-group-right .input-group-text.input-group-text-right {
    background: var(--bs-light);
    border: 1px solid var(--bs-border-color);
    border-left: 0;
    border-radius: 0 999px 999px 0 !important;
    padding: .6rem 1rem;
    min-width: 90px;
    justify-content: center;
}

/* Helper/info texts */
.span-consistent,
.deposit-method-info,
.deposit-amount-info {
    display: block;
    margin-top: .35rem;
    color: var(--bs-secondary-color);
    font-size: .875rem;
}

#manual-deposit-credentials {
    border: 1px dashed var(--bs-border-color);
    border-radius: .75rem;
    padding: 1rem 1.25rem;
    background: var(--bs-body-bg);
    margin-top: .75rem;
  }
  #depositCredentialsContainer:not(:empty) {
    border: 1px dashed var(--bs-border-color);
    border-radius: .75rem;
    padding: 1rem 1.25rem;
    background: var(--bs-body-bg);
    margin-top: .75rem;
  }
  /* Submit button */
  .submit-btn {
    border-radius: 999px;
    font-weight: 600;
  }

  /* Spacing Harmony */
  .single-select-inner.style-border + .single-select-inner.style-border,
  .single-select-inner.style-border + .single-input-inner.style-border,
  .single-input-inner.style-border + .single-select-inner.style-border,
  .single-input-inner.style-border + .single-input-inner.style-border {
    margin-top: .9rem;
  }

  /* Responsive tweaks */
  @media (min-width: 576px) {
    .single-form-card .card-main { padding: 1.25rem 1.25rem 1.5rem; }
  }

  /* deposit page polish */
  /* Optional polish: stronger heading weight and readable color */
  .single-form-card .card-title h6 { color: var(--bs-body-color) !important; font-weight: 700; letter-spacing: .2px; }
  .form-select.wallet-select:focus,
  .form-select.deposit-method-list:focus,
  .input-group.input-group-right .form-control.deposit-amount:focus {
    border-color: var(--bs-primary);
    outline: 0;
    box-shadow: 0 0 0 .15rem rgba(13,110,253,.15);
  }

  .single-input-inner.style-border textarea,
  .single-select-inner.style-border textarea {
    display: block;
    width: 100%;
    max-width: 100%;
    height: 96px;
    min-height: 96px;
    padding: .75rem 1rem;
    border: 1px solid var(--bs-border-color);
    border-radius: .75rem;
    background-color: #fff;
    color: var(--bs-body-color);
    box-shadow: none;
    line-height: 1.45;
    resize: vertical;
  }

  .single-input-inner.style-border textarea:focus,
  .single-select-inner.style-border textarea:focus {
    border-color: var(--bs-primary);
    outline: 0;
    box-shadow: 0 0 0 .15rem rgba(13,110,253,.15);
  }

  textarea#noteInput { height: 96px; min-height: 96px; }
  .submit-btn:hover { transform: translateY(-1px); box-shadow: 0 .35rem 1rem rgba(13,110,253,.15); }
  .submit-btn:active { transform: translateY(0); }
  .submit-btn:disabled { opacity: .7; }
  /* Ensure spacing after credentials block */
  #manual-deposit-credentials + .single-input-inner.style-border { margin-top: .9rem; }

  /* Feature Summary Statistics */
  .stats-wrapper {
    border-radius: 1rem;
    padding: 1rem;
    border: 1px solid var(--bs-border-color);
    background: rgba(13,110,253,.03);
  }
  .row.summery-row {
    --bs-gutter-x: 1.25rem;
    --bs-gutter-y: 1.25rem;
  }
  .stat-column {
    background: #fff;
    border: 1px solid var(--bs-border-color);
    border-radius: .75rem;
    padding: 1rem !important;
    /*box-shadow: 0 .35rem 1rem rgba(13,110,253,.06);*/
    transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
    min-height: 116px;
    height: 100%;
  }
  @media (min-width: 576px) { .stat-column { padding: 1.1rem; } }
  /*.stat-column:hover { transform: translateY(-2px); box-shadow: 0 .6rem 1.25rem rgba(13,110,253,.12); border-color: var(--bs-primary); }*/
  .stat-number { font-weight: 700; letter-spacing: .2px; line-height: 1.2; font-size: 1.35rem; margin: 0; }
  .stats-wrapper .icon-circle { width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center; }
  .stats-wrapper .icon-circle .icon { width: 22px; height: 22px; }
  .stat-label { margin: .35rem 0 0; color: var(--bs-secondary-color); font-size: .9rem; line-height: 1.25; }
  .stat-change { margin: .5rem 0 0; font-size: .875rem; }
  .stat-change span { display: inline-flex; align-items: center; gap: .25rem; padding: .2rem .5rem; border-radius: 999px; }
  .stat-change .positive { background: var(--bs-success-bg-subtle); color: var(--bs-success); }
  .stat-change .negative { background: var(--bs-danger-bg-subtle); color: var(--bs-danger); }
  .stat-change .info { background: var(--bs-info-bg-subtle); color: var(--bs-info); }
  .stat-change .icon { margin-right: .25rem; }
  /* Collapse arrow animation */
  button[aria-expanded="true"] .arrow-icon .icon { transform: rotate(180deg); }
  .arrow-icon .icon { transition: transform .2s ease; }

  /* Small devices: improve collapsed spacing */
  @media (max-width: 767.98px) {
    #statsCollapse { margin-top: .25rem; }
    .stat-column { padding: .875rem; }
  }

  /* Deposit layout: make form and summary equal width on xl+ (scoped) */
  @media (min-width: 1200px) {
    .row:has(> .col-xl-5 .summery-list) > .col-xl-7,
    .row:has(> .col-xl-5 .summery-list) > .col-xl-5 {
      flex: 0 0 50%;
      max-width: 50%;
    }
  }

  /* Deposit Summary UI polish */
  .summery-list { margin: 0; }
  .summery-list li { padding: .6rem 0; border-bottom: 1px dashed var(--bs-border-color); }
  .summery-list li:last-child { border-bottom: 0; }
  .summery-list li > span:first-child { color: var(--bs-secondary-color); }
  .summery-list li > span:last-child,
  .summery-list li > strong:last-child { font-weight: 700; }
  /* Highlight rows by value presence */
  .summery-list li:has(.summary-total),
  .summery-list li:has(.summary-payable) {
    background: var(--bs-primary-bg-subtle);
    border: 1px solid var(--bs-border-color);
    border-radius: .5rem;
    padding: .6rem .75rem;
    margin: .35rem 0;
  }
  .summery-list li:has(.summary-payable) > strong:last-child { color: var(--bs-primary); }

  /* Light Success button (History) */
  .btn-light-success {
    --bs-btn-color: var(--bs-success);
    --bs-btn-bg: var(--bs-success-bg-subtle);
    --bs-btn-border-color: transparent;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--bs-success);
    --bs-btn-hover-border-color: var(--bs-success);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--bs-success);
    --bs-btn-active-border-color: var(--bs-success);
    border-radius: 999px;
    font-weight: 600;
  }

  .btn-base {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--bs-primary);
    --bs-btn-border-color: var(--bs-primary);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--bs-primary);
    --bs-btn-hover-border-color: var(--bs-primary);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--bs-primary);
    --bs-btn-active-border-color: var(--bs-primary);
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
    color: #fff;
  }

  .btn-base:hover,
  .btn-base:focus {
    opacity: .95;
  }

  .btn-base:focus {
    box-shadow: 0 0 0 .15rem rgba(var(--bs-primary-rgb), .25);
  }

  .btn-light-primary {
    --bs-btn-color: var(--bs-primary);
    --bs-btn-bg: var(--bs-primary-bg-subtle);
    --bs-btn-border-color: transparent;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--bs-primary);
    --bs-btn-hover-border-color: var(--bs-primary);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--bs-primary);
    --bs-btn-active-border-color: var(--bs-primary);
    border-radius: 999px;
    font-weight: 600;
  }
