/* App "Fish": stagno, lenza e punteggio. Solo per gioco, nessun collegamento a Discord o al bot. */
.fish-pond {
  position: relative;
  height: 150px;
  border-radius: var(--radius-md);
  overflow: hidden;
  background: linear-gradient(180deg, #bfe9ff 0%, #4fb3e0 45%, #1c6fa0 100%);
  border: 1px solid var(--win-line);
  margin-bottom: 10px;
}
.fish-wave {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 40px;
  fill: rgba(255, 255, 255, 0.28);
  animation: fish-wave-move 6s linear infinite;
}
.fish-wave path { fill: inherit; }
@keyframes fish-wave-move {
  from { transform: translateX(0); }
  to { transform: translateX(-50px); }
}
.fish-line {
  position: absolute;
  top: -30px;
  left: 50%;
  width: 2px;
  height: 0;
  background: rgba(20, 20, 30, 0.55);
  transform: translateX(-50%);
  transition: height 0.5s ease-in;
}
.fish-line.cast { top: 0; height: 95px; }
.fish-line.bite { animation: fish-tug 0.18s ease-in-out infinite; }
@keyframes fish-tug {
  0%, 100% { transform: translateX(-50%) rotate(0deg); }
  50% { transform: translateX(-50%) rotate(4deg); }
}
.fish-hook {
  position: absolute;
  bottom: -14px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 16px;
  line-height: 1;
}
.fish-splash {
  position: absolute;
  left: 50%;
  bottom: 34px;
  width: 30px;
  height: 30px;
  transform: translate(-50%, 0);
  border-radius: 50%;
  border: 2px solid rgba(255, 255, 255, 0.75);
  opacity: 0;
}
.fish-splash.on { animation: fish-splash-pop 0.5s ease-out; }
@keyframes fish-splash-pop {
  0% { opacity: 0.9; transform: translate(-50%, 0) scale(0.3); }
  100% { opacity: 0; transform: translate(-50%, 0) scale(2.2); }
}
#fish-bite {
  background: linear-gradient(180deg, #ffe28a, #f59e0b 60%, #fbbf24);
}
#fish-bite:hover { background: linear-gradient(180deg, #fff0bb, #f59e0b 60%, #fbbf24); }
.fish-score {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  margin-top: 12px;
  padding: 8px 10px;
  border-radius: var(--radius-sm);
  background: rgba(124, 58, 237, 0.08);
  border: 1px solid var(--win-line);
  font-size: 13px;
}
.fish-log {
  list-style: none;
  margin: 6px 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
  max-height: 130px;
  overflow-y: auto;
}
.fish-log li {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  padding: 5px 8px;
  border-radius: var(--radius-sm);
  background: var(--win-panel);
  border: 1px solid var(--win-line);
  font-size: 12.5px;
}
.fish-log li b { color: var(--v600); }
