/* ========== Brand Palette ========== */
:root{
  /* HEX helpers */
  --brand-blue-hex: #1E5F8C;   /* Azul Principal */
  --brand-orange-hex: #F8A524; /* Laranja de Destaque */
  --brand-gray-hex: #EAEAEA;   /* Cinza Claro */

  /* For rgb()/hsl() usages already present */
  --main: 30, 95, 140;           /* rgb for #1E5F8C */
  --base: 204 65% 33%;           /* hsl for #1E5F8C */
  --border-color: var(--brand-gray-hex);
}

/* Copy Animation */
.base-color{
  color: var(--brand-blue-hex) !important;
}

.copyInput{
  display:inline-block; line-height:50px; position:absolute; top:0; right:0;
  width:40px; text-align:center; font-size:14px; cursor:pointer; transition:all .3s;
}

.copied::after{
  position:absolute; top:8px; right:12%; width:100px; display:block; content:"COPIED";
  font-size:1em; padding:5px 5px; color:#fff; background-color: var(--brand-orange-hex);
  border-radius:3px; opacity:0; will-change:opacity, transform; animation:showcopied 1.5s ease;
}

@keyframes showcopied{
  0%{opacity:0; transform:translateX(100%);}
  50%{opacity:.7; transform:translateX(40%);}
  70%{opacity:1; transform:translateX(0);}
  100%{opacity:0;}
}

/* Cookies Card */
.cookies-card{
  width:375px; padding:25px; color:#1E2337; position:fixed; bottom:30px; left:30px; z-index:999999;
  transition:all .5s; background:#fff; border-radius:20px;
  box-shadow:0 0 18px rgb(0 0 0 / 12%);
  border:1px solid var(--brand-gray-hex);
}
.cookies-card__header{ display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; font-size:20px; font-weight:500; margin-bottom:12px; }
.cookies-card__title{ font-size:inherit; }

.cookies-card__close{
  font-size:40px; line-height:1; cursor:pointer; color:#6b6b6b; transition:all .2s;
}
.cookies-card__close:hover{ color:#000; }

.cookies-card__icon{
  width:55px; height:55px; border-radius:50%;
  background-color: var(--brand-blue-hex); color:#fff; font-size:32px;
  display:inline-flex; justify-content:center; align-items:center;
}

.cookies-card__content{ font-size:13px; margin-bottom:24px; }

.cookies-card__footer{
  display:flex; align-items:center; justify-content:flex-end; gap:10px;
}

.cookies-card__btn-outline{
  text-decoration:none; padding:12px 20px;
  color: var(--brand-blue-hex);
  border:1px solid var(--brand-blue-hex);
  border-radius:999px; transition:all .2s;
}
.cookies-card__btn-outline:hover{
  background-color: rgba(30,95,140,.08);
}

.cookies-card__btn{
  color:#fff !important; text-decoration:none; padding:8px 35px; margin:3px 5px; display:inline-block;
  border-radius:999px; background-color: hsl(var(--base)); transition:all .2s;
  box-shadow: 0 6px 14px rgba(30,95,140,.22);
}
.cookies-card__btn:hover{ background-color: hsl(var(--base)/0.85); }

/* Mobile */
@media (max-width:767px){
  .cookies-card{ width:calc(100% - 20px); left:10px; bottom:0; font-size:14px; padding:15px; }
}
.cookies-card.hide{ bottom:-500px !important; }

.radius--10px{ border-radius:10px; }

/* Input popup tooltip */
.hover-input-popup{ position:relative; }
.input-popup{ display:none; }
.hover-input-popup .input-popup{
  display:block; position:absolute; bottom:130%; left:50%; width:280px;
  background-color:#1a1a1a; color:#fff; padding:20px; border-radius:5px; transform:translateX(-50%);
  transition:all .3s;
}
.input-popup::after{
  position:absolute; content:''; bottom:-19px; left:50%; margin-left:-5px; border-width:10px;
  border-style:solid; border-color:transparent transparent #1a1a1a transparent; transform:rotate(180deg);
}
.input-popup p{ padding-left:20px; position:relative; }
.input-popup p.error{ text-decoration:line-through; }
.input-popup p.error::before{ content:"\f057"; color:#ea5455; }
.input-popup p.success::before{ content:"\f058"; color:#28c76f; }

/* Filters */
.show-filter{ display:none; }
@media(max-width:767px){
  .responsive-filter-card{ display:none; transition:none; }
  .show-filter{ display:block; }
}

/* ===== Select2 - unified with palette ===== */
.select2-dropdown{
  border:0 !important; margin-top:8px !important; border-radius:5px !important;
  box-shadow:0 3px 9px rgba(0,0,0,0.05), 6px 4px 19px rgba(30,95,140,0.15);
}
.select2-search--dropdown{ padding:10px 10px !important; border-color:#ced4da !important; }
.select2-container--default .select2-search--dropdown .select2-search__field{
  border-color:#ced4da !important; padding:10px 20px;
}
.select2-results__option.select2-results__option--selected,
.select2-results__option--selectable,
.select2-container--default .select2-results__option--disabled{
  padding:12px 14px !important; border-bottom:1px solid var(--brand-gray-hex);
}
.select2-results__option.select2-results__message{ text-align:center !important; padding:12px 14px !important; }
.select2-container--default .select2-results>.select2-results__options::-webkit-scrollbar{ width:8px; border-radius:5px; }
.select2-container--default .select2-results>.select2-results__options::-webkit-scrollbar-track{ background:#f1f1f1; border-radius:5px; }
.select2-container--default .select2-results>.select2-results__options::-webkit-scrollbar-thumb{ background:#ddd; }
.select2-container--default .select2-results>.select2-results__options::-webkit-scrollbar-thumb:hover{ background:#d0d0d0; }

.select2-container--default .select2-selection--single .select2-selection__arrow b{ display:none; }
.select2-container--default .select2-selection--single .select2-selection__arrow:after{
  position:absolute; right:10px; top:0; content:"\f107"; font-family:"Line Awesome Free"; font-weight:900; transition:.3s;
}
.select2-container--default .select2-selection--single{
  border-color:#ced4da !important; border-width:2px !important; border-radius:.375rem !important;
  padding:.375rem .75rem !important; height:100% !important;
}
.select2-container--default .select2-selection--single .select2-selection__arrow{ top:8px !important; }
.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow:after{ transform:rotate(-180deg); }

.select2-results__option:last-child{ border-bottom-left-radius:5px; border-bottom-right-radius:5px; }
.select2-results__option:first-child{ border-top-left-radius:5px; border-top-right-radius:5px; }
.select2-results__option.select2-results__option--selected,
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{
  background-color:#f1f1f1 !important; color:#000 !important;
}
.select2-container--default .select2-search--dropdown .select2-search__field:focus{
  border-color: rgb(var(--main)) !important;
  box-shadow: 0 0 25px rgba(30,95,140,0.18) !important;
  outline:0 !important;
}
.select2-container--open .select2-selection.select2-selection--single,
.select2-container--open .select2-selection.select2-selection--multiple{
  border-color: hsl(var(--base)) !important; border-radius:.375rem !important;
}

/* Gateway / Payment list using palette */
.gateway-card{ padding:15px; }
.payment-card-title{
  padding:13px 25px; text-align:center; background-color: rgb(var(--main));
  border-radius:5px; border:0; margin-bottom:0px; color:#fff;
}
.payment-system-list{
  --thumb-width:100px; --thumb-height:40px; --radio-size:12px;
  --border-color: var(--brand-gray-hex);
  --hover-border-color: rgb(var(--main));
  background-color:#fff; border-radius:5px; height:100%;
}
.payment-system-list.is-scrollable{ max-height:min(388px, 70vh); overflow-x:auto; padding-block:4px; }
.payment-system-list.is-scrollable::-webkit-scrollbar{ width:5px; }
.payment-system-list.is-scrollable::-webkit-scrollbar-thumb{ background-color: rgb(var(--main)); border-radius:10px; }

.payment-item{
  width:100%; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap;
  padding:10px 18px; border:1px solid #fff; border-top-color: var(--border-color);
  transition:all .3s; border-left:3px solid transparent;
}
.payment-item:first-child{ border-top-color:#fff; border-radius:5px 5px 0 0; }
.payment-item:has(.payment-item__radio:checked){
  border-left:3px solid var(--hover-border-color); border-radius:0px;
}
.payment-item__check{ border:3px solid transparent; }
.payment-item:has(.payment-item__radio:checked) .payment-item__check{ border:3px solid rgb(var(--main)); }
.payment-item__info{ display:flex; align-items:center; flex-wrap:wrap; max-width:calc(100% - var(--thumb-width)); }
.payment-item__check{
  width:var(--radio-size); height:var(--radio-size); border:1px solid rgb(var(--main));
  display:inline-block; border-radius:100%;
}
.payment-item__name{ padding-left:10px; width:calc(100% - var(--radio-size)); transition:all .3s; }
.payment-item__thumb{ width:var(--thumb-width); height:var(--thumb-height); text-align:right; padding-left:10px; }
.payment-item__thumb img{ max-width:var(--thumb-width); max-height:var(--thumb-height); object-fit:cover; }

.deposit-info{ display:flex; align-items:center; flex-wrap:wrap; justify-content:space-between; }
.deposit-info__title{ max-width:50%; margin-bottom:0px; text-align:left; }
.deposit-info__input{ max-width:50%; text-align:right; width:100%; }
.deposit-info__input-select{ border:1px solid var(--border-color); width:100%; border-radius:5px; padding-block:6px; }
.deposit-info__input-group{ border:1px solid var(--border-color); border-radius:5px; }
.deposit-info__input-group .form--control{ padding:5px; border:0; height:35px; text-align:right; }
.deposit-info__input-group .form--control:focus{ box-shadow:unset; }
.info-text .text, .deposit-info__input .text{ font-size:14px; }
.deposit-info__title .text.has-icon{ display:flex; align-items:center; gap:5px; }
.total-amount{ border-top:1px solid var(--border-color); }
.total-amount .deposit-info__title{ font-weight:600; }
.payment-item__btn{
  border:0; border-block:1px solid var(--border-color); border-bottom:0; background:#fff; width:100%;
  display:flex; align-items:center; justify-content:space-between; padding:13px 15px; font-weight:500;
}

/* Buttons & loaders */
button .spinner-border{ --bs-spinner-width:1.5rem; --bs-spinner-height:1.5rem; }

/* Extra: lighten default light grays to your brand gray */
.select2-container--default .select2-selection--multiple{ border-color: rgba(0,0,0,0.1) !important; }
.button-loader .spinner-border{ --bs-spinner-width:1rem; --bs-spinner-height:1rem; }