/* 04 圆肩驼背自测 · 灰紫 + 石青；侧面剪影测量尺、三段式纸质核对清单 */
.rs { --a:#5a5b9c; --a2:#3c3d76; --asoft:#ebebf7; }
:root[data-theme="dark"] .rs { --a:#a7a8ef; --a2:#c5c6f7; --asoft:#252543; }
.rs-hero-grid { display:grid; grid-template-columns:.82fr 1.18fr; }
.rs-intro { background:linear-gradient(180deg,var(--card),var(--card2)); }
.rs-steps-mini { display:flex; gap:8px; margin-top:24px; flex-wrap:wrap; }
.rs-steps-mini span { display:inline-flex; align-items:center; gap:6px; font-size:12px; color:var(--ink2); background:var(--asoft); border-radius:999px; padding:6px 12px; }
.rs-steps-mini i { font-family:var(--fm); font-style:normal; font-weight:800; color:var(--a2); }
.rs-measure { padding:28px 30px; border-left:1px solid var(--line); background:var(--card); }
.rs-measure-hd { display:flex; align-items:baseline; justify-content:space-between; border-bottom:2px solid var(--a2); padding-bottom:10px; margin-bottom:14px; }
.rs-measure-hd b { font-family:var(--fd); font-size:19px; }
.rs-measure-hd span { font-family:var(--fm); font-size:15px; font-weight:800; color:var(--a); }
.rs-figure { background:var(--card2); border:1px solid var(--line); border-radius:14px; overflow:hidden; margin-bottom:16px; }
.rs-figure svg { display:block; width:100%; height:auto; max-height:210px; }
.rs-measure > label { font-size:12.5px; color:var(--ink2); }
.rs-measure > label input[type=range] { margin-top:8px; }
.rs-row2 { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:14px; }
.rs-flags { display:flex; flex-direction:column; gap:4px; justify-content:center; }
.rs-measure .h17-note b { color:var(--a2); }

.rs-checklist { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.rs-step { position:relative; background:var(--card); border:1px solid var(--line); border-radius:14px; padding:18px 18px 16px 22px; counter-increment:rs; }
.rs-step::before { content:''; position:absolute; left:0; top:14px; bottom:14px; width:5px; border-radius:0 4px 4px 0; background:var(--line2); }
.rs-step.is-on::before { background:var(--warn); }
.rs-step.is-red::before { background:var(--bad); }
.rs-step span { font-family:var(--fm); font-size:10px; letter-spacing:.12em; color:var(--muted); }
.rs-step h3 { font-size:17px; margin:6px 0 8px; }
.rs-step p { font-size:12.5px; line-height:1.85; color:var(--ink2); margin:0; }
.rs-summary-card { margin-top:14px; border-style:dashed; }
.rs-summary-card h3 { font-size:18px; margin-bottom:10px; }
.rs-summary { background:repeating-linear-gradient(180deg,transparent 0 29px,var(--line) 29px 30px),var(--card2); border-radius:10px; padding:12px 16px; font-size:14px; line-height:2.05; color:var(--ink2); }
.rs .h17-bench-in { border-top:4px solid var(--a); }
@media (max-width:900px){
    .rs-hero-grid,.rs-row2,.rs-checklist { grid-template-columns:1fr; }
    .rs-measure { border-left:0; border-top:1px solid var(--line); padding:24px 20px; }
}
