/*
 * Certigate 1.36.18 — Learner Experience Refit
 * Final visual authority for the learner shell, path and lesson player.
 * Business logic, REST calls and progression rules remain untouched.
 */

body.cg-candidate-studio{
  --cgx-navy:#082838;
  --cgx-navy-2:#061f2c;
  --cgx-gold:#c89b16;
  --cgx-ink:#102d3a;
  --cgx-muted:#667985;
  --cgx-border:#dce4e8;
  --cgx-ivory:#f7f4ec;
  --cgx-panel:#ffffff;
  background:var(--cgx-ivory)!important;
}

@media (min-width:821px){
  body.cg-candidate-studio .cgcs-app{
    display:block!important;
    min-height:100vh!important;
    background:var(--cgx-ivory)!important;
  }
  body.cg-candidate-studio .cgcs-side{
    display:flex!important;
    position:fixed!important;
    inset:0 auto 0 0!important;
    width:222px!important;
    height:100vh!important;
    height:100dvh!important;
    min-height:0!important;
    padding:0!important;
    overflow:hidden!important;
    z-index:100!important;
    background:linear-gradient(180deg,var(--cgx-navy) 0%,var(--cgx-navy-2) 100%)!important;
    border-right:1px solid rgba(255,255,255,.08)!important;
  }
  body.cg-candidate-studio .cgcs-side-sticky{
    position:static!important;
    inset:auto!important;
    transform:none!important;
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    padding:14px 12px!important;
    box-sizing:border-box!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  body.cg-candidate-studio .cgcs-side .cgcs-brand{
    color:#fff!important;
    border-bottom:1px solid rgba(255,255,255,.1)!important;
  }
  body.cg-candidate-studio .cgcs-side .cgcs-brand small{color:rgba(255,255,255,.58)!important}
  body.cg-candidate-studio .cgcs-side .cgcs-nav{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow:auto!important;
    padding:14px 0!important;
    scrollbar-width:thin!important;
  }
  body.cg-candidate-studio .cgcs-side .cgcs-nav a{
    min-height:42px!important;
    margin:2px 0!important;
    padding:10px 12px!important;
    color:rgba(255,255,255,.72)!important;
    border-radius:10px!important;
  }
  body.cg-candidate-studio .cgcs-side .cgcs-nav a:hover{
    color:#fff!important;
    background:rgba(255,255,255,.07)!important;
  }
  body.cg-candidate-studio .cgcs-side .cgcs-nav a.is-active{
    color:#fff!important;
    background:rgba(200,155,22,.2)!important;
    box-shadow:inset 3px 0 0 var(--cgx-gold)!important;
  }
  body.cg-candidate-studio .cgcs-side .cgcs-user{
    flex:0 0 auto!important;
    margin-top:auto!important;
    padding-top:12px!important;
    border-top:1px solid rgba(255,255,255,.1)!important;
  }
  body.cg-candidate-studio .cgcs-main{
    width:auto!important;
    min-width:0!important;
    min-height:100vh!important;
    margin-left:222px!important;
    padding:22px clamp(20px,3vw,48px) 42px!important;
    background:var(--cgx-ivory)!important;
  }
  body.cg-candidate-studio .cgcs-top,
  body.cg-candidate-studio .cgcs-lesson-player,
  body.cg-candidate-studio .cgcs-path-card{
    width:100%!important;
    max-width:1240px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

body.cg-candidate-studio .cgcs-top{
  padding-bottom:18px!important;
  margin-bottom:20px!important;
}
body.cg-candidate-studio .cgcs-top h1{
  font-size:clamp(1.9rem,2.8vw,2.8rem)!important;
  line-height:1.05!important;
}
body.cg-candidate-studio .cgcs-top p{
  max-width:780px!important;
  margin-top:8px!important;
  font-size:.92rem!important;
  line-height:1.55!important;
}

body.cg-candidate-studio .cgcs-lesson-player{
  max-width:1100px!important;
  padding:18px!important;
  border-radius:20px!important;
  box-shadow:0 18px 50px rgba(12,40,52,.08)!important;
}
body.cg-candidate-studio .cgcs-lesson-content{gap:14px!important}
body.cg-candidate-studio .cgcs-player-rail{
  position:sticky!important;
  top:12px!important;
  z-index:20!important;
  min-height:54px!important;
  padding:10px 14px!important;
  border-radius:14px!important;
  box-shadow:0 8px 24px rgba(12,40,52,.08)!important;
}
body.cg-candidate-studio .cgcs-lesson-breadcrumb{padding:2px 4px!important}
body.cg-candidate-studio .cgcs-lesson-hero{
  grid-template-columns:minmax(0,1fr) 104px!important;
  gap:20px!important;
  padding:22px!important;
  border-radius:16px!important;
  background:#fff!important;
}
body.cg-candidate-studio .cgcs-lesson-hero h2{
  max-width:820px!important;
  font-size:clamp(1.55rem,2.5vw,2.25rem)!important;
  line-height:1.12!important;
  letter-spacing:-.035em!important;
}
body.cg-candidate-studio .cgcs-lesson-objective{
  margin-top:10px!important;
  font-size:.9rem!important;
  line-height:1.55!important;
}
body.cg-candidate-studio .cgcs-lesson-progress-ring{
  width:94px!important;
  height:94px!important;
}
body.cg-candidate-studio .cgcs-lesson-section{
  padding:20px clamp(18px,3vw,28px)!important;
  border-radius:16px!important;
  background:#fff!important;
}
body.cg-candidate-studio .cgcs-lesson-richtext{
  max-width:780px!important;
  margin:0 auto!important;
  font-size:.94rem!important;
  line-height:1.72!important;
}
body.cg-candidate-studio .cgcs-lesson-richtext h2,
body.cg-candidate-studio .cgcs-lesson-richtext h3{
  font-size:1.2rem!important;
  line-height:1.3!important;
}
body.cg-candidate-studio .cgcs-note-panel textarea{min-height:110px!important}
body.cg-candidate-studio .cgcs-lesson-completion{
  padding:18px 20px!important;
  border-radius:16px!important;
}
body.cg-candidate-studio .cgcs-lesson-navigation{
  padding:2px 0 0!important;
}

body.cg-candidate-studio .cgcs-path-card{
  padding:18px!important;
  border-radius:20px!important;
  box-shadow:0 18px 50px rgba(12,40,52,.07)!important;
}
body.cg-candidate-studio .cgcs-path-command{
  padding:20px!important;
  border-radius:16px!important;
}
body.cg-candidate-studio .cgcs-path-part{
  margin-top:16px!important;
  padding:18px!important;
  border-radius:16px!important;
}
body.cg-candidate-studio .cgcs-module-row{
  gap:14px!important;
  padding:14px!important;
  border-radius:14px!important;
}
body.cg-candidate-studio .cgcs-lesson-mini-list li>a,
body.cg-candidate-studio .cgcs-lesson-mini-list li>div{
  min-height:42px!important;
  padding:9px 11px!important;
}

/* 1.36.19 — hard boundary between the permanent navigation rail and content. */
@media (min-width:821px){
  body.cg-candidate-studio::before{
    content:""!important;
    position:fixed!important;
    inset:0 auto 0 0!important;
    width:222px!important;
    height:100vh!important;
    height:100dvh!important;
    background:linear-gradient(180deg,var(--cgx-navy) 0%,var(--cgx-navy-2) 100%)!important;
    z-index:70!important;
    pointer-events:none!important;
  }
  body.cg-candidate-studio .cgcs-side,
  body.cg-candidate-studio .cgcs-side-sticky{
    height:100vh!important;
    height:100dvh!important;
    min-height:100vh!important;
    min-height:100dvh!important;
    max-height:100vh!important;
    max-height:100dvh!important;
    background:linear-gradient(180deg,var(--cgx-navy) 0%,var(--cgx-navy-2) 100%)!important;
  }
  body.cg-candidate-studio .cgcs-main{
    width:calc(100% - 222px)!important;
    max-width:calc(100vw - 222px)!important;
    margin-left:222px!important;
    box-sizing:border-box!important;
    overflow-x:clip!important;
  }
  body.cg-candidate-studio .cgcs-main *,
  body.cg-candidate-studio .cgcs-lesson-player,
  body.cg-candidate-studio .cgcs-lesson-content,
  body.cg-candidate-studio .cgcs-lesson-section,
  body.cg-candidate-studio .cgcs-path-card{
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  body.cg-candidate-studio .cgcs-main img,
  body.cg-candidate-studio .cgcs-main video,
  body.cg-candidate-studio .cgcs-main iframe,
  body.cg-candidate-studio .cgcs-main table{
    max-width:100%!important;
  }
}

@media (max-width:820px){
  body.cg-candidate-studio::before{display:none!important}
  body.cg-candidate-studio .cgcs-side,
  body.cg-candidate-studio .cgcs-side-sticky{display:none!important}
  body.cg-candidate-studio .cgcs-main{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    padding:14px 12px calc(88px + env(safe-area-inset-bottom,0px))!important;
  }
  body.cg-candidate-studio .cgcs-lesson-player,
  body.cg-candidate-studio .cgcs-path-card{padding:12px!important}
  body.cg-candidate-studio .cgcs-lesson-hero{
    grid-template-columns:1fr!important;
    padding:18px!important;
  }
  body.cg-candidate-studio .cgcs-lesson-progress-ring{display:none!important}
  body.cg-candidate-studio .cgcs-player-rail{top:8px!important}
}
