/* =====================================================================
 * 20 流鼻血正确处理 · 视觉母题「压迫体位分步图」
 * ---------------------------------------------------------------------
 * 色板：玫红（--nb-pri #b03a58）+ 暖玫副色（--nb-pri2）+ 冷敷蓝（--nb-hot），
 * 基座中性色之外的「急救冷敷」质感；纯 CSS / SVG，零图片请求。
 * 版式：G 分步向导 —— 顶部步骤链 1-5，每步一个面板（与 16 号的方格步骤条区分）。
 * 本页只作用于 .b11--nose 容器，不外溢到其它任何页面。
 * ===================================================================== */

.b11--nose {
    --nb-pri: #b03a58;
    --nb-pri2: #cd5f7c;
    --nb-hot: #4b7fa8;
    --nb-tint: #f7e3e9;
    --b11-pri: #b03a58;
    --b11-pri2: #cd5f7c;
    --b11-tint: #f7e3e9;
    --b11-bg: #f5eff1;
    --b11-bg2: #e9dfe2;
    --b11-card2: #fbf7f8;
    background-image:
        radial-gradient(circle at 1px 1px, color-mix(in srgb, var(--nb-pri) 16%, transparent) 1px, transparent 0),
        linear-gradient(to bottom, color-mix(in srgb, var(--b11-line2) 24%, transparent) 1px, transparent 1px);
    background-size: 26px 26px, 100% 40px;
}
:root[data-theme="dark"] .b11.b11--nose {
    --nb-pri: #e0869c;
    --nb-pri2: #efa6b7;
    --nb-hot: #83b2d6;
    --nb-tint: #321b24;
    --b11-pri: #e0869c;
    --b11-pri2: #efa6b7;
    --b11-tint: #321b24;
    --b11-bg: #151114;
    --b11-bg2: #1d171a;
    --b11-card2: #221b1e;
}

/* ---------- 首屏 ---------- */
.nb-hero { display: grid; grid-template-columns: minmax(0, 1.06fr) minmax(0, .94fr); gap: 32px; align-items: center; }
.nb-hero .b11-h1 em { color: var(--nb-pri); }
.nb-hero .b11-lead b { box-shadow: inset 0 -.42em 0 var(--nb-tint); }
.nb-motif svg { display: block; width: 100%; height: auto; }

/* ---------- 版式 G：步骤链 ---------- */
.nb-steps { display: flex; flex-wrap: wrap; gap: 0; margin-bottom: 16px; align-items: stretch; }
.nb-step {
    position: relative; cursor: pointer; font-family: inherit; text-align: left; flex: 1 1 130px;
    background: var(--b11-card); border: 1px solid var(--b11-line2); border-right: 0;
    padding: 12px 16px 12px 18px; color: var(--b11-sub); transition: all .15s;
}
.nb-step:last-child { border-right: 1px solid var(--b11-line2); }
.nb-step::after {
    content: ""; position: absolute; right: -11px; top: 50%; transform: translateY(-50%);
    width: 20px; height: 20px; background: var(--b11-card);
    border-top: 1px solid var(--b11-line2); border-right: 1px solid var(--b11-line2);
    transform: translateY(-50%) rotate(45deg); z-index: 2;
}
.nb-step:last-child::after { display: none; }
.nb-step b { display: block; font-size: var(--b11-sm); font-weight: 750; }
.nb-step span { display: block; font-size: 11px; color: var(--b11-mute); margin-top: 2px; }
.nb-step:hover { background: var(--nb-tint); color: var(--nb-pri); }
.nb-step.on { background: var(--nb-pri); border-color: var(--nb-pri); color: var(--b11-on); }
.nb-step.on span { color: color-mix(in srgb, var(--b11-on) 78%, transparent); }
.nb-step.on::after { background: var(--nb-pri); border-color: var(--nb-pri); }
.nb-step.on b { color: var(--b11-on); }

/* ---------- 步骤面板 ---------- */
.nb-panel {
    background: var(--b11-card); border: 1px solid var(--b11-line); box-shadow: var(--b11-shadow);
    padding: 20px 24px 18px; margin-bottom: 14px; position: relative;
    border-left: 5px solid var(--nb-pri);
}
.nb-panel.flash { outline: 3px solid var(--nb-pri); outline-offset: 2px; }
.nb-panel-hd { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; margin-bottom: 12px; }
.nb-panel-hd .nb-no {
    font-family: var(--b11-mono); font-size: var(--b11-xs); font-weight: 800; letter-spacing: .1em;
    color: var(--b11-on); background: var(--nb-pri); padding: 2px 9px;
}
.nb-panel-hd h3 { font-size: var(--b11-md); }
.nb-panel-hd em {
    font-style: normal; font-size: var(--b11-xs); color: var(--b11-mute); font-family: var(--b11-mono);
    border-left: 1px solid var(--b11-line2); padding-left: 10px;
}
.nb-note { font-size: var(--b11-sm); color: var(--b11-sub); line-height: 1.85; margin-bottom: 12px; }
.nb-note b { color: var(--nb-pri); }
.nb-nav { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 16px; padding-top: 14px; border-top: 1px dashed var(--b11-line2); }

/* ---------- 步骤要点 ---------- */
.nb-list { list-style: none; margin: 0; padding: 0; }
.nb-list li {
    position: relative; padding: 9px 0 9px 28px; font-size: var(--b11-sm); color: var(--b11-sub);
    border-bottom: 1px dotted var(--b11-line2); line-height: 1.78;
}
.nb-list li:last-child { border-bottom: 0; }
.nb-list li::before {
    content: ""; position: absolute; left: 4px; top: 15px; width: 9px; height: 9px;
    border-radius: 50%; background: var(--nb-pri);
}
.nb-list li b { color: var(--b11-ink); }

/* ---------- 体位要点 ---------- */
.nb-posture { list-style: none; margin: 0; padding: 0; }
.nb-posture li {
    position: relative; padding: 10px 0 10px 32px; font-size: var(--b11-sm); color: var(--b11-sub);
    border-bottom: 1px dotted var(--b11-line2); line-height: 1.78;
}
.nb-posture li:last-child { border-bottom: 0; }
.nb-posture li::before {
    content: "✓"; position: absolute; left: 0; top: 10px; width: 21px; height: 21px;
    display: grid; place-items: center; background: var(--nb-tint); color: var(--nb-pri);
    font-size: 12px; font-weight: 800;
}
.nb-posture li b { color: var(--b11-ink); }

/* ---------- 误区 ---------- */
.nb-myth { list-style: none; margin: 0; padding: 0; }
.nb-myth li {
    position: relative; padding: 10px 0 10px 32px; font-size: var(--b11-sm); color: var(--b11-sub);
    border-bottom: 1px dotted var(--b11-line2); line-height: 1.78;
}
.nb-myth li:last-child { border-bottom: 0; }
.nb-myth li::before {
    content: "✕"; position: absolute; left: 0; top: 10px; width: 21px; height: 21px;
    display: grid; place-items: center; background: var(--b11-badbg); color: var(--b11-bad);
    font-size: 12px; font-weight: 800;
}
.nb-myth li b { color: var(--b11-ink); }

/* ---------- 就医信号 ---------- */
.nb-signals { list-style: none; margin: 0; padding: 0; }
.nb-signals li {
    position: relative; padding: 10px 0 10px 32px; font-size: var(--b11-sm); color: var(--b11-sub);
    border-bottom: 1px dotted var(--b11-line2); line-height: 1.78;
}
.nb-signals li:last-child { border-bottom: 0; }
.nb-signals li::before {
    content: "▲"; position: absolute; left: 0; top: 11px; width: 21px; height: 21px;
    display: grid; place-items: center; background: var(--b11-warnbg); color: var(--b11-warn);
    font-size: 10px; font-weight: 800;
}
.nb-signals li.hit::before { background: var(--b11-badbg); color: var(--b11-bad); }
.nb-signals li b { color: var(--b11-ink); }
.nb-signals li .tagline { font-family: var(--b11-mono); font-size: 11px; color: var(--b11-mute); margin-left: 6px; }

/* ---------- 批量清洗条 ---------- */
.nb-clean {
    display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px;
    margin-top: 14px; padding: 12px 14px; background: var(--b11-card2);
    border: 1px solid var(--b11-line); font-size: var(--b11-sm);
}
.nb-clean > b { color: var(--nb-pri); font-family: var(--b11-mono); font-size: var(--b11-xs); letter-spacing: .08em; }
.nb-clean code { margin-left: auto; }

/* ---------- 首屏紧凑化（主操作按钮留在首屏内） ---------- */
.nb-hero { gap: 24px; }
.nb-motif svg { max-width: 236px; margin: 0 auto; }
.nb-steps { margin-bottom: 12px; }
.nb-step { padding: 9px 14px 9px 16px; }
.nb-panel { padding: 15px 20px 13px; margin-bottom: 10px; }
.nb-panel-hd { margin-bottom: 9px; }
.nb-note { margin-bottom: 9px; }
.nb-nav { margin-top: 11px; padding-top: 10px; }
.nb-field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px 14px; }
.nb-acts { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }

/* ---------- 响应式 ---------- */
@media (max-width: 900px) {
    .nb-hero { grid-template-columns: minmax(0, 1fr); }
    .nb-steps { flex-direction: column; }
    .nb-step { border-right: 1px solid var(--b11-line2); border-bottom: 0; }
    .nb-step:last-child { border-bottom: 1px solid var(--b11-line2); }
    .nb-step::after { display: none; }
    .nb-field-grid { grid-template-columns: minmax(0, 1fr); }
    .nb-clean code { margin-left: 0; }
}
@media (max-width: 560px) {
    .nb-panel { padding: 16px 14px 14px; }
}
