/* 第 02 章特有样式：校准图、模拟器、五题自测（只用令牌颜色） */
.philo .c2-cal .c2-diag{stroke:var(--line3);stroke-width:1.5;stroke-dasharray:5 4;fill:none}
.philo .c2-cal .c2-dot{fill:var(--accent);stroke:var(--card);stroke-width:2}
.philo .c2-cal .c2-dot.few{fill:var(--card);stroke:var(--accent);stroke-width:2}
.philo .c2-cal .c2-dl{font-size:11.5px;fill:var(--sub);font-family:var(--font-mono)}
.philo .c2-sim .lc polyline{stroke-width:1.2;opacity:.55}
.philo .c2-sim .lc polyline.s0{opacity:.9;stroke-width:2}
.philo .c2-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0 0}
.philo .c2-stats>div{border:1px solid var(--line2);border-radius:10px;padding:8px 10px;background:var(--card)}
.philo .c2-stats b{display:block;font-family:var(--font-mono);font-size:18px;color:var(--text)}
.philo .c2-stats span{font-size:12.5px;color:var(--sub)}
.philo .c2-q{border:1px solid var(--line2);border-radius:12px;padding:12px;margin:0 0 14px;background:var(--card)}
.philo .c2-q h4{margin:0 0 6px;font-size:15.5px}
.philo .c2-q .st{font-size:14px;color:var(--sub);margin:0 0 8px}
.philo .c2-pp{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.philo .c2-pp .btn{min-width:56px}
.philo .c2-runs{display:flex;flex-wrap:wrap;gap:3px;margin:10px 0 2px}
.philo .c2-runs i{display:block;width:9px;height:14px;border-radius:2px;background:var(--line2)}
.philo .c2-runs i.w{background:var(--ch-up)}
.philo .c2-runs i.l{background:var(--ch-down);opacity:.75}
.philo .c2-runs i.hl{outline:2px solid var(--accent);outline-offset:1px;opacity:1}
.philo .c2-rec{width:100%;border-collapse:collapse;font-size:14px}
.philo .c2-rec td,.philo .c2-rec th{border-bottom:1px solid var(--line);padding:8px 6px;text-align:left;vertical-align:top}
.philo .c2-rec th{font-size:12.5px;color:var(--sub);font-weight:600}
.philo .c2-rec .seg{display:inline-flex;gap:4px;flex-wrap:wrap}
.philo .c2-rec .seg .btn{padding:4px 8px;font-size:12.5px}
.philo .c2-rec .seg .btn[aria-pressed="true"]{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}
.philo .c2-rec .due{font-size:12.5px;color:var(--mute)}
.philo .c2-rec .late{color:var(--warn)}
.philo .c2-rec .x{border:0;background:none;color:var(--mute);cursor:pointer;font:inherit;padding:2px 4px}
@media (max-width:560px){
  .philo .c2-stats{grid-template-columns:1fr}
  .philo .c2-rec thead{display:none}
  .philo .c2-rec tr{display:block;border-bottom:1px solid var(--line);padding:8px 0}
  .philo .c2-rec td{display:block;border:0;padding:3px 0}
}
.philo .fld input[type=date]{width:100%;font:inherit;font-size:15px;color:var(--text);background:var(--bg);border:1px solid var(--line2);border-radius:10px;padding:9px 12px;line-height:1.6}
.philo .fld input[type=date]:focus{outline:none;border-color:var(--accent-line);box-shadow:var(--ring)}
