


.rail .cd-toc{border-radius:12px;box-shadow:none}
.rail .cd-toc .cdt-panel{padding:14px 10px 10px}
.rail .cd-toc .cdt-h{margin:0 0 2px;padding:0 10px;font-size:.92rem;font-weight:800;letter-spacing:-.005em;
  text-transform:none;color:var(--ink)}
.rail .cd-toc .cdt-sub{display:none}
.rail .cd-toc .cdt-count{margin:0 0 8px;padding:0 10px;font-size:.76rem}
.rail .cd-toc .cdt-list a{gap:8px;padding:6px 10px 6px 10px;border-radius:0 6px 6px 0;font-size:.84rem;font-weight:500;
  color:var(--ink-soft)}
.rail .cd-toc .cdt-list a::before{content:"";width:12px;height:auto;flex:none;border:0;background:none;
  font-size:.72rem;font-weight:800;color:#2e9e57}
.rail .cd-toc .cdt-list li.cdt-sub-item a{padding-left:24px;font-size:.78rem}
.rail .cd-toc .cdt-list li.cdt-sub-item a::before{content:"";width:12px}
.rail .cd-toc .cdt-list a:hover{color:var(--blue-deep);background:var(--mist)}
.rail .cd-toc .cdt-list a.on{color:var(--blue-deep);background:var(--mist);border-left-color:var(--blue);font-weight:700}
.rail .cd-toc .cdt-list a.on::before{background:none;border:0;color:#2e9e57}
.rail .cd-toc .cdt-list li.done a{color:#7d8790}
.rail .cd-toc .cdt-list li.done a::before,.rail .cd-toc .cdt-list li.cdt-sub-item.done a::before{content:"\2713";
  background:none;border:0;color:#2e9e57;width:12px}
.rail .cd-toc .cdt-foot{border-top-style:solid}


.ws-rail .rail-diag,.ws-rail .aside-cta{background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:12px;
  padding:16px 18px;box-shadow:none}
.ws-rail .rail-diag .rd-kicker{margin:0 0 4px;font-size:.78rem;font-weight:700;letter-spacing:0;text-transform:none;
  color:var(--blue-deep)}
.ws-rail .rail-diag b,.ws-rail .aside-cta b{display:block;margin:0 0 6px;font-size:.98rem;line-height:1.35;color:var(--ink)}
.ws-rail .rail-diag p,.ws-rail .aside-cta p{margin:0 0 12px;font-size:.84rem;line-height:1.5;color:var(--ink-soft)}
.ws-rail .rail-diag a,.ws-rail .aside-cta a{min-height:40px;padding:8px 14px;border-radius:8px;font-size:.85rem;font-weight:700;
  text-decoration:none}
.ws-rail .rail-diag a{background:var(--blue);color:#fff;border:1px solid var(--blue)}
.ws-rail .rail-diag a:hover{background:#3a69ad;color:#fff}
.ws-rail .aside-cta a{background:#fff;color:var(--blue-deep);border:1px solid #bcd0e8}
.ws-rail .aside-cta a:hover{background:var(--mist);border-color:var(--blue)}
.ws-rail .rail-diag small{margin-top:8px;font-size:.74rem;color:#6b7680}


.entry .cd-trainer-next{display:flex;align-items:center;gap:18px 22px;flex-wrap:wrap;margin:36px 0 32px;
  padding:18px 20px;border:1px solid var(--line);border-radius:14px;background:var(--mist)}
.entry .cd-trainer-next .ctn-board{flex:0 0 auto;width:96px;height:96px;border-radius:8px;
  box-shadow:0 0 0 1px rgba(50,55,60,.12);object-fit:cover}
.entry .cd-trainer-next .ctn-copy{flex:1 1 320px;min-width:0}
.entry .cd-trainer-next .ctn-title{margin:0 0 6px;font-size:1.08rem;font-weight:800;letter-spacing:-.01em;color:var(--ink)}
.entry .cd-trainer-next .ctn-points{margin:0;padding:0;list-style:none;display:grid;gap:3px}
.entry .cd-trainer-next .ctn-points li{position:relative;margin:0;padding-left:16px;font-size:.9rem;line-height:1.45;color:var(--ink-soft)}
.entry .cd-trainer-next .ctn-points li::before{content:"";position:absolute;left:2px;top:.6em;width:6px;height:6px;
  border-radius:50%;background:var(--blue)}
.entry a.ctn-go{flex:0 0 auto;display:inline-block;padding:11px 18px;border-radius:10px;background:var(--blue);
  color:#fff;font-weight:700;font-size:.92rem;text-decoration:none;white-space:nowrap}
.entry a.ctn-go:hover{background:#3a69ad;color:#fff;text-decoration:none}
.entry a.ctn-go:focus-visible{outline:3px solid rgba(69,119,190,.45);outline-offset:2px}
@media (max-width:560px){
  .entry .cd-trainer-next{padding:16px}
  .entry .cd-trainer-next .ctn-board{width:72px;height:72px}
  .entry a.ctn-go{width:100%;text-align:center;white-space:normal}
}


.entry .ps-toggle .pt-label{text-transform:none;letter-spacing:0;font-size:.88rem;color:var(--ink)}
.entry .callout{box-shadow:none;border:1px solid var(--line)}
.entry .callout::before{background:var(--mist);color:var(--blue-deep,#2f5a99);text-transform:none;letter-spacing:0;
  font-size:.86rem;font-weight:700;border-bottom:1px solid var(--line)}
.entry .callout li{padding-left:20px}
.entry .callout li::before{content:"";top:.62em;width:7px;height:7px;border-radius:50%;background:var(--blue,#4577BE);border:0}


@media (min-width:641px){
  .entry .smart-table{border:1px solid var(--line);border-radius:12px;box-shadow:none}
  .entry .smart-table thead{background:var(--mist)}
  .entry .smart-table thead th{color:var(--ink);font-size:.86rem;font-weight:700;letter-spacing:0;text-transform:none;
    padding:11px 16px;border-bottom:1px solid var(--line)}
  .entry .smart-table td{padding:10px 16px}
}
