@media(max-width:760px){
  body.training-placeholder-active{background:#f2f7f4!important}

  .training-placeholder-page.training-journey-page{
    min-height:calc(100vh - 72px)!important;
    padding:14px 10px 96px!important;
    background:linear-gradient(180deg,#f5faf7 0%,#eef5f1 100%)!important;
  }

  /* The stage stepper is intentionally removed in the approved mobile concept. */
  .training-placeholder-page .training-journey-intro,
  .training-placeholder-page .training-journey-steps,
  .training-placeholder-page .training-entry-step{
    display:none!important;
  }

  .training-entry-grid{
    width:min(520px,100%)!important;
    margin:0 auto!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
  }

  .training-entry-card{
    position:relative!important;
    min-height:0!important;
    overflow:hidden!important;
    border-radius:24px!important;
    box-sizing:border-box!important;
  }

  /* Completed diagnostic: compact status card. */
  .training-entry-card-start{
    display:grid!important;
    grid-template-columns:58px minmax(0,1fr) auto!important;
    grid-template-areas:
      'icon title status'
      'icon footer footer'!important;
    column-gap:14px!important;
    row-gap:8px!important;
    align-items:center!important;
    min-height:118px!important;
    padding:18px 16px!important;
    border:1px solid #dce8e1!important;
    background:#fff!important;
    box-shadow:0 10px 24px rgba(13,64,45,.055)!important;
  }
  .training-entry-card-start .training-entry-icon{
    grid-area:icon!important;
    width:58px!important;
    height:58px!important;
    margin:0!important;
    align-self:center!important;
    border:0!important;
    border-radius:18px!important;
    display:grid!important;
    place-items:center!important;
    background:linear-gradient(145deg,#e7f8ee,#daf2e4)!important;
    color:#0a8b59!important;
    font-size:32px!important;
    line-height:1!important;
    font-weight:700!important;
  }
  .training-entry-card-start h2{
    grid-area:title!important;
    align-self:end!important;
    margin:0!important;
    color:#0a3027!important;
    font-size:21px!important;
    line-height:1.08!important;
    font-weight:900!important;
    letter-spacing:-.025em!important;
  }
  .training-entry-card-start p{display:none!important}
  .training-entry-card-start .training-entry-status{
    grid-area:status!important;
    align-self:center!important;
    justify-self:end!important;
    min-height:34px!important;
    padding:0 14px!important;
    border:0!important;
    border-radius:999px!important;
    background:#e5f7eb!important;
    color:#16734d!important;
    font-size:11px!important;
    line-height:1!important;
    font-weight:900!important;
    letter-spacing:0!important;
  }
  .training-entry-card-start .training-entry-footer{
    grid-area:footer!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    color:#0a684b!important;
    font-size:13px!important;
    line-height:1.1!important;
    font-weight:800!important;
  }
  .training-entry-card-start .training-entry-footer>span{
    min-width:0!important;
    color:#0b6c4d!important;
    font-size:14px!important;
    font-weight:850!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  .training-entry-card-start .training-entry-footer strong{
    color:#0a674a!important;
    font-size:14px!important;
    font-weight:900!important;
    white-space:nowrap!important;
  }

  /* Current step: the only visually dominant card. */
  .training-entry-card-primary{
    display:block!important;
    width:100%!important;
    min-height:328px!important;
    padding:22px 18px 18px!important;
    border:1px solid rgba(151,255,192,.22)!important;
    border-radius:26px!important;
    background:linear-gradient(145deg,#07503a 0%,#08764c 56%,#05603f 100%)!important;
    color:#fff!important;
    text-align:left!important;
    box-shadow:0 16px 32px rgba(3,70,46,.16)!important;
    cursor:pointer!important;
  }
  .training-entry-card-primary::before{
    content:''!important;
    position:absolute!important;
    right:-54px!important;
    top:-62px!important;
    width:224px!important;
    height:224px!important;
    border-radius:50%!important;
    border:1px solid rgba(200,255,112,.12)!important;
    box-shadow:0 0 0 44px rgba(200,255,112,.05),0 0 0 88px rgba(200,255,112,.024)!important;
    pointer-events:none!important;
  }
  .training-entry-card-primary .training-entry-status{
    position:relative!important;
    z-index:3!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    display:inline-flex!important;
    width:auto!important;
    min-height:38px!important;
    margin:0 0 18px!important;
    padding:0 16px!important;
    border-radius:999px!important;
    background:linear-gradient(90deg,#d9ff67,#baf44f)!important;
    color:#164731!important;
    font-size:11px!important;
    line-height:1!important;
    font-weight:950!important;
    letter-spacing:.04em!important;
  }
  .training-entry-card-primary h2{
    position:relative!important;
    z-index:2!important;
    width:64%!important;
    margin:0!important;
    transform:none!important;
    color:#fff!important;
    font-size:34px!important;
    line-height:.98!important;
    font-weight:950!important;
    letter-spacing:-.04em!important;
  }
  .training-entry-card-primary p{
    position:relative!important;
    z-index:2!important;
    width:58%!important;
    margin:18px 0 0!important;
    transform:none!important;
    color:#cbe1d6!important;
    font-size:15px!important;
    line-height:1.38!important;
    font-weight:500!important;
  }
  .training-entry-illustration{
    display:block!important;
    position:absolute!important;
    z-index:1!important;
    right:14px!important;
    top:108px!important;
    width:128px!important;
    height:112px!important;
    opacity:.98!important;
    background-position:center!important;
    background-repeat:no-repeat!important;
    background-size:contain!important;
  }
  .training-entry-card-primary .training-entry-footer{
    position:absolute!important;
    z-index:3!important;
    left:16px!important;
    right:16px!important;
    bottom:16px!important;
    min-height:58px!important;
    margin:0!important;
    padding:0 18px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border:0!important;
    border-radius:18px!important;
    background:linear-gradient(90deg,#d0ff55 0%,#9ff169 100%)!important;
    color:#0d4e39!important;
    box-shadow:0 8px 20px rgba(20,91,53,.17)!important;
  }
  .training-entry-card-primary .training-entry-footer strong{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:16px!important;
    color:#0d4e39!important;
    font-size:18px!important;
    line-height:1!important;
    font-weight:950!important;
  }
  .training-entry-card-primary .training-entry-footer strong span{
    font-size:25px!important;
    font-weight:500!important;
  }

  /* Locked final step: compact and visually quieter. */
  .training-entry-card-locked{
    display:grid!important;
    grid-template-columns:58px minmax(0,1fr) auto!important;
    grid-template-areas:
      'icon title status'
      'icon desc status'!important;
    column-gap:14px!important;
    row-gap:7px!important;
    align-items:center!important;
    min-height:124px!important;
    padding:18px 16px!important;
    border:1px solid #dfe7e3!important;
    background:rgba(255,255,255,.82)!important;
    box-shadow:0 8px 20px rgba(13,64,45,.035)!important;
  }
  .training-entry-card-locked .training-entry-icon{
    grid-area:icon!important;
    width:58px!important;
    height:58px!important;
    margin:0!important;
    align-self:center!important;
    border-radius:18px!important;
    display:grid!important;
    place-items:center!important;
    background:#edf1ef!important;
    color:transparent!important;
    font-size:0!important;
  }
  .training-entry-card-locked .training-entry-icon::before{
    content:'🔒'!important;
    color:#6e7974!important;
    font-size:25px!important;
    line-height:1!important;
  }
  .training-entry-card-locked h2{
    grid-area:title!important;
    align-self:end!important;
    margin:0!important;
    color:#173d31!important;
    font-size:21px!important;
    line-height:1.08!important;
    font-weight:900!important;
    letter-spacing:-.02em!important;
  }
  .training-entry-card-locked p{
    grid-area:desc!important;
    align-self:start!important;
    margin:0!important;
    color:#7a8882!important;
    font-size:12.5px!important;
    line-height:1.35!important;
    font-weight:550!important;
  }
  .training-entry-card-locked .training-entry-status{
    grid-area:status!important;
    align-self:start!important;
    justify-self:end!important;
    min-height:34px!important;
    padding:0 12px!important;
    border-radius:999px!important;
    background:#eaeeec!important;
    color:#6b7772!important;
    font-size:10px!important;
    line-height:1!important;
    font-weight:850!important;
  }
  .training-entry-card-locked .training-entry-footer{display:none!important}

  @media(max-width:380px){
    .training-placeholder-page.training-journey-page{padding-left:8px!important;padding-right:8px!important}
    .training-entry-grid{gap:12px!important}
    .training-entry-card-start,
    .training-entry-card-locked{padding-left:14px!important;padding-right:14px!important}
    .training-entry-card-start{grid-template-columns:54px minmax(0,1fr) auto!important}
    .training-entry-card-locked{grid-template-columns:54px minmax(0,1fr) auto!important}
    .training-entry-card-start .training-entry-icon,
    .training-entry-card-locked .training-entry-icon{width:54px!important;height:54px!important}
    .training-entry-card-start h2,
    .training-entry-card-locked h2{font-size:19px!important}
    .training-entry-card-primary{min-height:318px!important;padding:20px 15px 16px!important}
    .training-entry-card-primary .training-entry-status{margin-bottom:16px!important}
    .training-entry-card-primary h2{font-size:31px!important;width:68%!important}
    .training-entry-card-primary p{font-size:14px!important;width:60%!important;margin-top:15px!important}
    .training-entry-illustration{right:10px!important;top:112px!important;width:112px!important;height:98px!important}
    .training-entry-card-primary .training-entry-footer{left:14px!important;right:14px!important;bottom:14px!important;min-height:56px!important}
    .training-entry-card-primary .training-entry-footer strong{font-size:17px!important}
  }
}
