/* QTChad student course list only. No images, scripts or course data changes. */
.vibebp_myprofile .mycourses {
  --qt-ink: #35235f;
  --qt-muted: #625875;
  --qt-surface: #ffffff;
  --qt-border: #d9d3e3;
  --qt-track: #eeeaf3;
  --qt-action: #35235f;
  --qt-action-text: #ffffff;
  color: var(--qt-ink);
}
.vibebp_myprofile.dark_theme .mycourses {
  --qt-ink: #f5f2fa;
  --qt-muted: #d0c8dd;
  --qt-surface: #282332;
  --qt-border: #655b76;
  --qt-track: #493f59;
  --qt-action: #c7a444;
  --qt-action-text: #241b31;
}
.vibebp_myprofile .mycourses .mycourses_header {
  padding: 12px;
  gap: 16px;
  margin-block-end: 24px;
  background: var(--qt-surface);
  border-color: var(--qt-border);
  color: var(--qt-ink);
}
.vibebp_myprofile .mycourses .mycourses_header > div { padding: 0; gap: 12px; min-width: 0; }
.vibebp_myprofile .mycourses .mycourses_header > .mycourses_access_tabs { flex: 0 1 240px; }
.vibebp_myprofile .mycourses .mycourses_header > .flex2 { flex: 1 1 540px; }
.vibebp_myprofile .mycourses .mycourses_access_tabs > a {
  margin: 0;
  min-height: 44px;
  padding: 10px 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.4;
  color: var(--qt-ink);
}
.vibebp_myprofile .mycourses .mycourses_access_tabs > a.active {
  color: var(--qt-action-text);
  background: var(--qt-action);
  border-color: var(--qt-action);
}
.vibebp_myprofile .mycourses .mycourses_header :is(select, input[type="text"]) {
  min-height: 44px;
  margin: 0;
  color: var(--qt-ink);
  background-color: var(--qt-surface);
  border-color: var(--qt-border);
  line-height: 1.4;
  min-width: 0;
  max-width: 100%;
}
.vibebp_myprofile .mycourses .mycourses_header .searchbox {
  min-height: 44px;
  border-color: var(--qt-border);
  color: var(--qt-muted);
  background: var(--qt-surface);
}
.vibebp_myprofile .mycourses .mycourses_header input::placeholder { color: var(--qt-muted); opacity: 1; }
.vibebp_myprofile .mycourses .mycourses_header .vibebp_form_field { margin: 0; }
.vibebp_myprofile .mycourses .course_blocks .course_block_content_wrapper {
  padding: 16px;
  border-color: var(--qt-border);
  background: var(--qt-surface);
  color: var(--qt-ink);
  text-align: start;
}
.vibebp_myprofile .mycourses .course_blocks .course_title { padding-block: 0 12px; }
.vibebp_myprofile .mycourses .course_blocks .course_title h3 { color: var(--qt-ink); margin-block: 0 8px; line-height: 1.4; }
.vibebp_myprofile .mycourses .course_blocks .course_info { align-items: center; flex-wrap: wrap; gap: 8px 12px; margin-block-end: 16px; }
.vibebp_myprofile .mycourses .course_blocks .course_info :is(.course_instructor span, .joined_date) { color: var(--qt-muted); }
.vibebp_myprofile .mycourses .course_blocks .course_meta_data { gap: 20px; }
.vibebp_myprofile .mycourses .course_blocks .course_progress_wrapper { gap: 8px; color: var(--qt-ink); min-width: 0; }
.vibebp_myprofile .mycourses .course_blocks .course_progress_wrapper > span { margin: 0; min-width: 3ch; text-align: end; font-variant-numeric: tabular-nums; direction: ltr; }
.vibebp_myprofile .mycourses .course_blocks .course_progress { background: var(--qt-track); }
.vibebp_myprofile .mycourses .course_blocks .course_progress > span { background: #c7a444; }
.vibebp_myprofile .mycourses .course_blocks .course_block_actions { align-items: center; flex-wrap: wrap; gap: 12px; }
.vibebp_myprofile .mycourses .course_blocks .course_block_actions > * { min-height: 44px; line-height: 1.4; text-align: start; }
.vibebp_myprofile .mycourses .course_blocks .course_block_actions > .button {
  padding: 10px 14px;
  color: var(--qt-action-text);
  background: var(--qt-action);
  border-color: var(--qt-action);
}
.vibebp_myprofile .mycourses .course_blocks .course_block_actions > span { color: var(--qt-ink); gap: 8px; }
.vibebp_myprofile .mycourses :is(a, input, select):focus-visible { outline: 2px solid var(--qt-action); outline-offset: 3px; }
.vibebp_myprofile .mycourses .course_block_actions > .button:hover { filter: brightness(1.12); }
.vibebp_myprofile .mycourses .mycourses_access_tabs > .link:hover { background: var(--qt-track); }
.vibebp_myprofile .mycourses ::selection { background: #c7a444; color: #241b31; }
/* Shell refinements apply only while the student course component is present. */
.vibebp_myprofile.slick:has(.mycourses) .profile_menu { background: #241b31; }
.vibebp_myprofile.slick:has(.mycourses) .profile_menu .menu_items > div { color: #f5f2fa; opacity: 1; }
.vibebp_myprofile.slick:has(.mycourses) .profile_menu .menu_items > div.is_active { background: #35235f; color: #e4c77a; }
.vibebp_myprofile.slick:has(.mycourses) .vibebp_left_sidebar_wrapper { background: #35235f; color: #f5f2fa; }
.vibebp_myprofile.slick:has(.mycourses) .vibebp_left_sidebar .menu-child { color: #f5f2fa; padding-block: 10px; line-height: 1.4; }
.vibebp_myprofile.slick:has(.mycourses) .vibebp_left_sidebar .menu-child.current-menu-item { color: #e4c77a; }
.vibebp_myprofile.slick:has(.mycourses) .vibebp_left_sidebar .menu-child:hover { color: #e4c77a; }
@media (max-width: 640px) {
  .vibebp_myprofile .mycourses .mycourses_header { gap: 12px; padding: 10px; }
  .vibebp_myprofile .mycourses .mycourses_header > .mycourses_access_tabs,
  .vibebp_myprofile .mycourses .mycourses_header > .flex2 { flex: 1 1 100%; }
  .vibebp_myprofile .mycourses .mycourses_header > .flex2 > * { flex: 1 1 100%; width: 100%; }
  .vibebp_myprofile .mycourses .course_blocks .course_block_actions > .button { flex: 1 1 auto; justify-content: center; }
}
/* Native dark-mode --white is a dark shade; keep rail icons readable explicitly. */
.vibebp_myprofile.slick:has(.mycourses) .profile_menu .menu_items > div path,
.vibebp_myprofile.slick:has(.mycourses) .profile_menu .menu_bottom > .menu_item path { fill: #f5f2fa; }
.vibebp_myprofile.slick:has(.mycourses) .profile_menu .menu_items > div.is_active path { fill: #e4c77a; }
.vibebp_myprofile.slick:has(.mycourses) .profile_menu .menu_bottom > .menu_item,
.vibebp_myprofile.slick:has(.mycourses) .profile_menu .vibebp_current_user .vibebp_member > span { color: #f5f2fa; }
@media (max-width: 480px) {
  .vibebp_myprofile.slick:has(.mycourses) .profile_grid_header .end_block > .menu_item path,
  .vibebp_myprofile.slick:has(.mycourses) .profile_grid_header .end_block > .vibebp-cart path { fill: #f5f2fa; }
  .vibebp_myprofile.slick:has(.mycourses) .profile_grid_header .end_block > .notifications > .vicon,
  .vibebp_myprofile.slick:has(.mycourses) .profile_grid_header .tours_wrapper > a,
  .vibebp_myprofile.slick:has(.mycourses) .profile_grid_header .drag_to_refresh,
  .vibebp_myprofile.slick:has(.mycourses) .profile_grid_header .start_block > span { color: #f5f2fa; }
}
.vibebp_myprofile.slick:has(.mycourses) .vibebp_left_sidebar h3 { color: #f5f2fa; }
.vibebp_myprofile .mycourses > div > .vbp_message {
  background: var(--qt-track);
  color: var(--qt-ink);
  padding: 16px;
  line-height: 1.5;
}
@media (min-width: 641px) {
  .rtl .vibebp_myprofile .mycourses .mycourses_header > .mycourses_access_tabs { flex-basis: 320px; }
}
@media (max-width: 480px) {
  .vibebp_myprofile.slick:has(.mycourses) .profile_grid .profile_grid_header {
    margin-inline: -16px;
    padding-inline: 16px;
  }
  .vibebp_myprofile.slick:has(.mycourses) .profile_grid .profile_grid_header .start_block {
    padding-inline: 0;
    flex: 1 1 auto;
    min-width: 0;
  }
  .vibebp_myprofile.slick:has(.mycourses) .profile_grid .profile_grid_header .end_block { flex: 0 0 auto; }
}
