
/* Theming CSS */

  /* Header text color */
  .u-org--header {
    color: #393b3d;
  }

  button.u-org--header.appheader__button:hover,
  button.u-org--header.appheader__button:active {
    background-color: rgba(57, 59, 61, 0.1) !important;
  }

  button.u-org--header:not(.appnav__link):hover,
  button.u-org--header:not(.appnav__link):active,
  button.u-org--header:not(.appnav__link):focus {
    color: #393b3d;
  }

  button.u-org--header.appheader__searchbutton,
  button.u-org--header.appheader__categoriesbutton,
  input[type="search"].u-org--header {
    border-color: rgba(57, 59, 61, 0.3) !important;
  }

  button.u-org--header.appheader__searchbutton:hover,
  button.u-org--header.appheader__searchbutton:active,
  button.u-org--header.appheader__searchbutton:focus,
  button.u-org--header.appheader__searchbutton:focus-visible,
  button.u-org--header.appheader__categoriesbutton:hover,
  button.u-org--header.appheader__categoriesbutton:active,
  button.u-org--header.appheader__categoriesbutton:focus,
  button.u-org--header.appheader__categoriesbutton:focus-visible,
  input[type="search"].u-org--header:hover,
  input[type="search"].u-org--header:active,
  input[type="search"].u-org--header:focus,
  input[type="search"].u-org--header:focus-visible {
    border-color: rgba(57, 59, 61, 0.5) !important;
  }

  input[type="search"].u-org--header:focus {
    border-color: transparent !important;
  }

  .u-org--header .search__input--appheader:not(:focus):-ms-input-placeholder {
    color: #393b3d;
  }

  .u-org--header .search__input--appheader:not(:focus)::-ms-input-placeholder {
    color: #393b3d;
  }

  .u-org--header .search__input--appheader:not(:focus)::placeholder {
    color: #393b3d;
  }


  /* Organization color */
  .u-orgcolor--color,
  .u-orgcolor--hovercolor:hover {
    color: #FF83DA !important;
  }
  .u-orgcolor--bg,
  .u-orgcolor--hoverbg:hover {
    background-color: #FF83DA !important;
  }
  .u-orgcolor--border,
  .u-orgcolor--border:link,
  .u-orgcolor--border:visited,
  .u-orgcolor--border:hover,
  .u-orgcolor--border:active,
  .u-orgcolor--border:focus {
    border-color: #FF83DA;
    color: #FF83DA;
  }
  .u-orgcolor--borderonly,
  .u-orgcolor--borderonly:link,
  .u-orgcolor--borderonly:visited,
  .u-orgcolor--borderonly:hover,
  .u-orgcolor--borderonly:active,
  .u-orgcolor--borderonly:focus {
    border-color: #FF83DA;
  }
  .u-orgcolor--borderhover:hover,
  .u-orgcolor--borderhover:hover {
    border-color: #FF83DA;
  }
  .u-orgcolor--svgfill {
    color: #FF83DA;
    fill: #FF83DA;
  }
  .u-orgcolor--svgstroke {
    color: #FF83DA;
    stroke: #FF83DA;
  }
  .u-orgcolor--svgall {
    color: #FF83DA;
    fill: #FF83DA;
    stroke: #FF83DA;
  }
  .u-org--svgactive[data-active="true"],
  .u-org--svgactive:hover {
    color: #FF83DA !important;
    stroke: #FF83DA !important;
  }
  .u-org--barchart:after {
    background-color: #FF83DA !important;
  }
  .u-org--piechart {
    color: rgba(0, 0, 0, 0.15);
    stroke: #FF83DA;
  }
  .u-org--tooltip {
    background-color: #FF83DA;
  }
  .u-org--tooltiptop:before {
    border-top-color: #FF83DA;
  }
  .u-org--tooltipright:before {
    border-right-color: #FF83DA;
  }
  .u-org--tooltipbottom:before {
    border-bottom-color: #FF83DA;
  }
  .u-org--tooltipleft:before {
    border-left-color: #FF83DA;
  }
  .updatecard__heading--new:before {
    background-color: #FF83DA;
  }
  .session:before {
    background-color: #FF83DA;
  }
  .activityprogress__value {
    background-color: #FF83DA;
  }
}
  .iconbutton,
  .comments__headerbutton, {
    color: #FF83DA;
  }

  .u-org--catalogflag {
    background-image: linear-gradient(225deg, #FF83DA 50%, transparent 50%);
  }

  .u-org--catalogflagsearch {
    background-image: linear-gradient(225deg, #FF83DA 50%, transparent 50%);
  }

  .u-org--catalogflag-in-progress {
    background-image: linear-gradient(225deg, #fff 47%, #FF83DA 3%, transparent 50%);
    border-top: 1px solid #FF83DA;
    border-right: 1px solid #FF83DA;
    svg {
      color: #FF83DA;
    }
  }

  .u-org--enrollmentmsgimage {
    background-color: #FF83DA
  }

  .u-org--catalogflagbg {
    background-image: linear-gradient(225deg, #FF83DA 50%, transparent 50%);
  }
  .u-org--catalogflagfill {
    color: #FF83DA;
    fill: #FF83DA;
  }

  .u-org--tabactive,
  .u-org--tab:hover,
  .u-org--tab:active,
  .u-org--tab:focus {
    border-color: #FF83DA;
  }
  .link--primary,
  .u-org--link,
  .u-org--link:link,
  .u-org--link:visited,
  .u-org--link:hover,
  .u-org--link:active,
  .u-org--link:focus {
    color: #FF83DA;
  }
  .u-org--linkhover:hover,
  .u-org--linkhover:active,
  .u-org--linkhover:focus {
    color: #FF83DA;
  }

.button--primary:not([disabled]),
  .button--primary:link,
  .button--primary:visited,
  .button--primary:hover,
  .button--primary:active,
  .button--primary:focus,
  .blankslate .button,
  .coursebar__btn--active,
  .coursebar__btn--active:hover,
  .coursebar__btn--active:focus,
  .tagbutton--selected:not(.tagbutton--taxonomy) {
    background-color: #FF83DA !important;
    border-color: #FF83DA !important;
    color: #fff !important;
  }


  .tooltip {
    background-color: #FF83DA;
  }
  .tooltip--left::before {
    border-left-color: #FF83DA;
  }
  .tooltip--right::before {
    border-right-color: #FF83DA;
  }
  .tooltip--bottom::before,
  .tooltip--bottom-left::before,
  .tooltip--bottom-right::before {
    border-bottom-color: #FF83DA;
  }
  .tooltip--top::before,
  .tooltip--top-left::before,
  .tooltip--top-right::before {
    border-top-color: #FF83DA;
  }
  .checkbox--primary .checkbox__input:checked + .checkbox__ui {
    background-color: #FF83DA;
    border: 2px solid #FF83DA;
  }
  .question .checkbox__input:checked + .checkbox__ui {
    background-color: #FF83DA;
    border: 1px solid #FF83DA;
  }
  .question .radio__input:checked + .radio__ui {
    border-color: #FF83DA;
  }
  .question .radio__input:checked + .radio__ui::before {
    background-color: #FF83DA;
  }
  .assessment__completedicon, .assessment__gradingicon {
    background-color: #FF83DA;
  }
  .enrollmentmsg__image.enrollmentmsg__image--complete  {
    background-color: #FF83DA;
  }

  .rank__listitem .radio__input:checked + .radio__ui {
    border-color: #FF83DA;
  }
  .rank__listitem .radio__input:checked + .radio__ui::before {
    background-color: #FF83DA;
  }
  .sharelinks__link:hover,
  .sharelinks__link:focus,
  .sharelinks__link.button:hover,
  .sharelinks__link.button:focus {
    color: #FF83DA;
  }
  .rating input[type="radio"]:not([disabled]) + label {
    color: #FF83DA;
  }
  .courselist__item[data-status="completed"] .courselist__marker, .courselist__item[data-status="in-progress"] .courselist__marker,
  .pathmenu__sectionitem[data-status="completed"] .pathmenu__itemmarker, .pathmenu__sectionitem[data-status="in-progress"] .pathmenu__itemmarker {
    color: #FF83DA;
  }
  .courselist__item[data-status="in-progress"]:not([data-shape]) .courselist__marker {
    border-color: #FF83DA;
  }

    .u-org--catalogflag-in-progress svg {
    color: #FF83DA;
  }
}
  .pageoutline__currentlink,
  .pageoutline__currentlink:hover,
  .pageoutline__currentlink:focus {
    color: #FF83DA;
  }
  .tagbutton--selected,
  .tagbutton--selected:hover,
  .tagbutton--selected:active,
  .tagbutton--selected.tagbutton--taxonomy:hover,
  .tagbutton--selected.tagbutton--taxonomy:active {
    border-color: inherit !important;
    background-color: #FF83DA;
  }
  .tagbutton--selected.tagbutton--taxonomy {
    background-color: #FF83DA0c !important;
    border-color: #FF83DA !important;
  }
  .datepicker .pika-prev,
  .datepicker .pika-next {
    border: 1px solid #FF83DA;
  }
  .datepicker .pika-prev,
  .datepicker .is-rtl .pika-next {
    background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2030%2025'%20version%3D'1.1'%3E%3Cpolyline%20fill%3D'none'%20stroke%3D'%23FF83DA'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%20points%3D'16.7%209.4%2011.6%2012.4%2016.6%2015.3'%2F%3E%3C%2Fsvg%3E");
  }
  .datepicker .pika-next,
  .datepicker .is-rtl .pika-prev {
    background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20version%3D'1.1'%20viewBox%3D'0%200%2030%2025'%3E%3Cpath%20d%3D'M12.6%209.5L17.7%2012.4%2012.6%2015.3'%20fill-opacity%3D'0'%20stroke%3D'%23FF83DA'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%2F%3E%3C%2Fsvg%3E");
  }
  .datepicker .is-today .pika-button {
    color: #FF83DA;
  }
  .datepicker .is-selected .pika-button,
  .datepicker .is-selected .pika-button:hover {
    background: #FF83DA;
  }
  .banner__icon {
    color: #FF83DA;
    background: #FF83DA;
  }

  /* Branding logo */
  .header__titleicon.u-org--titleicon {
    max-width: 120px;
  }
  @media (min-width: 370px) {
    .header__titleicon.u-org--titleicon {
      max-width: 160px;
    }
  }
  .u-org--titleicon + .header__titletext,
  .u-org--titleicon + .sidemenu__titletext {
    display: none;
  }
  .u-org--header .header__titlelink {
    text-overflow: clip;
  }

  /* Custom CSS */
  /* Sets grey background on live events on the landing page */
.catalogcard--event {
background-color: #F8F8F8;
border-color: #F8F8F8;
}
/*Set the triangle flag to light blue */
.u-org--catalogflag {
    background-image: linear-gradient(225deg, #FFC5EE 50%, transparent 50%);
}
/*UP NEXT Set the triangle flag to light mews pink */
.uikitCardsCardMedia-module-statusMarker-D-TRm {
    color: #FFC5EE  !important;
    background-image: linear-gradient(225deg, #FFC5EE 50%, transparent 50%) !important;
}
/*UP NEXT Overdue */
.uikitCardsCardMedia-module-isStatusOverdue-UV3hc {
    background-image: linear-gradient(225deg, #D43E2B 50%, transparent 50%)  !important;
color: #fff !important;
}
/*UP NEXT small text CHECK WITH LAURA IF NO LONGER NEEDED
.uikitContentTypo-module-element-rNmnU.uikitContentTypo-module-isVariantSupport01-nRawH {
color: #fff !important;
}*/
/*UP NEXT small text bar CHECK WITH LAURA IF NO LONGER NEEDED
.uikitCardsCardMedia-module-dateMessage-LqKln {
background-color: #FFC5EE !important;
}*/
/* Set the progress bar to light pink*/
.activityprogress__value {
    background-color: #FFC5EE;
}
/* Sets the triangle icon to dark grey colour */
.catalogflag img, .catalogflag svg {
color: #393b3d;
}
/* ! on Overdue */
.catalogflag--overdue svg {
color: #fff;
}
/*'Enroll Now' button style*/
.button--secondary, .button--secondary:link, .button--secondary:visited, .button--secondary:hover, .button--secondary:active, .button--secondary:focus, .dropdown__trigger:not(.dropdown__trigger--link) {
    background-color: transparent;
    border-color: #1C1D24;
    color: #1C1D24;
}

/* Sets the 'View all' button to pill shape and light pink background*/
.catalogcards__footerlink {
background-color: #FFC5EE;
border-radius: 20px;
}
/* Sets the 'View all' button hover state colour to the same as active state (above)*/
.catalogcards__footerlink:hover {
background-color: #FFC5EE;
}
/* Sets All buttons to light blue background colour and drak grey font colour */
.button--primary:not([disabled]), .button--primary:link, .button--primary:visited, .button--primary:hover, .button--primary:active, .button--primary:focus, .blankslate .button, .coursebar__btn--active, .coursebar__btn--active:hover, .coursebar__btn--active:focus, .tagbutton--selected:not(.tagbutton--taxonomy) {
    background-color: #FFC5EE !important;
    border-color: #FFC5EE !important;
    color: #393b3d !important;
}
/* Sets the 'View all' button on the right hand side rather than centre*/
.catalogcards__footer {
justify-content: right;
}
/*Homepage scrollbar(x-axis) on cards - set to be hidden by 'none' (change to 'auto' to enable*/
.catalogcards__list--scroll {
    overflow-x: hidden;
}
/* Cookie banner style */
.u-orgcolor--bg, .u-orgcolor--hoverbg:hover {
    background-color: #FFC5EE !important;
}
.consent {
color: #1C1D24;
}
.consent a {
color: #1C1D24 !important;
}
.consent__icon {
color: #1C1D24 !important;
}

/*homepage top banner video controls */
.herovideo__controls {
display: none;
}

/*Homepage banner bottom radius*/
.herovideo video {
border: 1px #fff solid;
border-radius: 0% 0% 8% 8%;
}

/* Plan > filter icon style */
.filterlayout__filtersicon {
color: #1C1D24;
}
/*Font color of the announcements icon*/
.u-orgcolor--bg, .u-orgcolor--hoverbg:hover {
color: #1C1D24;
}
/*Announcement Font size and style*/
.updatecard__details p {
    font-size: 18px;
    line-height: 25px;
    font-weight: 300;
}
.updatecard__contentname {
    font-weight: 500;
    font-size: 20px;
    line-height: 25px;
}
/* ── MEWSIC START ─────────────────────────────────────── */
* { box-sizing: border-box; margin: 0; padding: 0; font-family: system-ui, -apple-system, sans-serif; }

/* ── PALETTE ─────────────────────────────────────────────────
   Hot pink:  #FF83DA  (buttons, active tabs, play, accents)
   Mid pink:  #F7E1F7  (canvas background)
   Deep pink: #C9006A  (hover states, strong accents)
   White:     #FFFFFF  (card surfaces, text on dark)
   Black:     #111111  (headings, body text)
──────────────────────────────────────────────────────────── */

body { background: #ffffff; padding: 24px; }

#mw {
  background: #F7E1F7;
  border-radius: 20px;
  overflow: visible;
  width: 100%;
  max-width: 860px;
  margin: 0 auto;
  box-shadow: none;
  border: 5px solid #111;
}

/* ── HEADER ─────────────────────────────────────────── */
.hd {
  background: #FFAEE8;
  border-radius: 15px 15px 0 0;
  padding: 20px 22px 0;
}

.brand-row {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 18px;
}



.btn-group {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
  margin-left: auto;
}

/* Pill buttons — white, rounded, with pink text */
.pill-btn {
  height: 36px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #fff;
  border: 1.5px solid #ddd;
  border-radius: 999px;
  padding: 0 16px;
  font-size: 13px;
  font-weight: 700;
  color: #111;
  cursor: pointer;
  white-space: nowrap;
  flex-shrink: 0;
  line-height: 1;
  transition: border-color .15s;
}
.pill-btn:hover {
  border-color: #FF83DA;
}
.pill-btn.active {
  background: #fff;
  border-color: #FF83DA;
}

/* ── TABS ─────────────────────────────────────────────── */
.tab-wrap {
  display: flex;
  align-items: stretch;
  background: rgba(255,255,255,0.55);
  border-radius: 0;
  overflow: hidden;
}

.tarr {
  border: none;
  background: transparent;
  color: #C9006A;
  font-size: 22px;
  font-weight: 700;
  padding: 0 14px;
  cursor: pointer;
  flex-shrink: 0;
  transition: background .12s;
}
.tarr:hover { background: rgba(255,131,218,0.15); }

.tab-scroll {
  display: flex;
  overflow-x: auto;
  scrollbar-width: none;
  scroll-behavior: smooth;
  flex: 1;
}
.tab-scroll::-webkit-scrollbar { display: none; }

.tab {
  border: none;
  background: transparent;
  color: #9b5c9b;
  padding: 13px 18px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  white-space: nowrap;
  flex-shrink: 0;
  transition: all .15s;
  border-bottom: 3px solid transparent;
}
.tab:hover { color: #C9006A; background: rgba(255,131,218,0.12); }
.tab.on {
  color: #C9006A;
  font-weight: 800;
  border-bottom: 3px solid #C9006A;
  background: rgba(255,131,218,0.12);
}

/* ── LANGUAGE DROPDOWN ──────────────────────────────── */
.lw { position: relative; flex-shrink: 0; }
#ldd {
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  background: #fff;
  border: none;
  border-radius: 14px;
  overflow: hidden;
  z-index: 9999;
  min-width: 185px;
  display: none;
  box-shadow: 0 4px 16px rgba(0,0,0,0.20);
}
#ldd.open { display: block; }
.lo {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  cursor: pointer;
  font-size: 14px;
  font-weight: 500;
  color: #111;
  border-bottom: 1px solid #f7e1f7;
  background: #fff;
  transition: background .1s;
}
.lo:last-child { border-bottom: none; }
.lo:hover { background: #FFF0FA; color: #C9006A; }
.lo.sel { background: #FFF0FA; color: #C9006A; font-weight: 700; }

/* ── BODY / PLAYLIST AREA ───────────────────────────── */
.body {
  background: #fff;
  border-radius: 0 0 15px 15px;
  padding: 16px 20px 20px;
}

/* Playlist header */
.plh {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 14px;
  padding-bottom: 14px;
  border-bottom: 1.5px solid #F7E1F7;
}
.plcov {
  width: 58px;
  height: 58px;
  border-radius: 12px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
}
.pll {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 1.3px;
  color: #C9006A;
  text-transform: uppercase;
  margin-bottom: 3px;
  display: block;
}
.plt {
  font-size: 18px;
  font-weight: 800;
  color: #111;
  margin-bottom: 3px;
  line-height: 1.2;
}
.pld {
  font-size: 12px;
  color: #888;
  margin-bottom: 5px;
  line-height: 1.45;
}
.plc { font-size: 11px; color: #aaa; }
.plc strong { color: #555; font-weight: 700; }

/* Track list */
.lst { display: flex; flex-direction: column; }
.tg {
  border-bottom: 1px solid #f9f0f9;
}
.tg:last-child { border-bottom: none; }

.row {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 6px 4px;
  border-radius: 8px;
  transition: background .12s;
  cursor: default;
}
.row:hover { background: #FFF5FD; }

.num {
  width: 18px;
  text-align: center;
  flex-shrink: 0;
  font-size: 11px;
  color: #ddd;
  font-weight: 600;
}
.art {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  flex-shrink: 0;
  background: #FFF0FA;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
}

.ti { flex: 1; min-width: 0; }
.tt {
  font-size: 13px;
  font-weight: 600;
  color: #111;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.3;
}
.ts { font-size: 10px; color: #bbb; margin-top: 1px; }

.tr { display: flex; align-items: center; gap: 6px; flex-shrink: 0; }

/* Level badges */
.b {
  font-size: 9px;
  font-weight: 700;
  padding: 3px 8px;
  border-radius: 999px;
  letter-spacing: 0.02em;
}
.bb { background: #e6f8f2; color: #1a7a55; }        /* Beginner — green */
.bi { background: #fff4df; color: #9a5f00; }         /* Intermediate — amber */
.ba { background: #efe8ff; color: #5c2fa0; }         /* Advanced — purple */
.bx { background: #e8f0ff; color: #1a4ea0; }         /* Admin — blue */
.bc { background: #fff0fa; color: #C9006A; }         /* Exam — pink */

/* Heart / favourite */
.hb {
  background: none;
  border: none;
  cursor: pointer;
  width: 26px;
  height: 26px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  font-size: 15px;
  line-height: 1;
  transition: transform .15s;
  border-radius: 50%;
}
.hb:hover { transform: scale(1.3); background: rgba(255,131,218,0.1); }

/* Play button — hot pink circle */
.play {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #FF83DA;
  flex-shrink: 0;
  text-decoration: none;
  transition: all .12s;
}
.play:hover { background: #C9006A; transform: scale(1.08); }

/* Related toggle */
.rt {
  display: flex;
  align-items: center;
  gap: 4px;
  margin: 0 0 3px 56px;
  background: none;
  border: none;
  color: #C9006A;
  font-size: 10px;
  font-weight: 700;
  cursor: pointer;
  padding: 2px 0;
  opacity: 0.65;
  transition: opacity .1s;
}
.rt:hover { opacity: 1; }

/* Related panel */
.rp {
  margin: 2px 0 6px 56px;
  background: #FFF8FE;
  border-radius: 10px;
  border: 1.5px solid #F7E1F7;
  overflow: hidden;
}
.rhd {
  padding: 6px 12px 2px;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 1px;
  color: #C9006A;
  text-transform: uppercase;
  opacity: 0.6;
}
.ri {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 12px;
  border-top: 1px solid #F7E1F7;
  transition: background .1s;
}
.ri:hover { background: rgba(255,131,218,0.06); }
.rd {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #FF83DA;
  flex-shrink: 0;
}
.rl {
  flex: 1;
  font-size: 12px;
  color: #444;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Empty state */
.empty {
  text-align: center;
  padding: 32px 16px;
  color: #ccc;
  font-size: 13px;
  line-height: 2.2;
}

