.minw-175px{min-width:175px}

.airdrop-btn-secondary{
  background:#3A3447;
  border:1px solid rgba(255,255,255,.10);
}
.airdrop-btn-secondary:hover{
  background:#4A4360;
}

.airdrop-hero-bg{
  position: relative;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.02),
    inset 0 -140px 160px rgba(0,0,0,.55);
}
.airdrop-hero-bg::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.95;
  background:
    radial-gradient(800px 320px at 50% -10%, rgba(111,95,204,.22) 0%, rgba(111,95,204,0) 62%),
    radial-gradient(560px 280px at 18% 62%, rgba(238,134,255,.16) 0%, rgba(238,134,255,0) 64%),
    radial-gradient(520px 280px at 86% 72%, rgba(2,223,152,.08) 0%, rgba(2,223,152,0) 66%);
}
.airdrop-hero-bg::after{
  content:"";
  position:absolute;
  inset:-2px;
  pointer-events:none;
  opacity:.22;
  background-image: radial-gradient(circle, rgba(255,255,255,.10) 1px, rgba(255,255,255,0) 1.6px);
  background-size: 22px 22px;
  background-position: 0 0;
  filter: blur(.15px);
  mask-image: radial-gradient(72% 60% at 50% 45%, #000 0%, rgba(0,0,0,0) 70%);
  -webkit-mask-image: radial-gradient(72% 60% at 50% 45%, #000 0%, rgba(0,0,0,0) 70%);
}
.airdrop-hero-bg > *{
  position: relative;
  z-index: 1;
}

.airdrop-elig{
  width:min(560px, 100%);
  margin: 0 auto;
  display:flex;
  flex-direction:column;
  gap:12px;
}

.airdrop-alloc{
  margin-top:14px;
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
}

.airdrop-alloc__row{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  flex-wrap: nowrap;
  white-space: nowrap;
}

.airdrop-alloc__amount{
  font-size: clamp(42px, 9vw, 65px) !important;
  line-height:1;
  letter-spacing:.01em;
  white-space: nowrap;
}

.airdrop-loading-amount{
  opacity:.85;
  animation: airdropLoadingPulse 1.15s ease-in-out infinite;
}

.airdrop-loading-button{
  position:relative;
  overflow:hidden;
  animation: airdropLoadingButton 1.35s ease-in-out infinite;
}
.airdrop-loading-button::before{
  content:"";
  position:absolute;
  inset:-2px;
  background: linear-gradient(110deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.16) 40%, rgba(255,255,255,0) 70%);
  transform: translateX(-120%);
  animation: airdropLoadingShimmer 1.6s ease-in-out infinite;
  pointer-events:none;
}

@keyframes airdropLoadingPulse{
  0%,100%{ opacity:.75; transform:translateY(0) }
  50%{ opacity:1; transform:translateY(-1px) }
}

@keyframes airdropLoadingButton{
  0%,100%{ filter:saturate(.95); box-shadow:0 10px 24px rgba(111,95,204,.12) }
  50%{ filter:saturate(1.05); box-shadow:0 14px 34px rgba(111,95,204,.22) }
}

@keyframes airdropLoadingShimmer{
  0%{ transform: translateX(-120%) }
  60%{ transform: translateX(120%) }
  100%{ transform: translateX(120%) }
}

.airdrop-alloc__ticker{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  line-height:1;
  transform: translateY(1px);
}

.airdrop-alloc__ticker > div{
  white-space: nowrap;
  font-size: clamp(18px, 4.6vw, 32px) !important;
  line-height: 1.05;
}

.airdrop-status-dot{
  width:9px;
  height:9px;
  border-radius:999px;
  box-shadow:0 0 0 3px rgba(255,255,255,.06);
  animation: airdropStatusBlink 1.1s ease-in-out infinite;
  pointer-events:none;
}
.airdrop-status-dot--good{
  background:#02DF98;
  box-shadow:0 0 0 3px rgba(2,223,152,.14), 0 0 18px rgba(2,223,152,.45);
}
.airdrop-status-dot--bad{
  background:#DD2D2D;
  box-shadow:0 0 0 3px rgba(221,45,45,.14), 0 0 18px rgba(221,45,45,.40);
}
.airdrop-status-dot--loading{
  background:#8B77FF;
  box-shadow:0 0 0 3px rgba(111,95,204,.16), 0 0 18px rgba(111,95,204,.40);
}

@keyframes airdropStatusBlink{
  0%,100%{ opacity:.35; transform:scale(.92) }
  50%{ opacity:1; transform:scale(1) }
}

.airdrop-alloc__sol{
  position: relative;
  display: inline-block;
  padding-right: 12px;
}
.airdrop-alloc__sol .airdrop-status-dot{
  position: absolute;
  right: var(--airdrop-dot-right, -10px);
  bottom: var(--airdrop-dot-bottom, 15px);
}

@media (max-width: 650px){
  .airdrop-alloc__sol{ --airdrop-dot-right: -10px; --airdrop-dot-bottom: 14px; }
}
@media (max-width: 600px){
  .airdrop-alloc__sol{ --airdrop-dot-right: -9px; --airdrop-dot-bottom: 13px; }
}
@media (max-width: 550px){
  .airdrop-alloc__sol{ --airdrop-dot-right: -8px; --airdrop-dot-bottom: 12px; }
}
@media (max-width: 500px){
  .airdrop-alloc__sol{ --airdrop-dot-right: -7px; --airdrop-dot-bottom: 11px; }
}
@media (max-width: 450px){
  .airdrop-alloc__sol{ --airdrop-dot-right: -6px; --airdrop-dot-bottom: 10px; }
}
@media (max-width: 400px){
  .airdrop-alloc__sol{ --airdrop-dot-right: -5px; --airdrop-dot-bottom: 9px; }
}
@media (max-width: 350px){
  .airdrop-alloc__sol{ --airdrop-dot-right: -4px; --airdrop-dot-bottom: 8px; }
}
@media (max-width: 300px){
  .airdrop-alloc__sol{ --airdrop-dot-right: -3px; --airdrop-dot-bottom: 7px; }
}

.airdrop-elig-shell{
  width:min(560px, 100%);
  margin:0 auto;
  text-align:center;
}
.airdrop-elig-shell__title{
  font-family:"Chakra Petch", system-ui, -apple-system, "Segoe UI", sans-serif;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:12px;
  color:rgba(255,255,255,.78);
}
.airdrop-elig-shell__sub{
  margin-top:6px;
  font-family:"PP Mori", system-ui, -apple-system, "Segoe UI", sans-serif;
  font-weight:700;
  font-size:12px;
  line-height:1.35;
  color:rgba(255,255,255,.50);
}

.airdrop-elig__card{
  border:1px solid rgba(255,255,255,.10);
  border-radius:16px;
  background:#141317;
  padding:16px 16px 14px;
}

.airdrop-elig__top{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  margin-bottom:10px;
}

.airdrop-elig__status{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:6px 10px;
  border-radius:999px;
  font-family:"Chakra Petch", system-ui, -apple-system, "Segoe UI", sans-serif;
  font-size:12px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
  color:rgba(255,255,255,.86);
}

.airdrop-elig__status-dot{
  width:6px;
  height:6px;
  border-radius:999px;
  background:rgba(255,255,255,.55);
  box-shadow:0 0 0 3px rgba(255,255,255,.06);
}

.airdrop-elig__card--good .airdrop-elig__status{
  border-color:rgba(2,223,152,.22);
  background:rgba(2,223,152,.08);
  color:#9BEBD2;
}
.airdrop-elig__card--good .airdrop-elig__status-dot{ background:#02DF98; box-shadow:0 0 0 3px rgba(2,223,152,.12) }

.airdrop-elig__card--bad .airdrop-elig__status{
  border-color:rgba(221,45,45,.22);
  background:rgba(221,45,45,.08);
  color:#FFB2B2;
}
.airdrop-elig__card--bad .airdrop-elig__status-dot{ background:#DD2D2D; box-shadow:0 0 0 3px rgba(221,45,45,.12) }

.airdrop-elig__card--loading .airdrop-elig__status{
  border-color:rgba(111,95,204,.22);
  background:rgba(111,95,204,.10);
  color:#CBB8FF;
}
.airdrop-elig__card--loading .airdrop-elig__status-dot{
  background:#8B77FF;
  box-shadow:0 0 0 3px rgba(111,95,204,.14);
  animation: airdropEligPulse 1.1s ease-in-out infinite;
}

@keyframes airdropEligPulse{
  0%,100%{ transform:scale(1); opacity:.65 }
  50%{ transform:scale(1.25); opacity:1 }
}

.airdrop-elig__amount{
  display:flex;
  align-items:baseline;
  justify-content:center;
  gap:10px;
  font-family:"Chakra Petch", system-ui, -apple-system, "Segoe UI", sans-serif;
  font-weight:800;
  font-size:26px;
  line-height:1.05;
  color:#fff;
}

.airdrop-elig__amount--loading{
  color:rgba(255,255,255,.85);
}

.airdrop-elig__amount-placeholder{
  color:rgba(255,255,255,.50);
  letter-spacing:.02em;
}

.airdrop-elig__token{
  font-size:14px;
  font-weight:800;
  letter-spacing:.10em;
  color:rgba(255,255,255,.55);
}

.airdrop-elig__token-chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.03);
}

.airdrop-elig__token-icon{
  width:18px;
  height:18px;
  border-radius:999px;
  display:block;
  box-shadow:0 0 0 1px rgba(255,255,255,.12), 0 10px 22px rgba(0,0,0,.35);
}

.airdrop-elig__action{
  width:100%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  height:44px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.05);
  color:#fff;
  font-family:"PP Mori","Chakra Petch", system-ui, -apple-system, "Segoe UI", sans-serif;
  font-weight:800;
  font-size:14px;
  cursor:pointer;
  transition:background-color .18s ease, border-color .18s ease, transform .18s ease;
}

.airdrop-elig__action:hover{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.16);
}
.airdrop-elig__action:active{ transform:translateY(1px) }

.airdrop-elig__action-text{
  color:rgba(255,255,255,.88);
}

.airdrop-elig__action--secondary{
  background:rgba(255,255,255,.04);
  color:rgba(255,255,255,.86);
}

.airdrop-elig__action--primary{
  background:rgba(114,80,159,.92);
  border-color:rgba(238,134,255,.22);
  box-shadow: 0 12px 28px rgba(111,95,204,.18);
}
.airdrop-elig__action--primary:hover{
  background:rgba(114,80,159,.98);
  border-color:rgba(238,134,255,.30);
}

.airdrop-elig__action--loading{
  cursor:default;
  opacity:.85;
}

.airdrop-elig__action--loading:hover{
  background:rgba(255,255,255,.05);
  border-color:rgba(255,255,255,.10);
}

.airdrop-elig__dots{
  display:inline-flex;
  gap:2px;
  transform:translateY(-1px);
}
.airdrop-elig__dots span{
  animation: airdropEligDots 1.1s infinite;
  opacity:.35;
}
.airdrop-elig__dots span:nth-child(2){ animation-delay:.15s }
.airdrop-elig__dots span:nth-child(3){ animation-delay:.30s }

@keyframes airdropEligDots{
  0%,100%{ opacity:.25; transform:translateY(0) }
  50%{ opacity:.85; transform:translateY(-1px) }
}

.spinner-container{
  display:flex;
  align-items:center;
  justify-content:center;
}
.spinner-wrapper{
  display:flex;
  width:16px;
  height:16px;
  animation: spindiv 1.2s linear infinite;
}
.spinner-wrapper svg{
  width:100%;
  height:100%;
  display:block;
}
.spinner-circle{
  stroke: rgba(255,255,255,.85);
  animation: spin 1.5s infinite;
}

@keyframes spin{
  0%{ stroke-dasharray:1,150; stroke-dashoffset:0 }
  50%{ stroke-dasharray:90,150; stroke-dashoffset:-35 }
  100%{ stroke-dasharray:90,150; stroke-dashoffset:-124 }
}
@keyframes spindiv{
  from{ transform:rotate(0deg) }
  to{ transform:rotate(360deg) }
}

/* ---------- Allocation (hero-matching typography) ---------- */

.alloc-wrap{
  position:relative;
  display:inline-flex;
  flex-direction:column;
  align-items:flex-start;
  gap:18px;
  padding-top:26px;
}

/* Decorative brand divider above the block — centered, fades out at both ends */
.alloc-wrap::before{
  content:"";
  position:absolute;
  top:0;
  left:50%;
  transform:translateX(-50%);
  width:190px;
  height:5px;
  border-radius:999px;
  background:linear-gradient(
    90deg,
    rgba(206,132,255,0)    0%,
    rgba(206,132,255,0.15) 6%,
    rgba(206,132,255,0.4)  14%,
    rgba(213,120,240,0.7)  24%,
    rgba(230,96,190,0.88)  34%,
    rgba(247,64,138,0.97)  44%,
    rgba(255,48,119,1)     50%,
    rgba(247,64,138,0.97)  56%,
    rgba(230,96,190,0.88)  66%,
    rgba(213,120,240,0.7)  76%,
    rgba(206,132,255,0.4)  86%,
    rgba(206,132,255,0.15) 94%,
    rgba(206,132,255,0)    100%
  );
  filter:drop-shadow(0 6px 18px rgba(255,48,119,0.45));
}

.alloc-amount-row{
  display:inline-flex;
  align-items:baseline;
  gap:14px;
  font-family:"Bricolage Grotesque", sans-serif;
  line-height:0.85;
}

.alloc-amount{
  font-size:clamp(56px, 9vw, 104px);
  font-weight:700;
  letter-spacing:-0.035em;
  line-height:0.83;
  color:#3a0061;
  white-space:nowrap;
}

.alloc-amount--muted{
  color:rgba(58,0,97,0.25);
}

.alloc-unit{
  font-family:"Bricolage Grotesque", sans-serif;
  font-size:clamp(20px, 2.2vw, 34px);
  font-weight:700;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:rgba(58,0,97,0.5);
}

/* "Not eligible" — same hero headline language, slightly smaller */
.alloc-status-text{
  font-family:"Bricolage Grotesque", sans-serif;
  font-size:clamp(36px, 6vw, 68px);
  font-weight:700;
  letter-spacing:-0.025em;
  line-height:0.9;
  color:#3a0061;
  white-space:nowrap;
}

/* Tablet / mobile hero uses centered frame — follow suit */
.frame-1597880412-5 .alloc-wrap{
  align-items:center;
}

/* Loading pulse for the dash */
.alloc-amount--muted{
  animation:alloc-pulse 1.3s ease-in-out infinite;
}

@keyframes alloc-pulse{
  0%,100%{ opacity:.35 }
  50%    { opacity:.75 }
}

/* Animated dots in "Calculating..." */
.alloc-dots{
  display:inline-flex;
  gap:2px;
  margin-left:2px;
}
.alloc-dots span{
  animation:alloc-dots 1.1s infinite;
  opacity:.35;
}
.alloc-dots span:nth-child(2){ animation-delay:.15s }
.alloc-dots span:nth-child(3){ animation-delay:.30s }

@keyframes alloc-dots{
  0%,100%{ opacity:.25 }
  50%    { opacity:1 }
}

/* Calculating ghost label under the dash */
.alloc-cta-loading{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-width:170px;
  padding:22px 32px;
  border-radius:96px;
  background:rgba(255,255,255,0.15);
  color:rgba(26,0,51,0.55);
  font-family:"Plus Jakarta Sans", system-ui, sans-serif;
  font-size:16px;
  font-weight:700;
  letter-spacing:0.04em;
  text-transform:uppercase;
  pointer-events:none;
  user-select:none;
  opacity:.85;
}

/* Claim button: stable width so spinner doesn't shrink it */
.alloc-btn-inner{
  min-width:170px;
}

/* Spinner stroke on the gradient button */
.alloc-spinner .spinner-circle{ stroke:#ffffff; }


