.entry-content .bf-algorithm-concepts { margin-block: 48px 32px; padding: 24px; border: 1px solid #d9dde2; }
.entry-content .bf-algorithm-concepts h2 { margin: 0 0 20px; font-size: 22px; font-weight: 700; }
.entry-content .bf-algorithm-concepts ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 20px; }
.entry-content .bf-algorithm-concepts a { display: inline-block; padding-block: 6px; text-decoration: underline; text-underline-offset: 3px; font-weight: 500; overflow-wrap: anywhere; }
.entry-content .bf-algorithm-concepts p { margin: 4px 0 0; color: #4b5563; font-size: 15px; line-height: 1.7; }
.entry-content .bf-algorithm-roadmap > ol { margin: 24px 0 0 24px; padding: 0; }
.entry-content .bf-algorithm-roadmap > ol > li { padding-inline-start: 8px; margin-bottom: 28px; }
.entry-content .bf-algorithm-roadmap h3 { font-size: 20px; font-weight: 700; margin: 0 0 8px; }
.entry-content .bf-algorithm-roadmap p { margin: 0 0 12px; }
.entry-content .bf-algorithm-roadmap li ul { margin: 0 0 0 20px; }
.entry-content .bf-concept-article .bf-pilot-summary { margin-bottom: 24px; }
.entry-content .bf-concept-article pre { max-width: 100%; overflow-x: auto; }
.entry-content .bf-concept-article table { width: 100%; table-layout: fixed; }
.entry-content .bf-concept-article th, .entry-content .bf-concept-article td { overflow-wrap: anywhere; }
.entry-content .bf-algorithm-concepts a:focus-visible, .entry-content .bf-algorithm-roadmap a:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
@media (max-width: 480px) {
  .entry-content .bf-algorithm-concepts { padding: 16px; margin-block: 32px 24px; }
  .entry-content .bf-algorithm-concepts h2, .entry-content .bf-algorithm-roadmap h3 { font-size: 20px; }
  .entry-content .bf-algorithm-concepts a, .entry-content .bf-algorithm-roadmap a { min-height: 44px; box-sizing: border-box; display: inline-flex; align-items: center; }
  .entry-content .bf-algorithm-roadmap > ol { margin-inline-start: 20px; }
}

/* Shared topic route; existing course lists and read controls retain their own layout. */
.bf-study-views { display: flex; flex-wrap: wrap; gap: 8px; margin-block: 24px; }
.bf-study-views a { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; padding: 8px 12px; border: 1px solid #777; background: #fff; color: #222; font-size: 15px; font-weight: 500; line-height: 1.5; text-decoration: none; overflow-wrap: anywhere; }
.bf-study-views a[aria-current] { background: #222; color: #fff; }
.bf-study-views a:focus-visible { outline: 2px solid #222; outline-offset: 3px; }
.bf-study-views span { font-size: 13px; white-space: nowrap; }
.bf-study-archive .bf-learning-stages { margin-block: 24px; }
.bf-study-list .bf-learning-heading h2 span { font-size: 15px; font-weight: 500; color: #555; }
.bf-study-path,
.entry-content .bf-study-followup {
  box-sizing: border-box;
  margin-block: 32px;
  padding: 24px;
  border: 1px solid #d9dde2;
  background: #fff;
  color: #222;
  text-align: left;
}
.bf-study-path h2,
.entry-content .bf-study-followup h2 {
  margin: 0 0 12px;
  padding: 0;
  border: 0;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.5;
}
.bf-study-path p,
.entry-content .bf-study-followup p,
.bf-study-preparation p { margin: 0 0 12px; line-height: 1.7; }
.bf-study-path a,
.bf-study-followup a,
.bf-study-preparation a { color: #222; text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.bf-study-path a:focus-visible,
.bf-study-followup a:focus-visible,
.bf-study-preparation a:focus-visible,
.bf-study-path summary:focus-visible,
.bf-study-followup summary:focus-visible,
.bf-study-preparation summary:focus-visible { outline: 2px solid #222; outline-offset: 3px; }
.bf-study-path .bf-study-entry a { display: inline-flex; align-items: center; min-height: 44px; font-weight: 700; }
.bf-study-count,
.bf-study-location,
.bf-study-role,
.bf-study-original-note { color: #4b5563; font-size: 15px; }
.bf-study-path summary,
.bf-study-followup summary,
.bf-study-preparation summary { min-height: 44px; padding-block: 10px; box-sizing: border-box; cursor: pointer; font-size: 16px; font-weight: 500; line-height: 1.5; }
.bf-study-path .bf-study-stages { margin: 20px 0 0; padding-inline-start: 24px; }
.bf-study-path .bf-study-stages > li { margin-block: 0 28px; padding-inline-start: 4px; }
.bf-study-path .bf-study-stages h3 { margin: 0 0 8px; padding: 0; border: 0; font-size: 20px; font-weight: 700; line-height: 1.5; }
.bf-study-path .bf-study-stages h3 span { font-size: 15px; font-weight: 500; color: #4b5563; white-space: nowrap; }
.bf-study-path .bf-study-articles { margin: 12px 0 16px; padding-inline-start: 24px; }
.bf-study-path .bf-study-articles li { margin-block: 8px; line-height: 1.7; overflow-wrap: anywhere; }
.bf-study-role { display: block; }
.bf-study-checkpoint,
.bf-study-scope { color: #4b5563; }
.bf-study-preparation .bf-study-concept-links { list-style: none; margin: 12px 0 20px; padding: 0; display: grid; gap: 12px; }
.bf-study-preparation { margin-block: 0 28px; min-width: 0; }
.entry-content .bf-study-preparation .bf-study-preparation-title { margin: 0 0 8px; padding: 0; border: 0; color: #222; font-size: 20px; font-weight: 700; line-height: 1.5; }
.bf-study-preparation .bf-study-preparation-intro { margin-bottom: 16px; color: #333; font-size: 16px; }
.bf-study-preparation .bf-study-preparation-concepts { gap: 16px; margin-block: 0 16px; }
.bf-study-preparation .bf-study-preparation-concepts li { margin: 0; min-width: 0; }
.bf-study-preparation .bf-study-preparation-concepts a { display: inline-block; font-size: 16px; font-weight: 500; line-height: 1.6; }
.bf-study-preparation .bf-study-preparation-detail { margin-top: 16px; }
.bf-study-preparation .bf-study-concept-shortcuts { display: flex; flex-wrap: wrap; gap: 4px 16px; list-style: none; margin: 0 0 12px; padding: 0; }
.bf-study-preparation .bf-study-concept-shortcuts li { margin: 0; font-size: 15px; line-height: 1.6; }
.bf-study-optional-note { color: #4b5563; font-size: 15px; }
.bf-study-concept-links span { display: block; margin-top: 4px; color: #4b5563; font-size: 15px; line-height: 1.7; }
.entry-content .bf-study-followup > :last-child,
.bf-study-path > :last-child,
.bf-study-preparation > :last-child { margin-bottom: 0; }
@media (max-width: 480px) {
  .bf-study-path,
  .entry-content .bf-study-followup { padding: 16px; margin-block: 24px; }
  .bf-study-path h2,
  .entry-content .bf-study-followup h2 { font-size: 20px; }
  .bf-study-path .bf-study-stages h3 { font-size: 18px; }
  .bf-study-path .bf-study-stages,
  .bf-study-path .bf-study-articles { padding-inline-start: 20px; }
  .bf-study-articles a,
  .bf-study-concept-links a,
  .bf-study-concept-shortcuts a { display: inline-flex; align-items: center; min-height: 44px; box-sizing: border-box; }
}
