/* Native scrolling, quiet entrances, and consistent tactile feedback. */
:root{scroll-behavior:smooth;scrollbar-gutter:stable;--ease-out:cubic-bezier(.22,1,.36,1)}
section[id]{scroll-margin-top:24px}
.wallet-modal-open{overflow:hidden}
.button-solid,.button-outline,.nav-button,.dialog-close,.address-field button{
  position:relative;isolation:isolate;transition:transform .22s var(--ease-out),background-color .22s ease,color .22s ease,box-shadow .22s ease,opacity .22s ease;
}
.nav-button:hover{opacity:1}
.button-solid:active,.button-outline:active,.nav-button:active,.dialog-close:active,.address-field button:active{transform:translateY(1px) scale(.975);transition-duration:.08s}
.button-solid:focus-visible,.button-outline:focus-visible,.nav-button:focus-visible,.dialog-close:focus-visible{outline:2px solid currentColor;outline-offset:5px}
.cta-arrow{transition:transform .35s var(--ease-out)}
.brand-mark,.footer-brand{transition:transform .28s var(--ease-out),opacity .2s ease}
.footer-logo{transition:transform .35s var(--ease-out)}
.how-next a{transition:gap .25s var(--ease-out),opacity .2s ease}
.step-icon{transition:transform .3s var(--ease-out)}
.how-steps li{transition:border-color .25s ease}
.loss-fill{transition:width .18s var(--ease-out)}
.address-field{transition:box-shadow .2s ease,background-color .2s ease}
.address-field:focus-within{background:rgba(255,245,220,.2);box-shadow:0 0 0 3px rgba(17,19,12,.12)}
#reward-pot{--reward-progress:25%;height:48px;cursor:grab;touch-action:pan-y}
#reward-pot:active{cursor:grabbing}
#reward-pot:focus-visible{outline:2px solid var(--lime);outline-offset:5px;border-radius:24px}
#reward-pot::-webkit-slider-runnable-track{height:8px;background:linear-gradient(to right,var(--lime) 0 var(--reward-progress),rgba(201,247,119,.22) var(--reward-progress) 100%)}
#reward-pot::-moz-range-track{height:8px;background:rgba(201,247,119,.22)}
#reward-pot::-moz-range-progress{height:8px;border-radius:10px;background:var(--lime)}
#reward-pot::-webkit-slider-thumb{box-sizing:border-box;width:32px;height:32px;margin-top:-12px;transition:transform .18s var(--ease-out),box-shadow .18s ease}
#reward-pot::-moz-range-thumb{box-sizing:border-box;width:32px;height:32px;transition:transform .18s var(--ease-out),box-shadow .18s ease}
#reward-pot:active::-webkit-slider-thumb{transform:scale(1.12);box-shadow:0 0 0 8px rgba(201,247,119,.12)}
#reward-pot:active::-moz-range-thumb{transform:scale(1.12);box-shadow:0 0 0 8px rgba(201,247,119,.12)}
.demo:has(#reward-pot:active) .loss-fill{transition:width .06s linear}
@media(hover:hover) and (pointer:fine){
  #reward-pot:hover::-webkit-slider-thumb{box-shadow:0 0 0 7px rgba(201,247,119,.12)}
  #reward-pot:hover::-moz-range-thumb{box-shadow:0 0 0 7px rgba(201,247,119,.12)}
}
@media(pointer:coarse){
  #reward-pot{height:56px}
  #reward-pot::-webkit-slider-thumb{width:40px;height:40px;margin-top:-16px}
  #reward-pot::-moz-range-thumb{width:40px;height:40px}
}
summary{transition:color .2s ease}
summary>span{transition:transform .28s var(--ease-out)}
.rule-list summary>span{display:grid;place-items:center;width:26px;height:26px;transform-origin:50% 50%}
details[data-accordion-open="false"] summary>span{transform:rotate(0)}
details[data-accordion-open="true"] summary>span{transform:rotate(45deg)}
@media(prefers-reduced-motion:no-preference){
  .rule-list summary:focus-visible>span{transform:rotate(45deg)}
  .rule-list details[data-accordion-open="true"] summary:focus-visible>span,
  .rule-list details[open]:not([data-accordion-open]) summary:focus-visible>span{transform:rotate(135deg)}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .rule-list summary:hover>span{transform:rotate(45deg)}
  .rule-list details[data-accordion-open="true"] summary:hover>span,
  .rule-list details[open]:not([data-accordion-open]) summary:hover>span{transform:rotate(135deg)}
}
.accordion-content{display:flow-root}
[data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .65s var(--ease-out)}
[data-reveal].is-revealed,[data-reveal]:focus-within{opacity:1;transform:none}
.how-steps>[data-reveal]:nth-child(2){transition-delay:45ms}
.how-steps>[data-reveal]:nth-child(3){transition-delay:90ms}
.how-steps>[data-reveal]:nth-child(4){transition-delay:135ms}
dialog[data-dialog-motion="opening"]::backdrop{animation:backdrop-in .26s ease both}
dialog[data-dialog-motion="closing"]::backdrop{animation:backdrop-out .17s ease both}
@keyframes backdrop-in{from{opacity:0}to{opacity:1}}
@keyframes backdrop-out{from{opacity:1}to{opacity:0}}
@media(hover:hover) and (pointer:fine){
  .button-solid:hover{transform:translateY(-2px);box-shadow:0 7px 0 rgba(17,19,12,.12)}
  .button-outline:hover,.nav-button:hover{transform:translateY(-2px);background:var(--ink);color:var(--lime);box-shadow:0 5px 0 rgba(17,19,12,.1)}
  .button-solid:hover .cta-arrow{transform:translateX(5px)}
  .brand-mark:hover{transform:rotate(-7deg);opacity:1}
  .footer-brand:hover{opacity:1}.footer-brand:hover .footer-logo{transform:rotate(-9deg)}
  .how-next a:hover{gap:21px;opacity:1}
  .how-steps li:hover .step-icon{transform:translateY(-4px) rotate(-3deg)}
  .dialog-close:hover{transform:rotate(90deg);background:rgba(17,19,12,.08);border-radius:50%}
  .address-field button:hover{background:#2C3220}
  summary:hover{color:#475d26}
  .button-solid:active,.button-outline:active,.nav-button:active,.dialog-close:active,.address-field button:active{transform:translateY(1px) scale(.975);box-shadow:none}
}
@media(max-width:700px){
  .how-steps>[data-reveal]{transition-delay:0ms}
}
@media(prefers-reduced-motion:reduce){
  :root{scroll-behavior:auto}
  [data-reveal]{opacity:1;transform:none}
  .button-solid,.button-outline,.nav-button,.dialog-close,.address-field button,.cta-arrow,.brand-mark,.footer-logo,.step-icon{transform:none!important}
  *,*::before,*::after{animation:none!important;transition:none!important}
}
