/* ===== Grand Theme (v3.3 · 修复 fishFx 定位) ===== */
*{box-sizing:border-box}
html,body{margin:0;height:100%;color:var(--text,#0f0f0f);
  font:16px/1.55 "Inter",system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Noto Sans",sans-serif}
a{color:inherit;text-decoration:none}

/* 背景：渐变 + 背景图 + 暗角 */
.bg{position:fixed;inset:0;background:
  radial-gradient(1200px 800px at 10% -10%, rgba(98,232,183,.25), transparent 60%),
  radial-gradient(1200px 800px at 110% 10%, rgba(102,224,255,.25), transparent 60%),
  var(--bg);
  background-size:cover;background-position:center;
  filter:brightness(.80) saturate(1.05);z-index:-2}
.bg:after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 160px rgba(0,0,0,.45);z-index:-1}


/* 顶部 Logo 样式：横向长条形 */
.logo{
  width:165px;height:60px;border-radius:12px;
  overflow:hidden;display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,0.08);
  box-shadow:0 4px 16px rgba(0,0,0,.25)
}
.logo img{width:100%;height:100%;object-fit:contain;display:block}
.brand{display:flex;align-items:center;gap:16px}
.logo:not(:has(img)){background:linear-gradient(135deg,#66e0ff,#7affb2)}

/* 布局 */
.wrap{max-width:1080px;margin:0 auto;padding:28px 24px}

/* 顶部品牌区 */
.top{display:flex;align-items:center;justify-content:space-between;margin:8px 0 22px}
.brand{display:flex;align-items:center;gap:14px}
.top h1{margin:0;font-size:30px;font-weight:900;letter-spacing:.3px;
  text-shadow:0 14px 40px rgba(0,0,0,.45)}
.subtitle{opacity:.9;margin-top:2px;font-size:13px}
.top .admin{opacity:.95;padding:10px 14px;border-radius:12px;
  background:rgba(255,255,255,.08);backdrop-filter:blur(10px);
  border:1px solid rgba(255,255,255,.16);transition:.2s}
.top .admin:hover{transform:translateY(-1px);background:rgba(255,255,255,.12)}

/* 列表卡片 */
.list{display:flex;flex-direction:column;gap:14px}
.item{
  display:grid;grid-template-columns:1fr 150px 90px 120px;gap:12px;
  align-items:center;background:var(--card,rgba(0,0,0,.6));
  padding:14px;border-radius:16px;border:1px solid rgba(255,255,255,.08);
  box-shadow:0 8px 24px rgba(0,0,0,.25);
  transition:.2s;
}
.item:hover{transform:translateY(-2px);
  box-shadow:0 16px 30px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.2)}

.left{min-width:0}
.left .domain{font-weight:800;font-size:18px;word-break:break-all}
.left .note{opacity:.9;font-size:13px;margin-top:6px}

/* 延迟指示：动态呼吸光圈 */
.latency{display:flex;align-items:center;gap:10px;font-weight:900;letter-spacing:.2px}
.latency .dot{--c:#9aa5b1;width:12px;height:12px;border-radius:999px;background:var(--c);
  box-shadow:0 0 0 0 rgba(255,255,255,.0);position:relative}
.latency .dot::after{content:'';position:absolute;inset:-4px;border-radius:999px;
  border:2px solid rgba(255,255,255,.18);opacity:.35}
.latency.fast .dot{--c:#19e07a;animation:pulse 1.4s infinite}
.latency.mid  .dot{--c:#ffd166;animation:pulse 1.8s infinite}
.latency.slow .dot{--c:#ff6b6b;animation:pulse 2.2s infinite}
@keyframes pulse{
  0%{box-shadow:0 0 0 0 rgba(255,255,255,.2)}
  70%{box-shadow:0 0 0 10px rgba(255,255,255,0)}
  100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}
}

/* 霓虹渐变按钮 */
.btn{padding:12px 16px;border:none;border-radius:14px;
  background:linear-gradient(135deg,#19e07a,#66e0ff);color:#021;
  font-weight:900;text-align:center;cursor:pointer;
  box-shadow:0 10px 20px rgba(0,0,0,.25);transition:.2s}
.btn:hover{transform:translateY(-2px)}
.btn.ghost{background:rgba(255,255,255,.06);color:var(--text);
  border:1px solid rgba(255,255,255,.22)}
.btn.ghost:hover{background:rgba(255,255,255,.12)}

.empty{padding:18px;border-radius:16px;background:rgba(0,0,0,.35);
  text-align:center;border:1px solid rgba(255,255,255,.16)}

/* 移动端自适配 */
@media (max-width:820px){
  .wrap{padding:18px}
  .top h1{font-size:24px}
  .item{grid-template-columns:1fr;gap:10px;padding:14px}
  .btn,.btn.ghost{width:100%}
  .left .domain{font-size:16px}
  .left .note{font-size:12px}
}

#jsi-flying-fish-container {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  height: 260px;         /* 控制小鱼区域的高度，比如 200~300px */
  z-index: -1;           /* 在内容下方 */
  pointer-events: none;  /* 不挡交互 */
  overflow: hidden;      /* 避免鱼越界 */
}


