/* PWM Aurora Classroom — presentation only */
:root {
  --pa-ink: #13213a;
  --pa-muted: #66758f;
  --pa-blue: #2457f5;
  --pa-cyan: #14bfe8;
  --pa-violet: #8b5cf6;
  --pa-pink: #ec4899;
  --pa-mint: #19b989;
  --pa-pearl: #f7f9ff;
  --pa-line: rgba(48, 77, 123, .12);
  --pa-glass: rgba(255, 255, 255, .82);
  --pa-shadow: 0 20px 55px rgba(39, 62, 114, .12);
  --pa-shadow-soft: 0 8px 26px rgba(39, 62, 114, .09);
}

@keyframes paAurora {
  0%,100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}
@keyframes paFloat {
  0%,100% { transform: translate3d(0,0,0) rotate(0); }
  50% { transform: translate3d(0,-7px,0) rotate(.4deg); }
}
@keyframes paGlow {
  0%,100% { box-shadow: 0 12px 32px rgba(36,87,245,.16); }
  50% { box-shadow: 0 16px 46px rgba(139,92,246,.26); }
}
@keyframes paShimmer {
  from { transform: translateX(-140%) skewX(-20deg); }
  to { transform: translateX(420%) skewX(-20deg); }
}
@keyframes paPulse {
  0%,100% { transform: scale(1); opacity: .75; }
  50% { transform: scale(1.22); opacity: 1; }
}

body.mpcs-classroom {
  background:
    radial-gradient(circle at 82% 8%, rgba(20,191,232,.12), transparent 25rem),
    radial-gradient(circle at 45% 35%, rgba(139,92,246,.09), transparent 32rem),
    linear-gradient(135deg, #f9fbff 0%, #f3f6ff 52%, #f9f7ff 100%) !important;
  color: var(--pa-ink) !important;
  font-family: Inter, Poppins, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif !important;
}
body.mpcs-classroom *, body.mpcs-classroom *::before, body.mpcs-classroom *::after { box-sizing: border-box; }

/* Floating ambient color */
body.mpcs-classroom::before,
body.mpcs-classroom::after {
  content: "";
  position: fixed;
  z-index: -1;
  width: 360px;
  height: 360px;
  border-radius: 50%;
  filter: blur(80px);
  pointer-events: none;
  opacity: .28;
}
body.mpcs-classroom::before { right: -100px; top: 18%; background: #63d9ff; }
body.mpcs-classroom::after { left: 18%; bottom: -160px; background: #b99aff; }

/* Aurora header */
body.mpcs-classroom #mpcs-navbar {
  height: 78px !important;
  min-height: 78px !important;
  padding: 0 22px !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 1100 !important;
  overflow: visible !important;
  background: linear-gradient(115deg, #08162c, #173f9e, #7a4ee6, #159bd4) !important;
  background-size: 260% 260% !important;
  animation: paAurora 14s ease infinite !important;
  border: 0 !important;
  box-shadow: 0 12px 35px rgba(18,44,100,.22) !important;
}
body.mpcs-classroom #mpcs-navbar::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.7), transparent);
}
body.mpcs-classroom #mpcs-navbar .navbar-brand { padding: 10px 12px !important; }
body.mpcs-classroom #mpcs-navbar .navbar-brand img {
  max-width: 270px !important;
  max-height: 52px !important;
  filter: drop-shadow(0 5px 12px rgba(0,0,0,.18));
}
body.mpcs-classroom #mpcs-navbar .nav-back {
  width: 40px !important;
  height: 40px !important;
  display: inline-grid !important;
  place-items: center !important;
  color: #fff !important;
  background: rgba(255,255,255,.13) !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  border-radius: 14px !important;
  backdrop-filter: blur(12px);
  transition: transform .25s ease, background .25s ease !important;
}
body.mpcs-classroom #mpcs-navbar .nav-back:hover { transform: translateX(-4px) rotate(-4deg) !important; background: rgba(255,255,255,.23) !important; }
body.mpcs-classroom #mpcs-navbar #mpcs-lesson-navigation { align-self: stretch !important; }
body.mpcs-classroom #mpcs-navbar #mpcs-lesson-navigation > a {
  min-width: 220px !important;
  height: 100% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 26px !important;
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 750 !important;
  letter-spacing: .01em !important;
  background: rgba(255,255,255,.1) !important;
  border: 0 !important;
  border-left: 1px solid rgba(255,255,255,.16) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  position: relative;
  overflow: hidden;
}
body.mpcs-classroom #mpcs-navbar #mpcs-lesson-navigation > a::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 -35%;
  width: 18%;
  background: rgba(255,255,255,.22);
  transform: skewX(-20deg);
}
body.mpcs-classroom #mpcs-navbar #mpcs-lesson-navigation > a:hover::before { animation: paShimmer .8s ease; }
body.mpcs-classroom #mpcs-navbar #mpcs-classroom-next-lesson-link { background: rgba(255,255,255,.16) !important; }

/* Bright glass sidebar */
body.mpcs-classroom #mpcs-sidebar {
  width: 340px !important;
  max-width: 340px !important;
  flex: 0 0 340px !important;
  height: calc(100vh - 78px) !important;
  top: 78px !important;
  position: sticky !important;
  overflow: hidden !important;
  z-index: 40 !important;
  background: rgba(255,255,255,.91) !important;
  border: 0 !important;
  border-right: 1px solid rgba(255,255,255,.75) !important;
  box-shadow: 14px 0 42px rgba(43,68,117,.1) !important;
  backdrop-filter: blur(22px) saturate(145%);
}
body.mpcs-classroom #mpcs-sidebar .mpcs-sidebar-wrapper { height: 100% !important; display: flex !important; flex-direction: column !important; }
body.mpcs-classroom #mpcs-sidebar-header {
  padding: 20px !important;
  background: linear-gradient(145deg, rgba(255,255,255,.98), rgba(237,245,255,.94)) !important;
  border-bottom: 1px solid var(--pa-line) !important;
  position: relative;
}
body.mpcs-classroom #mpcs-sidebar-header::before {
  content: "";
  position: absolute;
  left: 20px;
  right: 20px;
  bottom: 0;
  height: 2px;
  background: linear-gradient(90deg, var(--pa-blue), var(--pa-cyan), var(--pa-violet));
  border-radius: 5px;
}
body.mpcs-classroom #mpcs-sidebar-header figure {
  width: 31% !important;
  margin: 0 15px 0 0 !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 1px solid rgba(36,87,245,.11) !important;
  border-radius: 14px !important;
  box-shadow: var(--pa-shadow-soft) !important;
  animation: paFloat 6s ease-in-out infinite;
}
body.mpcs-classroom #mpcs-sidebar-header .course-progress { margin-left: 0 !important; }
body.mpcs-classroom #mpcs-sidebar-header h1,
body.mpcs-classroom #mpcs-sidebar-header h2,
body.mpcs-classroom #mpcs-sidebar-header .mpcs-course-title {
  color: var(--pa-ink) !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
}
body.mpcs-classroom #mpcs-sidebar .course-progress .progress,
body.mpcs-classroom #mpcs-sidebar .course-progress-bar-main {
  height: 9px !important;
  overflow: hidden !important;
  background: #e6ecf6 !important;
  border-radius: 99px !important;
}
body.mpcs-classroom #mpcs-sidebar .course-progress .progress > span,
body.mpcs-classroom #mpcs-sidebar .course-progress-bar-main > span {
  background: linear-gradient(90deg, var(--pa-blue), var(--pa-cyan), var(--pa-violet)) !important;
  background-size: 180% 100% !important;
  border-radius: inherit !important;
  animation: paAurora 5s linear infinite !important;
}
body.mpcs-classroom #mpcs-sidebar .mpcs-sidebar-content {
  flex: 1 !important;
  overflow-y: auto !important;
  background: transparent !important;
  scrollbar-width: thin;
  scrollbar-color: #b5c6e3 transparent;
}
body.mpcs-classroom #mpcs-sidebar .mpcs-section-header {
  min-height: 46px !important;
  padding: 14px 18px !important;
  color: #71809a !important;
  font-size: 11px !important;
  font-weight: 850 !important;
  letter-spacing: .105em !important;
  text-transform: uppercase !important;
  background: rgba(242,246,253,.8) !important;
  border: 0 !important;
  border-bottom: 1px solid var(--pa-line) !important;
}
body.mpcs-classroom #mpcs-sidebar .mpcs-lesson {
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(49,77,120,.07) !important;
  opacity: 1 !important;
}
body.mpcs-classroom #mpcs-sidebar .mpcs-lesson-row-link {
  min-height: 58px !important;
  display: flex !important;
  align-items: center !important;
  padding: 10px 16px !important;
  color: #4e5f79 !important;
  border: 0 !important;
  border-left: 4px solid transparent !important;
  transition: color .25s ease, background .25s ease, transform .25s ease !important;
}
body.mpcs-classroom #mpcs-sidebar .mpcs-lesson-row-link:hover {
  color: var(--pa-blue) !important;
  background: linear-gradient(90deg, rgba(36,87,245,.09), rgba(20,191,232,.04)) !important;
  border-left-color: var(--pa-cyan) !important;
  transform: translateX(3px) !important;
}
body.mpcs-classroom #mpcs-sidebar .mpcs-lesson.current {
  background: linear-gradient(90deg, rgba(36,87,245,.13), rgba(139,92,246,.07)) !important;
}
body.mpcs-classroom #mpcs-sidebar .mpcs-lesson.current .mpcs-lesson-row-link {
  color: #153eb2 !important;
  border-left-color: var(--pa-blue) !important;
}
body.mpcs-classroom #mpcs-sidebar .mpcs-lesson-link {
  margin-left: 9px !important;
  color: inherit !important;
  font-size: 13px !important;
  font-weight: 720 !important;
  line-height: 1.35 !important;
}
body.mpcs-classroom #mpcs-sidebar .mpcs-lesson-progress { width: 21px !important; flex: 0 0 21px !important; }
body.mpcs-classroom #mpcs-sidebar .mpcs-lesson-complete,
body.mpcs-classroom #mpcs-sidebar .mpcs-ok-circled::before { color: var(--pa-mint) !important; }
body.mpcs-classroom #mpcs-sidebar .mpcs-lesson-not-complete { color: var(--pa-blue) !important; }
body.mpcs-classroom #mpcs-sidebar .mpcs-lesson-button { display: none !important; }

/* Spacious content stage */
body.mpcs-classroom main#mpcs-main {
  width: calc(100% - 340px) !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
  padding: 44px clamp(30px, 5vw, 86px) 100px !important;
  background: transparent !important;
  font-size: 16px !important;
}
body.mpcs-classroom main#mpcs-main > .entry-title,
body.mpcs-classroom main#mpcs-main > .mpcs-main-content,
body.mpcs-classroom main#mpcs-main > .primary-sidebar,
body.mpcs-classroom main#mpcs-main > .mepr-rl-footer-widgets {
  width: min(100%, 1120px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
body.mpcs-classroom main#mpcs-main h2.entry-title {
  margin: 0 auto 28px !important;
  padding: 0 0 18px !important;
  color: var(--pa-ink) !important;
  font-size: clamp(29px, 2.25vw, 39px) !important;
  font-weight: 850 !important;
  line-height: 1.15 !important;
  letter-spacing: -.035em !important;
  border-bottom: 1px solid var(--pa-line) !important;
  position: relative;
}
body.mpcs-classroom main#mpcs-main h2.entry-title::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 92px;
  height: 4px;
  border-radius: 99px;
  background: linear-gradient(90deg, var(--pa-blue), var(--pa-cyan), var(--pa-violet));
}
body.mpcs-classroom main#mpcs-main h2.entry-title i { color: var(--pa-blue) !important; }
body.mpcs-classroom main#mpcs-main .mpcs-main-content { color: #34435b !important; line-height: 1.72 !important; }

/* Video becomes the hero */
body.mpcs-classroom main#mpcs-main figure.wp-block-embed.is-provider-vimeo,
body.mpcs-classroom main#mpcs-main figure.wp-block-embed.is-provider-youtube {
  margin: 18px 0 38px !important;
  padding: 12px !important;
  overflow: hidden !important;
  background: linear-gradient(135deg, #11274b, #17265a 45%, #5942a4) !important;
  border: 1px solid rgba(255,255,255,.25) !important;
  border-radius: 22px !important;
  box-shadow: 0 26px 70px rgba(24,48,102,.22) !important;
  animation: paGlow 6s ease-in-out infinite !important;
}
body.mpcs-classroom main#mpcs-main figure.wp-block-embed iframe { border-radius: 13px !important; }

/* Existing page blocks unified into one premium visual language */
body.mpcs-classroom main#mpcs-main .mpcs-main-content > p,
body.mpcs-classroom main#mpcs-main p.pwmintro {
  padding: 25px 28px !important;
  color: #fff !important;
  background: linear-gradient(120deg, #173f9e, #2457f5 48%, #7555dd, #14a8d6) !important;
  background-size: 220% 220% !important;
  border: 0 !important;
  border-radius: 18px !important;
  box-shadow: 0 16px 38px rgba(36,87,245,.18) !important;
  animation: paAurora 12s ease infinite !important;
}
body.mpcs-classroom .wah-profile-card,
body.mpcs-classroom .wah-feed-card,
body.mpcs-classroom .wah-personal-info,
body.mpcs-classroom .contributors-info,
body.mpcs-classroom .wp-block-column.icnstps {
  background: var(--pa-glass) !important;
  border: 1px solid rgba(255,255,255,.92) !important;
  border-radius: 20px !important;
  box-shadow: var(--pa-shadow) !important;
  backdrop-filter: blur(16px) saturate(140%);
}
body.mpcs-classroom .wah-profile-card:hover,
body.mpcs-classroom .wah-feed-card:hover,
body.mpcs-classroom .wp-block-column.icnstps:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 27px 65px rgba(39,62,114,.16) !important;
}
body.mpcs-classroom .wah-profile-header {
  background: linear-gradient(115deg, #eef4ff, #f4edff) !important;
  color: var(--pa-ink) !important;
  border-bottom: 1px solid var(--pa-line) !important;
}
body.mpcs-classroom .intro-box,
body.mpcs-classroom .wah-login-card {
  background: linear-gradient(125deg, #123a93, #2457f5, #8b5cf6) !important;
  background-size: 200% 200% !important;
  border: 0 !important;
  border-radius: 20px !important;
  box-shadow: var(--pa-shadow) !important;
  animation: paAurora 12s ease infinite !important;
}
body.mpcs-classroom .wah-profile-row { border-color: var(--pa-line) !important; }
body.mpcs-classroom .wah-profile-icon {
  display: inline-grid !important;
  place-items: center !important;
  border-radius: 12px !important;
  background: linear-gradient(145deg, #edf4ff, #f6efff) !important;
}
body.mpcs-classroom .btn-select,
body.mpcs-classroom .wah-login-card button,
body.mpcs-classroom main#mpcs-main .mpcs-button {
  color: #fff !important;
  background: linear-gradient(100deg, var(--pa-blue), var(--pa-violet), var(--pa-pink)) !important;
  background-size: 180% 180% !important;
  border: 0 !important;
  border-radius: 12px !important;
  box-shadow: 0 10px 25px rgba(94,72,210,.2) !important;
  animation: paAurora 8s ease infinite !important;
}

/* Overview cards */
body.mpcs-classroom main#mpcs-main .mpcs-section {
  margin-bottom: 20px !important;
  overflow: hidden !important;
  background: rgba(255,255,255,.86) !important;
  border: 1px solid rgba(255,255,255,.9) !important;
  border-radius: 20px !important;
  box-shadow: var(--pa-shadow-soft) !important;
  backdrop-filter: blur(15px);
}
body.mpcs-classroom main#mpcs-main .mpcs-section-header {
  min-height: 60px !important;
  padding: 17px 22px !important;
  color: var(--pa-ink) !important;
  background: linear-gradient(90deg, rgba(237,244,255,.95), rgba(247,240,255,.95)) !important;
  border-bottom: 1px solid var(--pa-line) !important;
}
body.mpcs-classroom main#mpcs-main .mpcs-lesson-row-link { min-height: 60px !important; padding: 12px 20px !important; }
body.mpcs-classroom main#mpcs-main .mpcs-lesson-row-link:hover { background: linear-gradient(90deg, rgba(36,87,245,.06), rgba(139,92,246,.04)) !important; }

/* Reveal animation powered by pwm-aurora.js */
body.mpcs-classroom.pwm-aurora-ready .pwm-reveal {
  opacity: 0;
  transform: translateY(24px) scale(.985);
  transition: opacity .72s cubic-bezier(.2,.7,.2,1), transform .72s cubic-bezier(.2,.7,.2,1);
  transition-delay: var(--pwm-delay, 0ms);
}
body.mpcs-classroom.pwm-aurora-ready .pwm-reveal.pwm-visible { opacity: 1; transform: translateY(0) scale(1); }
body.mpcs-classroom .pwm-current-dot {
  width: 7px;
  height: 7px;
  margin-left: auto;
  border-radius: 50%;
  background: var(--pa-cyan);
  box-shadow: 0 0 0 5px rgba(20,191,232,.13);
  animation: paPulse 2s ease-in-out infinite;
}

/* Sequential course navigation */
body.mpcs-classroom #mpcs-sidebar .mpcs-lesson.pwm-sequence-locked {
  opacity: 1 !important;
  filter: none !important;
  cursor: not-allowed !important;
}
body.mpcs-classroom #mpcs-sidebar .mpcs-lesson.pwm-sequence-locked .mpcs-lesson-row-link {
  color: #9aa8bd !important;
  background: rgba(237,241,248,.48) !important;
  cursor: not-allowed !important;
  transform: none !important;
  user-select: none;
}
body.mpcs-classroom #mpcs-sidebar .mpcs-lesson.pwm-sequence-locked .mpcs-lesson-row-link:hover {
  color: #8796ad !important;
  border-left-color: transparent !important;
  background: rgba(237,241,248,.72) !important;
}
body.mpcs-classroom .pwm-lock-badge {
  width: 27px;
  height: 27px;
  margin-left: auto;
  flex: 0 0 27px;
  display: inline-grid;
  place-items: center;
  color: #8494ac;
  background: #fff;
  border: 1px solid rgba(86,105,137,.13);
  border-radius: 9px;
  box-shadow: 0 5px 12px rgba(39,62,114,.08);
}
body.mpcs-classroom .pwm-lock-badge svg { width: 14px; height: 14px; fill: currentColor; }
body.mpcs-classroom .pwm-lock-toast {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 99999;
  max-width: min(390px, calc(100vw - 32px));
  padding: 15px 19px 15px 46px;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.45;
  background: linear-gradient(120deg, #142c5d, #2457f5 65%, #7a54e6);
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 15px;
  box-shadow: 0 18px 48px rgba(21,48,111,.3);
  opacity: 0;
  transform: translateY(18px) scale(.96);
  transition: opacity .25s ease, transform .25s ease;
}
body.mpcs-classroom .pwm-lock-toast::before {
  content: "";
  position: absolute;
  left: 18px;
  top: 50%;
  width: 15px;
  height: 15px;
  border: 2px solid #fff;
  border-radius: 4px;
  transform: translateY(-34%);
}
body.mpcs-classroom .pwm-lock-toast::after {
  content: "";
  position: absolute;
  left: 21px;
  top: calc(50% - 10px);
  width: 9px;
  height: 9px;
  border: 2px solid #fff;
  border-bottom: 0;
  border-radius: 7px 7px 0 0;
}
body.mpcs-classroom .pwm-lock-toast.pwm-show { opacity: 1; transform: translateY(0) scale(1); }

body.mpcs-classroom #mpcs-sidebar .mpcs-lesson.pwm-custom-completed .mpcs-lesson-row-link {
  color: #4e5f79 !important;
  cursor: pointer !important;
  background: transparent !important;
}
body.mpcs-classroom #mpcs-sidebar .mpcs-lesson.pwm-custom-completed .mpcs-lesson-progress i::before {
  color: var(--pa-mint) !important;
}

/* Video-gated Next Chapter button */
body.mpcs-classroom #mpcs-navbar #mpcs-classroom-next-lesson-link.pwm-video-locked,
body.mpcs-classroom #next_lesson_link.pwm-video-locked {
  color: rgba(255,255,255,.7) !important;
  background: rgba(12,28,58,.38) !important;
  cursor: not-allowed !important;
  filter: grayscale(.72) saturate(.45) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08) !important;
}
body.mpcs-classroom #mpcs-navbar #mpcs-classroom-next-lesson-link.pwm-video-locked::after,
body.mpcs-classroom #next_lesson_link.pwm-video-locked::after {
  content: "";
  width: 13px;
  height: 13px;
  margin-left: 10px;
  display: inline-block;
  border: 2px solid currentColor;
  border-radius: 4px;
  box-shadow: 0 -5px 0 -3px currentColor;
}
body.mpcs-classroom #mpcs-navbar #mpcs-classroom-next-lesson-link.pwm-video-locked:hover,
body.mpcs-classroom #next_lesson_link.pwm-video-locked:hover {
  transform: none !important;
  background: rgba(12,28,58,.46) !important;
}

@media (max-width: 960px) {
  body.mpcs-classroom #mpcs-navbar { height: 70px !important; min-height: 70px !important; padding: 0 12px !important; }
  body.mpcs-classroom #mpcs-navbar .navbar-brand img { max-width: 205px !important; max-height: 45px !important; }
  body.mpcs-classroom #mpcs-navbar #mpcs-lesson-navigation > a { min-width: auto !important; padding: 0 16px !important; }
  body.mpcs-classroom #mpcs-sidebar {
    width: min(90vw, 370px) !important;
    max-width: min(90vw, 370px) !important;
    height: 100vh !important;
    top: 0 !important;
    position: fixed !important;
    z-index: 1300 !important;
    box-shadow: 22px 0 60px rgba(24,48,102,.24) !important;
  }
  body.mpcs-classroom main#mpcs-main { width: 100% !important; padding: 30px 20px 70px !important; }
}

/* Mobile drawer and video reliability */
.pwm-sidebar-backdrop { display: none; }

@media (max-width: 840px) {
  html, body.mpcs-classroom { width: 100% !important; max-width: 100% !important; overflow-x: hidden !important; }
  body.mpcs-classroom.pwm-sidebar-open { overflow: hidden !important; touch-action: none; }

  body.mpcs-classroom #mpcs-sidebar {
    display: block !important;
    width: min(88vw, 370px) !important;
    max-width: min(88vw, 370px) !important;
    height: 100dvh !important;
    min-height: 100vh !important;
    top: 0 !important;
    left: 0 !important;
    position: fixed !important;
    z-index: 10002 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translate3d(-104%,0,0) !important;
    transition: transform .32s cubic-bezier(.2,.75,.2,1), opacity .25s ease, visibility 0s linear .32s !important;
    box-shadow: 22px 0 70px rgba(13,33,77,.3) !important;
  }
  body.mpcs-classroom #mpcs-sidebar.off-canvas {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translate3d(0,0,0) !important;
    transition-delay: 0s !important;
  }
  body.mpcs-classroom #mpcs-sidebar-navbar {
    height: 66px !important;
    min-height: 66px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 20 !important;
    padding: 8px 12px !important;
    background: linear-gradient(110deg,#0a1930,#1b4eaa) !important;
    border-bottom: 1px solid rgba(255,255,255,.13) !important;
  }
  body.mpcs-classroom #mpcs-navbar .sidebar-open.show-sm,
  body.mpcs-classroom #mpcs-sidebar-navbar.show-sm,
  body.mpcs-classroom #mpcs-sidebar-navbar .sidebar-close {
    display: flex !important;
  }
  body.mpcs-classroom #mpcs-sidebar-navbar .sidebar-close {
    width: 48px !important;
    height: 48px !important;
    display: inline-grid !important;
    place-items: center !important;
    padding: 0 !important;
    color: #fff !important;
    font-size: 25px !important;
    line-height: 1 !important;
    background: rgba(255,255,255,.13) !important;
    border: 1px solid rgba(255,255,255,.2) !important;
    border-radius: 14px !important;
    cursor: pointer !important;
    touch-action: manipulation !important;
  }
  body.mpcs-classroom #mpcs-sidebar .mpcs-sidebar-wrapper { height: 100dvh !important; overflow: hidden !important; }
  body.mpcs-classroom #mpcs-sidebar-header { flex: 0 0 auto !important; padding: 17px !important; }
  body.mpcs-classroom #mpcs-sidebar .mpcs-sidebar-content {
    height: auto !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    padding-bottom: max(24px, env(safe-area-inset-bottom)) !important;
  }
  body.mpcs-classroom #mpcs-main,
  body.mpcs-classroom #mpcs-main.off-canvas {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    transform: none !important;
  }
  body.mpcs-classroom .pwm-sidebar-backdrop {
    display: block;
    position: fixed;
    inset: 0;
    z-index: 10001;
    padding: 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    background: rgba(7,19,43,.5);
    border: 0;
    backdrop-filter: blur(4px);
    transition: opacity .25s ease, visibility 0s linear .25s;
  }
  body.mpcs-classroom.pwm-sidebar-open .pwm-sidebar-backdrop {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition-delay: 0s;
  }

  body.mpcs-classroom #mpcs-main .wp-block-embed,
  body.mpcs-classroom #mpcs-main figure.wp-block-embed.is-provider-vimeo,
  body.mpcs-classroom #mpcs-main figure.wp-block-embed.is-provider-youtube {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  body.mpcs-classroom #mpcs-main .wp-block-embed__wrapper {
    width: 100% !important;
    max-width: 100% !important;
    aspect-ratio: 16 / 9 !important;
    position: relative !important;
    overflow: hidden !important;
    border-radius: 11px !important;
  }
  body.mpcs-classroom #mpcs-main .wp-block-embed__wrapper iframe,
  body.mpcs-classroom #mpcs-main iframe[src*="vimeo"],
  body.mpcs-classroom #mpcs-main iframe[src*="youtube"] {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
  }
  body.mpcs-classroom #mpcs-main img,
  body.mpcs-classroom #mpcs-main table { max-width: 100% !important; }
  body.mpcs-classroom #mpcs-main table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
}

@media (max-width: 600px) {
  body.mpcs-classroom #mpcs-navbar {
    height: 64px !important;
    min-height: 64px !important;
    padding: 0 8px !important;
  }
  body.mpcs-classroom #mpcs-navbar .navbar-section:first-child { flex: 0 0 auto !important; }
  body.mpcs-classroom #mpcs-navbar .navbar-brand { display: none !important; }
  body.mpcs-classroom #mpcs-navbar .nav-back { width: 38px !important; height: 38px !important; }
  body.mpcs-classroom #mpcs-navbar #mpcs-lesson-navigation { flex: 1 !important; min-width: 0 !important; }
  body.mpcs-classroom #mpcs-navbar #mpcs-lesson-navigation > a {
    min-width: 0 !important;
    flex: 1 1 50% !important;
    padding: 0 8px !important;
    font-size: 11px !important;
    white-space: nowrap !important;
  }
  body.mpcs-classroom #mpcs-navbar .sidebar-open {
    min-width: 42px !important;
    width: 42px !important;
    height: 42px !important;
    padding: 0 !important;
    border-radius: 12px !important;
    touch-action: manipulation !important;
  }
  body.mpcs-classroom main#mpcs-main { padding: 20px 12px 56px !important; }
  body.mpcs-classroom main#mpcs-main h2.entry-title { font-size: 23px !important; margin-bottom: 18px !important; }
  body.mpcs-classroom main#mpcs-main figure.wp-block-embed.is-provider-vimeo,
  body.mpcs-classroom main#mpcs-main figure.wp-block-embed.is-provider-youtube {
    padding: 5px !important;
    margin: 12px 0 24px !important;
    border-radius: 14px !important;
  }
}

/* Viewport-level report modals (moved under body by pwm-aurora.js) */
body.mpcs-classroom > .condition-info-overlay,
body.mpcs-classroom > .nutrition-info-overlay,
body.mpcs-classroom > .tooltip-overlay,
body.mpcs-classroom > #nutrition-tooltip-overlay {
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100dvh !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  background: rgba(8,20,45,.66) !important;
  backdrop-filter: blur(7px) saturate(110%) !important;
  z-index: 20000 !important;
}
body.mpcs-classroom > .condition-info-modal,
body.mpcs-classroom > .nutrition-info-modal,
body.mpcs-classroom > .nutrition-info-tooltip {
  position: fixed !important;
  top: 50% !important;
  left: 50% !important;
  right: auto !important;
  bottom: auto !important;
  width: min(92vw, 680px) !important;
  max-width: 680px !important;
  max-height: min(82dvh, 760px) !important;
  margin: 0 !important;
  z-index: 20001 !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 1px solid rgba(255,255,255,.8) !important;
  border-radius: 20px !important;
  box-shadow: 0 30px 90px rgba(5,20,55,.4) !important;
  transform: translate3d(-50%,-50%,0) scale(.96) !important;
}
body.mpcs-classroom > .condition-info-modal.show,
body.mpcs-classroom > .nutrition-info-modal.show,
body.mpcs-classroom > .nutrition-info-tooltip.show {
  display: block !important;
  transform: translate3d(-50%,-50%,0) scale(1) !important;
  animation: none !important;
}
body.mpcs-classroom > .condition-info-modal .modal-header,
body.mpcs-classroom > .nutrition-info-modal .modal-header,
body.mpcs-classroom > .nutrition-info-tooltip .modal-header {
  position: relative !important;
  padding: 22px 64px 22px 26px !important;
  color: #fff !important;
  background: linear-gradient(115deg,#123b91,#2457f5 54%,#7955df) !important;
}
body.mpcs-classroom > .condition-info-modal .modal-close,
body.mpcs-classroom > .nutrition-info-modal .modal-close,
body.mpcs-classroom > .nutrition-info-tooltip .modal-close {
  width: 42px !important;
  height: 42px !important;
  top: 14px !important;
  right: 14px !important;
  z-index: 3 !important;
  display: inline-grid !important;
  place-items: center !important;
  padding: 0 !important;
  color: #fff !important;
  background: rgba(255,255,255,.16) !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  border-radius: 13px !important;
  touch-action: manipulation !important;
}
body.mpcs-classroom > .condition-info-modal .modal-content,
body.mpcs-classroom > .nutrition-info-modal .modal-content,
body.mpcs-classroom > .nutrition-info-tooltip .modal-content {
  max-height: calc(min(82dvh, 760px) - 86px) !important;
  padding: 24px 26px !important;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}

@media (max-width: 600px) {
  body.mpcs-classroom > .condition-info-modal,
  body.mpcs-classroom > .nutrition-info-modal,
  body.mpcs-classroom > .nutrition-info-tooltip {
    width: calc(100vw - 24px) !important;
    max-height: calc(100dvh - 32px) !important;
    border-radius: 16px !important;
  }
  body.mpcs-classroom > .condition-info-modal .modal-header,
  body.mpcs-classroom > .nutrition-info-modal .modal-header,
  body.mpcs-classroom > .nutrition-info-tooltip .modal-header {
    padding: 18px 58px 18px 18px !important;
  }
  body.mpcs-classroom > .condition-info-modal .modal-title,
  body.mpcs-classroom > .nutrition-info-modal .modal-title,
  body.mpcs-classroom > .nutrition-info-tooltip .modal-title { font-size: 18px !important; }
  body.mpcs-classroom > .condition-info-modal .modal-content,
  body.mpcs-classroom > .nutrition-info-modal .modal-content,
  body.mpcs-classroom > .nutrition-info-tooltip .modal-content {
    max-height: calc(100dvh - 112px) !important;
    padding: 18px !important;
  }
}
@media (max-width: 600px) {
  body.mpcs-classroom #mpcs-navbar .navbar-brand img { max-width: 160px !important; max-height: 34px !important; }
  body.mpcs-classroom main#mpcs-main { padding: 24px 14px 60px !important; }
  body.mpcs-classroom main#mpcs-main h2.entry-title { font-size: 26px !important; }
  body.mpcs-classroom main#mpcs-main figure.wp-block-embed.is-provider-vimeo,
  body.mpcs-classroom main#mpcs-main figure.wp-block-embed.is-provider-youtube { padding: 7px !important; border-radius: 15px !important; }
}
@media (prefers-reduced-motion: reduce) {
  body.mpcs-classroom *, body.mpcs-classroom *::before, body.mpcs-classroom *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
  body.mpcs-classroom.pwm-aurora-ready .pwm-reveal { opacity: 1; transform: none; }
}
