/* Compact reading rhythm for NFLSOJ. Editor settings and content stay native. */
body.nf-learner { font-size: 14px; line-height: 1.6; }
.nf-learner .section { margin-bottom: 18px; }
.nf-learner .section__header { padding: 14px 18px 10px; }
.nf-learner .section__body:not(.no-padding) { padding: 14px 18px; }
.nf-learner .section__title { font-size: 19px; line-height: 1.4; }
.nf-learner .section.side .section__title { font-size: 16px; }
.nf-learner .typo, .nf-learner .section__body.typo { font-size: 14px; line-height: 1.65; }
.nf-learner .typo p { margin-top: 0; margin-bottom: .75em; padding-top: 0; padding-bottom: 0; line-height: inherit; }
.nf-learner .typo ul, .nf-learner .typo ol { margin-top: .5em; margin-bottom: .75em; }
.nf-learner .typo li { margin-top: 0; margin-bottom: 0; line-height: inherit; }
.nf-learner .supplementary, .nf-learner .typo.supplementary { font-size: 13px; }
.nf-learner .data-table { font-size: 13px; line-height: 1.5; }
.nf-learner .data-table th, .nf-learner .data-table td { padding-top: 8px; padding-bottom: 8px; line-height: 1.5; }
.nf-learner .data-table .col--problem-name > a { font-size: 14px; }
.nf-learner .col--problem-name > a > b { font-size: 12px; }
.nf-learner .button, .nf-learner .button.primary, .nf-learner .primary.button {
  font-size: 13px; line-height: 1.5; min-height: 34px; padding: 6px 12px;
}
.nf-learner .textbox, .nf-learner input.textbox, .nf-learner select { font-size: 14px; }
.nf-learner .menu__link { font-size: 14px; line-height: 1.5; padding-top: 9px; padding-bottom: 9px; }
.nf-learner .section--problem-sidebar .menu__link { font-size: 13px; min-height: 36px; }
.nf-learner .section--problem-sidebar [name="problem-sidebar__open-scratchpad"] { font-size: 14px; min-height: 36px; margin-top: 8px; margin-bottom: 8px; }
.nf-learner .problem__tag-item { font-size: 13px; }
.nf-learner .problem-content { font-size: 15px; line-height: 1.65; }
.nf-learner .problem-content > .section__body { font-size: inherit; line-height: inherit; }
.nf-learner .problem-content h1 { font-size: 23px; }
.nf-learner .problem-content h2 { font-size: 20px; }
.nf-learner .problem-content h3 { font-size: 17px; }
.nf-learner .problem-content h1, .nf-learner .problem-content h2, .nf-learner .problem-content h3 { line-height: 1.4; margin-top: 1em; margin-bottom: .5em; }
.nf-learner .problem-content p { margin-top: 0; margin-bottom: .7em; }
.nf-learner .problem-content pre, .nf-learner pre.compiler-text, .nf-learner pre.judge-text, .nf-learner .page-code { font-size: 14px; line-height: 1.55; }
.nf-learner .problem-content pre code { font-size: inherit; line-height: inherit; }
.nf-learner .section__body pre.line-numbers, .nf-learner .section__body pre.line-numbers code { font-size: 14px; line-height: 1.55; }
.nf-learner .discussion__title { font-size: 16px; }
.nf-learner .discussion__item { padding-top: 14px; padding-bottom: 14px; }
.nf-learner .contest__title { font-size: 18px; }
.nf-learner .contest__info { font-size: 13px; }
.nf-learner .discussion-announcement .section__title { font-size: 16px; }
.nf-learner .discussion-announcement .section__body { font-size: 14px; line-height: 1.6; }
.nf-learner .discussion-announcement p { margin-bottom: 8px; }
.nf-learner .discussion-announcement li { margin-bottom: 3px; }
.nf-learner .nf-quota, .nf-learner .nf-contest-note { font-size: 13px; line-height: 1.6; }
.nf-learner .nf-ranking-bio { font-size: 13px; }
.nf-learner .nf-growth, .nf-learner .nf-growth.nf-training-page { font-size: 14px; line-height: 1.55; }
.nf-learner .nf-growth h2 { font-size: 21px; }
.nf-learner .nf-growth h3 { font-size: 16px; }
.nf-learner .nf-growth .nf-muted, .nf-learner .nf-growth .nf-progress-meta, .nf-learner .nf-growth .nf-small, .nf-learner .nf-growth .nf-kicker, .nf-learner .nf-growth .nf-breadcrumb { font-size: 13px; }
.nf-learner .nf-growth .nf-button { font-size: 13px; line-height: 1.5; min-height: 34px; padding: 6px 11px; }
.nf-learner .nf-growth .nf-training-heading h1, .nf-learner .nf-growth .nf-course-summary h2 { font-size: 23px; }
.nf-learner .nf-growth .nf-training-title, .nf-learner .nf-growth .nf-course-title { font-size: 17px; line-height: 1.5; }
.nf-learner .nf-growth .nf-training-heading { padding: 16px 20px 10px; }
.nf-learner .nf-growth .nf-training-entry { padding: 16px 20px; }
.nf-learner .nf-growth .nf-training-current, .nf-learner .nf-growth .nf-training-goal { padding: 18px; }
.nf-learner .nf-growth .nf-training-course-button, .nf-learner .nf-growth .nf-chapter-actions .nf-button { font-size: 13px; min-height: 32px; padding: 5px 10px; }
.nf-learner .nf-growth .nf-training-current h2 { font-size: 18px; }
.nf-learner .nf-growth .nf-training-goal h3 { font-size: 16px; }
.nf-learner .nf-growth .nf-training-goal-body { padding-top: 18px; padding-bottom: 16px; }
.nf-learner .nf-growth .nf-training-goal-body strong { font-size: 14px; }
.nf-learner .nf-growth .nf-pill { font-size: 12px; padding: 1px 8px; }
.nf-learner .nf-growth .nf-space { margin-top: 12px; }
.nf-learner .nf-growth .nf-small-space { margin-top: 6px; }
.nf-learner .nf-growth .nf-progress-meta { margin-top: 6px; }
.nf-learner .nf-growth .nf-breadcrumb { margin-bottom: 14px; }
.nf-learner .nf-growth.nf-course-overview { margin-bottom: 18px; }
.nf-learner .nf-course-overview .nf-surface, .nf-learner .nf-course-sidebar .nf-surface { padding: 18px 20px; }
.nf-learner .nf-growth .nf-chapters-heading { padding: 15px 20px 12px; }
.nf-learner .nf-growth .nf-chapters-heading h2 { font-size: 19px; }
.nf-learner .nf-growth .nf-chapter-item { padding: 10px 20px; gap: 12px; }
.nf-learner .nf-growth h2.nf-chapter-title { font-size: 15px; }
.nf-learner .nf-growth .nf-chapter-node { width: 30px; height: 30px; font-size: 13px; }
.nf-learner .nf-growth .nf-chapter-progress { width: 48px; height: 48px; flex-basis: 48px; font-size: 12px; }
.nf-learner .nf-growth .nf-chapter-progress__inside { inset: 2px; }
.nf-learner .nf-growth .nf-filter { font-size: 13px; min-height: 34px; padding: 5px 10px; }
.nf-learner .nf-problem-filters { padding: 10px 18px; gap: 8px; }
.nf-learner .nf-learning-nav { margin-bottom: 16px; }
.nf-learner .nf-learning-nav .nf-surface { padding: 12px 18px; }
.nf-learner .nf-learning-title { font-size: 14px; }
.nf-learner .nf-result { margin: 16px 0; }
.nf-learner .nf-result h2 { font-size: 18px; }
.nf-learner .nf-growth .nf-profile-learning { margin: 16px 0; }
.nf-learner .nf-growth .nf-medal-name { font-size: 13px; }
.nf-learner .nf-growth .nf-badge > summary { min-height: 184px; padding: 12px 8px; }
.nf-learner .nf-growth .nf-badge > summary h3 { font-size: 15px; }
@media (max-width: 760px) {
  .nf-learner .discussion__item .media { width: 100%; table-layout: fixed; }
  .nf-learner .discussion__item .media__left { width: 55px; }
  .nf-learner .discussion__item .discussion__title { overflow-wrap: anywhere; }
  .nf-learner .discussion__item .supplementary > li { white-space: normal; overflow-wrap: anywhere; }
  .nf-learner .section__header { padding: 12px 14px 8px; }
  .nf-learner .section__body:not(.no-padding) { padding: 12px 14px; }
  .nf-learner .nf-growth .nf-chapter-item { padding: 12px 14px; grid-template-columns: 30px minmax(0,1fr) 48px; column-gap: 9px; row-gap: 6px; }
  .nf-learner .nf-growth .nf-chapter-progress { width: 48px; height: 48px; font-size: 12px; }
  .nf-learner .nf-growth .nf-training-title { font-size: 17px; }
  .nf-learner .nf-growth h2, .nf-learner .nf-growth .nf-training-heading h1, .nf-learner .nf-growth .nf-course-summary h2 { font-size: 21px; }
  .nf-learner .nf-growth h2.nf-chapter-title { font-size: 15px; }
  .nf-learner .nf-growth .nf-chapters-heading h2 { font-size: 19px; }
  .nf-learner .nf-growth .nf-training-entry { padding: 14px 16px; }
  .nf-learner .textbox, .nf-learner input.textbox, .nf-learner select { font-size: 16px; }
}
@media (pointer: coarse) {
  .nf-learner .button, .nf-learner .button.primary, .nf-learner .primary.button,
  .nf-learner .nf-growth .nf-button, .nf-learner .nf-growth .nf-filter,
  .nf-learner .nf-growth .nf-chapter-actions .nf-button, .nf-learner .nf-growth .nf-training-course-button,
  .nf-learner .section--problem-sidebar .menu__link { min-height: 44px; }
}
