/* ===== 评委端（手机）样式 ===== */
body:not(.has-custom-bg){background:var(--bg)}
.j-wrap{max-width:520px;margin:0 auto;min-height:100vh;padding:10px 14px 26px;display:flex;flex-direction:column;gap:14px}

/* 返回（评分页 / 记录页）；LOGO+标题条已去掉，内容靠顶 */
.j-back{align-self:flex-start}

.j-head{text-align:center;margin:0}
.j-head .t{font-size:24px;font-weight:800;color:#fff;letter-spacing:2px}
.j-head .s{margin-top:8px;display:inline-flex;align-items:center;gap:6px;color:var(--green);border:1px solid rgba(34,227,154,.4);padding:5px 14px;border-radius:999px;font-size:13px}
.j-head .s svg{width:15px;height:15px}

/* 信息条 */
.j-info{display:flex;align-items:center;justify-content:space-around;padding:12px 10px;gap:8px;font-size:12.5px}
.j-info .it{display:flex;align-items:center;gap:6px;color:var(--txt);text-align:left;line-height:1.4}
.j-info .it svg{width:18px;height:18px;flex:0 0 auto}
.j-info .it.blue svg{color:var(--blue)} .j-info .it.green svg{color:var(--green)}
.j-info .sep{width:1px;height:26px;background:var(--line);flex:0 0 auto}

/* 选手列表卡片（白色透明毛玻璃） */
.p-list{display:flex;flex-direction:column;gap:12px}
.p-item{display:flex;align-items:center;gap:14px;padding:14px 16px;text-decoration:none;color:inherit}
.p-item .pno{
  width:56px;height:52px;flex:0 0 auto;border-radius:10px;
  display:flex;align-items:baseline;justify-content:center;
  font-size:26px;font-weight:800;color:#fff;
  background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.32);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  box-shadow:inset 0 0 18px rgba(255,255,255,.06);
}
.p-item .pno small{font-size:12px;color:rgba(255,255,255,.72)}
.p-item .pname{flex:1;font-size:18px;font-weight:700;color:#fff}
.p-item.done .pno{
  border-color:rgba(34,227,154,.55);color:var(--green);
  background:rgba(255,255,255,.18);
}
.p-item.doing{box-shadow:0 0 0 1px var(--blue),0 0 18px rgba(55,162,255,.25)}
.p-item.doing .pno{
  border-color:rgba(55,162,255,.55);color:#9fd0ff;
  background:rgba(255,255,255,.16);
}

/* 待评分 / 已暂存 等徽标 */
.j-wrap .badge-mut{
  color:rgba(255,255,255,.92);border-color:rgba(255,255,255,.32);
  background:rgba(255,255,255,.14);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
}

/* 底部按钮组 */
.j-actions{display:grid;grid-template-columns:1fr 1.3fr;gap:12px}
.j-actions .btn{
  padding:15px 8px;font-size:16px;
  color:#fff;border:1px solid rgba(255,255,255,.32);
  background:rgba(255,255,255,.14);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  box-shadow:inset 0 0 18px rgba(255,255,255,.06);
}
.j-actions .btn:hover{
  background:rgba(255,255,255,.22);border-color:rgba(255,255,255,.45);color:#fff;
}
.j-actions .btn-primary{
  border:none;color:#04121a;
  background:linear-gradient(90deg,var(--blue),var(--green));
  backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;
}
.j-actions .btn[disabled],.j-actions .btn:disabled{
  background:rgba(255,255,255,.08);color:rgba(255,255,255,.42);
  border-color:rgba(255,255,255,.18);opacity:1;
}
.j-note{text-align:center;color:var(--mut);font-size:12px;display:flex;align-items:center;justify-content:center;gap:6px}
.j-note svg{width:14px;height:14px}

/* 登录 */
.j-login{max-width:400px;margin:8vh auto 0;padding:28px 24px}
.j-login h2{margin:0 0 4px;text-align:center;font-size:22px}
.j-login .sub{text-align:center;color:var(--mut);font-size:13px;margin-bottom:22px}
.j-login label{display:block;font-size:13px;color:var(--mut);margin:14px 0 6px}
.j-login input{width:100%;padding:13px 14px;background:#070d18;border:1px solid var(--line);border-radius:10px;color:var(--txt);font-size:16px}
.j-login input:focus{outline:none;border-color:var(--blue)}
.j-login .btn{width:100%;margin-top:22px}

/* 评分表 */
.score-head{display:flex;align-items:center;gap:14px;padding:16px}
.score-head .av{width:54px;height:54px;flex:0 0 auto;border-radius:12px;border:1px solid var(--blue);display:flex;align-items:center;justify-content:center;color:var(--blue)}
.score-head .av svg{width:26px;height:26px}
.score-head .txt .t{font-size:19px;font-weight:800;color:#fff}
.score-head .txt .t b{color:var(--green)}
.score-head .txt .d{font-size:12.5px;color:var(--mut);margin-top:3px}

.dim{padding:14px 16px}
.dim .dim-h{display:flex;align-items:center;gap:12px;margin-bottom:6px}
.dim .dim-h .di{width:40px;height:40px;flex:0 0 auto;border-radius:10px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--blue)}
.dim .dim-h .di svg{width:22px;height:22px}
.dim .dim-h .dt{flex:1}
.dim .dim-h .dt .n{font-size:16px;font-weight:800;color:#fff}
.dim .dim-h .dt .m{font-size:12px;color:var(--mut)}
.dim .dim-h .sub{font-size:13px;color:var(--green);font-weight:700;white-space:nowrap}

.item-row{display:flex;align-items:center;gap:12px;padding:12px 4px;border-top:1px solid #101a2c}
.item-row .info{flex:1;min-width:0}
.item-row .info .in{font-size:14.5px;color:var(--txt)}
.item-row .info .iw{font-size:11.5px;color:var(--mut);margin-top:2px}
.item-row .info .iw b{color:var(--blue)}

/* 滑杆打分（白色透明毛玻璃） */
.score-slider{
  flex:0 0 auto;width:46%;max-width:200px;min-width:140px;
  display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:12px;
  background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.32);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  box-shadow:inset 0 0 16px rgba(255,255,255,.06);
}
.score-slider input[type="range"]{
  flex:1;min-width:0;height:28px;margin:0;appearance:none;-webkit-appearance:none;
  background:transparent;cursor:pointer;
}
.score-slider input[type="range"]::-webkit-slider-runnable-track{
  height:6px;border-radius:999px;background:rgba(255,255,255,.22);
}
.score-slider input[type="range"]::-webkit-slider-thumb{
  -webkit-appearance:none;appearance:none;width:22px;height:22px;margin-top:-8px;
  border-radius:50%;background:linear-gradient(180deg,#fff,#d8fff0);
  border:2px solid rgba(34,227,154,.75);
  box-shadow:0 0 10px rgba(34,227,154,.35);
}
.score-slider input[type="range"]::-moz-range-track{
  height:6px;border-radius:999px;background:rgba(255,255,255,.22);border:none;
}
.score-slider input[type="range"]::-moz-range-thumb{
  width:22px;height:22px;border-radius:50%;background:linear-gradient(180deg,#fff,#d8fff0);
  border:2px solid rgba(34,227,154,.75);
  box-shadow:0 0 10px rgba(34,227,154,.35);
}
.score-slider .sv{
  flex:0 0 36px;text-align:center;font-size:20px;font-weight:800;color:var(--green);
}
.score-slider.is-disabled{opacity:.45;pointer-events:none}

.total-bar{display:flex;align-items:center;justify-content:space-between;padding:16px 20px}
.total-bar .lab{font-size:16px;color:var(--txt);font-weight:600}
.total-bar .val{font-size:38px;font-weight:800;color:var(--green)}
.total-bar .val small{font-size:16px;color:var(--mut);margin-left:4px}

.submitted-tip{padding:14px 16px;text-align:center;color:var(--green);font-size:14px;border:1px solid rgba(34,227,154,.4);border-radius:12px;background:rgba(34,227,154,.06)}
.closed-tip{padding:14px 16px;text-align:center;color:#ffcf7a;font-size:14px;border:1px solid rgba(255,207,122,.35);border-radius:12px;background:rgba(255,207,122,.06)}

/* 记录页 */
.rec-item{padding:14px 16px}
.rec-item .rh{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.rec-item .rh .rn{font-size:17px;font-weight:800;color:#fff}
.rec-item .rh .rt{font-size:24px;font-weight:800;color:var(--green)}
.rec-item .rd{font-size:12.5px;color:var(--mut)}
