.fragile-hover{
  position:relative;
  overflow:visible;
}
.fragile-hover:hover:not(.broken){
  filter:brightness(1.1);
  animation:suggest-fragile-tremble 0.35s infinite;
}
.fragile-hover:hover:not(.broken)::before{opacity:0.3;}
.fragile-hover::before{
  content:"";
  position:absolute;
  inset:0;
  opacity:0;
  pointer-events:none;
  background-image:
    linear-gradient(105deg, transparent 46%, rgba(10,20,10,0.85) 47%, rgba(10,20,10,0.85) 48%, transparent 49%),
    linear-gradient(70deg, transparent 61%, rgba(10,20,10,0.7) 62%, transparent 63%),
    linear-gradient(140deg, transparent 27%, rgba(10,20,10,0.6) 28%, transparent 29%),
    linear-gradient(95deg, transparent 78%, rgba(10,20,10,0.75) 79%, transparent 80%);
  transition:opacity 0.3s ease;
}

@keyframes suggest-fragile-tremble{
  0%, 100%{ transform:translate(0,0) rotate(0deg); }
  20%{ transform:translate(-0.6px,0.4px) rotate(-0.15deg); }
  40%{ transform:translate(0.5px,-0.5px) rotate(0.15deg); }
  60%{ transform:translate(-0.4px,-0.4px) rotate(-0.1deg); }
  80%{ transform:translate(0.6px,0.3px) rotate(0.1deg); }
}

#suggestToggle.feature-btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  background:#5FE063;
  color:#0a0a0a;
  border:none;
  padding:10px 16px;
  font-family:'Share Tech Mono', monospace;
  font-size:12px;
  font-weight:bold;
  letter-spacing:0.5px;
  text-transform:uppercase;
  cursor:pointer;
  margin-top:0;
  transition:filter 0.2s ease;
}

#suggestToggle.feature-btn .quota-pill{
  font-size:10px;
  font-weight:normal;
  background:rgba(0,0,0,0.18);
  padding:2px 6px;
  border:none;
  border-radius:2px;
  color:inherit;
}

#suggestToggle.feature-btn.booming{
  animation:suggest-boom-punch 0.35s ease-out;
}
@keyframes suggest-boom-punch{
  0%{ transform:scale(1); }
  15%{ transform:scale(0.95) rotate(-0.6deg); }
  35%{ transform:scale(1.04) rotate(0.6deg); }
  55%{ transform:scale(0.98) rotate(-0.3deg); }
  75%{ transform:scale(1.01); }
  100%{ transform:scale(1); }
}

#suggestToggle.feature-btn.broken{
  cursor:not-allowed;
  color:#2a2a2a;
  background:#3f7a41;
  animation:suggest-dying-flicker 8s infinite;
}
#suggestToggle.feature-btn.broken::before{opacity:1;}
#suggestToggle.feature-btn.broken .quota-pill{background:rgba(0,0,0,0.35);}

@keyframes suggest-dying-flicker{
  0%, 100%{ filter:brightness(1); }
  2%{ filter:brightness(0.4); }
  3%{ filter:brightness(1.2); }
  4%{ filter:brightness(0.3); }
  5%{ filter:brightness(1); }
  7%{ filter:brightness(0.5); }
  8%{ filter:brightness(1.15); }
  9%{ filter:brightness(0.35); }
  11%{ filter:brightness(1); }
}

.fragile-hover .spark{
  position:absolute;
  width:3px;
  height:3px;
  border-radius:50%;
  background:#FFE9A8;
  box-shadow:0 0 6px 2px rgba(255,220,140,0.9), 0 0 12px 4px rgba(255,150,50,0.5);
  pointer-events:none;
  animation:suggest-spark-fly 0.55s ease-out forwards;
}
@keyframes suggest-spark-fly{
  0%{ transform:translate(0,0) scale(1); opacity:1; }
  100%{ transform:translate(var(--dx), var(--dy)) scale(0.2); opacity:0; }
}
