.phasebar-wrap{background:#fff;border-bottom:1px solid var(--line);padding:10px 4vw 12px}
.journey-label{text-align:center;font-size:9px;letter-spacing:2px;color:var(--muted);margin-bottom:6px}
.phasebar-wrap .phasebar{height:auto;border:0;padding:0}
.phasebar-wrap .phase{display:grid;grid-template-columns:30px auto;grid-template-rows:auto auto;text-align:left;align-items:center;min-width:128px;padding:7px}
.phasebar-wrap .phase>span{grid-row:1/3}.phasebar-wrap .phase b{font-size:11px}.phasebar-wrap .phase small{font-size:8px;color:#9da3b2;white-space:nowrap}
.phasebar-wrap .phase.current{background:#f4f2ff;border-radius:9px}.phasebar-wrap .phase.locked b:after{content:'  · 锁定';font-size:8px;color:#9da3b2}
.stage-banner{margin:0 5vw 18px;background:linear-gradient(115deg,#eefcf8,#f2f0ff);border:1px solid #dce9e7;border-radius:12px;padding:15px 20px;display:flex;align-items:center;gap:16px}
.stage-number{font-size:9px;letter-spacing:1px;color:#fff;background:var(--navy);border-radius:20px;padding:6px 10px}.stage-banner div:nth-child(2){flex:1}.stage-banner span{font-size:9px;color:var(--violet);font-weight:800}.stage-banner h2{font-size:18px;margin:1px 0}.stage-banner p{font-size:10px;color:var(--muted);margin:2px 0}.stage-banner em{font-size:10px;font-style:normal;color:#248e73;background:#fff;border-radius:20px;padding:7px 11px}
@media(max-width:900px){.phasebar-wrap{overflow-x:auto}.phasebar-wrap .phasebar{width:max-content;justify-content:flex-start}.stage-banner em{display:none}}
@media(max-width:600px){.journey-label{text-align:left}.phasebar-wrap .phase{min-width:92px;display:block;text-align:center}.phasebar-wrap .phase>span{margin:auto}.phasebar-wrap .phase small{display:none}.stage-banner{margin:0 12px 14px}.stage-banner p{line-height:1.5}}
