/* 深海钓鱼 + 图鉴 */
.wm-deep-overlay,.wm-dex-overlay{
  position:fixed;inset:0;z-index:9400;display:none;align-items:center;justify-content:center;
  background:rgba(0,0,0,.78);backdrop-filter:blur(6px);padding:12px;
}
.wm-deep-box,.wm-dex-box{
  width:min(94vw,400px);max-height:92dvh;overflow:auto;
  border-radius:18px;background:linear-gradient(165deg,#0c4a6e 0%,#0f172a 55%,#1e1b4b 100%);
  color:#e2e8f0;border:1px solid rgba(125,211,252,.35);
  box-shadow:0 20px 50px rgba(0,0,0,.55);padding:14px;
}
.wm-deep-head,.wm-dex-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.wm-deep-head h2,.wm-dex-head h2{margin:0;font-size:18px;color:#7dd3fc}
.wm-deep-close,.wm-dex-close{width:32px;height:32px;border-radius:10px;background:rgba(255,255,255,.1);color:#fff;font-size:16px;border:0}
.wm-deep-meta{font-size:12px;color:#94a3b8;margin-bottom:10px}
.wm-deep-canvas-wrap{
  position:relative;border-radius:14px;overflow:hidden;
  border:2px solid rgba(56,189,248,.4);margin-bottom:8px;
  transition:transform .12s ease, box-shadow .12s ease;
}
.wm-deep-canvas-wrap.shake{ animation:deepShake .45s ease; }
.wm-deep-canvas-wrap.reeling{ box-shadow:0 0 0 2px rgba(74,222,128,.5), 0 0 24px rgba(74,222,128,.25); }
@keyframes deepShake{
  0%,100%{ transform:translate(0,0); }
  20%{ transform:translate(-4px,2px); }
  40%{ transform:translate(4px,-2px); }
  60%{ transform:translate(-3px,-1px); }
  80%{ transform:translate(3px,1px); }
}
#wm-deep-fish-canvas{
  display:block;width:100%;height:min(42vh,260px);min-height:200px;
  background:linear-gradient(180deg,#0369a1,#0f172a);
  touch-action:none;cursor:grab;
}
#wm-deep-fish-canvas:active{ cursor:grabbing; }
.wm-deep-bite-flash{
  position:absolute;inset:0;pointer-events:none;opacity:0;
  background:radial-gradient(circle at 50% 55%, rgba(250,204,21,.55), transparent 62%);
  transition:opacity .08s ease;
}
.wm-deep-bite-flash.on{ opacity:1; }
.wm-deep-tension-wrap{ margin:4px 0 8px; }
.wm-deep-tension-label{font-size:11px;color:#94a3b8;margin-bottom:4px;text-align:center}
.wm-deep-tension-track{
  height:10px;border-radius:999px;background:rgba(0,0,0,.35);
  overflow:hidden;border:1px solid rgba(255,255,255,.12);
}
.wm-deep-tension-fill{
  height:100%;width:0%;border-radius:999px;
  background:linear-gradient(90deg,#22c55e,#86efac);
  transition:width .06s linear;
  box-shadow:0 0 12px rgba(74,222,128,.55);
}
.wm-deep-tension-fill.ready{ background:linear-gradient(90deg,#facc15,#fde047); }
.wm-deep-hint{
  text-align:center;font-size:13px;color:#bae6fd;min-height:20px;margin-bottom:8px;
  font-weight:700;transition:color .2s ease;
}
.wm-deep-hint.hot{ color:#fde047; }
.wm-deep-hint.ok{ color:#86efac; }
.wm-deep-actions{display:flex;gap:8px;flex-wrap:wrap}
.wm-deep-actions button{flex:1;min-width:100px;padding:12px 10px;border-radius:12px;font-weight:900;font-size:14px;border:0}
.wm-deep-cast{
  background:linear-gradient(135deg,#0ea5e9,#2563eb);color:#fff;
  position:relative;overflow:hidden;
}
.wm-deep-cast:disabled{opacity:.45}
.wm-deep-cast.loading .wm-deep-cast-txt{ opacity:.2; }
.wm-deep-cast.loading::after{
  content:'';position:absolute;inset:0;margin:auto;
  width:22px;height:22px;border-radius:50%;
  border:3px solid rgba(255,255,255,.35);border-top-color:#fff;
  animation:deepSpin .7s linear infinite;
}
@keyframes deepSpin{ to{ transform:rotate(360deg); } }
.wm-deep-dex-btn{background:rgba(255,255,255,.12);color:#e2e8f0;border:1px solid rgba(255,255,255,.2)}
.wm-catch-overlay{ z-index:9500; }
.wm-catch-box{ animation:catchPop .35s cubic-bezier(.34,1.4,.64,1); }
@keyframes catchPop{
  from{ transform:scale(.88); opacity:0; }
  to{ transform:scale(1); opacity:1; }
}
.wm-catch-card{text-align:center;padding:12px 8px}
.wm-catch-card.q-gold .wm-catch-emoji{ filter:drop-shadow(0 0 16px rgba(252,211,77,.8)); }
.wm-catch-emoji{font-size:56px;line-height:1;margin:8px 0;animation:catchEmoji .5s ease}
@keyframes catchEmoji{
  0%{ transform:scale(.3) rotate(-8deg); }
  70%{ transform:scale(1.12) rotate(4deg); }
  100%{ transform:scale(1); }
}
.wm-catch-name{font-size:20px;font-weight:1000;color:#fff}
.wm-catch-rarity{font-size:12px;margin:4px 0 10px}
.wm-catch-rarity.q-normal{color:#94a3b8}
.wm-catch-rarity.q-green{color:#4ade80}
.wm-catch-rarity.q-purple{color:#c084fc}
.wm-catch-rarity.q-gold{color:#fcd34d}
.wm-catch-btns{display:flex;flex-direction:column;gap:8px}
.wm-catch-btns button{padding:12px;border-radius:12px;font-weight:900;border:0}
.wm-catch-add{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff}
.wm-catch-release{background:rgba(255,255,255,.1);color:#e2e8f0}
.wm-catch-replace{background:linear-gradient(135deg,#f59e0b,#ea580c);color:#fff}
.wm-dex-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}
.wm-dex-item{border-radius:12px;padding:8px 6px;text-align:center;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);min-height:88px}
.wm-dex-item.locked{opacity:.45;filter:grayscale(.8)}
.wm-dex-item.in-tank{box-shadow:0 0 0 2px rgba(34,197,94,.55)}
.wm-dex-item .di-emoji{font-size:28px}
.wm-dex-item .di-name{font-size:10px;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wm-dex-item .di-tag{font-size:9px;margin-top:2px;opacity:.85}
.wm-dex-progress{font-size:12px;color:#7dd3fc;text-align:center;margin:6px 0}
