/* ============================================================
   v15-W-E 批次新增样式：身体档案 / 推进节奏 / 生涯信箱 / 新手手册
   ============================================================ */

/* ---- 建号：身体档案（难度 + 身高体重） ---- */
.pos-profile { margin-top: 14px; padding: 12px 14px; border: 1px solid var(--line-soft, rgba(24,42,32,.12)); border-radius: 14px; background: #fff; }
.pf-block { margin-bottom: 12px; }
.pf-label { font-size: 12px; font-weight: 800; color: var(--career-ink, #14432c); margin-bottom: 7px; }
.pf-label b { color: #1c6743; font: 800 13px/1 var(--font-num, inherit); }
.pf-diffs { display: flex; gap: 6px; }
.pf-diff { flex: 1; text-align: center; padding: 8px 4px; border: 1px solid var(--line-soft, rgba(24,42,32,.12)); border-radius: 10px; background: #f6faf7; cursor: pointer; transition: .18s; }
.pf-diff b { display: block; font-size: 13px; color: #14432c; }
.pf-diff i { display: block; font-style: normal; font-size: 10px; color: var(--career-muted, #6b7a70); margin-top: 3px; line-height: 1.3; }
.pf-diff.on { border-color: #1c6743; background: rgba(28,103,67,.1); box-shadow: 0 0 0 1px #1c6743 inset; }
.pf-diff.on b { color: #1c6743; }
input[type="range"] { width: 100%; accent-color: #1c6743; margin: 0; }
.pf-note { margin: 0; font-size: 10.5px; line-height: 1.5; color: var(--career-muted, #6b7a70); }

/* ---- 推进节奏 ---- */
.sp-tempo { display: flex; align-items: center; gap: 10px; margin: 10px 0 0; padding: 10px 14px; border-radius: 12px; background: #f6faf7; border: 1px solid var(--line-soft, rgba(24,42,32,.12)); }
.sp-tempo > span { font-size: 12px; font-weight: 800; color: var(--career-ink, #14432c); white-space: nowrap; }
.sp-tempo-opts { display: flex; gap: 6px; flex: 1; }
.sp-tempo-btn { flex: 1; padding: 7px 4px; font-size: 11.5px; font-weight: 700; color: #4a5a50; border: 1px solid var(--line-soft, rgba(24,42,32,.14)); border-radius: 9px; background: #fff; cursor: pointer; transition: .18s; }
.sp-tempo-btn.on { color: #fff; background: #1c6743; border-color: #1c6743; }
@media(max-width:760px){ .sp-tempo { flex-direction: column; align-items: stretch; } .sp-tempo-opts { width: 100%; } }

/* ---- 生涯信箱 ---- */
.mail-wrap { display: flex; flex-direction: column; gap: 10px; }
.mail-head { display: flex; align-items: baseline; justify-content: space-between; padding: 2px 2px 6px; }
.mail-head b { font-size: 15px; color: var(--career-ink, #14432c); }
.mail-head span { font-size: 12px; color: var(--career-muted, #6b7a70); }
.mail-empty { padding: 32px 18px; text-align: center; font-size: 13px; color: var(--career-muted, #6b7a70); background: rgba(255,255,255,.6); border-radius: 14px; }
.mail-item { padding: 13px 15px; background: #fff; border: 1px solid var(--line-soft, rgba(24,42,32,.1)); border-radius: 13px; box-shadow: 0 4px 12px rgba(24,42,32,.05); }
.mail-top { display: flex; align-items: center; gap: 8px; }
.mail-kind { flex-shrink: 0; font-style: normal; font-size: 10.5px; font-weight: 800; color: #1c6743; background: rgba(28,103,67,.1); padding: 2px 8px; border-radius: 999px; }
.mail-top b { font-size: 13.5px; color: var(--career-ink, #14432c); }
.mail-top em { margin-left: auto; font-style: normal; font-size: 11px; color: var(--career-muted, #6b7a70); white-space: nowrap; }
.mail-body { margin: 8px 0 0; font-size: 12.5px; line-height: 1.55; color: #3d4a42; }
.mail-hint { display: inline-block; margin-top: 8px; font-size: 11px; font-weight: 700; color: #1c6743; }
.mail-inter { cursor: pointer; border-color: rgba(28,103,67,.28); }
.mail-choices { margin-top: 10px; display: flex; flex-direction: column; gap: 6px; }
.mail-choice { text-align: left; padding: 9px 12px; border: 1px solid var(--line-soft, rgba(24,42,32,.14)); border-radius: 10px; background: #f6faf7; cursor: pointer; transition: .15s; }
.mail-choice:hover { border-color: #1c6743; }
.mail-choice b { display: block; font-size: 12.5px; color: #14432c; }
.mail-choice span { display: block; font-size: 10.5px; color: var(--career-muted, #6b7a70); margin-top: 2px; }
.mail-answer { margin: 4px 0 0; padding: 8px 12px; font-size: 12px; color: #1c6743; background: rgba(28,103,67,.08); border-radius: 9px; }

/* ---- 新手手册 / 更新公告 ---- */
.hb-steps { display: flex; flex-direction: column; gap: 10px; text-align: left; }
.hb-step { display: flex; gap: 12px; align-items: flex-start; }
.hb-step em { flex-shrink: 0; font-style: normal; font: 800 20px/1 var(--font-num, inherit); color: rgba(28,103,67,.35); }
.hb-step b { font-size: 13.5px; color: #14432c; }
.hb-step p { margin: 4px 0 0; font-size: 12px; line-height: 1.55; color: #3d4a42; }
.hb-tempo { margin-top: 12px; padding: 10px 12px; font-size: 12px; line-height: 1.5; color: #3d4a42; background: rgba(28,103,67,.07); border-radius: 10px; text-align: left; }
.hb-tempo b { color: #1c6743; }
.hb-announce { text-align: left; }
.hb-announce b { color: #14432c; font-size: 13.5px; }
.hb-announce p { margin: 8px 0 0; font-size: 12.5px; line-height: 1.5; color: #3d4a42; }

/* ---- 生涯首页速览三卡（赛制总览 / 联赛层级 / 纪录倒数） ---- */
.glance-wrap { display: flex; flex-direction: column; gap: 12px; margin-top: 14px; }
.glance-card { margin: 0; }
.glance-card .sp-head { display: block; padding: 12px 16px 8px; }
.glance-card .sp-head h2 { margin: 2px 0 0; font-size: 15px; }
.gl-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 9px 16px; border-top: 1px solid var(--line-soft, rgba(24,42,32,.08)); }
.gl-row-label { display: flex; flex-direction: column; }
.gl-row-label, .gl-row-state { min-width: 0; }
.gl-row-label b { font-size: 13px; color: var(--career-ink, #14432c); }
.gl-row-label em { font-style: normal; font-size: 9.5px; letter-spacing: .08em; color: var(--career-muted, #6b7a70); }
.gl-row-state { font-size: 12px; font-weight: 700; color: #4a5a50; text-align: right; }
.gl-row-state.hot { color: #c2410c; }
.gl-row-state.gold { color: #b8860b; }
.lg-tier { display: flex; align-items: center; gap: 8px; padding: 8px 16px 2px; }
.lg-tier-tag { flex-shrink: 0; font-size: 10px; font-weight: 800; color: #1c6743; background: rgba(28,103,67,.1); padding: 2px 8px; border-radius: 999px; }
.lg-chips { display: flex; flex-wrap: wrap; gap: 5px; }
.lg-chip { font-size: 11px; color: #4a5a50; padding: 3px 9px; border: 1px solid var(--line-soft, rgba(24,42,32,.14)); border-radius: 999px; background: #fff; }
.lg-chip.on { color: #fff; background: #1c6743; border-color: #1c6743; font-weight: 800; }
.lg-arrow { padding: 2px 16px; font-size: 10px; color: var(--career-muted, #6b7a70); }
.lg-meta { display: flex; align-items: center; gap: 6px; padding: 10px 16px 12px; font-size: 12px; color: var(--career-muted, #6b7a70); }
.lg-meta b { font-size: 13px; }
.rc-line { display: flex; flex-direction: column; gap: 3px; padding: 10px 16px 6px; }
.rc-line b { font-size: 13.5px; color: var(--career-ink, #14432c); }
.rc-line span { font-size: 12px; color: #4a5a50; }
.rc-bar { height: 8px; margin: 0 16px; border-radius: 999px; background: rgba(24,42,32,.08); overflow: hidden; }
.rc-bar i { display: block; height: 100%; background: linear-gradient(90deg,#1c6743,#35a06b); border-radius: 999px; transition: width .4s; }
.rc-next { padding: 8px 16px 12px; font-size: 11.5px; color: var(--career-muted, #6b7a70); }
.rc-next b { color: #b8860b; }

/* ---- 荣誉晋升之路（履历页时间线） ---- */
.career-honor-ladder { margin: 14px 0 0; }
.hl-sub { margin: 6px 0 12px; font-size: 12px; color: var(--career-muted, #6b7a70); }
.hl-list { display: flex; flex-direction: column; gap: 8px; }
.hl-node { display: flex; align-items: center; gap: 12px; padding: 10px 12px; border: 1px solid var(--line-soft, rgba(24,42,32,.12)); border-radius: 12px; background: #fafbfa; }
.hl-node.is-unlocked { border-color: rgba(28,103,67,.3); background: #fff; }
.hl-icon { width: 34px; height: 34px; flex-shrink: 0; display: flex; align-items: center; justify-content: center; border-radius: 9px; background: rgba(24,42,32,.05); }
.hl-icon img { width: 26px; height: 26px; object-fit: contain; }
.hl-node.is-unlocked .hl-icon { background: rgba(28,103,67,.1); }
.hl-icon i { display: block; width: 10px; height: 10px; border-radius: 50%; background: rgba(24,42,32,.15); }
.hl-body { display: flex; flex-direction: column; gap: 2px; }
.hl-body b { font-size: 13.5px; color: var(--career-ink, #14432c); }
.hl-body em { font-style: normal; font-size: 9.5px; letter-spacing: .08em; color: var(--career-muted, #6b7a70); }
.hl-body span { font-size: 11px; color: #1c6743; font-weight: 700; }
.hl-body .hl-locked { color: var(--career-muted, #6b7a70); font-weight: 500; }
/* 内容容器在宽屏仍限宽约 560px，不按视口宽度强制三列。 */
@media(min-width:761px){ .glance-wrap { display: flex; flex-direction: column; } }

/* ---- 生涯叙事层（荣誉历程分/重要时刻/关键比赛/收藏/纪念卡/发布会） ---- */
.career-honor-score { margin-top: 14px; }
.hs-main { display: flex; align-items: baseline; gap: 10px; margin-top: 6px; }
.hs-main b { font: 800 30px/1 var(--font-num, inherit); color: #14432c; }
.hs-main span { font-size: 13px; font-weight: 700; color: #b8860b; }
.hs-next { margin-top: 6px; font-size: 12.5px; color: #4a5a50; }
.hs-next b { color: #1c6743; }
.hs-next.is-top { color: #b8860b; font-weight: 700; }
.hs-sub { margin-top: 4px; font-size: 11px; color: var(--career-muted, #6b7a70); }
.career-moments, .career-keymatches, .career-collections, .career-memorial { margin-top: 14px; }
.mm-season { margin: 10px 0 0; }
.mm-season header { display: flex; justify-content: space-between; align-items: baseline; }
.mm-season header b { font-size: 13px; color: var(--career-ink, #14432c); }
.mm-season header span { font-size: 11px; color: var(--career-muted, #6b7a70); }
.mm-list { display: flex; flex-direction: column; gap: 4px; margin: 6px 0 0; }
.mm-item { display: flex; align-items: center; gap: 8px; font-size: 12.5px; color: #3d4a42; }
.mm-dot { width: 8px; height: 8px; flex-shrink: 0; border-radius: 50%; background: #c9a227; }
.mm-goal { background: #22c55e; } .mm-apps { background: #3b82f6; } .mm-team { background: #c9a227; } .mm-honor { background: #b8860b; } .mm-tf { background: #a855f7; } .mm-match { background: #14b8a6; }
.km-row { display: flex; align-items: center; gap: 8px; padding: 7px 0; border-top: 1px solid var(--line-soft, rgba(24,42,32,.07)); font-size: 12px; }
.km-row span { flex: 1; color: #3d4a42; }
.km-row b { font-weight: 800; color: var(--career-ink, #14432c); }
.km-row i { font-style: normal; color: var(--career-muted, #6b7a70); }
.cl-row { margin: 8px 0 0; }
.cl-row > div:first-child { display: flex; justify-content: space-between; font-size: 12px; }
.cl-row b { color: var(--career-ink, #14432c); }
.cl-row span { color: var(--career-muted, #6b7a70); }
.cl-bar { height: 6px; margin-top: 4px; border-radius: 999px; background: rgba(24,42,32,.08); overflow: hidden; }
.cl-bar i { display: block; height: 100%; background: linear-gradient(90deg,#1c6743,#35a06b); }
.mc-card { margin-top: 8px; padding: 14px; border: 1px solid rgba(28,103,67,.25); border-radius: 14px; background: linear-gradient(160deg,#f6faf7,#fff); }
.mc-head b { font-size: 16px; color: #14432c; display: block; }
.mc-head span { font-size: 11px; color: var(--career-muted, #6b7a70); }
.mc-stats { display: flex; gap: 14px; margin-top: 12px; }
.mc-stats > div { display: flex; flex-direction: column; }
.mc-stats b { font: 800 18px/1 var(--font-num, inherit); color: #14432c; }
.mc-stats span { font-size: 10px; color: var(--career-muted, #6b7a70); margin-top: 3px; }
.mc-tier { margin: 10px 0 0; font-size: 12px; color: #b8860b; font-weight: 700; }
.mc-card .btn { margin-top: 12px; }
.mq-card { margin-bottom: 12px; padding: 10px 14px; border-left: 3px solid #1c6743; background: rgba(255,255,255,.7); border-radius: 8px; }
.mq-kicker { font-size: 10px; font-weight: 800; letter-spacing: .1em; color: #1c6743; }
.mq-card p { margin: 4px 0 0; font-size: 13px; color: #3d4a42; }

/* ---- 赛后总结升级 ---- */
.mr-motm { display: flex; flex-direction: column; align-items: center; gap: 4px; margin: 12px 0; padding: 14px; border: 1px solid rgba(201,162,39,.45); border-radius: 14px; background: linear-gradient(160deg,#fbf4e2,#fff); text-align: center; }
.mr-motm span { font-size: 9.5px; font-weight: 800; letter-spacing: .18em; color: #8f6d1c; }
.mr-motm b { font: 800 40px/1 var(--font-num, inherit); color: #b8912f; }
.mr-motm p { margin: 2px 0 0; font-size: 13px; color: #3d4a42; }
.mr-tabloid { display: block; width: 100%; margin: 10px 0; padding: 10px 14px; border: 1px dashed rgba(28,103,67,.4); border-radius: 10px; background: rgba(28,103,67,.05); font-size: 12.5px; font-weight: 700; color: #1c6743; cursor: pointer; text-align: left; }
.mr-lineups { display: flex; align-items: center; gap: 12px; padding: 6px 0; }
.mr-lineups > div { display: flex; align-items: center; gap: 8px; }
.mr-lineups b { font-size: 13px; color: var(--career-ink, #14432c); }
.mr-lineups > span { flex: 1; text-align: center; font-size: 11px; color: var(--career-muted, #6b7a70); }
.tabloid h1 { font-size: 17px; color: #14432c; margin: 0 0 6px; }
.tabloid p { font-size: 12px; color: var(--career-muted, #6b7a70); }
.tabloid-stats { display: flex; gap: 16px; margin-top: 10px; }
.tabloid-stats > div { display: flex; flex-direction: column; }
.tabloid-stats b { font: 800 20px/1 var(--font-num, inherit); color: #14432c; }
.tabloid-stats span { font-size: 10px; color: var(--career-muted, #6b7a70); }
.of-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 16px; border-top: 1px solid var(--line-soft, rgba(24,42,32,.08)); }
.of-row > div { display: flex; flex-direction: column; }
.of-row b { font-size: 13px; color: var(--career-ink, #14432c); }
.of-row span { font-size: 11px; color: var(--career-muted, #6b7a70); }
.of-row em { font-style: normal; font-size: 12px; font-weight: 700; color: #b8860b; }

/* ---- 赛季任务 ---- */
.st-list { display: flex; flex-direction: column; gap: 8px; }
.st-row { padding: 10px 16px; border-top: 1px solid var(--line-soft, rgba(24,42,32,.08)); }
.st-row.is-ready { background: rgba(28,103,67,.04); }
.st-top { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; }
.st-top b { font-size: 13px; color: var(--career-ink, #14432c); }
.st-top span { font-size: 11px; color: var(--career-muted, #6b7a70); }
.st-bar { height: 6px; margin-top: 6px; border-radius: 999px; background: rgba(24,42,32,.08); overflow: hidden; }
.st-bar i { display: block; height: 100%; background: linear-gradient(90deg,#1c6743,#35a06b); }
.st-done, .st-todo { display: inline-block; margin-top: 6px; font-style: normal; font-size: 11px; color: var(--career-muted, #6b7a70); }
.st-done { color: #1c6743; font-weight: 700; }
.st-claim { margin-top: 6px; padding: 5px 12px; font-size: 12px; font-weight: 700; color: #fff; background: #1c6743; border: none; border-radius: 8px; cursor: pointer; }
.st-note { margin: 10px 16px 0; font-size: 10.5px; color: var(--career-muted, #6b7a70); }

/* ---- v15-W-L：国际比赛窗「参与 / 跳过」选择卡 ---- */
.intl-choice { text-align: center; padding: 6px 2px; }
.intl-choice-vs { display: flex; align-items: center; justify-content: center; gap: 12px; margin-bottom: 12px; }
.intl-choice-vs img { width: 34px; height: 24px; object-fit: cover; border-radius: 4px; box-shadow: 0 1px 3px rgba(0,0,0,.25); }
.intl-choice-vs b { font-size: 17px; color: #14342a; }
.intl-choice-vs em { font-style: normal; font-size: 11px; letter-spacing: .12em; color: #7a8a80; }
.intl-choice p { color: #5f6f66; font-size: 13px; margin: 0 0 16px; }
.intl-choice-acts { display: flex; flex-direction: column; gap: 10px; }
.intl-choice-acts .btn { width: 100%; justify-content: center; }
.intl-match strong { font-size: 26px; }
.intl-match strong.w { color: #1c6743; }
.intl-match strong.l { color: #b0413e; }
.intl-match strong.d { color: #8a7a20; }

/* ---- v15-W-M：球员页能力卡（29 项明细 / 生涯数据 / 身体档案）+ 训练计划合并 ---- */
.pp-diff { display: inline-block; margin-top: 4px; padding: 3px 10px; border-radius: 99px; background: #fdf3e3; color: #a2701d; font-size: 10.5px; font-weight: 800; }
.pp-attr-groups { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 12px; margin-top: 14px; }
.pp-attr-group { border: 1px solid var(--line-soft, rgba(24,42,32,.1)); border-radius: 12px; padding: 10px 12px; background: #fbfdfc; }
.pp-ag-head { display: flex; align-items: center; gap: 7px; font-size: 11.5px; font-weight: 800; color: var(--career-ink, #14432c); margin-bottom: 8px; }
.pp-ag-head i { width: 9px; height: 9px; border-radius: 3px; flex: none; }
.pp-attr-row { display: grid; grid-template-columns: 64px 30px 1fr 18px; align-items: center; gap: 7px; padding: 3.5px 0; }
.pp-attr-row span { font-size: 11px; color: var(--career-muted, #6b7a70); white-space: nowrap; }
.pp-attr-row b { font: 800 12px/1 var(--font-num, inherit); color: var(--career-ink, #14432c); text-align: right; }
.pp-attr-row b.is-max { color: #b8860b; }
.pp-attr-row .pp-attr-bar { height: 5px; border-radius: 99px; background: rgba(24,42,32,.08); overflow: hidden; }
.pp-attr-row .pp-attr-bar i { display: block; height: 100%; background: linear-gradient(90deg,#2f9c67,#48c382); border-radius: 99px; }
.pp-attr-row em { font: 700 9.5px/1 var(--font-num, inherit); text-align: right; font-style: normal; }
.pp-attr-row em.up { color: #1c6743; }
.pp-attr-row em.down { color: #b4553f; }
.pp-career-title { margin-top: 16px; font-size: 11px; font-weight: 800; letter-spacing: .08em; color: var(--career-muted, #6b7a70); }
.pp-career { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 8px; }
.pp-career-cell { padding: 10px 8px; border-radius: 12px; background: #f4faf6; border: 1px solid var(--line-soft, rgba(24,42,32,.1)); text-align: center; }
.pp-career-cell b { display: block; font: 800 17px/1.1 var(--font-num, inherit); color: var(--career-green-d, #1c6743); }
.pp-career-cell span { display: block; margin-top: 3px; font-size: 10px; color: var(--career-muted, #6b7a70); }
.dev-rows { display: grid; gap: 6px; margin-top: 8px; }
.dev-row { display: flex; align-items: center; gap: 10px; padding: 8px 11px; border: 1px solid var(--line-soft, rgba(24,42,32,.1)); border-radius: 11px; background: #fbfdfc; }
.dev-row b { font-size: 12px; color: var(--career-ink, #14432c); white-space: nowrap; }
.dev-row .dev-n { font-style: normal; font-weight: 800; color: #b8860b; font-size: 11px; }
.dev-row span { margin-left: auto; font-size: 11px; color: var(--career-muted, #6b7a70); text-align: right; }
@media (max-width: 560px) { .pp-attr-row { grid-template-columns: 56px 26px 1fr 16px; } .pp-career { grid-template-columns: repeat(2, minmax(0,1fr)); } }

/* ---- v15-W-O：退役后「生涯总结」入口 ---- */
.retired-banner { margin-left: auto; padding: 6px 12px; border: 1px solid #d9ac47; border-radius: 99px; background: #fff8e2; color: #a2701d; font-size: 11.5px; font-weight: 800; cursor: pointer; white-space: nowrap; }
.retired-banner:hover { background: #fff1c9; }

/* ---- v15-W-M：球员页 OVR 头部档位配色 + 徽章 + 训练计划/替补席说明 ---- */
.pp-head-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 9px; }
.pp-extra { display: inline-block; padding: 3px 10px; border-radius: 99px; background: #eef3f0; color: #5f6f66; font-size: 10.5px; font-weight: 700; }
.pp-head-ovr.t-legend { background: linear-gradient(150deg,#b8860b,#8a6d0f); }
.pp-head-ovr.t-elite { background: linear-gradient(150deg,#7b4fd6,#5a36a8); }
.pp-head-ovr.t-star { background: linear-gradient(150deg,#2e6fd6,#1f4fa8); }
.pp-head-ovr.t-main { background: linear-gradient(150deg,#1b9e63,#127a49); }
.pp-head-ovr.t-rot { background: linear-gradient(150deg,#2f9c9c,#217a7a); }
.pp-head-ovr.t-sub { background: linear-gradient(150deg,#7a8490,#5c6672); }
.pp-head-ovr.t-fringe { background: linear-gradient(150deg,#4a5550,#37403c); }
.dev-note { margin: 0 0 8px; font-size: 11px; line-height: 1.5; color: var(--career-muted, #6b7a70); }
.bench-note { margin: -4px 0 10px; font-size: 11px; line-height: 1.5; color: var(--career-muted, #6b7a70); }

/* ---- v15-W-T：存档面板（多档位） ---- */
.save-tip { margin: 0 0 12px; font-size: 12px; color: var(--career-muted, #6b7a70); }
.save-slots { display: flex; flex-direction: column; gap: 9px; }
.save-slot { position: relative; display: flex; align-items: center; gap: 12px; padding: 12px 14px; border: 1px solid var(--line-soft, rgba(24,42,32,.1)); border-radius: 13px; background: #fbfdfc; cursor: pointer; transition: .15s; }
.save-slot:hover { border-color: #93cfa9; background: #f4faf6; }
.save-slot.is-empty { opacity: .62; }
.save-slot.is-pick { cursor: pointer; }
.save-slot.is-pick.is-empty { opacity: 1; }
.ss-no { width: 34px; height: 34px; flex: none; display: grid; place-items: center; border-radius: 10px; background: linear-gradient(150deg,#1b5e43,#12402f); color: #fff; font: 700 15px/1 var(--font-num); }
.save-slot.is-empty .ss-no { background: #d7e2db; color: #6b7a70; }
.ss-body { flex: 1; min-width: 0; }
.ss-body b { display: block; font-size: 14px; color: var(--career-ink, #14432c); }
.ss-body span { display: block; font-size: 11px; color: var(--career-muted, #6b7a70); margin-top: 2px; }
.ss-del { flex: none; width: 26px; height: 26px; border: none; border-radius: 8px; background: #f6e8e6; color: #b0413e; font-size: 13px; line-height: 1; cursor: pointer; }
.ss-del:hover { background: #f0d6d2; }

/* ---- v15-W-U：荣誉收集墙（奖杯陈列） ---- */
.hw-groups { display: flex; flex-direction: column; gap: 14px; }
.hw-group-head { font-size: 11px; font-weight: 800; letter-spacing: .08em; color: var(--career-muted, #6b7a70); margin-bottom: 8px; }
.hw-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.hw-item { display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 10px 6px; border: 1px solid var(--line-soft, rgba(24,42,32,.1)); border-radius: 12px; background: #fbfdfc; text-align: center; }
.hw-item img { width: 40px; height: 40px; object-fit: contain; filter: grayscale(.9) opacity(.32); transition: .2s; }
.hw-item b { font-size: 10.5px; line-height: 1.2; color: var(--career-muted, #6b7a70); font-weight: 700; }
.hw-item span { font-size: 9px; color: var(--text-3, #8b9c92); }
.hw-item.got { background: #f2faf5; border-color: #cde9d8; }
.hw-item.got img { filter: none; }
.hw-item.got b { color: var(--career-ink, #14432c); }
.hw-item.got span { color: var(--career-green-d, #1c6743); font-weight: 800; }
.hw-empty-ic { width: 40px; height: 40px; border-radius: 50%; background: #e8edea; }
@media (max-width: 480px) { .hw-grid { grid-template-columns: repeat(3, 1fr); } }
