/* Shared account progress on course cards and course landing pages. */
.kof-progress {
  box-sizing:border-box; min-width:0; color:#191815;
  font:400 14px/1.5 "Wix Madefor Text",system-ui,sans-serif;
}
.kof-progress *, .kof-progress *::before, .kof-progress *::after { box-sizing:border-box; }
.kof-progress .kof-course-state {
  display:inline-flex; margin:0 0 10px; padding:2px 8px; border:1px solid #878d2b;
  border-radius:6px; background:#dce080; color:#191815;
  font:600 11px/1.45 "Wix Madefor Text",system-ui,sans-serif;
}
/* A quiet visit marker, separate from LearnDash completion. */
.learndash-wrapper .kof-visited-badge,
.learndash-wrapper .kof-visit-dot {
  display:inline-block!important; box-sizing:border-box; flex:none;
  width:10px!important; height:10px!important; min-width:10px;
  margin:0!important; padding:0!important; border:1.5px solid #191815;
  border-radius:50%; background:#a4bf6b; vertical-align:middle;
}
.learndash-wrapper .kof-visit-row { position:relative; }
.learndash-wrapper .kof-visit-row .kof-visited-badge {
  position:absolute; top:13px; right:12px; pointer-events:none;
}
.learndash-wrapper .kof-visit-row :is(.ld-lesson-title,.ld-topic-title,.ld-item-title) { padding-right:20px; }
.learndash-wrapper .kof-visit-sr {
  position:absolute!important; width:1px!important; height:1px!important; padding:0!important;
  margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important;
  white-space:nowrap!important; border:0!important;
}
.learndash-wrapper .kof-visit-legend {
  display:flex; align-items:flex-start; gap:8px; margin:20px 6px 12px!important;
  color:#57544e; font:400 12px/1.5 Onest,Arial,sans-serif!important;
}
.learndash-wrapper .kof-visit-legend .kof-visit-dot { margin-top:4px!important; }
.kof-progress .kof-progress__head { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:baseline; gap:4px 14px; margin:0 0 9px; }
.kof-progress .kof-progress__label { font-weight:600; color:#191815; }
.kof-progress .kof-progress__value { font-weight:700; color:#191815; font-variant-numeric:tabular-nums; }
.kof-progress .kof-progress__track { display:block; height:11px; width:100%; overflow:hidden; border:1px solid #615c54; border-radius:12px; background:#eee7de; }
.kof-progress .kof-progress__fill { display:block; height:100%; background:#878d2b; border-radius:inherit; }
.kof-progress .kof-progress__count, .kof-progress .kof-progress__hint { margin:7px 0 0; color:#615c54; font:400 13px/1.5 "Wix Madefor Text",system-ui,sans-serif; }
.kof-classroom .kof-course-card .kof-progress--card { margin-top:auto; padding-top:24px; }
.kof-classroom .kof-course-card .kof-card-open { margin-top:0; padding-top:16px; min-height:58px; }
.kof-course-progress-panel {
  box-sizing:border-box; width:100%; margin:22px 0 28px; padding:22px 24px;
  border:1.5px solid #191815; border-radius:14px; background:#fffdf9; color:#191815;
  font:400 15px/1.55 "Wix Madefor Text",system-ui,sans-serif;
}
.kof-course-progress-panel .kof-progress { font-size:17px; }
.kof-course-progress-panel .kof-progress__track { height:13px; }
.kof-course-progress-panel .kof-progress__count { font-size:14px; }
.kof-course-progress-panel .kof-progress-explanation { margin:12px 0 0; color:#615c54; font:400 14px/1.5 "Wix Madefor Text",system-ui,sans-serif; }
.kof-course-progress-panel a.kof-progress-continue { display:inline-flex; align-items:center; justify-content:center; gap:16px; min-height:46px; margin:18px 0 0; padding:10px 18px; border:1.5px solid #191815; border-radius:9px; background:#dce080; color:#191815; font:700 15px/1.4 "Wix Madefor Text",system-ui,sans-serif; text-decoration:none; box-shadow:none; }
.kof-course-progress-panel a.kof-progress-continue:hover { color:#fffdf9; background:#191815; }
.kof-course-progress-panel a.kof-progress-continue:focus-visible { outline:3px solid #191815; outline-offset:4px; }
@media(max-width:480px) {
  .kof-course-progress-panel { padding:18px 16px; margin-block:18px 24px; }
  .kof-course-progress-panel .kof-progress { font-size:16px; }
  .kof-course-progress-panel a.kof-progress-continue { width:100%; }
}
@media(forced-colors:active) {
  .kof-progress .kof-progress__track { border-color:CanvasText; }
  .kof-progress .kof-progress__fill { background:Highlight; forced-color-adjust:none; }
}
