/* ===== CHECKOUT MODAL STYLES — 3-Step Wizard ===== */

/* ── Modal Shell ── */
#checkoutModal .modal-content {
   max-height: 92vh;
   background: #111113;
   border: 1px solid rgba(255,255,255,.06);
   border-radius: 1.25rem;
   overflow: hidden;
}

#checkoutModal .modal-header {
   background: linear-gradient(135deg, rgba(var(--bs-primary-rgb),.12) 0%, transparent 60%);
   border-bottom: 1px solid rgba(255,255,255,.06);
   padding: 1.25rem 1.5rem;
}

#checkoutModal .modal-body {
   padding: 1.5rem;
   overflow-x: hidden;
}

#checkoutModal .modal-footer {
   background: rgba(0,0,0,.35);
   border-top: 1px solid rgba(255,255,255,.06);
   padding: 1rem 1.5rem;
}

/* ── Step Progress Bar (3 steps) ── */
.checkout-steps {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: .5rem;
   padding: .75rem 1.5rem;
   background: rgba(0,0,0,.25);
   border-bottom: 1px solid rgba(255,255,255,.04);
}

.checkout-step {
   display: flex;
   align-items: center;
   gap: .45rem;
   font-size: .82rem;
   font-weight: 600;
   color: rgba(255,255,255,.3);
   transition: color .3s ease;
}

.checkout-step .step-num {
   width: 26px; height: 26px;
   border-radius: 50%;
   display: flex; align-items: center; justify-content: center;
   font-size: .75rem; font-weight: 700;
   background: rgba(255,255,255,.06);
   border: 2px solid rgba(255,255,255,.1);
   transition: all .3s ease;
}

.checkout-step .step-label {
   display: none;
}

.checkout-step.active { color: #fff; }
.checkout-step.active .step-num {
   background: var(--bs-primary);
   border-color: var(--bs-primary);
   color: #fff;
   box-shadow: 0 0 12px rgba(var(--bs-primary-rgb),.45);
}
.checkout-step.active .step-label { display: inline; }

.checkout-step.done { color: rgba(var(--bs-primary-rgb),.8); }
.checkout-step.done .step-num {
   background: rgba(var(--bs-primary-rgb),.18);
   border-color: var(--bs-primary);
   color: var(--bs-primary);
}

.checkout-step-divider {
   width: 32px; height: 2px;
   background: rgba(255,255,255,.08);
   border-radius: 1px;
   transition: background .3s ease;
}
.checkout-step-divider.done { background: var(--bs-primary); }

/* ── Step Panels (slide animation) ── */
.checkout-step-panel {
   animation: stepFadeIn .35s ease-out;
}

@keyframes stepFadeIn {
   from { opacity: 0; transform: translateX(18px); }
   to   { opacity: 1; transform: translateX(0); }
}

/* ── Section Cards ── */
.checkout-section {
   background: rgba(255,255,255,.025);
   border: 1px solid rgba(255,255,255,.06);
   border-radius: .875rem;
   padding: 1.25rem;
   margin-bottom: 1rem;
   transition: border-color .25s ease;
}
.checkout-section:last-child { margin-bottom: 0; }
.checkout-section:hover { border-color: rgba(255,255,255,.1); }

.checkout-section-title {
   font-size: .85rem;
   font-weight: 700;
   text-transform: uppercase;
   letter-spacing: .5px;
   color: rgba(255,255,255,.55);
   margin-bottom: 1rem;
   display: flex;
   align-items: center;
   gap: .5rem;
}
.checkout-section-title svg { color: var(--bs-primary); }

/* ── Product Card ── */
.checkout-product-card {
   background: linear-gradient(135deg, rgba(var(--bs-primary-rgb),.08) 0%, rgba(var(--bs-primary-rgb),.02) 100%);
   border: 1px solid rgba(var(--bs-primary-rgb),.18);
   border-radius: .875rem;
   padding: 1rem;
   display: flex;
   gap: 1rem;
   align-items: center;
   margin-bottom: 1rem;
}

.product-thumb-wrap {
   width: 72px; height: 72px; min-width: 72px;
   border-radius: .625rem;
   overflow: hidden;
   border: 2px solid rgba(var(--bs-primary-rgb),.2);
   flex-shrink: 0;
}

.product-thumb-wrap .product-thumb {
   width: 100%; height: 100%;
   object-fit: cover;
   display: block;
}

.product-thumb-placeholder {
   width: 100%; height: 100%;
   background: rgba(var(--bs-primary-rgb),.08);
   display: flex; align-items: center; justify-content: center;
}

.checkout-product-card .product-info { flex: 1; min-width: 0; }
.checkout-product-card .product-info h6 {
   font-size: .95rem; font-weight: 700; color: #fff;
   margin-bottom: .25rem; white-space: nowrap;
   overflow: hidden; text-overflow: ellipsis;
}
.checkout-product-card .product-info .product-desc {
   font-size: .78rem; color: rgba(255,255,255,.4);
   display: -webkit-box; -webkit-line-clamp: 2;
   -webkit-box-orient: vertical; overflow: hidden;
   margin-bottom: .4rem; line-height: 1.4;
}
.checkout-product-card .product-price-tag {
   font-size: 1.2rem; font-weight: 800; color: var(--bs-primary);
   white-space: nowrap;
}

/* ── Form Fields ── */
#checkoutModal .form-label {
   font-size: .78rem;
   font-weight: 600;
   text-transform: uppercase;
   letter-spacing: .3px;
   color: rgba(255,255,255,.45);
   margin-bottom: .35rem;
}

#checkoutModal .form-control,
#checkoutModal .form-select {
   background: rgba(255,255,255,.04);
   border: 1px solid rgba(255,255,255,.1);
   border-radius: .625rem;
   color: #fff;
   padding: .65rem .9rem;
   font-size: .9rem;
   transition: all .2s ease;
}

#checkoutModal .form-control:hover,
#checkoutModal .form-select:hover {
   border-color: rgba(255,255,255,.18);
   background: rgba(255,255,255,.055);
}

#checkoutModal .form-control:focus,
#checkoutModal .form-select:focus {
   border-color: var(--bs-primary);
   background: rgba(var(--bs-primary-rgb),.06);
   box-shadow: 0 0 0 3px rgba(var(--bs-primary-rgb),.15),
               0 0 20px rgba(var(--bs-primary-rgb),.06);
   color: #fff;
}

#checkoutModal .form-control::placeholder {
   color: rgba(255,255,255,.2);
   font-weight: 400;
}

#checkoutModal .form-select option {
   background: #1a1a1a;
   color: #fff;
}

#checkoutModal .input-group .btn {
   border-radius: 0 .625rem .625rem 0;
   border: 1px solid rgba(255,255,255,.1);
   border-left: 0;
}

/* ── Payment Options ── */
.payment-option {
   position: relative;
   transition: all .25s ease;
   border: 2px solid rgba(255,255,255,.08);
   border-radius: .75rem;
   cursor: pointer;
   user-select: none;
   background: rgba(255,255,255,.025);
}

.payment-option:hover {
   border-color: rgba(var(--bs-primary-rgb),.4);
   background: rgba(var(--bs-primary-rgb),.06);
   transform: translateY(-2px);
   box-shadow: 0 4px 15px rgba(0,0,0,.3);
}

.payment-option.selected {
   border-color: var(--bs-primary);
   background: rgba(var(--bs-primary-rgb),.1) !important;
   box-shadow: 0 0 20px rgba(var(--bs-primary-rgb),.15),
               inset 0 0 20px rgba(var(--bs-primary-rgb),.04);
}

.payment-option .payment-check {
   display: none;
   position: absolute;
   top: 8px; right: 8px;
}
.payment-option.selected .payment-check { display: block; }

.payment-option .payment-icon {
   color: var(--bs-primary);
   opacity: .5;
   transition: all .25s ease;
}
.payment-option:hover .payment-icon,
.payment-option.selected .payment-icon { opacity: 1; }

/* ── Validation States ── */
#checkoutModal .is-valid {
   border-color: rgba(var(--bs-success-rgb),.5) !important;
   box-shadow: 0 0 0 3px rgba(var(--bs-success-rgb),.1) !important;
}
#checkoutModal .is-invalid {
   border-color: rgba(var(--bs-danger-rgb),.6) !important;
   box-shadow: 0 0 0 3px rgba(var(--bs-danger-rgb),.12) !important;
}

/* ── Footer ── */
.checkout-footer-total {
   font-size: .78rem;
   color: rgba(255,255,255,.45);
   font-weight: 500;
}
.checkout-footer-total .total-value {
   font-size: 1.35rem;
   font-weight: 800;
   color: var(--bs-primary);
   letter-spacing: -.5px;
}

/* ── Review – Step 3 ── */
.review-section {
   background: rgba(255,255,255,.025);
   border: 1px solid rgba(255,255,255,.06);
   border-radius: .75rem;
   padding: 1rem 1.15rem;
   margin-bottom: .75rem;
}
.review-section:last-child { margin-bottom: 0; }

.review-section-title {
   font-size: .72rem;
   text-transform: uppercase;
   letter-spacing: .6px;
   color: rgba(255,255,255,.4);
   font-weight: 700;
   margin-bottom: .65rem;
   display: flex; align-items: center; gap: .4rem;
}
.review-section-title svg { color: var(--bs-primary); }

.review-row {
   display: flex;
   justify-content: space-between;
   align-items: baseline;
   padding: .3rem 0;
}
.review-row .review-label {
   font-size: .8rem;
   color: rgba(255,255,255,.45);
}
.review-row .review-value {
   font-size: .85rem;
   color: #fff;
   font-weight: 500;
   text-align: right;
   max-width: 60%;
   word-break: break-word;
}

.review-product-banner {
   display: flex;
   gap: 1rem;
   align-items: center;
   padding: .75rem;
   background: linear-gradient(135deg, rgba(var(--bs-primary-rgb),.1), transparent);
   border-radius: .75rem;
   border: 1px solid rgba(var(--bs-primary-rgb),.15);
   margin-bottom: .75rem;
}
.review-product-banner img {
   width: 56px; height: 56px;
   border-radius: .5rem;
   object-fit: cover;
   flex-shrink: 0;
}
.review-product-banner .review-product-placeholder {
   width: 56px; height: 56px; min-width: 56px;
   border-radius: .5rem;
   background: rgba(var(--bs-primary-rgb),.08);
   display: flex; align-items: center; justify-content: center;
   flex-shrink: 0;
}
.review-product-banner .review-prod-name {
   font-weight: 700; font-size: .95rem; color: #fff;
}
.review-product-banner .review-prod-cat {
   font-size: .78rem; color: rgba(255,255,255,.5);
}

.review-total-bar {
   display: flex;
   justify-content: space-between;
   align-items: center;
   padding: .85rem 1.15rem;
   background: rgba(var(--bs-primary-rgb),.08);
   border: 1px solid rgba(var(--bs-primary-rgb),.18);
   border-radius: .75rem;
   margin-top: .75rem;
}
.review-total-bar .review-total-label {
   font-size: .85rem;
   font-weight: 600;
   color: rgba(255,255,255,.7);
}
.review-total-bar .review-total-value {
   font-size: 1.3rem;
   font-weight: 800;
   color: var(--bs-primary);
}

/* ── Mobile ── */
@media (max-width: 576px) {
   #checkoutModal .modal-dialog {
      margin: 0;
      max-width: 100%;
      min-height: 100vh;
   }
   #checkoutModal .modal-content {
      border-radius: 0;
      min-height: 100vh;
      max-height: 100vh;
   }
   #checkoutModal .modal-header { padding: 1rem 1.15rem; }
   #checkoutModal .modal-body { padding: 1rem 1.05rem; }
   #checkoutModal .modal-footer { padding: .75rem 1rem; }

   .checkout-section { padding: 1rem; border-radius: .75rem; }

   #checkoutModal .form-control,
   #checkoutModal .form-select {
      font-size: .88rem;
      padding: .6rem .8rem;
   }

   .payment-option { padding: .75rem !important; }
   .payment-option .payment-icon svg { width: 24px; height: 24px; }

   .checkout-product-card {
      flex-direction: column;
      text-align: center;
      gap: .75rem;
   }
   .product-thumb-wrap { width: 56px; height: 56px; min-width: 56px; }
   .checkout-product-card .product-price-tag {
      font-size: 1.05rem;
   }

   .checkout-steps { gap: .35rem; padding: .6rem .75rem; }
   .checkout-step { font-size: .72rem; gap: .3rem; }
   .checkout-step .step-num { width: 22px; height: 22px; font-size: .65rem; }
   .checkout-step-divider { width: 20px; }

   .checkout-footer-total .total-value { font-size: 1.1rem; }

   #btn-checkout-next { font-size: .9rem; padding: .6rem 1.2rem !important; }
   #btn-checkout-back { font-size: .85rem; }

   .review-product-banner { flex-direction: column; text-align: center; gap: .6rem; }
   .review-product-banner img,
   .review-product-banner .review-product-placeholder { width: 48px; height: 48px; min-width: 48px; }
   .review-row .review-value { max-width: 55%; }
   .review-total-bar { padding: .75rem 1rem; }
   .review-total-bar .review-total-value { font-size: 1.1rem; }
}

@media (min-width: 577px) {
   .checkout-step .step-label { display: inline; }
}

/* ── Credit Card Form (Step 4) ── */
.credit-card-section {
   background: rgba(255,255,255,.03);
   border: 1px solid rgba(255,255,255,.08);
}

.card-input-wrapper {
   position: relative;
}
.card-input-wrapper .form-control {
   padding-right: 3.5rem;
}
.card-brand-icon {
   position: absolute;
   right: .75rem;
   top: 50%;
   transform: translateY(-50%);
   opacity: 0;
   transition: opacity .25s ease;
   display: flex;
   align-items: center;
}
.card-brand-icon.visible {
   opacity: 1;
}
.card-brand-icon svg {
   border-radius: 4px;
}

/* Segurança badges */
.credit-security-info {
   display: flex;
   gap: .75rem;
   justify-content: center;
   margin-top: .75rem;
}
.security-badge {
   display: flex;
   align-items: center;
   gap: .35rem;
   font-size: .72rem;
   color: rgba(255,255,255,.35);
   background: rgba(255,255,255,.03);
   border: 1px solid rgba(255,255,255,.06);
   border-radius: 2rem;
   padding: .35rem .75rem;
}
.security-badge svg {
   color: rgba(var(--bs-success-rgb),.65);
   flex-shrink: 0;
}

/* Card error alert */
#card-error-alert {
   background: rgba(var(--bs-danger-rgb),.12);
   border: 1px solid rgba(var(--bs-danger-rgb),.3);
   color: rgba(255,255,255,.85);
   border-radius: .625rem;
   font-size: .85rem;
   animation: stepFadeIn .3s ease-out;
}

/* Mobile adjustments for credit card */
@media (max-width: 576px) {
   .credit-security-info {
      flex-direction: column;
      align-items: center;
      gap: .5rem;
   }
   .security-badge {
      font-size: .68rem;
      padding: .3rem .6rem;
   }
}

/* ═══════════════════════════════════════════ */
/* ──         SUCCESS SCREEN                ── */
/* ═══════════════════════════════════════════ */

#checkout-success-panel,
#checkout-pix-panel,
#checkout-pix-processing-panel {
   animation: stepFadeIn .4s ease-out;
}

.checkout-success-screen { padding: .5rem 0; }

.success-icon-wrap {
   margin-bottom: 1.25rem;
}
.success-circle {
   width: 80px; height: 80px;
   border-radius: 50%;
   background: rgba(var(--bs-success-rgb),.12);
   border: 3px solid rgba(var(--bs-success-rgb),.35);
   display: inline-flex;
   align-items: center;
   justify-content: center;
   animation: successPulse 1.5s ease-in-out infinite;
}
.success-check {
   color: var(--bs-success);
}

@keyframes successPulse {
   0%, 100% { box-shadow: 0 0 0 0 rgba(var(--bs-success-rgb),.3); }
   50% { box-shadow: 0 0 0 12px rgba(var(--bs-success-rgb),0); }
}

.success-title {
   font-size: 1.35rem;
   font-weight: 800;
   color: #fff;
   margin-bottom: .35rem;
}
.success-subtitle {
   font-size: .88rem;
   color: rgba(255,255,255,.5);
   margin-bottom: 1.25rem;
}

.success-details {
   background: rgba(255,255,255,.03);
   border: 1px solid rgba(255,255,255,.06);
   border-radius: .75rem;
   padding: .85rem 1rem;
   margin-bottom: 1rem;
}
.success-detail-row {
   display: flex;
   justify-content: space-between;
   align-items: baseline;
   padding: .3rem 0;
}
.success-detail-row .detail-label {
   font-size: .78rem;
   color: rgba(255,255,255,.4);
}
.success-detail-row .detail-value {
   font-size: .85rem;
   color: #fff;
   font-weight: 600;
   text-align: right;
}
.success-detail-row .success-amount {
   color: var(--bs-primary);
   font-weight: 800;
   font-size: .95rem;
}

.success-contact-card {
   display: flex;
   gap: .85rem;
   align-items: flex-start;
   padding: 1rem;
   background: rgba(var(--bs-success-rgb),.06);
   border: 1px solid rgba(var(--bs-success-rgb),.15);
   border-radius: .75rem;
   text-align: left;
   margin-bottom: .5rem;
}
.success-contact-card .contact-icon {
   color: var(--bs-success);
   flex-shrink: 0;
   margin-top: .15rem;
}
.success-contact-card .contact-text strong {
   font-size: .9rem;
   color: #fff;
   display: block;
   margin-bottom: .3rem;
}
.success-contact-card .contact-text p {
   font-size: .8rem;
   color: rgba(255,255,255,.55);
   margin: 0;
   line-height: 1.45;
}

/* ═══════════════════════════════════════════ */
/* ──         PIX PAYMENT SCREEN            ── */
/* ═══════════════════════════════════════════ */

.pix-payment-screen { padding: .5rem 0; }

.pix-header { margin-bottom: 1rem; }
.pix-icon-wrap {
   width: 64px; height: 64px;
   border-radius: 50%;
   background: rgba(0,191,165,.1);
   border: 2px solid rgba(0,191,165,.25);
   display: inline-flex;
   align-items: center;
   justify-content: center;
   margin-bottom: .75rem;
}
.pix-icon-wrap svg { color: #00BFA5; }

.pix-title {
   font-size: 1.15rem;
   font-weight: 800;
   color: #fff;
   margin-bottom: .25rem;
}
.pix-subtitle {
   font-size: .82rem;
   color: rgba(255,255,255,.45);
   margin: 0;
}

.pix-amount-bar {
   display: flex;
   justify-content: space-between;
   align-items: center;
   padding: .75rem 1rem;
   background: rgba(0,191,165,.06);
   border: 1px solid rgba(0,191,165,.15);
   border-radius: .75rem;
   margin-bottom: 1.25rem;
}
.pix-amount-label {
   font-size: .82rem;
   color: rgba(255,255,255,.6);
   font-weight: 600;
}
.pix-amount-value {
   font-size: 1.3rem;
   font-weight: 800;
   color: #00BFA5;
}

.pix-qr-container {
   margin-bottom: 1.25rem;
}
.pix-qr-frame {
   display: inline-block;
   padding: 12px;
   background: #fff;
   border-radius: .75rem;
   box-shadow: 0 4px 20px rgba(0,0,0,.3);
}
.pix-qr-frame img {
   display: block;
   border-radius: .35rem;
}

.pix-copy-section {
   margin-bottom: 1rem;
}
.pix-copy-label {
   display: block;
   font-size: .72rem;
   text-transform: uppercase;
   letter-spacing: .5px;
   color: rgba(255,255,255,.4);
   font-weight: 700;
   margin-bottom: .4rem;
}
.pix-copy-field {
   display: flex;
   gap: 0;
}
.pix-copy-field .form-control {
   background: rgba(255,255,255,.04);
   border: 1px solid rgba(255,255,255,.1);
   border-right: 0;
   border-radius: .625rem 0 0 .625rem;
   color: rgba(255,255,255,.7);
   font-size: .75rem;
   padding: .55rem .75rem;
   text-overflow: ellipsis;
}
.pix-copy-btn {
   border-radius: 0 .625rem .625rem 0;
   padding: .55rem .85rem;
   display: flex;
   align-items: center;
   gap: .35rem;
   white-space: nowrap;
   font-size: .82rem;
}

.pix-copied-toast {
   margin-top: .5rem;
   display: inline-flex;
   align-items: center;
   gap: .35rem;
   font-size: .78rem;
   color: var(--bs-success);
   font-weight: 600;
   animation: stepFadeIn .25s ease-out;
}

.pix-info-section {
   background: rgba(255,255,255,.025);
   border: 1px solid rgba(255,255,255,.06);
   border-radius: .75rem;
   padding: .75rem 1rem;
}
.pix-info-row {
   display: flex;
   justify-content: space-between;
   align-items: baseline;
   padding: .2rem 0;
}
.pix-info-row .pix-info-label {
   font-size: .75rem;
   color: rgba(255,255,255,.4);
}
.pix-info-row .pix-info-value {
   font-size: .82rem;
   color: #fff;
   font-weight: 600;
}

/* PIX Confirm overlay */
.pix-confirm-overlay {
   position: absolute;
   inset: 0;
   background: rgba(0,0,0,.75);
   backdrop-filter: blur(6px);
   display: flex;
   align-items: center;
   justify-content: center;
   z-index: 10;
   padding: 1.5rem;
   animation: stepFadeIn .2s ease-out;
}
.pix-confirm-card {
   background: #1a1a1c;
   border: 1px solid rgba(255,255,255,.08);
   border-radius: 1rem;
   padding: 1.75rem 1.5rem;
   text-align: center;
   max-width: 360px;
   width: 100%;
}
.pix-confirm-icon {
   color: rgba(var(--bs-warning-rgb),.8);
   margin-bottom: .75rem;
}
.pix-confirm-title {
   font-size: 1.05rem;
   font-weight: 700;
   color: #fff;
   margin-bottom: .5rem;
}
.pix-confirm-text {
   font-size: .85rem;
   color: rgba(255,255,255,.55);
   margin-bottom: 1.25rem;
   line-height: 1.5;
}
.pix-confirm-actions {
   display: flex;
   gap: .75rem;
   justify-content: center;
}
.pix-confirm-actions .btn {
   flex: 1;
   font-size: .88rem;
}

/* ═══════════════════════════════════════════ */
/* ──     PIX PROCESSING SCREEN             ── */
/* ═══════════════════════════════════════════ */

.pix-processing-screen { padding: .5rem 0; }

.processing-icon-wrap {
   margin-bottom: 1.25rem;
}
.processing-circle {
   width: 80px; height: 80px;
   border-radius: 50%;
   background: rgba(var(--bs-warning-rgb),.1);
   border: 3px solid rgba(var(--bs-warning-rgb),.3);
   display: inline-flex;
   align-items: center;
   justify-content: center;
   animation: processingRotate 3s linear infinite;
}
.processing-clock {
   color: var(--bs-warning);
}

@keyframes processingRotate {
   0% { box-shadow: 0 0 0 0 rgba(var(--bs-warning-rgb),.25); }
   50% { box-shadow: 0 0 0 10px rgba(var(--bs-warning-rgb),0); }
   100% { box-shadow: 0 0 0 0 rgba(var(--bs-warning-rgb),.25); }
}

.processing-title {
   font-size: 1.2rem;
   font-weight: 800;
   color: #fff;
   margin-bottom: .35rem;
}
.processing-subtitle {
   font-size: .85rem;
   color: rgba(255,255,255,.5);
   margin-bottom: 1.25rem;
}

.processing-details {
   background: rgba(255,255,255,.03);
   border: 1px solid rgba(255,255,255,.06);
   border-radius: .75rem;
   padding: .85rem 1rem;
   margin-bottom: 1rem;
}
.processing-detail-row {
   display: flex;
   justify-content: space-between;
   align-items: baseline;
   padding: .3rem 0;
}
.processing-detail-row .detail-label {
   font-size: .78rem;
   color: rgba(255,255,255,.4);
}
.processing-detail-row .detail-value {
   font-size: .85rem;
   color: #fff;
   font-weight: 600;
}
.processing-detail-row .processing-amount {
   color: var(--bs-primary);
   font-weight: 800;
}

.processing-info-card {
   display: flex;
   gap: .85rem;
   align-items: flex-start;
   padding: 1rem;
   background: rgba(var(--bs-info-rgb),.06);
   border: 1px solid rgba(var(--bs-info-rgb),.15);
   border-radius: .75rem;
   text-align: left;
}
.processing-info-card .processing-info-icon {
   color: var(--bs-info);
   flex-shrink: 0;
   margin-top: .1rem;
}
.processing-info-card .processing-info-text strong {
   font-size: .88rem;
   color: #fff;
   display: block;
   margin-bottom: .3rem;
}
.processing-info-card .processing-info-text p {
   font-size: .8rem;
   color: rgba(255,255,255,.55);
   margin: 0;
   line-height: 1.45;
}

/* ─── Mobile adjustments for new screens ─── */
@media (max-width: 576px) {
   .success-circle,
   .processing-circle { width: 64px; height: 64px; }
   .success-circle svg { width: 36px; height: 36px; }
   .processing-circle svg { width: 32px; height: 32px; }

   .success-title,
   .processing-title { font-size: 1.1rem; }

   .success-contact-card,
   .processing-info-card { flex-direction: column; text-align: center; align-items: center; }

   .pix-qr-frame { padding: 8px; }
   .pix-qr-frame img { max-width: 180px; max-height: 180px; }
   .pix-amount-value { font-size: 1.1rem; }

   .pix-confirm-card { padding: 1.25rem 1rem; }
   .pix-confirm-actions { flex-direction: column; }
}
