/* ══ 破晓定制 · 卡密门禁（共享样式） ══════════════════════════════
   配色与查询网站一致：pitch 色阶 #060d1c / #0a1630 / #0f2145 / #16305e
   高亮蓝 #4a8bff，提示红 #e63329
   由 px-gate.js 注入遮罩时使用，任何页面 <link> 一下即可。 */

/* 上锁时：禁止滚动 + 首屏内容不闪（脚本在 <head> 里同步执行，先给 <html> 加类） */
html.pxg-lock{overflow:hidden!important}
html.pxg-lock body>*{visibility:hidden!important}
html.pxg-lock body>.pxg{visibility:visible!important}

.pxg{
  position:fixed;inset:0;z-index:2147483000;
  display:flex;align-items:center;justify-content:center;padding:18px;
  background:
    radial-gradient(680px 380px at 50% -8%,rgba(74,139,255,.18),transparent 70%),
    linear-gradient(180deg,#070f1f,#060d1c 60%,#050a15);
  color:#e8eef8;
  font:400 15px/1.55 system-ui,-apple-system,"Segoe UI","Microsoft YaHei",sans-serif;
  -webkit-text-size-adjust:100%;
}
.pxg[hidden]{display:none!important}
.pxg *{box-sizing:border-box}

.pxg-box{
  width:100%;max-width:360px;padding:22px 20px 18px;text-align:center;
  border:1px solid rgba(255,255,255,.12);border-radius:18px;
  background:linear-gradient(160deg,rgba(22,48,94,.66),rgba(10,22,48,.92));
  box-shadow:0 18px 50px rgba(0,0,0,.5);
}
.pxg-logo{
  width:46px;height:46px;border-radius:13px;object-fit:cover;display:block;margin:0 auto 10px;
  box-shadow:0 0 0 1px rgba(255,255,255,.16);
}
.pxg-box h3{margin:0;font-size:18px;font-weight:600;letter-spacing:.4px}
.pxg-box .pxg-sub{margin:8px 0 0;font-size:13px;line-height:1.6;color:#93a4c0}

.pxg-in{display:flex;gap:8px;margin:16px 0 0}
.pxg-in input{
  flex:1 1 auto;min-width:0;height:46px;padding:0 13px;
  border-radius:12px;border:1px solid rgba(255,255,255,.16);
  background:rgba(0,0,0,.34);color:#e8eef8;outline:none;
  font:600 16px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:1.4px;
  -webkit-appearance:none;appearance:none;
}
.pxg-in input:focus{border-color:rgba(74,139,255,.7);box-shadow:0 0 0 3px rgba(74,139,255,.16)}
.pxg-in input::placeholder{color:#5b6a86;font-weight:500;letter-spacing:1px}
.pxg-in button{
  flex:0 0 auto;height:46px;padding:0 18px;border:0;border-radius:12px;cursor:pointer;
  background:linear-gradient(150deg,#3f82ec,#2a5fd0);color:#fff;
  font-size:15px;font-weight:600;letter-spacing:.5px;
  box-shadow:0 6px 18px rgba(42,95,208,.4);
}
.pxg-in button:disabled{opacity:.6;cursor:default}
.pxg-in button:active{transform:translateY(1px)}

.pxg-msg{min-height:20px;margin-top:10px;font-size:13px;line-height:1.55;color:#93a4c0}
.pxg-msg.bad{color:#ff9d9d}
.pxg-msg.ok{color:#7ee2a8}
.pxg-tip{margin-top:14px;font-size:12.5px;line-height:1.7;color:#93a4c0}
.pxg-tip a{color:#8fb8ff;text-decoration:none}
.pxg-tip code{
  padding:1px 6px;border-radius:6px;background:rgba(255,255,255,.08);
  font-family:ui-monospace,Consolas,monospace;letter-spacing:1px;color:#cfdcf5;
}
.pxg-spin{
  display:inline-block;width:14px;height:14px;margin-right:6px;vertical-align:-2px;
  border:2px solid rgba(255,255,255,.32);border-top-color:#fff;border-radius:50%;
  animation:pxg-spin .7s linear infinite;
}
@keyframes pxg-spin{to{transform:rotate(360deg)}}

/* 「正在核对卡密」用的大号转圈（每次打开都要向服务器核一次，得有个交代） */
.pxg-big{
  width:28px;height:28px;margin:4px auto 12px;
  border:3px solid rgba(255,255,255,.22);border-top-color:#4a8bff;border-radius:50%;
  animation:pxg-spin .75s linear infinite;
}
@media (prefers-reduced-motion:reduce){ .pxg-big,.pxg-spin{animation:none} }

/* ══ 破晓定制 · 「返回上一层」悬浮按钮（0915 新增） ══════════════════════
   需求原话：右下角、小一点、不要隐藏，任何页面点一下都能退到上一层。

   为什么写在 px-gate.css 里：index / multi / tactic / player-db 四个页面
   都 <link> 了这个文件 ⇒ 改一处四页同时生效，不必去动那几个 HTML
   （尤其 player-db.html 有 3.9MB，能不动就不动）。

   为什么 z-index 是 2147482000，刚好比门禁遮罩（2147483000）低 1000：
   门禁必须压得住它，否则没卡密的人可以点它溜走。门禁是全屏的 body 子元素，
   天然盖住；而且 .pxg-lock 会把 body 子元素整体 visibility:hidden，
   所以上锁期间它连影子都不会露出来。

   为什么 bottom 用变量 --pxgb-b 而不是写死 14px：
   手机端查询页底部有一条 60px 高的全宽导航条（球员评分 / 多功能入口 /
   统计对战 / 排行榜）。写死 14px 会正好压在「排行榜」那一格上。
   由 px-gate.js 量出底栏高度写进 --pxgb-b；桌面端量不到，落回 14px。 */
.pxgb{
  position:fixed;right:14px;z-index:2147482000;
  bottom:calc(var(--pxgb-b,14px) + env(safe-area-inset-bottom,0px));
  display:inline-flex;align-items:center;gap:5px;
  height:36px;padding:0 13px 0 10px;border-radius:18px;
  border:1px solid rgba(255,255,255,.14);cursor:pointer;
  background:linear-gradient(160deg,rgba(22,48,94,.92),rgba(10,22,48,.95));
  box-shadow:0 8px 22px rgba(0,0,0,.42);
  color:#e8eef8;
  font:600 13px/1 system-ui,-apple-system,"Segoe UI","Microsoft YaHei",sans-serif;
  -webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;
  transition:border-color .16s,box-shadow .16s,transform .16s;
}
.pxgb:hover{border-color:rgba(74,139,255,.6);box-shadow:0 10px 26px rgba(42,95,208,.4)}
.pxgb:active{transform:translateY(1px)}
.pxgb svg{width:14px;height:14px;flex:0 0 auto;display:block}
.pxgb span{white-space:nowrap}
@media (prefers-reduced-motion:reduce){ .pxgb{transition:none} }
