/* AOSARS Learn 4.0.0. The approved flow 4 design, carried at its measured values: the white
   rail, the benchmark type, the skills carousel, the two line lesson bar and the journey menu.
   The script builds the AOSARS shell and MOVES Tutor's native nodes into it;
   this stylesheet dresses the shell and the native pieces inside it. Never replaces Tutor.
   Reversible: remove the body class, or append aoslrn=off, and Tutor's own look returns. */
body.aoslrn{
  --cyan:#00AEFE;--cyan-deep:#0a9fe0;--cyan-soft:#e6f6fe;--cyan-mist:#f5fbff;
  --indigo:#393464;--indigo-deep:#2b2750;--indigo-soft:#eae8f4;
  --ink:#20233a;--ink-soft:#4a4f6a;--ink-faded:#8a8fa6;
  --tint:#f4f7fb;--rule:#e4e2ee;--rule-soft:#eceaf4;--ok:#2e7d32;
  --sh:0 14px 40px rgba(57,52,100,.10);--sh-lg:0 30px 60px rgba(57,52,100,.16);
}
body.aoslrn,body.aoslrn [class*="tutor-"],body.aoslrn .aoslrn-app,body.aoslrn .aoslrn-sp{
  font-family:'Montserrat',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
/* the shell always measures border box, whatever the theme's own box sizing */
.aoslrn-app,.aoslrn-app *,.aoslrn-sp,.aoslrn-sp *,.aoslrn-band,.aoslrn-band *,.aoslrn-ov,.aoslrn-ov *{box-sizing:border-box}
body.aoslrn .aoslrn-kick{font-size:12.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--cyan)}

/* pills, the design's exact values: 46px, 999 radius, cyan gradient, indigo type */
body.aoslrn .aoslrn-pill,
body.aoslrn.aoslrn-shell .tutor-btn,
body.aoslrn.aoslrn-shell a.tutor-btn-primary,
body.aoslrn.aoslrn-shell button.tutor-btn-primary{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;height:46px;padding:0 24px;
  border-radius:999px!important;border:0!important;font-family:inherit;font-weight:800!important;font-size:13px;
  letter-spacing:.03em!important;color:var(--indigo)!important;text-decoration:none;cursor:pointer;
  background:linear-gradient(135deg,var(--cyan),var(--cyan-deep))!important;
  box-shadow:0 10px 26px rgba(0,174,254,.32)!important;transition:transform .16s,box-shadow .16s!important}
body.aoslrn .aoslrn-pill:hover,body.aoslrn.aoslrn-shell .tutor-btn:hover{transform:translateY(-2px)!important;box-shadow:0 14px 34px rgba(0,174,254,.44)!important}
body.aoslrn.aoslrn-shell .tutor-btn.tutor-btn-outline-primary{background:#fff!important;color:var(--indigo)!important;border:1.5px solid var(--rule)!important;box-shadow:none!important}

/* progress bars at the design values: rounded track on rule-soft, cyan to indigo fill */
body.aoslrn .aoslrn-pbar{height:10px;background:var(--rule-soft);border-radius:999px;overflow:hidden}
body.aoslrn .aoslrn-pbar span{display:block;height:100%;background:linear-gradient(90deg,var(--cyan),var(--indigo));border-radius:999px}
body.aoslrn.aoslrn-shell .tutor-progress-bar,
body.aoslrn.aoslrn-shell [class*="progress"] [class*="filled"]{background:linear-gradient(90deg,var(--cyan),var(--indigo))!important;border-radius:999px!important}

/* ================= DASHBOARD SHELL (design: _dash5) ================= */
body.aoslrn-dashboard.aoslrn-shell{background:#eef1f7!important}
.aoslrn-app{display:grid;grid-template-columns:264px 1fr;gap:0;min-height:100vh}
.aoslrn-rail{background:#fff;color:var(--indigo);padding:22px 16px;border-radius:0;border-right:1px solid var(--rule);box-shadow:0 6px 20px rgba(57,52,100,.05)}
.aoslrn-brand{display:flex;align-items:center;gap:10px;padding:6px 8px 18px}
.aoslrn-brand .aoslrn-mk{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;font-weight:900;color:var(--indigo);font-size:15px;background:linear-gradient(135deg,var(--cyan),var(--cyan-deep))}
.aoslrn-brand b{font-size:15px;font-weight:900;letter-spacing:-.01em;color:var(--indigo)}
.aoslrn-brand span{display:block;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--cyan)}
/* Tutor's own dashboard menu, moved into the rail and dressed as the design nav */
.aoslrn-rail .aoslrn-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px}
.aoslrn-rail .aoslrn-nav li{margin:0!important;padding:0!important;border:0!important;background:transparent!important}
.aoslrn-rail .aoslrn-nav a{display:flex!important;align-items:center;gap:12px;width:100%;text-align:left;border:0!important;
  background:none;color:var(--indigo)!important;font-size:13.5px!important;font-weight:800!important;
  padding:11px 12px!important;border-radius:12px!important;text-decoration:none!important;transition:background .18s,color .18s}
.aoslrn-rail .aoslrn-nav a:hover{background:var(--cyan-mist)!important;color:var(--cyan-deep)!important}
.aoslrn-rail .aoslrn-nav li.active a,
.aoslrn-rail .aoslrn-nav a.active,
.aoslrn-rail .aoslrn-nav a.aoslrn-on{
  background:linear-gradient(90deg,rgba(0,174,254,.14),rgba(0,174,254,.03))!important;color:var(--indigo)!important;
  box-shadow:inset 3px 0 0 var(--cyan)!important}
.aoslrn-rail .aoslrn-nav svg,.aoslrn-rail .aoslrn-nav i,.aoslrn-rail .aoslrn-nav [class*="icon"]{color:var(--cyan)!important;width:20px;flex:0 0 20px}
.aoslrn-mainarea{min-width:0}
.aoslrn-topbar{position:sticky;top:0;z-index:20;background:rgba(238,241,247,.86);backdrop-filter:blur(8px);
  display:flex;align-items:center;gap:16px;padding:16px clamp(18px,3vw,40px);border-bottom:1px solid var(--rule);
  box-shadow:0 6px 20px rgba(57,52,100,.05)}
.aoslrn-crumb{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faded)}
.aoslrn-tbpill{margin-left:auto;background:var(--indigo);color:#fff;border-radius:999px;padding:9px 16px;font-size:12px;font-weight:800}
.aoslrn-view{padding:clamp(22px,3vw,34px) clamp(18px,3vw,40px) 60px}
/* headings and cards inside the view at the design values */
.aoslrn-view h1,.aoslrn-view .tutor-dashboard-content-title,
body.aoslrn-dashboard.aoslrn-shell .tutor-dashboard-content h2{
  font-size:clamp(26px,3.2vw,40px)!important;font-weight:800!important;color:var(--indigo)!important;letter-spacing:-.02em!important;line-height:1.1!important}
body.aoslrn-dashboard.aoslrn-shell .tutor-card,
body.aoslrn-dashboard.aoslrn-shell .tutor-course-card,
body.aoslrn-dashboard.aoslrn-shell .aoslrn-view .tutor-table,
.aoslrn-view .aoslrn-card{
  background:#fff!important;border:2px solid rgba(57,52,100,.14)!important;border-radius:16px!important;
  box-shadow:0 4px 16px rgba(57,52,100,.08)!important;overflow:hidden;transition:transform .2s,box-shadow .2s,border-color .2s!important}
body.aoslrn-dashboard.aoslrn-shell .tutor-course-card:hover,
body.aoslrn-dashboard.aoslrn-shell .tutor-card:hover{transform:scale(1.04);border-color:var(--cyan)!important;box-shadow:0 14px 38px rgba(57,52,100,.14)!important;z-index:2;position:relative}
/* card titles and the dashboard button voice at the benchmark */
body.aoslrn-dashboard.aoslrn-shell .tutor-course-card h3,
body.aoslrn-dashboard.aoslrn-shell .tutor-course-card h4,
body.aoslrn-dashboard.aoslrn-shell .tutor-course-card [class*="course-name"],
body.aoslrn-dashboard.aoslrn-shell .tutor-course-card [class*="course-name"] a{
  font-size:16.5px!important;font-weight:800!important;color:var(--indigo)!important;letter-spacing:-.01em!important;line-height:1.25!important}
body.aoslrn-dashboard.aoslrn-shell .aoslrn-view .tutor-btn,
body.aoslrn-dashboard.aoslrn-shell .aoslrn-view a.tutor-btn-primary,
body.aoslrn-dashboard.aoslrn-shell .aoslrn-view button.tutor-btn-primary{
  height:44px;font-size:12px!important;letter-spacing:.05em!important;text-transform:uppercase!important}
/* View all courses, the benchmark link voice */
.aoslrn-viewall{font-size:12px!important;font-weight:800!important;letter-spacing:.05em!important;text-transform:uppercase!important;
  color:var(--cyan-deep)!important;text-decoration:none!important;cursor:pointer;white-space:nowrap}
/* stat tiles: Tutor's overview count blocks, tagged by the script */
.aoslrn-stat{background:#fff!important;border-radius:18px!important;box-shadow:var(--sh)!important;
  border:0!important;border-left:4px solid var(--rule)!important;padding:18px 20px!important;display:flex;align-items:center;gap:14px}
.aoslrn-stat.cy{border-left-color:var(--cyan)!important}
.aoslrn-stat.ind{border-left-color:var(--indigo)!important}
.aoslrn-stat b,.aoslrn-stat [class*="count"],.aoslrn-stat h3{font-size:23px!important;font-weight:900!important;color:var(--indigo)!important;letter-spacing:-.02em;line-height:1.1}
.aoslrn-stat span,.aoslrn-stat p{font-size:11.5px!important;font-weight:700!important;color:var(--ink-faded)!important;margin:0}
body.aoslrn-dashboard.aoslrn-shell .tutor-table thead th{background:var(--indigo)!important;color:#fff!important;font-weight:800!important;text-transform:uppercase;letter-spacing:.04em;font-size:12px!important}
body.aoslrn-dashboard.aoslrn-shell .tutor-table td{color:var(--ink-soft)!important}
/* EXPAND YOUR SKILLS: the repeating carousel to the benchmark standard */
.aoslrn-xh{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:28px 0 0}
.aoslrn-xh h3{margin:4px 0 0;font-size:clamp(18px,2vw,24px);font-weight:800;color:var(--indigo);letter-spacing:-.02em;line-height:1.15}
.aoslrn-xsk{position:relative;margin:14px 0 4px}
.aoslrn-xvp{overflow:hidden;padding:8px 2px 14px;margin:0 -2px}
.aoslrn-xtr{display:flex;gap:18px;transition:transform .6s cubic-bezier(.4,0,.2,1);will-change:transform}
.aoslrn-xc{flex:0 0 calc((100% - 36px)/3);background:#fff;border:2px solid rgba(57,52,100,.14);border-radius:16px;overflow:hidden;
  box-shadow:0 4px 16px rgba(57,52,100,.08);display:flex;flex-direction:column;text-decoration:none!important;position:relative;
  transition:transform .2s,box-shadow .2s,border-color .2s}
.aoslrn-xc:hover{transform:scale(1.04);box-shadow:0 14px 38px rgba(57,52,100,.14);border-color:var(--cyan);z-index:2}
.aoslrn-xcov{height:118px;background-size:cover;background-position:center;background-color:var(--indigo-soft);position:relative}
.aoslrn-xtag{position:absolute;top:11px;left:11px;font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;
  background:rgba(57,52,100,.88);color:var(--cyan);padding:6px 11px;border-radius:8px}
.aoslrn-xb{padding:16px 18px 18px;display:flex;flex-direction:column;flex:1}
.aoslrn-xb h4{margin:0 0 6px;font-size:16.5px!important;font-weight:800!important;color:var(--indigo)!important;letter-spacing:-.01em;line-height:1.25}
.aoslrn-xb p{margin:0 0 12px;font-size:13px;line-height:1.5;color:var(--ink-soft);flex:1}
.aoslrn-xgo{font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--cyan-deep)}
.aoslrn-xar{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:40px;height:40px;border-radius:50%;border:1.5px solid var(--rule);
  background:#fff;color:var(--indigo);display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 22px rgba(57,52,100,.14);transition:.16s}
.aoslrn-xar:hover{background:var(--cyan);border-color:var(--cyan);color:var(--indigo)}
.aoslrn-xar.prev{left:-14px}.aoslrn-xar.next{right:-14px}
.aoslrn-xar svg{width:18px;height:18px}
@media(max-width:1080px){.aoslrn-xc{flex-basis:calc((100% - 18px)/2)}}
@media(max-width:560px){.aoslrn-xc{flex-basis:100%}}
body.aoslrn.aoslrn-shell{overflow-x:clip}
.aoslrn-mainarea,.aoslrn-view{min-width:0;max-width:100%}
.aoslrn-view img{max-width:100%;height:auto}
.aoslrn-stat{min-width:0}
@media(max-width:900px){
 .aoslrn-app{grid-template-columns:1fr}.aoslrn-rail{border-radius:0 0 20px 20px}
 .aoslrn-view .tutor-grid{grid-template-columns:1fr 1fr!important}
}
@media(max-width:560px){.aoslrn-view .tutor-grid{grid-template-columns:1fr!important}}

/* ================= COURSE SHELL (design: cv- overview) ================= */
body.aoslrn-course.aoslrn-shell{background:#eef1f7!important}
.aoslrn-band{position:relative;overflow:hidden;background:#0b0a18;color:#fff}
.aoslrn-band-bg{position:absolute;inset:0;background-size:cover;background-position:center 30%;opacity:.5}
.aoslrn-band::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,10,24,.92),rgba(11,10,24,.62) 60%,rgba(11,10,24,.4))}
.aoslrn-band-in{position:relative;z-index:1;max-width:1200px;margin-inline:auto;padding:clamp(30px,4vw,50px) clamp(18px,4vw,44px)}
body.aoslrn .aoslrn-band .aoslrn-kick{font-size:11px;letter-spacing:.1em} /* the course band keeps its approved values */
.aoslrn-band h1,.aoslrn-band .aoslrn-btitle{margin:10px 0 8px;font-size:clamp(24px,3.2vw,38px)!important;font-weight:900!important;letter-spacing:-.02em!important;max-width:24ch;color:#fff!important}
.aoslrn-band .aoslrn-bmeta{margin:0;font-size:14px;color:rgba(255,255,255,.8);font-weight:700}
.aoslrn-ov{display:grid;grid-template-columns:1fr 348px;gap:30px;align-items:start;max-width:1200px;margin-inline:auto;padding:26px clamp(18px,4vw,44px) 70px}
.aoslrn-ovmain{min-width:0}
.aoslrn-progcard{background:#fff;border-radius:20px;box-shadow:var(--sh);padding:22px 24px;margin:0 0 26px;border-left:5px solid var(--cyan)}
.aoslrn-progcard h3{margin:4px 0 14px;font-size:18px;font-weight:900;color:var(--indigo);letter-spacing:-.01em}
/* Tutor's topics, dressed as the design accordion */
body.aoslrn-course.aoslrn-shell .tutor-course-topic,
body.aoslrn-course.aoslrn-shell [class*="course-topic"]:not([class*="item"]){
  background:#fff!important;border:1px solid var(--rule-soft)!important;border-radius:16px!important;
  box-shadow:var(--sh)!important;overflow:hidden;margin:0 0 12px!important}
body.aoslrn-course.aoslrn-shell .tutor-course-topic-title,
body.aoslrn-course.aoslrn-shell [class*="topic-title"]{background:#fff!important;color:var(--indigo)!important;font-weight:800!important;font-size:15.5px!important;padding:16px 20px!important;border:0!important}
.aoslrn-tnum{flex:0 0 34px;width:34px;height:34px;border-radius:10px;background:var(--cyan-mist);color:var(--cyan);font-size:13px;font-weight:900;display:inline-grid;place-items:center;margin-right:12px}
body.aoslrn-course.aoslrn-shell .tutor-course-topic-item,
body.aoslrn-course.aoslrn-shell [class*="topic-item"]{border-radius:11px!important;transition:background .16s!important;border:0!important}
body.aoslrn-course.aoslrn-shell .tutor-course-topic-item:hover{background:var(--tint)!important}
body.aoslrn-course.aoslrn-shell .tutor-course-topic-item.aoslrn-current{background:var(--cyan-mist)!important}
body.aoslrn-course.aoslrn-shell [class*="completed"] [class*="icon"],body.aoslrn-course.aoslrn-shell .tutor-icon-mark{color:var(--ok)!important}
.aoslrn-ovside{position:sticky;top:20px}
.aoslrn-sidecard{background:#fff;border-radius:20px;box-shadow:var(--sh);padding:20px;text-align:center}
.aoslrn-sidecard .tutor-single-course-sidebar,.aoslrn-sidecard [class*="sidebar"]{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}
.aoslrn-ring{width:110px;height:110px;border-radius:50%;margin:0 auto 16px;display:grid;place-items:center;position:relative}
.aoslrn-ring::after{content:'';position:absolute;inset:11px;border-radius:50%;background:#fff}
.aoslrn-ring b{position:relative;z-index:1;font-size:26px;font-weight:900;color:var(--indigo)}
.aoslrn-ring small{position:relative;z-index:1;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faded)}
.aoslrn-access{background:var(--cyan-mist);border-radius:12px;padding:14px 16px;text-align:left;margin-top:16px}
.aoslrn-access b{display:block;font-size:18px;font-weight:900;color:var(--indigo);margin:2px 0 4px}
.aoslrn-access p{margin:0;font-size:12px;color:var(--ink-soft)}
@media(max-width:1000px){.aoslrn-ov{grid-template-columns:1fr}.aoslrn-ovside{position:static}}

/* ================= LESSON SHELL (approved flow: white, one click, course menu) ================= */
body.aoslrn-lesson.aoslrn-shell{background:#eef1f7!important}
.aoslrn-sp{background:#eef1f7;min-height:100vh;color:#20233a}
.aoslrn-sptop{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:12px clamp(14px,2vw,26px);background:#fff;
  border-bottom:1px solid #e4e2ee;box-shadow:0 6px 20px rgba(57,52,100,.05);position:sticky;top:0;z-index:60}
/* the second bar line: the lesson in hand on the left, the back and forth on the right */
.aoslrn-sptop2{display:flex;align-items:center;gap:12px;flex-wrap:wrap;width:100%;padding-top:10px;margin-top:10px;border-top:1px solid var(--rule-soft)}
.aoslrn-lestitle{font-size:15.5px;font-weight:900;color:var(--indigo);letter-spacing:-.01em;min-width:0}
.aoslrn-lesctl{margin-left:auto;display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.aoslrn-lesctl form{margin:0!important;display:inline-flex;padding:0!important;background:none!important;border:0!important}
/* Tutor's own Previous, Mark complete and Next, moved up and dressed as the design pills */
.aoslrn-ctl,.aoslrn-lesctl a,.aoslrn-lesctl button{display:inline-flex!important;align-items:center;gap:8px;height:38px;padding:0 16px!important;
  border-radius:999px!important;border:0!important;font-family:inherit!important;font-size:11.5px!important;font-weight:800!important;
  letter-spacing:.05em!important;text-transform:uppercase!important;color:var(--indigo)!important;text-decoration:none!important;cursor:pointer;
  background:linear-gradient(135deg,var(--cyan),var(--cyan-deep))!important;box-shadow:0 10px 26px rgba(0,174,254,.32)!important;
  transition:transform .16s,box-shadow .16s!important;margin:0!important}
.aoslrn-ctl.ghost,.aoslrn-lesctl a.aoslrn-ghost,.aoslrn-lesctl button.aoslrn-ghost{background:#fff!important;color:var(--indigo)!important;
  border:1.5px solid var(--rule)!important;box-shadow:none!important}
.aoslrn-lesctl a:hover,.aoslrn-lesctl button:hover{transform:translateY(-2px)}
/* the bar controls share one brand treatment */
.aoslrn-back,.aoslrn-menubtn,.aoslrn-fullbtn,.aoslrn-menuclose{display:inline-flex;align-items:center;gap:8px;border:0;cursor:pointer;
  font-family:inherit;font-size:12.5px;font-weight:800;padding:10px 18px;border-radius:999px;color:#393464;text-decoration:none;
  background:linear-gradient(135deg,var(--cyan),var(--cyan-deep));box-shadow:0 10px 26px rgba(0,174,254,.32);transition:transform .16s,box-shadow .16s}
.aoslrn-back:hover,.aoslrn-menubtn:hover,.aoslrn-fullbtn:hover,.aoslrn-menuclose:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(0,174,254,.44)}
.aoslrn-back svg,.aoslrn-fullbtn svg,.aoslrn-menuclose svg{width:16px;height:16px}
.aoslrn-menubtn{margin-left:auto}
.aoslrn-menubtn svg{width:17px;height:17px}
.aoslrn-sptitle{min-width:0}
.aoslrn-sptitle b{display:block;font-size:14px;font-weight:800;color:#393464}
.aoslrn-sptitle span{font-size:11.5px;color:#8a8fa6}
/* the access, unmistakable */
.aoslrn-accesschip{display:inline-flex;align-items:center;gap:10px;background:var(--cyan-mist);border:1.5px solid rgba(0,174,254,.45);
  border-radius:999px;padding:8px 16px;margin-left:6px}
.aoslrn-accesschip svg{width:17px;height:17px;color:var(--cyan);flex:0 0 17px}
.aoslrn-accesschip b{font-size:12.5px;font-weight:900;color:#393464;white-space:nowrap}
.aoslrn-accesschip span{font-size:11px;font-weight:800;color:#8a8fa6;white-space:nowrap}
/* the watch area owns the full width */
.aoslrn-spmain{padding:clamp(16px,2.4vw,30px);max-width:1200px;margin-inline:auto}
.aoslrn-video,.aoslrn-spmain .tutor-video-player,.aoslrn-spmain [class*="video-player"]{
  border-radius:18px!important;overflow:hidden!important;box-shadow:0 20px 60px rgba(0,0,0,.4)!important;background:#000}
.aoslrn-content,
.aoslrn-spmain .tutor-lesson-content,.aoslrn-spmain .lesson_content,.aoslrn-spmain [class*="lesson-content"]{
  background:#fff!important;color:var(--ink)!important;border-radius:20px!important;
  padding:clamp(22px,3vw,38px)!important;box-shadow:var(--sh-lg)!important;max-width:820px;margin:26px auto 0}
.aoslrn-content h1,.aoslrn-content h2,
.aoslrn-spmain .tutor-lesson-content h1,.aoslrn-spmain .tutor-lesson-content h2{
  color:var(--indigo)!important;font-weight:900!important;font-size:clamp(22px,2.6vw,30px)!important;letter-spacing:-.02em}
/* THE THREE LESSON KINDS: a video, an interactive package, or a reading.
   The package is never moved, never resized and never restyled inside: it keeps the size its
   own settings gave it, exactly where the editor placed it, so its tracking survives. */
.aoslrn-content.aoslrn-pkghost{max-width:1100px!important}
.aoslrn-pkgsrc{margin:0 auto}
.aoslrn-pkgsrc iframe{max-width:100%;border:0}
.aoslrn-content.aoslrn-solo{max-width:900px!important;margin:0 auto!important}
.aoslrn-content:not(.aoslrn-pkghost) :is(img,video,iframe,embed,object){max-width:100%;height:auto}
.aoslrn-content :is(table,pre){display:block;max-width:100%;overflow-x:auto}
/* when the card stays in place, its old theme wrappers go quiet rather than being hidden */
.aoslrn-keep{background:transparent!important;border:0!important;box-shadow:none!important;
  padding:0!important;margin:0!important;max-width:none!important;width:auto!important;float:none!important}
/* FULL SCREEN for the package: the card owns the screen, the package keeps its own size */
body.aoslrn-fullpkg .aoslrn-sptop{display:none}
body.aoslrn-fullpkg .aoslrn-spmain{padding:0;max-width:none}
body.aoslrn-fullpkg .aoslrn-content.aoslrn-pkghost{position:fixed!important;inset:0!important;z-index:99970!important;
  max-width:none!important;border-radius:0!important;margin:0!important;overflow:auto!important}
body.aoslrn-fullpkg .aoslrn-exit{display:inline-flex}
body.aoslrn-fullpkg .aoslrn-exithint{display:block}
body.aoslrn-menu-open .aoslrn-content.aoslrn-pkghost{visibility:hidden}

/* ================= THE COURSE MENU: white, over the entire screen ================= */
.aoslrn-menu{position:fixed;inset:0;z-index:99990;background:#fff;display:none;flex-direction:column;overflow:hidden}
body.aoslrn-menu-open .aoslrn-menu{display:flex}
body.aoslrn-menu-open{overflow:hidden}
.aoslrn-menutop{display:flex;align-items:center;gap:14px;padding:16px clamp(16px,3vw,36px);border-bottom:1px solid #e4e2ee;
  background:#fff;box-shadow:0 6px 20px rgba(57,52,100,.05)}
body.aoslrn .aoslrn-menutop .aoslrn-kick{display:block;font-size:12px;letter-spacing:.14em;margin-bottom:3px}
.aoslrn-menutop b{font-size:16px;font-weight:900;color:#393464}
.aoslrn-menuclose{margin-left:auto}
.aoslrn-menubody{flex:1;overflow-y:auto;padding:clamp(20px,3.5vw,44px)}
.aoslrn-menuwrap{max-width:980px;margin-inline:auto}
.aoslrn-infocard{display:flex;align-items:center;gap:14px;background:var(--cyan-mist);border:1.5px solid rgba(0,174,254,.35);
  border-radius:16px;padding:16px 20px;margin:0 0 22px}
.aoslrn-infocard .aoslrn-iic{flex:0 0 40px;width:40px;height:40px;border-radius:12px;background:var(--cyan);color:#fff;display:grid;place-items:center}
.aoslrn-infocard .aoslrn-iic svg{width:20px;height:20px}
.aoslrn-infocard b{display:block;font-size:14.5px;font-weight:900;color:#393464}
.aoslrn-infocard span{display:block;font-size:12px;font-weight:700;color:#8a8fa6}
/* THE JOURNEY MENU: the modules on the numbered rail at one end, the lessons at the other.
   The items carry no hover, as approved; the play icons stay; no images inside the menu. */
.aoslrn-menuwrap{max-width:none}
.aoslrn-jr{display:grid;grid-template-columns:340px 1fr;gap:clamp(24px,4vw,48px);align-items:start}
.aoslrn-jr-railwrap{position:sticky;top:8px}
.aoslrn-jr-label{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--cyan);margin:0 0 18px 4px}
.aoslrn-jr-rail{position:relative;margin:0;padding:0;list-style:none}
.aoslrn-jr-rail::before{content:'';position:absolute;left:23px;top:24px;bottom:24px;width:3px;background:linear-gradient(180deg,var(--cyan) 0%,var(--indigo) 100%);border-radius:3px}
.aoslrn-jr-step{position:relative;margin:0;padding:0;list-style:none}
.aoslrn-jr-btn{position:relative;display:flex;align-items:center;gap:16px;width:100%;text-align:left;background:none;border:0;padding:10px 12px 10px 0;cursor:pointer;font-family:inherit;border-radius:16px}
.aoslrn-jr-btn:focus-visible{outline:3px solid var(--cyan);outline-offset:2px}
.aoslrn-jr-dot{position:relative;flex:0 0 48px;width:48px;height:48px;border-radius:50%;background:#fff;border:3px solid var(--cyan);display:grid;place-items:center;box-shadow:0 14px 40px rgba(57,52,100,.08);z-index:2;transition:border-color .2s,background .2s}
.aoslrn-jr-num{font-size:17px;font-weight:900;color:var(--indigo);letter-spacing:-.02em;line-height:1}
.aoslrn-jr-btn[aria-selected="true"] .aoslrn-jr-dot{border-color:var(--indigo);background:var(--indigo)}
.aoslrn-jr-btn[aria-selected="true"] .aoslrn-jr-num{color:#fff}
.aoslrn-jr-meta{min-width:0;display:flex;flex-direction:column;gap:3px}
.aoslrn-jr-phase{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--cyan);margin:0}
.aoslrn-jr-t{font-size:16.5px;font-weight:800;color:var(--indigo);letter-spacing:-.01em;line-height:1.25;margin:0}
.aoslrn-jr-btn[aria-selected="true"] .aoslrn-jr-t{color:var(--cyan-deep)}
/* the other end: the chosen module's lessons, a still card */
.aoslrn-jr-card{background:#fff;border:2px solid rgba(57,52,100,.14);border-radius:24px;box-shadow:0 30px 60px rgba(57,52,100,.10);overflow:hidden}
.aoslrn-jr-head{display:flex;align-items:center;gap:14px;padding:18px 24px;border-bottom:1px solid var(--rule-soft);background:var(--cyan-mist)}
.aoslrn-jr-head .aoslrn-tnum2{flex:0 0 38px;width:38px;height:38px;border-radius:11px;background:#fff;color:var(--cyan);border:1.5px solid rgba(0,174,254,.4);font-size:15px;font-weight:900;display:grid;place-items:center}
.aoslrn-jr-headt{flex:1;min-width:0}
.aoslrn-jr-headt b{display:block;font-size:17px;font-weight:900;color:var(--cyan);letter-spacing:-.01em}
.aoslrn-jr-headt span{display:block;font-size:12.5px;font-weight:600;line-height:1.45;color:var(--ink-soft)}
.aoslrn-jr-count{font-size:12px;font-weight:800;color:var(--ink-faded);white-space:nowrap}
.aoslrn-jr-list{margin:0;padding:12px 14px 14px;display:grid;gap:8px}
.aoslrn-jr-b{display:none}
.aoslrn-jr-b.on{display:block}
/* LESSON rows: white, the write-up on the indigo, the play icon unmistakable, no hover */
.aoslrn-jr-b a,.aoslrn-menuwrap .aoslrn-les{display:flex!important;align-items:center;gap:14px;background:#fff!important;
  color:var(--indigo)!important;border:1.5px solid var(--rule-soft)!important;border-radius:12px!important;padding:12px 18px!important;margin:0 0 8px!important;
  text-decoration:none!important;font-size:15px!important;font-weight:800!important;letter-spacing:-.01em}
.aoslrn-jr-b a:focus-visible{outline:3px solid var(--cyan);outline-offset:2px}
.aoslrn-jr-b a.aoslrn-now{background:var(--cyan-mist)!important;border-color:var(--cyan)!important;
  box-shadow:0 0 0 3px rgba(0,174,254,.2)}
.aoslrn-lic2{flex:0 0 32px;width:32px;height:32px;border-radius:50%;background:var(--cyan);color:#fff;display:inline-grid;place-items:center;box-shadow:0 6px 16px rgba(0,174,254,.4)}
.aoslrn-lic2 svg{width:18px;height:18px}
.aoslrn-lic2.doc,.aoslrn-lic2.quiz{border-radius:10px;background:var(--cyan-mist);color:var(--cyan);border:1.5px solid rgba(0,174,254,.35);box-shadow:none}
@media(max-width:900px){.aoslrn-jr{grid-template-columns:1fr}.aoslrn-jr-railwrap{position:static}.aoslrn-jr-rail::before{top:20px;bottom:20px}}

/* ================= FULL VIDEO ================= */
body.aoslrn-fullvideo .aoslrn-sptop{display:none}
body.aoslrn-fullvideo .aoslrn-content,body.aoslrn-fullvideo .aoslrn-spmain .tutor-lesson-content{display:none!important}
body.aoslrn-fullvideo .aoslrn-spmain{padding:0;max-width:none}
body.aoslrn-fullvideo .aoslrn-video{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;
  border-radius:0!important;z-index:99970!important;margin:0!important}
body.aoslrn-fullvideo .aoslrn-video video,body.aoslrn-fullvideo .aoslrn-video iframe{width:100%!important;height:100%!important}
.aoslrn-exit{display:none;position:fixed;top:16px;right:16px;z-index:2147483000;align-items:center;gap:8px;border:0;cursor:pointer;
  font-family:'Montserrat',sans-serif;font-size:12.5px;font-weight:800;padding:11px 19px;border-radius:999px;color:#393464;
  background:linear-gradient(135deg,var(--cyan),var(--cyan-deep));box-shadow:0 14px 40px rgba(0,174,254,.5)}
.aoslrn-exit svg{width:16px;height:16px}
body.aoslrn-fullvideo .aoslrn-exit{display:inline-flex}
.aoslrn-exithint{display:none;position:fixed;bottom:18px;left:50%;transform:translateX(-50%);z-index:2147483000;
  font-family:'Montserrat',sans-serif;font-size:12px;font-weight:700;color:rgba(255,255,255,.75);
  background:rgba(11,10,24,.6);border-radius:999px;padding:7px 16px}
body.aoslrn-fullvideo .aoslrn-exithint{display:block}

/* ================= THE CERTIFICATE, ON THE DASHBOARD ================= */
.aoslrn-certbtn{display:inline-flex;align-items:center;gap:8px;border:0;cursor:pointer;font-family:'Montserrat',sans-serif;
  font-size:12px;font-weight:800;padding:9px 16px;border-radius:999px;color:#fff!important;background:#393464!important;
  box-shadow:0 10px 26px rgba(57,52,100,.35)!important;text-decoration:none!important;margin:8px 8px 0 0;transition:transform .16s}
.aoslrn-certbtn:hover{transform:translateY(-2px)}
.aoslrn-certbtn svg{width:15px;height:15px;color:var(--cyan)}

@media(max-width:900px){.aoslrn-accesschip span{display:none}}
@media(max-width:560px){.aoslrn-sptop{flex-wrap:wrap}.aoslrn-menubtn span,.aoslrn-fullbtn span{display:none}}

/* fallback skin when the shell cannot build (nothing found to move): 1.x behaviour kept */
body.aoslrn-lesson:not(.aoslrn-shell){background:#eef1f7!important}
body.aoslrn-lesson:not(.aoslrn-shell) .tutor-lesson-content{background:#fff!important;border-radius:20px!important;box-shadow:var(--sh-lg)!important;padding:clamp(20px,3vw,34px)!important}
body.aoslrn-dashboard:not(.aoslrn-shell) .tutor-dashboard-menu{background:#fff!important;border-radius:20px!important;border:1px solid var(--rule)!important}
body.aoslrn-dashboard:not(.aoslrn-shell) .tutor-dashboard-menu a{color:var(--indigo)!important;font-weight:800!important}

/* the debug panel */
.aoslrn-diag{position:fixed;right:16px;bottom:16px;z-index:99999;background:#393464;color:#fff;
  font:600 12.5px/1.7 Montserrat,sans-serif;padding:14px 18px;border-radius:14px;box-shadow:0 20px 50px rgba(0,0,0,.35);max-width:340px}
.aoslrn-diag b{display:block;color:#00AEFE;font-size:13px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px}
.aoslrn-diag .y{color:#00AEFE;font-weight:800}.aoslrn-diag .n{color:#fff;font-weight:800}
@media(prefers-reduced-motion:reduce){body.aoslrn *{transition:none!important}}
