/* ============================================================
   HUD 界面层 —— 游戏化任务系统视觉（在 exp.css 之后加载）
   设计：深色 HUD 外壳 + 浅色任务面板 + 青色进度/金色得分
   ============================================================ */

/* hidden 属性全局防护：防止类选择器 display 覆盖 UA 默认隐藏 */
[hidden]{display:none!important;}

:root{
  --ink-900:#08131c;
  --ink-850:#0b1a26;
  --ink-800:#0f2230;
  --ink-700:#16303f;
  --hud-line:rgba(255,255,255,.09);
  --hud-line-2:rgba(255,255,255,.16);
  --hud-txt:#eaf2f8;
  --hud-txt-2:#9db2c2;
  --cyan:#38e1d6;
  --cyan-d:#14b8a6;
  --cyan-soft:rgba(56,225,214,.14);
  --gold:#f6c453;
  --gold-soft:rgba(246,196,83,.14);
  --paper:#ffffff;
  --paper-2:#f5f8fa;
  --paper-line:#e4eaf0;
  --ok:#2fbf71;
  --warn:#e8892b;
  --bad:#d9534f;
  --hud-r:12px;
  --shadow-1:0 2px 8px rgba(8,19,28,.08);
  --shadow-2:0 8px 24px rgba(8,19,28,.12);
  --shadow-3:0 18px 48px rgba(8,19,28,.28);
}

.exp-body{background:var(--ink-850);color:var(--hud-txt);}
.exp-body ::selection{background:rgba(56,225,214,.3);}

/* ---------------- 顶栏 ---------------- */
.exp-top{
  height:66px;padding:0 18px;
  background:linear-gradient(115deg,#08131c 0%,#0d2431 46%,#102c3b 78%,#0a1a25 100%);
  border-bottom:1px solid var(--hud-line);
  box-shadow:0 1px 0 rgba(255,255,255,.04) inset,0 8px 24px rgba(0,0,0,.28);
  position:relative;
}
.exp-top::after{
  content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;
  background:linear-gradient(90deg,transparent,rgba(56,225,214,.45),transparent);
}
.et-left{gap:13px;}
.et-emblem{width:42px;height:42px;border-radius:50%;padding:3px;background:rgba(255,255,255,.92);
  box-shadow:0 0 0 1px var(--hud-line-2),0 4px 12px rgba(0,0,0,.3);display:grid;place-items:center;flex:none;}
.et-emblem img{width:100%;height:100%;object-fit:contain;border-radius:50%;}
.et-txt b{font-size:17px;letter-spacing:1.2px;color:#fff;font-family:"STZhongsong","SimSun",serif;text-shadow:0 1px 2px rgba(0,0,0,.35);}
.et-txt em{color:var(--hud-txt-2);font-size:11.5px;letter-spacing:1.4px;}

.hud-mid{display:flex;align-items:center;gap:16px;}
.hud-ring{position:relative;width:46px;height:46px;flex:none;}
.hud-ring svg{width:100%;height:100%;transform:rotate(-90deg);}
.hud-ring .hr-bg{fill:none;stroke:rgba(255,255,255,.12);stroke-width:4;}
.hud-ring .hr-fg{fill:none;stroke:url(#none);stroke:var(--cyan);stroke-width:4;stroke-linecap:round;
  stroke-dasharray:113.1;stroke-dashoffset:113.1;transition:stroke-dashoffset .6s cubic-bezier(.4,0,.2,1);
  filter:drop-shadow(0 0 6px rgba(56,225,214,.55));}
.hud-ring b{position:absolute;inset:0;display:grid;place-items:center;font-size:11.5px;font-weight:700;
  font-family:"Consolas","SF Mono",monospace;color:var(--cyan);}

.hud-step{line-height:1.2;}
.hud-step em{display:block;font-style:normal;font-family:"Consolas","SF Mono",monospace;font-size:17px;font-weight:700;
  color:#fff;letter-spacing:.5px;}
.hud-step span{font-size:10.5px;color:var(--hud-txt-2);letter-spacing:1.6px;}
.hud-sep{width:1px;height:26px;background:var(--hud-line-2);}

.hud-chip{display:flex;align-items:center;gap:9px;padding:6px 14px 6px 11px;border-radius:10px;
  background:rgba(255,255,255,.05);border:1px solid var(--hud-line);box-shadow:0 1px 0 rgba(255,255,255,.05) inset;
  transition:.2s;}
.hud-chip:hover{background:rgba(255,255,255,.08);border-color:var(--hud-line-2);}
.hc-ico{width:18px;height:18px;fill:none;stroke:var(--cyan);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none;}
.hud-chip.is-score .hc-ico{stroke:var(--gold);fill:rgba(246,196,83,.18);}
.hud-chip div{line-height:1.15;}
.hud-chip em{display:block;font-style:normal;font-family:"Consolas","SF Mono",monospace;font-size:15px;font-weight:700;color:#fff;}
.hud-chip.is-score em{color:var(--gold);}
.hud-chip span{font-size:10px;color:var(--hud-txt-2);letter-spacing:1.4px;}

.et-right{gap:14px;}
.hud-user{display:flex;align-items:center;gap:9px;padding:4px 12px 4px 4px;border-radius:26px;
  background:rgba(255,255,255,.05);border:1px solid var(--hud-line);}
.hu-ava{width:34px;height:34px;border-radius:50%;overflow:hidden;flex:none;box-shadow:0 0 0 1px rgba(255,255,255,.22);}
.hu-ava img{width:100%;height:100%;display:block;}
.hu-info{line-height:1.25;}
.hu-info b{display:block;font-size:12.5px;color:#fff;font-weight:600;max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.hu-info em{font-style:normal;font-size:10.5px;color:var(--hud-txt-2);font-family:"Consolas",monospace;letter-spacing:.5px;}

.et-quit{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--hud-txt-2);border:1px solid var(--hud-line-2);
  border-radius:8px;padding:7px 13px;background:rgba(255,255,255,.03);transition:.2s;}
.et-quit svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
.et-quit:hover{color:#fff;border-color:rgba(217,83,79,.7);background:rgba(217,83,79,.16);}

/* ---------------- 三列 ---------------- */
.exp-main{grid-template-columns:238px minmax(420px,1fr) 470px;height:calc(100vh - 66px);}

/* ---------------- 左列：任务时间轴 ---------------- */
.col-steps{background:linear-gradient(180deg,#0b1a26,#081420);border-right:1px solid var(--hud-line);}
.cs-head{padding:16px 16px 12px;border-bottom:1px solid var(--hud-line);}
.cs-t{color:#fff;font-size:13px;letter-spacing:1px;}
.cs-t span{color:var(--hud-txt-2);font-size:11px;}
.cs-bar{height:5px;background:rgba(255,255,255,.1);border-radius:3px;margin-top:10px;}
.cs-bar i{background:linear-gradient(90deg,var(--cyan-d),var(--cyan));box-shadow:0 0 10px rgba(56,225,214,.55);}
.cs-sub{display:flex;justify-content:space-between;margin-top:8px;font-size:9.5px;color:rgba(157,178,194,.65);letter-spacing:.5px;}

.cs-list{padding:8px 10px 24px;position:relative;}
.sg-title{font-size:10px;color:var(--cyan);letter-spacing:2.4px;padding:15px 6px 7px;position:relative;opacity:.85;}
.sg-title::before{content:"";display:inline-block;width:14px;height:1px;background:var(--cyan);vertical-align:middle;margin-right:7px;opacity:.7;}

.step-item{position:relative;gap:10px;padding:8px 10px 8px 8px;border:1px solid transparent;border-left:none;
  border-radius:9px;color:var(--hud-txt-2);font-size:12.5px;transition:.18s;}
.step-item:hover{background:rgba(255,255,255,.05);color:#dfeaf2;}
.si-no{width:24px;height:24px;border-radius:7px;flex:none;display:grid;place-items:center;
  font-family:"Consolas",monospace;font-size:11px;color:var(--hud-txt-2);
  background:rgba(255,255,255,.06);border:1px solid var(--hud-line);}
.si-name{color:inherit;}
.si-sc{font-family:"Consolas",monospace;font-size:10.5px;color:rgba(157,178,194,.8);}
.step-item.current{background:linear-gradient(90deg,rgba(56,225,214,.16),rgba(56,225,214,.02));color:#fff;
  border-color:rgba(56,225,214,.35);box-shadow:0 0 0 1px rgba(56,225,214,.12) inset,0 6px 18px rgba(0,0,0,.25);}
.step-item.current::before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;border-radius:3px;
  background:var(--cyan);box-shadow:0 0 10px var(--cyan);}
.step-item.current .si-no,.step-item.current .si-sc{color:var(--cyan);border-color:rgba(56,225,214,.45);background:rgba(56,225,214,.12);}
.step-item.done{color:rgba(214,230,240,.86);}
.step-item.done .si-no{background:rgba(47,191,113,.16);border-color:rgba(47,191,113,.4);color:#5ee39c;font-size:0;}
.step-item.done .si-no::after{content:"✓";font-size:12px;}
.step-item.done .si-sc{color:#5ee39c;}
.step-item.locked{opacity:.34;}

/* ---------------- 中列：场景与字幕条 ---------------- */
.col-stage{background:#0a1620;}
.stage-badge{left:18px;top:16px;background:rgba(7,17,24,.72);border:1px solid var(--hud-line-2);
  border-radius:20px;padding:5px 12px;font-size:11px;color:#cfe0ea;backdrop-filter:blur(6px);}
.stage-badge i{width:6px;height:6px;background:var(--cyan);box-shadow:0 0 8px var(--cyan);animation:pulse 1.8s infinite;}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.85)}}

.stage-tip{right:18px;bottom:18px;background:rgba(7,17,24,.6);border:1px solid var(--hud-line);color:rgba(207,224,234,.75);
  font-size:11px;padding:5px 11px;border-radius:20px;backdrop-filter:blur(6px);}
.stage-tip b{color:#fff;font-weight:600;}

.stage-cap{left:50%;bottom:22px;transform:translateX(-50%);max-width:none;width:min(680px,76%);
  display:flex;gap:13px;align-items:flex-start;padding:12px 18px 12px 12px;border-radius:14px;
  background:linear-gradient(120deg,rgba(9,22,31,.92),rgba(13,36,49,.9));
  border:1px solid rgba(56,225,214,.28);box-shadow:0 12px 34px rgba(0,0,0,.42),0 0 0 1px rgba(255,255,255,.03) inset;
  backdrop-filter:blur(10px);animation:capIn .45s cubic-bezier(.22,.9,.24,1);}
@keyframes capIn{from{opacity:0;transform:translate(-50%,14px)}to{opacity:1;transform:translate(-50%,0)}}
.cap-ava{width:42px;height:42px;border-radius:50%;overflow:hidden;flex:none;box-shadow:0 0 0 2px rgba(56,225,214,.5),0 0 18px rgba(56,225,214,.35);}
.cap-ava img{width:100%;height:100%;display:block;}
.cap-body{min-width:0;}
.cap-body b{display:block;font-size:11px;letter-spacing:2px;color:var(--cyan);margin-bottom:3px;}
.cap-body p{font-size:13.5px;line-height:1.6;color:#eaf2f8;margin:0;}

/* ---------------- 右列：任务面板 ---------------- */
.col-panel{background:linear-gradient(180deg,#0c1b26,#081420);border-left:1px solid var(--hud-line);}
.panel-scroll{padding:12px 12px 0;}
.task-sheet{background:var(--paper);border-radius:var(--hud-r);padding:18px 18px 0;color:#22303b;
  box-shadow:0 10px 30px rgba(0,0,0,.35);position:relative;overflow:hidden;}
.task-sheet::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;
  background:linear-gradient(90deg,var(--cyan-d),var(--cyan),rgba(56,225,214,0));}

.task-head{display:flex;gap:14px;align-items:flex-start;padding-bottom:2px;}
.th-step{flex:none;width:52px;text-align:center;border-radius:10px;padding:6px 0 7px;
  background:linear-gradient(160deg,#0f2b3a,#123c4d);box-shadow:0 6px 14px rgba(15,43,58,.28);}
.th-step i{display:block;font-style:normal;font-size:8.5px;letter-spacing:1.6px;color:rgba(148,216,226,.85);}
.th-step b{display:block;font-family:"Consolas",monospace;font-size:23px;line-height:1.05;color:var(--cyan);}
.th-main{min-width:0;flex:1;}
.task-head h2{font-size:18px;line-height:1.35;color:#152633;letter-spacing:.3px;font-weight:700;}
.task-goal{font-size:12.5px;color:#5c6f7d;margin-top:6px;padding-left:10px;border-left:2px solid rgba(56,225,214,.65);line-height:1.6;}

.task-meta{gap:7px;margin-top:12px;}
.task-meta span{font-size:11px;color:#0d7f77;background:rgba(20,184,166,.1);border:1px solid rgba(20,184,166,.22);
  border-radius:20px;padding:3px 10px;letter-spacing:.3px;}
.task-meta span:last-child{color:#8a6a12;background:rgba(246,196,83,.14);border-color:rgba(246,196,83,.35);}

.npc-brief{display:flex;gap:11px;margin:14px 0 4px;padding:11px 13px;border-radius:12px;
  background:linear-gradient(120deg,#f2fbfa,#f7fbfc);border:1px solid rgba(20,184,166,.18);}
.nb-ava{width:34px;height:34px;border-radius:50%;overflow:hidden;flex:none;box-shadow:0 0 0 2px rgba(20,184,166,.25);}
.nb-ava img{width:100%;height:100%;display:block;}
.nb-body b{display:block;font-size:10.5px;letter-spacing:1.6px;color:#0d7f77;margin-bottom:2px;}
.task-brief{background:none;padding:0;margin:0;font-size:13px;color:#2f4150;line-height:1.65;}

#taskWork{margin-top:12px;}
.task-actions{background:var(--paper);padding:14px 0 16px;}

.btn-main{background:linear-gradient(135deg,#9F2925,#c0392b);border-radius:9px;font-size:14px;letter-spacing:1.5px;
  padding:12px 0;box-shadow:0 8px 20px rgba(159,41,37,.26),0 1px 0 rgba(255,255,255,.18) inset;transition:.2s;}
.btn-main:hover{background:linear-gradient(135deg,#8c211d,#ad2f24);transform:translateY(-1px);
  box-shadow:0 12px 26px rgba(159,41,37,.32);}
.btn-main:active{transform:translateY(0);}
.btn-main:disabled{background:#c9d1d7;box-shadow:none;transform:none;}

/* 任务结果卡 */
.task-result{margin:14px 0 0;padding:13px 14px;border-radius:11px;font-size:13px;line-height:1.7;
  background:linear-gradient(120deg,#f2fbf6,#f8fdfb);border:1px solid rgba(47,191,113,.28);position:relative;padding-left:46px;}
.task-result::before{content:"✓";position:absolute;left:14px;top:13px;width:22px;height:22px;border-radius:50%;
  background:#2fbf71;color:#fff;font-size:13px;display:grid;place-items:center;}
.task-result.is-warn{background:linear-gradient(120deg,#fff8ef,#fffdf9);border-color:rgba(232,137,43,.32);}
.task-result.is-warn::before{content:"!";background:#e8892b;}
.task-result.is-bad{background:linear-gradient(120deg,#fdf3f2,#fffafa);border-color:rgba(217,83,79,.3);}
.task-result.is-bad::before{content:"×";background:#d9534f;}

/* 题型控件统一质感 */
.opt{border:1.5px solid var(--paper-line);border-radius:10px;padding:10px 12px;transition:.16s;background:#fff;}
.opt:hover{border-color:rgba(20,184,166,.45);background:#fbfefd;transform:translateY(-1px);box-shadow:0 6px 16px rgba(8,19,28,.06);}
.opt input{accent-color:#0d7f77;}
.opt.is-picked{border-color:rgba(20,184,166,.6);background:#f3fbfa;}
.tl-row,.msds-item,.risk-card,.ramp-row,.zone,.vf,.fm,.order-pick,.judge-list,.mt,.msds-c{
  border-radius:10px;border-color:var(--paper-line);}
.hint-line{color:#8b9aa6;font-size:11.5px;}
.seq-title{color:#33475a;}
.zbtn,.vf-btns button,.ramp-btns button,.judge-row button,.tl-a{
  border:1px solid var(--paper-line);border-radius:8px;background:#fff;padding:7px 12px;font-size:12.5px;color:#3b4d5c;transition:.16s;}
.zbtn:hover,.vf-btns button:hover,.ramp-btns button:hover,.judge-row button:hover,.tl-a:hover{
  border-color:rgba(20,184,166,.5);color:#0d7f77;background:#f6fdfc;}
input,select,textarea{border-radius:8px;border-color:var(--paper-line);background:#fbfcfd;}
input:focus,select:focus,textarea:focus{border-color:var(--cyan-d);box-shadow:0 0 0 3px rgba(20,184,166,.14);}
table{font-size:12.5px;}

/* ---------------- 助教面板（深色聊天） ---------------- */
.ai-panel{height:262px;background:linear-gradient(180deg,#0c1a24,#08131c);border-top:1px solid var(--hud-line);}
.ai-head{padding:11px 14px 8px;display:flex;align-items:center;gap:10px;border-bottom:1px solid rgba(255,255,255,.05);}
.ai-ava{width:30px;height:30px;border-radius:50%;overflow:hidden;flex:none;box-shadow:0 0 0 2px rgba(56,225,214,.35);}
.ai-ava img{width:100%;height:100%;display:block;}
.ai-id b{display:block;font-size:12.5px;color:#fff;letter-spacing:.5px;}
.ai-id em{font-style:normal;font-size:10px;color:var(--hud-txt-2);display:flex;align-items:center;gap:5px;}
.ai-id em i{width:5px;height:5px;border-radius:50%;background:var(--ok);box-shadow:0 0 6px var(--ok);}
.ai-box{padding:8px 14px 0;gap:8px;}
.ai-msg{font-size:12.5px;line-height:1.7;padding:9px 12px;border-radius:10px;max-width:94%;}
.ai-msg.ai{background:rgba(255,255,255,.06);border:1px solid var(--hud-line);color:#d7e4ec;border-top-left-radius:3px;}
.ai-msg.me{background:linear-gradient(135deg,#0f7f77,#12a99e);color:#fff;border-top-right-radius:3px;
  box-shadow:0 6px 16px rgba(18,169,158,.25);}
.ai-quicks{padding:8px 14px 8px;gap:6px;}
.ai-quick{font-size:11px;color:#8fe9e1;background:rgba(56,225,214,.08);border:1px solid rgba(56,225,214,.25);
  border-radius:20px;padding:3px 10px;transition:.18s;}
.ai-quick:hover{background:rgba(56,225,214,.18);border-color:rgba(56,225,214,.55);color:#d8fffb;}
.ai-input{padding:0 14px 12px;gap:8px;}
.ai-input input{background:rgba(255,255,255,.06);border:1px solid var(--hud-line);color:#eaf2f8;padding:9px 12px;font-size:12.5px;}
.ai-input input::placeholder{color:rgba(157,178,194,.7);}
.ai-input input:focus{border-color:rgba(56,225,214,.55);box-shadow:0 0 0 3px rgba(56,225,214,.12);}
.ai-input button{width:40px;padding:0;display:grid;place-items:center;border-radius:9px;
  background:linear-gradient(135deg,#14b8a6,#0f9f95);box-shadow:0 6px 16px rgba(20,184,166,.3);}
.ai-input button svg{width:17px;height:17px;fill:#062024;stroke:none;transform:translateX(1px);}
.ai-input button:hover{filter:brightness(1.08);}

/* 深色区滚动条 */
.col-steps ::-webkit-scrollbar-thumb,.ai-box::-webkit-scrollbar-thumb{background:rgba(255,255,255,.16);}
.col-steps ::-webkit-scrollbar-thumb:hover,.ai-box::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.28);}

/* ---------------- 登录 ---------------- */
.mask-login{background:
  radial-gradient(900px 520px at 18% 12%,rgba(20,184,166,.22),transparent 62%),
  radial-gradient(760px 480px at 86% 82%,rgba(159,41,37,.28),transparent 60%),
  linear-gradient(135deg,#061019,#0a1d29 55%,#081420);}
.mask-login::before{content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px);
  background-size:52px 52px;mask-image:radial-gradient(circle at 50% 45%,#000 40%,transparent 78%);}
.login-wrap{position:relative;display:grid;grid-template-columns:1.05fr .95fr;width:920px;max-width:100%;
  background:rgba(12,28,39,.82);border:1px solid rgba(255,255,255,.1);border-radius:18px;overflow:hidden;
  box-shadow:0 30px 80px rgba(0,0,0,.5);backdrop-filter:blur(14px);}
.login-side{padding:44px 40px;border-right:1px solid rgba(255,255,255,.07);
  background:linear-gradient(160deg,rgba(255,255,255,.03),transparent 60%);}
.ls-emblem{display:inline-grid;place-items:center;width:54px;height:54px;border-radius:50%;padding:4px;background:#fff;
  box-shadow:0 0 0 1px rgba(255,255,255,.3),0 8px 22px rgba(0,0,0,.35);}
.ls-emblem img{width:100%;height:100%;border-radius:50%;object-fit:contain;}
.login-side h1{font-family:"STZhongsong","SimSun",serif;font-size:27px;line-height:1.45;color:#fff;
  letter-spacing:2px;margin:18px 0 8px;text-shadow:0 2px 10px rgba(0,0,0,.35);}
.ls-sub{font-size:12.5px;color:var(--cyan);letter-spacing:2px;}
.ls-list{list-style:none;margin-top:30px;display:flex;flex-direction:column;gap:16px;}
.ls-list li{display:flex;gap:12px;align-items:flex-start;}
.ls-list i{flex:none;font-style:normal;font-family:"Consolas",monospace;font-size:11px;color:var(--cyan);
  width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:rgba(56,225,214,.1);
  border:1px solid rgba(56,225,214,.3);}
.ls-list span{font-size:12.5px;line-height:1.75;color:#b9cbd8;}
.ls-list b{display:block;color:#fff;font-size:13px;font-weight:600;letter-spacing:.5px;}

.login-card{background:var(--paper);padding:38px 38px 30px;text-align:left;}
.login-card h2{font-size:20px;color:#152633;letter-spacing:1px;}
.lc-hint{font-size:12px;color:#7d8f9c;margin:6px 0 18px;}
#loginForm{gap:12px;}
#loginForm label{font-size:12px;color:#5c6f7d;letter-spacing:.3px;}
#loginForm input{margin-top:5px;padding:10px 12px;font-size:13.5px;background:#fafcfd;}
#loginForm input:focus{background:#fff;}
.lc-tip{color:#c0392b;}
.btn-start{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:8px;letter-spacing:2px;}
.btn-start svg{width:15px;height:15px;fill:#fff;stroke:none;}
.lc-note{font-size:11px;color:#93a4b0;text-align:center;margin-top:14px;padding-top:12px;border-top:1px dashed var(--paper-line);}

/* ---------------- 报告 ---------------- */
.report{width:960px;border-radius:14px;background:var(--paper);box-shadow:0 30px 80px rgba(0,0,0,.45);}
.report-tools{background:linear-gradient(115deg,#0b1a26,#12303f);border-bottom:none;padding:12px 18px;align-items:center;gap:10px;}
.rt-title{color:#fff;font-size:14px;letter-spacing:3px;margin-right:auto;font-family:"STZhongsong","SimSun",serif;}
.report-tools button{background:rgba(255,255,255,.07);border:1px solid var(--hud-line-2);color:#d9e6ee;border-radius:8px;
  padding:7px 14px;transition:.18s;}
.report-tools button:hover{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.3);}
.report-tools .rt-close{background:rgba(217,83,79,.18);border-color:rgba(217,83,79,.45);color:#ffd9d7;}
.report-scroll{padding:30px 44px 40px;}
.rp-head{border-bottom:2px solid var(--red);}
.rp-num{color:var(--red);}

/* ---------------- 得分浮动提示 ---------------- */
.score-pop{position:fixed;z-index:80;pointer-events:none;font-family:"Consolas",monospace;font-weight:700;
  font-size:16px;color:var(--gold);text-shadow:0 2px 8px rgba(0,0,0,.45);animation:popUp 1.1s cubic-bezier(.2,.8,.3,1) forwards;}
@keyframes popUp{0%{opacity:0;transform:translateY(6px) scale(.9)}25%{opacity:1;transform:translateY(-4px) scale(1.06)}
  100%{opacity:0;transform:translateY(-30px) scale(1)}}

/* ---------------- 窄屏 ---------------- */
@media (max-width:1440px){
  .exp-main{grid-template-columns:214px minmax(380px,1fr) 440px;}
  .hud-mid{gap:12px;}
}
@media (max-width:1240px){
  .hud-step span,.hud-chip span{display:none;}
  .et-txt b{font-size:15px;}
  .exp-main{grid-template-columns:200px minmax(340px,1fr) 410px;}
}
@media (max-width:1100px){
  .login-wrap{grid-template-columns:1fr;width:440px;}
  .login-side{border-right:none;border-bottom:1px solid rgba(255,255,255,.07);padding:28px 30px;}
  .ls-list{display:none;}
  .login-card{padding:26px 28px 22px;}
  .hud-mid{display:none;}
}
@media print{
  .exp-top,.ai-panel,.stage-cap,.stage-tip,.stage-badge,.rt-title{display:none!important;}
}
