:root {
  --g-fishing-night: 0;
  --g-fishing-sky-top: #a9dcf7;
  --g-fishing-sky-bottom: #fff0d4;
  --g-fishing-hill-far: #bfe3b0;
  --g-fishing-hill: #93cf7f;
  --g-fishing-tree: #5fae5c;
  --g-fishing-tree-dark: #3f8c4a;
  --g-fishing-bank: #8fd06c;
  --g-fishing-bank-dark: #5ea64f;
  --g-fishing-shore: #e3cf9c;
  --g-fishing-water-far: #b4e8f4;
  --g-fishing-water-near: #5cbcd6;
  --g-fishing-water-deep: #2f88ab;
  --g-fishing-shimmer: rgba(255, 255, 255, 0.6);
  --g-fishing-ripple: rgba(255, 255, 255, 0.75);
  --g-fishing-reflect: rgba(255, 255, 255, 0.22);
  --g-fishing-pad: #6cc35a;
  --g-fishing-pad-dark: #3f9446;
  --g-fishing-lotus: #ffb0cd;
  --g-fishing-lotus-tip: #fff0f6;
  --g-fishing-lotus-center: #ffd95a;
  --g-fishing-reed: #86c45c;
  --g-fishing-reed-dark: #4f8f3e;
  --g-fishing-cattail: #8a5a3a;
  --g-fishing-dock: #d0a271;
  --g-fishing-dock-dark: #8f6441;
  --g-fishing-rod: #8a5a3a;
  --g-fishing-rod-grip: #e9645c;
  --g-fishing-line: rgba(255, 255, 255, 0.92);
  --g-fishing-line-shadow: rgba(30, 60, 80, 0.25);
  --g-fishing-bobber-top: #ff6f6a;
  --g-fishing-bobber-bottom: #fffaf2;
  --g-fishing-fish-shadow: rgba(18, 62, 88, 0.32);
  --g-fishing-zone: #79d86a;
  --g-fishing-zone-hot: #b8f59a;
  --g-fishing-meter: rgba(255, 250, 242, 0.96);
  --g-fishing-meter-well: rgba(47, 42, 38, 0.12);
  --g-fishing-marker: #fffaf2;
  --g-fishing-marker-edge: #3b2a22;
  --g-fishing-progress: #f7c548;
  --g-fishing-card: var(--surface);
  --g-fishing-card-ink: var(--ink);
  --g-fishing-card-soft: var(--ink-soft);
  --g-fishing-portrait: #d8f2fa;
  --g-fishing-new: var(--pop);
  --g-fishing-on-new: var(--on-accent);
  --g-fishing-glow: #fff3b0;
  --g-fishing-sparkle: #fff7d6;
  --g-fishing-aim: rgba(255, 255, 255, 0.95);
  --g-fishing-text: #fffaf2;
  --g-fishing-text-edge: rgba(30, 40, 60, 0.45);
  --g-fishing-moon: #fff3c4;
  --g-fishing-firefly: #fff19a;
  --g-fishing-r-junk: #b4a28f;
  --g-fishing-r-common: var(--tier-common);
  --g-fishing-r-uncommon: var(--tier-rare);
  --g-fishing-r-rare: var(--tier-legendary);
  --g-fishing-pill-bg: var(--hud-glass);
  --g-fishing-pill-ink: var(--hud-glass-ink);
  --g-fishing-pill-pad: 10px 16px;
  --g-fishing-pill-gap: var(--gap-s);
  --g-fishing-pill-shadow: 0 6px 18px rgba(30, 40, 60, 0.18);
  --g-fishing-ui-inset: var(--gap-m);
  --g-fishing-btn-min: 96px;
}

:root.dark,
:root.theme-cyberneon,
:root.theme-vaporwave,
:root.theme-darkacademia {
  --g-fishing-night: 1;
  --g-fishing-sky-top: #141a3d;
  --g-fishing-sky-bottom: #3b3f7c;
  --g-fishing-hill-far: #2f3f66;
  --g-fishing-hill: #27485a;
  --g-fishing-tree: #22423f;
  --g-fishing-tree-dark: #162e2f;
  --g-fishing-bank: #2f5f4a;
  --g-fishing-bank-dark: #1f4436;
  --g-fishing-shore: #5a5872;
  --g-fishing-water-far: #4a5f9a;
  --g-fishing-water-near: #24406e;
  --g-fishing-water-deep: #142850;
  --g-fishing-shimmer: rgba(214, 226, 255, 0.4);
  --g-fishing-ripple: rgba(214, 226, 255, 0.5);
  --g-fishing-reflect: rgba(255, 243, 196, 0.2);
  --g-fishing-pad: #3f8a5a;
  --g-fishing-pad-dark: #24583c;
  --g-fishing-lotus: #f2a6d0;
  --g-fishing-lotus-tip: #fde8f4;
  --g-fishing-reed: #3f7650;
  --g-fishing-reed-dark: #234a33;
  --g-fishing-cattail: #6a4a38;
  --g-fishing-dock: #8f6f52;
  --g-fishing-dock-dark: #5a4232;
  --g-fishing-line: rgba(235, 240, 255, 0.85);
  --g-fishing-fish-shadow: rgba(4, 10, 30, 0.45);
  --g-fishing-portrait: #2b3f6e;
  --g-fishing-meter: rgba(28, 34, 64, 0.95);
  --g-fishing-meter-well: rgba(255, 255, 255, 0.1);
  --g-fishing-pill-shadow: 0 6px 18px rgba(0, 0, 0, 0.35);
}

:root.theme-cyberneon {
  --g-fishing-sky-top: #070a1c;
  --g-fishing-sky-bottom: #2a1450;
  --g-fishing-water-far: #1f3f7a;
  --g-fishing-water-near: #102a52;
  --g-fishing-water-deep: #0a1838;
  --g-fishing-shimmer: rgba(0, 240, 208, 0.45);
  --g-fishing-ripple: rgba(0, 240, 208, 0.55);
  --g-fishing-lotus: #ff3df2;
  --g-fishing-zone: #00f0d0;
  --g-fishing-zone-hot: #8affef;
  --g-fishing-bobber-top: #ff3df2;
  --g-fishing-firefly: #8affef;
}

:root.theme-vaporwave {
  --g-fishing-sky-top: #2a1f5c;
  --g-fishing-sky-bottom: #ff8fc8;
  --g-fishing-water-far: #7a6cc8;
  --g-fishing-water-near: #3f3a8f;
}

#game-dom .g-fishing-ui {
  position: absolute;
  left: var(--g-fishing-ui-inset);
  right: var(--g-fishing-ui-inset);
  bottom: var(--g-fishing-ui-inset);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--g-fishing-pill-gap);
  pointer-events: none;
}

#game-dom .g-fishing-ui .btn {
  pointer-events: auto;
  min-width: var(--g-fishing-btn-min);
}

.g-fishing-status {
  margin: 0;
  padding: var(--g-fishing-pill-pad);
  border-radius: var(--r-pill);
  background: var(--g-fishing-pill-bg);
  color: var(--g-fishing-pill-ink);
  box-shadow: var(--g-fishing-pill-shadow);
  font-weight: var(--fw-b);
  font-size: var(--fs-s);
  text-align: center;
  animation: fade var(--t-med) var(--ease);
}
