/* /contribuir v2 — arquitetura de confianca + estados PIX. */
.sustain{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4);}
@media (max-width:820px){.sustain{grid-template-columns:1fr;}}
.sustain--4{grid-template-columns:repeat(4,1fr);}
@media (max-width:1080px){.sustain--4{grid-template-columns:1fr 1fr;}}
@media (max-width:640px){.sustain--4{grid-template-columns:1fr;}}
.sustain__item{display:flex;gap:var(--space-3);align-items:flex-start;padding:var(--space-4);
  background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-md);}
.sustain__item .icon{margin-top:3px;color:var(--color-brick);}
.sustain__item b{display:block;font-family:var(--font-display);font-size:var(--size-lg);}
.sustain__item span{font-size:var(--size-sm);color:var(--color-earth-soft);}

.trust{display:flex;flex-wrap:wrap;gap:var(--space-4) var(--space-6);padding:var(--space-4) 0;
  border-top:1px solid var(--color-line);border-bottom:1px solid var(--color-line);margin:var(--space-6) 0;}
.trust__item{display:inline-flex;align-items:center;gap:8px;font-size:var(--size-sm);font-weight:600;color:var(--color-earth);}
.trust__item .icon{color:var(--color-brick);}

.pix{margin-top:var(--space-4);}
.pix [data-pix-step]{display:none;}
.pix[data-state="idle"] [data-pix-step="idle"]{display:block;}
.pix[data-state="loading"] [data-pix-step="loading"]{display:flex;}
.pix[data-state="code"] [data-pix-step="code"]{display:block;}
.pix[data-state="done"] [data-pix-step="done"]{display:block;}
.pix[data-state="error"] [data-pix-step="error"]{display:block;}
.pix__loading{align-items:center;gap:12px;min-height:54px;color:var(--color-earth-soft);font-weight:600;}
.spinner{width:22px;height:22px;border-radius:999px;border:3px solid var(--color-line);
  border-top-color:var(--color-brick);animation:spin .8s linear infinite;flex:none;}
@keyframes spin{to{transform:rotate(360deg);}}
.pix__code{font-family:ui-monospace,Menlo,monospace;font-size:var(--size-sm);word-break:break-all;
  background:var(--color-cream);border:2px dashed var(--color-gold);border-radius:var(--radius-md);
  padding:var(--space-4);margin:var(--space-3) 0;color:var(--color-earth);}
.pix__done{border-left:4px solid var(--color-gold);background:var(--color-cream);border-radius:0 var(--radius-md) var(--radius-md) 0;
  padding:var(--space-4) var(--space-6);}
.pix__error{border-left:4px solid var(--color-brick);background:var(--color-cream);border-radius:0 var(--radius-md) var(--radius-md) 0;
  padding:var(--space-4) var(--space-6);}