@keyframes blinker { 50% { opacity: .45; } }
@keyframes blink { 0%,100% { background:#ba7a20; } 50% { background:#ff7600; } }

.blink_me { animation: blinker 1s linear infinite; }
.div-center { display:flex; justify-content:center; font-size:15px; }
.message{
  width:min(100%, 760px);
  padding:18px 24px;
  border-radius:6px;
  text-align:center;
  color:#4b3717;
  background:
    radial-gradient(circle at top, rgba(212, 160, 72, .12), transparent 44%),
    linear-gradient(145deg, rgba(255, 248, 236, .96), rgba(242, 230, 206, .96));
  border:1px solid rgba(138, 109, 59, .22);
  box-shadow:0 18px 34px rgba(0,0,0,.12);
}

.payment-container,
.trade-coin-container{
  position:relative;
  overflow:visible;
  max-width:880px;
  margin:auto;
  padding:42px clamp(20px, 4vw, 44px);
  border-radius:4px;
  color:#3f2f12;
  border:1px solid rgba(138, 109, 59, .26);
  background:
    radial-gradient(circle at top left, rgba(255,255,255,.7), transparent 34%),
    radial-gradient(circle at top right, rgba(212, 160, 72, .10), transparent 28%),
    linear-gradient(145deg, rgba(251, 243, 226, .97) 0%, rgba(245, 233, 210, .98) 48%, rgba(239, 225, 197, .98) 100%);
  box-shadow:
    0 20px 40px rgba(0, 0, 0, .14),
    inset 0 1px 0 rgba(255,255,255,.45);
}

.payment-container--centered { text-align:center; }

.payment-container--selection{
  max-width:860px;
  padding:22px 22px 20px;
  border:2px solid #c89a3d;
  box-shadow:0 10px 24px rgba(0,0,0,.10);
}

.payment-container--detail{
  max-width:860px;
  padding:24px 24px 22px;
  border:2px solid #c89a3d;
  box-shadow:0 10px 24px rgba(0,0,0,.10);
}

.payment-container--detail::before{
  display:none;
}

.payment-container--detail .header-title{
  margin-bottom:10px;
  font-size:clamp(22px, 3vw, 30px);
  letter-spacing:1px;
}

.payment-container--detail .panel-copy{
  max-width:700px;
  margin:0 auto 12px;
  font-size:12px;
  line-height:1.5;
}

.payment-container--detail .table-centered{
  margin-top:10px;
}

.payment-container--detail .form-actions{
  margin-top:14px;
}

.flow-meta-row{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px;
  margin:0 0 14px;
}

.detail-card{
  padding:16px 16px 14px;
  border:1px solid rgba(138, 109, 59, .22);
  background:linear-gradient(180deg, rgba(231, 219, 194, .84), rgba(221, 206, 176, .88));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.35);
}

.detail-card-title{
  margin:0 0 14px;
  font-size:12px;
  font-weight:700;
  letter-spacing:2px;
  text-transform:uppercase;
  color:#8b6a2b;
}

.detail-summary-grid{
  display:grid;
  gap:10px;
}

.detail-summary-row{
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto;
  gap:16px;
  align-items:center;
  padding:11px 12px;
  border:1px solid rgba(138, 109, 59, .12);
  background:rgba(255, 249, 238, .36);
}

.detail-summary-row span{
  font-size:12px;
  letter-spacing:1px;
  color:#7a6642;
}

.detail-summary-row strong{
  font-size:15px;
  font-weight:700;
  color:#5a2800;
  text-align:right;
}

.detail-summary-row strong.detail-highlight{
  color:#2d8a45;
}

.checkout-recap{
  margin-top:12px;
  padding:18px 18px 16px;
  border:1px solid rgba(138, 109, 59, .22);
  background:linear-gradient(180deg, rgba(228, 215, 188, .82), rgba(219, 204, 173, .86));
}

.checkout-recap-grid{
  display:grid;
  grid-template-columns:minmax(0, 1.2fr) minmax(0, .9fr);
  gap:14px;
}

.checkout-recap-primary,
.checkout-recap-stack,
.checkout-recap-note{
  border:1px solid rgba(138, 109, 59, .14);
  background:rgba(255, 249, 238, .34);
}

.checkout-recap-primary{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:148px;
  padding:20px 22px;
}

.checkout-recap-kicker{
  display:block;
  margin-bottom:10px;
  font-size:11px;
  font-weight:700;
  letter-spacing:2px;
  text-transform:uppercase;
  color:#8b6a2b;
}

.checkout-recap-amount{
  display:block;
  font-size:42px;
  line-height:1;
  font-weight:700;
  color:#5a2800;
}

.checkout-recap-copy{
  margin-top:10px;
  font-size:13px;
  line-height:1.55;
  color:#73613e;
}

.checkout-recap-stack{
  display:grid;
  gap:10px;
  padding:14px;
}

.checkout-recap-stat{
  padding:12px 14px;
  border:1px solid rgba(138, 109, 59, .12);
  background:rgba(255, 249, 238, .42);
}

.checkout-recap-stat span{
  display:block;
  margin-bottom:7px;
  font-size:11px;
  font-weight:700;
  letter-spacing:2px;
  text-transform:uppercase;
  color:#8b6a2b;
}

.checkout-recap-stat strong{
  display:block;
  font-size:24px;
  line-height:1.1;
  color:#5a2800;
}

.checkout-recap-stat strong.detail-highlight{
  color:#2d8a45;
}

.checkout-recap-note{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:14px;
  padding:12px 14px;
}

.checkout-recap-note span{
  display:block;
  font-size:11px;
  font-weight:700;
  letter-spacing:2px;
  text-transform:uppercase;
  color:#8b6a2b;
}

.checkout-recap-note strong{
  font-size:15px;
  color:#5a2800;
}

.detail-form-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:14px;
  margin-top:12px;
}

.detail-input-shell{
  margin-top:12px;
  padding:18px 18px 16px;
  border:1px solid rgba(138, 109, 59, .22);
  background:linear-gradient(180deg, rgba(228, 215, 188, .80), rgba(219, 204, 173, .84));
}

.detail-topline{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  padding-bottom:12px;
  margin-bottom:14px;
  border-bottom:1px solid rgba(138, 109, 59, .16);
}

.detail-account{
  min-width:0;
}

.detail-account span{
  display:block;
  margin-bottom:6px;
  font-size:11px;
  letter-spacing:2px;
  text-transform:uppercase;
  color:#8b6a2b;
}

.detail-account strong{
  display:block;
  font-size:30px;
  line-height:1;
  color:#5a2800;
  word-break:break-word;
}

.detail-account small{
  display:block;
  margin-top:6px;
  font-size:12px;
  color:#7d6a47;
}

.detail-coupon-action{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:8px;
  text-align:right;
}

.detail-coupon-action span{
  font-size:11px;
  letter-spacing:2px;
  text-transform:uppercase;
  color:#8b6a2b;
}

.detail-coupon-action small{
  max-width:210px;
  font-size:12px;
  line-height:1.45;
  color:#7d6a47;
}

.coupon-auto-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:4px;
}

.coupon-auto-status{
  margin-top:12px;
  padding:12px 14px;
  border:1px solid rgba(138, 109, 59, .16);
  background:rgba(255, 249, 238, .34);
  font-size:12px;
  font-weight:600;
  line-height:1.55;
  color:#6e5a36;
}

.coupon-auto-status strong{
  color:#205a31;
}

.coupon-auto-status.is-applied{
  border-color:rgba(67, 146, 89, .40);
  border-left:4px solid #3b9352;
  background:linear-gradient(180deg, rgba(67, 146, 89, .14), rgba(67, 146, 89, .09));
  color:#2d5d39;
}

.coupon-auto-status.is-warning{
  border-color:rgba(201, 145, 55, .42);
  border-left:4px solid #c99137;
  background:linear-gradient(180deg, rgba(201, 145, 55, .14), rgba(201, 145, 55, .08));
  color:#7a5315;
}

.coupon-auto-status.is-empty{
  border-color:rgba(138, 109, 59, .12);
}

.coupon-summary{
  margin-top:12px;
}

.fx-estimate{
  position:relative;
  z-index:3;
  margin-top:12px;
  padding:12px 14px;
  border:1px solid rgba(47, 104, 186, .18);
  background:linear-gradient(180deg, rgba(47, 104, 186, .08), rgba(47, 104, 186, .04));
}

.fx-estimate-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:6px;
}

.fx-estimate span{
  display:block;
  font-size:11px;
  letter-spacing:2px;
  text-transform:uppercase;
  color:#5e76a6;
}

.fx-estimate strong{
  display:block;
  font-size:20px;
  line-height:1.1;
  color:#1f5ea8;
}

.fx-estimate small{
  display:block;
  margin-top:6px;
  font-size:11px;
  line-height:1.45;
  color:#687591;
}

.fx-currency-select{
  min-width:88px;
  padding:6px 8px;
  border:1px solid rgba(47, 104, 186, .20);
  background:rgba(255,255,255,.72);
  color:#365a95;
  font-size:11px;
  font-weight:700;
  letter-spacing:1px;
  text-transform:uppercase;
}

.detail-field{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.detail-note{
  font-size:12px;
  line-height:1.5;
  color:#7d6a47;
}

.detail-inline-input{
  display:flex;
  align-items:center;
  gap:10px;
  width:100%;
  padding:12px 14px;
  border:1px solid rgba(138, 109, 59, .32);
  background:rgba(255, 249, 239, .88);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65);
}

.detail-inline-input:focus-within{
  border-color:#d4a048;
  box-shadow:0 0 0 3px rgba(212, 160, 72, .10);
}

.detail-inline-input .field{
  width:100%;
  padding:0;
  border:none;
  background:transparent;
  box-shadow:none;
}

.detail-inline-input .field:focus{
  box-shadow:none;
}

.detail-prefix{
  font-size:16px;
  font-weight:700;
  color:#8b6a2b;
}

.detail-mini-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:10px;
}

.detail-overview{
  display:grid;
  grid-template-columns:minmax(0, 1.2fr) minmax(180px, .8fr) auto;
  gap:12px;
  margin:0 auto 12px;
}

.detail-overview-card{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:84px;
}

.detail-overview-card span{
  display:block;
  margin-bottom:6px;
  font-size:11px;
  letter-spacing:2px;
  text-transform:uppercase;
  color:#8b6a2b;
}

.detail-overview-card strong{
  display:block;
  font-size:24px;
  line-height:1.1;
  color:#5a2800;
  word-break:break-word;
}

.detail-overview-card small{
  display:block;
  margin-top:6px;
  font-size:12px;
  line-height:1.45;
  color:#7d6a47;
}

.detail-overview-card--action{
  align-items:flex-start;
  min-width:180px;
}

.detail-overview-card--action .styled-button{
  min-width:0;
}

.detail-card--soft{
  background:rgba(255, 249, 238, .30);
}

.styled-button--small{
  min-width:0;
  padding:9px 14px;
  font-size:11px;
}

.detail-status{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  max-width:540px;
  margin:0 auto 18px;
  padding:14px 16px;
  border:1px solid rgba(138, 109, 59, .16);
  background:rgba(255,255,255,.34);
  text-align:left;
}

.detail-status-icon{
  width:42px;
  height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:22px;
  color:#8b6a2b;
  background:rgba(212, 160, 72, .12);
  border:1px solid rgba(212, 160, 72, .25);
}

.detail-status-copy strong{
  display:block;
  font-size:16px;
  color:#5a2800;
}

.detail-status-copy span{
  display:block;
  margin-top:3px;
  font-size:12px;
  line-height:1.5;
  color:#7d6a47;
}

.detail-keyfacts{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:12px;
  margin-top:14px;
}

.detail-keyfact{
  padding:12px 14px;
  border:1px solid rgba(138, 109, 59, .14);
  background:rgba(255,255,255,.30);
  text-align:left;
}

.detail-keyfact span{
  display:block;
  margin-bottom:4px;
  font-size:11px;
  letter-spacing:2px;
  text-transform:uppercase;
  color:#8b6a2b;
}

.detail-keyfact strong{
  display:block;
  font-size:16px;
  color:#5a2800;
}

.payment-facts{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:12px;
  max-width:720px;
  margin:0 auto 16px;
}

.payment-fact{
  padding:12px 14px;
  border:1px solid rgba(138, 109, 59, .16);
  background:rgba(255,255,255,.30);
  text-align:left;
}

.payment-fact span{
  display:block;
  margin-bottom:5px;
  font-size:11px;
  letter-spacing:2px;
  text-transform:uppercase;
  color:#8b6a2b;
}

.payment-fact strong{
  display:block;
  font-size:22px;
  line-height:1.1;
  color:#5a2800;
}

.payment-fact strong.payment-fact-highlight{
  color:#2d8a45;
}

.payment-container--selection::before{
  display:none;
}

.selection-steps{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  margin:4px 0 16px;
}

.selection-step{
  width:34px;
  height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid #c3ae87;
  background:#d9cab0;
  color:#7b6640;
  font-weight:700;
  font-size:14px;
}

.selection-step.is-done{
  background:#2fb05f;
  border-color:#2fb05f;
  color:#fff;
}

.selection-step.is-active{
  background:#cda647;
  border-color:#cda647;
  color:#fff;
}

.selection-step-line{
  width:54px;
  height:2px;
  background:#c3ae87;
}

.selection-step-line.is-done{
  background:#2fb05f;
}

.payment-container--selection .payment-eyebrow{
  margin-bottom:4px;
}

.payment-container--selection .header-title{
  margin-bottom:8px;
  font-size:clamp(22px, 3vw, 30px);
  letter-spacing:1px;
}

.payment-container--selection .panel-copy{
  max-width:700px;
  margin:0 auto 12px;
  font-size:12px;
  line-height:1.45;
}

.payment-container--selection .selector{
  margin:0;
  padding:0;
  max-width:none;
  background:transparent;
  border:none;
  box-shadow:none;
}

.selection-region-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:6px 10px;
  border:1px solid rgba(201, 154, 61, .35);
  background:rgba(201, 154, 61, .10);
  color:#8b6a2b;
  font-size:10px;
  letter-spacing:2px;
  text-transform:uppercase;
}

.selection-region-pill--paypal{
  border-color:rgba(47, 104, 186, .28);
  background:rgba(47, 104, 186, .08);
  color:#1f5ea8;
}

.payment-brand-icon{
  display:inline-block;
  vertical-align:middle;
  line-height:1;
}

.flow-method-icon.payment-brand-icon--paypal{
  font-size:16px;
}

.selection-region-corner{
  position:absolute;
  top:18px;
  right:18px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:5px 9px;
  border:1px solid rgba(201, 154, 61, .32);
  background:rgba(201, 154, 61, .09);
  color:#8b6a2b;
  font-size:10px;
  letter-spacing:2px;
  text-transform:uppercase;
}

.selection-toolbar{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin:0 0 12px;
}

.selection-toolbar-copy{
  flex:1 1 auto;
  text-align:center;
}

.selection-toolbar-copy .selector-note{
  margin-top:6px;
}

.selection-toolbar-control{
  flex:0 0 auto;
  text-align:right;
}

.selection-toolbar-control .selector label{
  margin-bottom:6px;
  text-align:center;
}

.payment-container--selection .method-cards{
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:14px;
  margin:8px 0 8px;
}

.payment-container--selection .method-cards[data-visible-count="1"]{
  grid-template-columns:minmax(0, 360px);
  justify-content:center;
}

.payment-container--selection .method-cards[data-visible-count="2"]{
  grid-template-columns:repeat(2, minmax(0, 1fr));
}

.payment-container--selection .paymentOption{
  min-height:146px;
  box-shadow:none;
}

.payment-container--selection .card-body{
  gap:6px;
  padding:14px 16px;
}

.payment-container--selection .method-icon{
  width:42px;
  height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:36px;
  line-height:1;
  background:transparent;
  border:none;
  filter:none;
  flex:0 0 42px;
}

.payment-container--selection .payment-brand-icon.method-icon{
  width:42px;
  height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:32px;
  flex:0 0 42px;
}

.method-heading{
  display:flex;
  align-items:center;
  gap:12px;
  min-height:42px;
}

.method-heading label{
  margin:0 !important;
  line-height:1.2;
}

.paymentOption[data-accent="pix"]{
  border-color:rgba(43, 164, 151, .28);
}

.paymentOption[data-accent="pix"] .method-icon{
  color:#28a79a;
}

.paymentOption[data-accent="pix"] .card-body label{
  color:#0f7c72;
}

.paymentOption[data-accent="stripe"]{
  border-color:rgba(99, 91, 255, .28);
}

.paymentOption[data-accent="stripe"] .method-icon{
  color:#635bff;
}

.paymentOption[data-accent="stripe"] .card-body label{
  color:#4942d4;
}

.paymentOption[data-accent="picpay"]{
  border-color:rgba(37, 176, 104, .28);
}

.paymentOption[data-accent="picpay"] .method-icon{
  color:#21a35f;
}

.paymentOption[data-accent="picpay"] .card-body label{
  color:#1f8d54;
}

.paymentOption[data-accent="provider"]{
  border-color:rgba(201, 145, 55, .28);
}

.paymentOption[data-accent="provider"] .method-icon{
  color:#be7f1f;
}

.paymentOption[data-accent="provider"] .card-body label{
  color:#9a6a1f;
}

.paymentOption[data-accent="paypal"]{
  border-color:rgba(47, 104, 186, .28);
}

.paymentOption[data-accent="paypal"] .method-icon{
  color:#1f5ea8;
}

.paymentOption[data-accent="paypal"] .card-body label{
  color:#1f5ea8;
}

.paymentOption[data-accent="coins"]{
  border-color:rgba(177, 134, 38, .28);
}

.paymentOption[data-accent="coins"] .method-icon{
  color:#a9801d;
}

.paymentOption[data-accent="coins"] .card-body label{
  color:#8a6514;
}

.payment-container--selection .method-badge{
  padding:0;
  font-size:10px;
}

.payment-container--selection .card-body label{
  font-size:16px;
}

.payment-container--selection .method-description{
  font-size:11px;
  line-height:1.4;
}

.payment-container--selection .method-check{
  font-size:10px;
}

.payment-container--selection .form-actions{
  margin-top:12px;
}

.method-subtitle{
  margin-top:-2px;
  font-size:11px;
  color:#8c7752;
}

.payment-eyebrow{
  margin-bottom:10px;
  text-align:center;
  text-transform:uppercase;
  letter-spacing:3px;
  font-size:11px;
  color:#b98731;
}

.panel-copy{
  max-width:620px;
  margin:0 auto 26px;
  text-align:center;
  font-size:15px;
  line-height:1.7;
  color:#6a5632;
}

.header-title{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  flex-wrap:wrap;
  margin:0 0 18px;
  font-size:clamp(30px, 4vw, 42px);
  line-height:1.1;
  text-align:center;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:3px;
  color:#5a2800;
  text-shadow:0 1px 0 rgba(255,255,255,.6);
  word-break:break-word;
}

.header-title img{
  width:48px;
  height:48px;
  object-fit:contain;
  filter:drop-shadow(0 8px 10px rgba(0,0,0,.12));
}

.selector{
  margin:0 auto 28px;
  padding:18px 22px;
  text-align:center;
  color:#5b4523;
  background:rgba(2, 2, 2, .04);
  border:1px solid rgba(101, 74, 28, .18);
  border-radius:4px;
  max-width:420px;
}

.selector label{
  display:block;
  margin-bottom:12px;
  text-transform:uppercase;
  letter-spacing:2px;
  font-size:12px;
  color:#8b6a2b;
}

.selector-note{
  margin-top:8px;
  font-size:12px;
  color:#7d6a47;
}

.custom-select{
  width:min(100%, 320px);
  padding:14px 18px;
  border-radius:3px;
  border:1px solid rgba(138, 109, 59, .36);
  background:linear-gradient(180deg, rgba(255, 250, 241, .96), rgba(246, 236, 215, .96));
  color:#4d3514;
  font-size:16px;
  appearance:none;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65), 0 10px 18px rgba(0,0,0,.06);
}

.custom-select:focus{
  outline:none;
  border-color:#d4a048;
  box-shadow:0 0 0 3px rgba(212, 160, 72, .12);
}

.method-cards{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));
  gap:18px;
  margin-bottom:28px;
}

.card{
  display:none;
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
  border:none;
  background:transparent;
}

.paymentOption{
  position:relative;
  overflow:hidden;
  min-height:228px;
  border-radius:4px;
  cursor:pointer;
  background:
    linear-gradient(180deg, rgba(228, 214, 187, .98), rgba(215, 198, 165, .98)),
    linear-gradient(135deg, rgba(212, 160, 72, .10), transparent);
  border:1px solid rgba(138, 109, 59, .28);
  box-shadow:0 8px 16px rgba(0,0,0,.06);
  transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}

.paymentOption.card{
  display:block;
}

.paymentOption::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, rgba(212, 160, 72, .10), transparent 42%);
  opacity:0;
  transition:opacity .28s ease;
}

.paymentOption:hover,
.paymentOption:focus{
  transform:translateY(-2px);
  border-color:rgba(138, 109, 59, .46);
  box-shadow:0 12px 18px rgba(0,0,0,.10);
  outline:none;
}

.paymentOption:hover::before,
.paymentOption:focus::before,
.paymentOption.selected::before{
  opacity:1;
}

.paymentOption.selected{
  border-color:#d4a048;
  box-shadow:
    0 0 0 1px rgba(212, 160, 72, .26),
    0 12px 20px rgba(0,0,0,.10);
  background:
    linear-gradient(180deg, rgba(236, 223, 196, .99), rgba(224, 208, 176, .99)),
    linear-gradient(135deg, rgba(212, 160, 72, .16), transparent);
  transform:translateY(-2px);
}

.paymentOption.selected::after{
  content:"Selecionado";
  position:absolute;
  top:8px;
  right:8px;
  padding:3px 7px;
  border:1px solid rgba(205, 166, 71, .45);
  background:rgba(205, 166, 71, .12);
  font-size:9px;
  letter-spacing:1px;
  text-transform:uppercase;
  color:#9a7424;
  font-weight:700;
}

.card-body{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  height:100%;
  padding:24px 22px;
  text-align:left;
}

.card-body img{
  width:46px;
  height:46px;
  object-fit:contain;
  filter:drop-shadow(0 8px 16px rgba(0,0,0,.24));
}

.method-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:0;
  border-radius:0;
  background:transparent;
  font-size:11px;
  letter-spacing:2px;
  text-transform:uppercase;
  color:#8b6a2b;
}

.card-body label{
  display:block;
  margin:0;
  font-size:22px;
  font-weight:700;
  letter-spacing:1px;
  color:#5a2800;
}

.method-description{
  font-size:14px;
  line-height:1.65;
  color:#6d5a38;
}

.method-check{
  margin-top:auto;
  font-size:12px;
  letter-spacing:2px;
  text-transform:uppercase;
  color:#b7822f;
  opacity:0;
  transition:opacity .28s ease;
}

.paymentOption.selected .method-check{ opacity:1; }

.form-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:12px;
  margin-top:28px;
}

.styled-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:160px;
  padding:12px 24px;
  border-radius:3px;
  border:1px solid rgba(138, 109, 59, .55);
  background:linear-gradient(180deg, #e7c98f 0%, #d0a05a 58%, #b57b32 100%);
  box-shadow:0 12px 20px rgba(0,0,0,.10), inset 0 1px 0 rgba(255,255,255,.35);
  color:#4a2b0c;
  font-size:13px;
  font-weight:700;
  letter-spacing:2px;
  text-transform:uppercase;
  text-decoration:none;
  transition:transform .25s ease, box-shadow .25s ease, filter .25s ease;
  cursor:pointer;
}

.styled-button:hover,
.styled-button:focus{
  color:#4a2b0c;
  text-decoration:none;
  transform:translateY(-2px);
  box-shadow:0 16px 24px rgba(0,0,0,.12), inset 0 1px 0 rgba(255,255,255,.42);
  filter:saturate(1.08);
  outline:none;
}

.styled-button-secondary{
  color:#5a442a;
  border-color:rgba(101, 74, 28, .24);
  background:linear-gradient(180deg, rgba(255, 250, 241, .96), rgba(236, 224, 199, .98));
}

.styled-button-secondary:hover,
.styled-button-secondary:focus{
  color:#5a442a;
}

.styled-button[disabled],
.styled-button.is-disabled{
  opacity:.45;
  cursor:not-allowed;
  transform:none;
  box-shadow:none;
  filter:none;
}

.field{
  width:min(100%, 220px);
  padding:12px 14px;
  border-radius:3px;
  border:1px solid rgba(138, 109, 59, .32);
  background:rgba(255, 249, 239, .88);
  color:#4f3718;
  font-size:15px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65);
}

.field::placeholder{ color:#9f8a65; }

.field:focus{
  outline:none;
  border-color:#d4a048;
  box-shadow:0 0 0 3px rgba(212, 160, 72, .10);
}

.calculator{
  font-size:11px;
  font-weight:700;
  letter-spacing:2px;
  text-transform:uppercase;
  color:#8b6a2b;
}

.calculator-td{
  font-size:15px;
  font-weight:700;
  letter-spacing:1px;
  color:#5a2800;
}

.reward-value{
  color:#5f8d43;
  font-size:26px;
  line-height:1;
  text-shadow:none;
}

.content-muted{ color:#6d5a38; }

.field-amount{
  width:100px;
  text-align:center;
}

.trade-illustration{
  float:right;
  margin-right:60px;
}

.trade-illustration img{
  border-radius:18px;
  box-shadow:0 14px 24px rgba(0,0,0,.10);
}

.status-message{
  margin-bottom:8px;
  font-size:16px;
  color:#5f8d43;
}

.table-centered{
  width:min(100%, 720px) !important;
  margin:0 auto;
  border-collapse:separate;
  border-spacing:0 12px;
  border:none;
  background:transparent;
}

.table-centered td{
  padding:16px 18px;
  border-top:1px solid rgba(138, 109, 59, .12);
  border-bottom:1px solid rgba(138, 109, 59, .12);
  background:linear-gradient(180deg, rgba(255,255,255,.55), rgba(255,255,255,.18));
  vertical-align:middle;
}

.table-centered td:first-child{
  width:38%;
  border-left:1px solid rgba(138, 109, 59, .12);
  border-top-left-radius:2px;
  border-bottom-left-radius:2px;
}

.table-centered td:last-child{
  border-right:1px solid rgba(138, 109, 59, .12);
  border-top-right-radius:2px;
  border-bottom-right-radius:2px;
}

.table-centered th{
  border:1px solid rgba(138, 109, 59, .18);
  padding:12px 16px;
  text-align:left;
  background:rgba(255,255,255,.38);
  color:#5a2800;
}

.payment-container .btn-warning,
.trade-coin-container .btn-warning{
  border:none;
  border-radius:3px;
  padding:8px 16px;
  background:linear-gradient(180deg, #e8c78f, #cf9d53);
  color:#4a2b0c;
  font-weight:700;
  letter-spacing:1px;
}

.payment-container .btn-warning:hover,
.trade-coin-container .btn-warning:hover{
  filter:saturate(1.08);
}

.payment-container .alert,
.trade-coin-container .alert,
.div-center .alert{
  border:none;
  border-radius:16px;
  box-shadow:0 18px 30px rgba(0,0,0,.16);
}

.donate-terms{
  max-width:860px;
  margin:auto;
}

.donate-terms .payment-eyebrow{
  margin-bottom:6px;
}

.donate-terms .header-title{
  margin-bottom:12px;
  font-size:clamp(26px, 3.8vw, 34px);
}

.terms-lead{
  max-width:700px;
  margin:0 auto 24px;
  text-align:center;
  font-size:14px;
  line-height:1.7;
  color:#6d5735;
}

.donate-rule-list{
  display:grid;
  gap:12px;
  margin:0 0 28px;
}

.donate-rule-item{
  display:flex;
  gap:14px;
  align-items:center;
  padding:16px 18px;
  border-radius:4px;
  background:linear-gradient(180deg, rgba(255,255,255,.44), rgba(255,255,255,.18));
  border:1px solid rgba(138, 109, 59, .16);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.4);
}

.donate-rule-copy{
  flex:1 1 auto;
}

.donate-rule-copy strong{
  display:block;
  font-size:15px;
  line-height:1.55;
  font-weight:500;
  color:#5c421a;
}

.donate-rule-number{
  flex:0 0 auto;
  min-width:38px;
  height:38px;
  border-radius:3px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(180deg, #ecd19d, #cc9445);
  color:#1a120b;
  font-weight:700;
}

.donate-checkbox{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:12px;
  padding:18px 20px;
  margin:0 auto;
  max-width:640px;
  border-radius:4px;
  border:1px solid rgba(138, 109, 59, .16);
  background:linear-gradient(180deg, rgba(255,255,255,.54), rgba(255,255,255,.26));
  color:#5a2800;
  text-align:center;
}

.donate-checkbox label{
  font-size:15px;
  line-height:1.5;
  color:#5a2800;
}

.donate-checkbox input{
  width:18px;
  height:18px;
  accent-color:#e0ba74;
}

.pix-copy-panel{
  max-width:520px;
  margin:0 auto 24px;
  padding:22px;
  border-radius:4px;
  background:linear-gradient(180deg, rgba(255,255,255,.46), rgba(255,255,255,.18));
  border:1px solid rgba(138, 109, 59, .14);
}

.pix-copy-panel img{
  width:min(100%, 260px);
  height:auto;
  padding:14px;
  border-radius:4px;
  background:rgba(255,255,255,.96);
  box-shadow:0 12px 22px rgba(0,0,0,.10);
}

.pix-copy-label{
  display:block;
  margin:18px 0 10px;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:2px;
  color:#8b6a2b;
}

.pix-copy-row{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px;
}

.pix-copy-input{
  width:min(100%, 340px) !important;
  padding:12px 14px !important;
  border-radius:3px !important;
  border:1px solid rgba(138, 109, 59, .30) !important;
  background:rgba(255, 249, 239, .96) !important;
  color:#4f3718 !important;
  text-align:center;
  cursor:pointer;
  font-size:14px;
}

.copy-status{
  margin:16px auto 0;
  width:min(100%, 360px);
}

.modal-content{
  border:1px solid rgba(212, 178, 119, .22);
  border-radius:4px;
  overflow:hidden;
  background:linear-gradient(180deg, #f4ead6, #dfcfb2);
  box-shadow:0 24px 60px rgba(0,0,0,.26);
}

.modal-header{
  background:linear-gradient(180deg, #8d6026, #5d3819);
  color:#f8ecd2;
  font-size:24px;
}

.modal-title{ font-weight:bold; }

.modal-body .coupon{
  border:2px dashed rgba(112, 70, 31, .58);
  border-radius:4px;
  padding:20px;
  margin-bottom:16px;
  text-align:center;
  font-size:16px;
  background:rgba(255,255,255,.42);
}

.modal-body .coupon h3{
  color:#7c4d1f;
  margin-bottom:15px;
  font-weight:bold;
  text-transform:uppercase;
  letter-spacing:4px;
}

.modal-body .coupon .use-link{
  display:block;
  margin-top:12px;
  letter-spacing:2px;
  text-transform:uppercase;
  background:#e97511;
  color:#fff;
  padding:10px 15px;
  border-radius:3px;
  text-align:center;
  transition:background-color .3s;
  text-decoration:none;
}

.modal-body .coupon .use-link:hover{
  animation:blink .5s linear infinite;
  text-decoration:none;
}

.modal-dialog{ margin:6% auto !important; }

@media (max-width: 767px){
  .payment-container,
  .trade-coin-container{
    padding:28px 16px;
    border-radius:4px;
  }

  .method-cards{ grid-template-columns:1fr; }

  .payment-container--selection .method-cards{
    grid-template-columns:1fr;
  }

  .selection-toolbar{
    display:block;
  }

  .selection-region-corner{
    position:static;
    margin:0 auto 10px;
  }

  .selection-toolbar-control{
    margin-top:10px;
  }

  .selection-steps{
    gap:8px;
  }

  .selection-step-line{
    width:28px;
  }

  .detail-form-grid,
  .detail-overview,
  .detail-keyfacts,
  .payment-facts,
  .checkout-recap-grid{
    grid-template-columns:1fr;
  }

  .detail-topline,
  .detail-coupon-action{
    display:block;
    text-align:left;
  }

  .detail-coupon-action{
    margin-top:12px;
  }

  .detail-account strong{
    font-size:24px;
  }

  .detail-status{
    flex-direction:column;
    text-align:center;
  }

  .detail-summary-row{
    grid-template-columns:1fr;
    gap:6px;
  }

  .detail-summary-row strong{
    text-align:left;
  }

  .checkout-recap-primary,
  .checkout-recap-note{
    padding:14px;
  }

  .checkout-recap-amount{
    font-size:32px;
  }

  .checkout-recap-note{
    display:block;
  }

  .checkout-recap-note strong{
    display:block;
    margin-top:6px;
  }

  .table-centered,
  .table-centered tbody,
  .table-centered tr,
  .table-centered td{
    display:block;
    width:100% !important;
  }

  .table-centered{
    border-spacing:0 10px;
  }

  .table-centered td:first-child,
  .table-centered td:last-child{
    border-radius:0;
    border-left:1px solid rgba(212, 178, 119, .16);
    border-right:1px solid rgba(212, 178, 119, .16);
  }

  .table-centered tr td:first-child{
    border-top-left-radius:2px;
    border-top-right-radius:2px;
    border-bottom-left-radius:0;
  }

  .table-centered tr td:last-child{
    border-top-right-radius:0;
    border-bottom-left-radius:2px;
    border-bottom-right-radius:2px;
  }

  .field,
  .custom-select,
  .pix-copy-input{
    width:100% !important;
  }

  .donate-checkbox{
    padding:16px;
  }

  .trade-illustration{
    float:none;
    margin:18px auto;
    text-align:center;
  }
}
