/* 第 04 章特有样式：观点图（TPC4.chart 的打脸区、说对区、期限竖线、价位线）、改写器、判卷格、改写模板 */
.philo .k4 .z4.bad{fill:var(--err-soft);opacity:.9}
.philo .k4 .z4.ok{fill:var(--ok-soft);opacity:.9}
.philo .k4 .z4t{font-size:11.5px;font-weight:700}
.philo .k4 .z4t.bad{fill:var(--err)}
.philo .k4 .z4t.ok{fill:var(--ok)}
.philo .k4 .v4{stroke:var(--accent);stroke-width:1.4;stroke-dasharray:5 4}
.philo .k4 .h4{stroke:var(--ch-mark);stroke-width:1.2;stroke-dasharray:4 3;fill:none}
.philo .k4 .h4.ok{stroke:var(--ok)}
.philo .k4 .h4.bad{stroke:var(--err)}
.philo .k4 .h4t{fill:var(--ch-mark);font-size:11.5px;font-weight:700}
.philo .k4 .h4t.ok{fill:var(--ok)}
.philo .k4 .h4t.bad{fill:var(--err)}

/* 改写器：一句话逐步补零件 */
.philo .rw-say{font-size:16.5px;line-height:1.75;padding:14px 16px;border-radius:12px;background:var(--raise);box-shadow:inset 0 0 0 1px var(--line2);margin:0 0 12px;overflow-wrap:anywhere}
.philo .rw-say .add{color:var(--accent);font-weight:700}
.philo .rw-say .vg{text-decoration:underline wavy var(--warn);text-underline-offset:4px}
.philo .rw-steps{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}
.philo .rw-steps span{font-size:13px;padding:4px 10px;border-radius:999px;box-shadow:inset 0 0 0 1px var(--line2);color:var(--mute)}
.philo .rw-steps span.on{color:var(--accent);box-shadow:inset 0 0 0 1.5px var(--accent-line);background:var(--accent-soft)}

/* 判卷格：五样零件有没有 */
.philo .gd{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:10px 0}
.philo .gd div{padding:8px 6px;border-radius:10px;text-align:center;font-size:13px;line-height:1.4;box-shadow:inset 0 0 0 1px var(--line2);color:var(--mute);overflow-wrap:anywhere}
.philo .gd div b{display:block;font-size:12px;font-weight:600;margin-bottom:2px}
.philo .gd div.y{color:var(--ok);box-shadow:inset 0 0 0 1.5px var(--ok-line);background:var(--ok-soft)}
.philo .gd div.n{color:var(--err);box-shadow:inset 0 0 0 1.5px var(--err-line);background:var(--err-soft)}
@media(max-width:520px){.philo .gd{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* 改写模板 */
.philo .fx-list{display:grid;gap:8px;margin:0 0 12px}
.philo .fx-item{display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:12px;box-shadow:inset 0 0 0 1px var(--line2);background:var(--card);cursor:pointer;font:inherit;font-size:14.5px;color:var(--text);text-align:left;width:100%}
.philo .fx-item[aria-current="true"]{box-shadow:inset 0 0 0 1.5px var(--accent-line);background:var(--accent-soft)}
.philo .fx-item .t{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.philo .fx-item .st{font-size:12.5px;color:var(--mute);flex:none}
.philo .fx-item .st.ok{color:var(--ok)}
.philo .fx-item .st.bad{color:var(--err)}
.philo .fx-tag{display:inline-block;font-size:12.5px;padding:1px 8px;border-radius:999px;margin:2px 4px 2px 0;background:var(--warn-soft);color:var(--warn);box-shadow:inset 0 0 0 1px var(--warn-line)}
