
/* v87.3 – micro polish
   Goal: tighten active pass mode and reduce unnecessary vertical waste while keeping readability. */

/* General polish */
body.exercise-active .sticky-nav{
  box-shadow:0 12px 32px rgba(0,0,0,.22) !important;
}

body.exercise-active .progress-meta{
  gap:5px !important;
}

body.exercise-active #exerciseMeta{
  font-size:13px !important;
  line-height:1.15 !important;
  color:#9fefff !important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

body.exercise-active .progress-shell{
  height:6px !important;
  margin-top:3px !important;
}

/* Desktop/tablet pass polish */
body.exercise-active .stage-layout{
  gap:14px !important;
}

body.exercise-active .info-card{
  padding:16px !important;
  gap:10px !important;
}

body.exercise-active .exercise-kicker .tag{
  min-height:30px !important;
  padding:7px 11px !important;
}

body.exercise-active .exercise-name{
  margin-top:0 !important;
  margin-bottom:0 !important;
}

body.exercise-active .exercise-reps{
  min-height:74px !important;
  padding:14px 16px !important;
}

body.exercise-active .set-note{
  padding:11px 14px !important;
  font-size:14px !important;
  line-height:1.28 !important;
}

body.exercise-active .coach-cues{
  padding:13px 15px !important;
}

body.exercise-active .coach-cues small{
  font-size:11px !important;
}

body.exercise-active .coach-cues ul{
  margin-top:6px !important;
  line-height:1.28 !important;
}

body.exercise-active .next-preview{
  padding:12px 14px !important;
}

body.exercise-active .next-preview small{
  display:inline !important;
  margin-right:6px !important;
}

body.exercise-active .pass-bottom-controls{
  backdrop-filter:blur(16px);
}

/* Mobile pass mode: tighter, more app-like */
@media(max-width:900px){
  body.exercise-active .wrap{
    width:100vw !important;
    padding-top:0 !important;
  }

  body.exercise-active .sticky-nav{
    padding:6px 10px 7px !important;
    margin:0 !important;
    border-radius:0 !important;
  }

  body.exercise-active .sticky-nav .nav-row{
    gap:6px !important;
  }

  body.exercise-active .sticky-nav .nav-actions{
    margin:0 !important;
  }

  body.exercise-active .sticky-nav .nav-left{
    grid-template-columns:auto auto !important;
    gap:8px !important;
  }

  body.exercise-active .sticky-nav .menu-toggle,
  body.exercise-active .exit-pass-btn{
    height:34px !important;
    min-height:34px !important;
    padding:0 12px !important;
    border-radius:14px !important;
    font-size:12px !important;
    width:auto !important;
  }

  body.exercise-active #exerciseMeta{
    font-size:12px !important;
    letter-spacing:.01em !important;
  }

  body.exercise-active .stage-layout{
    gap:6px !important;
    padding-bottom:64px !important;
  }

  body.exercise-active .video-card{
    border-left:0 !important;
    border-right:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
  }

  body.exercise-active .video-wrap{
    border-radius:0 !important;
  }

  body.exercise-active .info-card{
    margin:8px 10px 0 !important;
    padding:12px !important;
    gap:8px !important;
    border-radius:22px !important;
  }

  body.exercise-active .exercise-kicker{
    gap:6px !important;
    overflow-x:auto;
    flex-wrap:nowrap !important;
    padding-bottom:1px;
    scrollbar-width:none;
  }

  body.exercise-active .exercise-kicker::-webkit-scrollbar{display:none;}

  body.exercise-active .exercise-kicker .tag{
    min-height:28px !important;
    padding:5px 9px !important;
    font-size:10.5px !important;
    flex:0 0 auto;
  }

  body.exercise-active .exercise-name{
    font-size:clamp(26px,8.2vw,38px) !important;
    line-height:.94 !important;
    letter-spacing:-.065em !important;
  }

  body.exercise-active .exercise-reps{
    min-height:64px !important;
    padding:10px 12px !important;
    border-radius:18px !important;
  }

  body.exercise-active .rx-line{
    font-size:clamp(32px,9.5vw,54px) !important;
    line-height:.95 !important;
  }

  body.exercise-active .set-note{
    padding:9px 11px !important;
    border-radius:16px !important;
    font-size:13px !important;
    line-height:1.24 !important;
  }

  body.exercise-active .coach-cues{
    padding:10px 12px !important;
    border-radius:18px !important;
  }

  body.exercise-active .coach-cues small{
    font-size:10.5px !important;
    letter-spacing:.14em !important;
  }

  body.exercise-active .coach-cues ul{
    margin-top:5px !important;
    padding-left:18px !important;
    font-size:13px !important;
    line-height:1.24 !important;
  }

  body.exercise-active .next-preview{
    padding:10px 12px !important;
    border-radius:18px !important;
    font-size:13px !important;
    line-height:1.2 !important;
  }

  body.exercise-active .next-preview small{
    display:inline !important;
    font-size:10px !important;
    letter-spacing:.13em !important;
    margin-right:4px !important;
  }

  body.exercise-active .pass-bottom-controls{
    left:8px !important;
    right:8px !important;
    bottom:8px !important;
    padding:0 !important;
    gap:8px !important;
    background:transparent !important;
  }

  body.exercise-active .pass-bottom-controls .ghost-btn,
  body.exercise-active .pass-bottom-controls .main-btn{
    height:52px !important;
    min-height:52px !important;
    border-radius:18px !important;
    font-size:15px !important;
    padding:0 12px !important;
  }

  body.exercise-active .pass-bottom-controls .ghost-btn{
    flex:.82 !important;
  }

  body.exercise-active .pass-bottom-controls .main-btn{
    flex:1.18 !important;
  }
}

/* Smaller iPhones */
@media(max-width:430px){
  body.exercise-active .sticky-nav{
    padding:5px 8px 6px !important;
  }

  body.exercise-active .info-card{
    margin:7px 8px 0 !important;
    padding:10px !important;
    gap:7px !important;
  }

  body.exercise-active .exercise-name{
    font-size:clamp(24px,7.6vw,34px) !important;
  }

  body.exercise-active .rx-line{
    font-size:clamp(30px,8.8vw,48px) !important;
  }

  body.exercise-active .set-note{
    font-size:12.5px !important;
  }

  body.exercise-active .coach-cues ul{
    font-size:12.5px !important;
    line-height:1.2 !important;
  }

  body.exercise-active .pass-bottom-controls .ghost-btn,
  body.exercise-active .pass-bottom-controls .main-btn{
    height:48px !important;
    min-height:48px !important;
    font-size:14px !important;
  }
}

/* Landscape phones: avoid chunky controls blocking content */
@media(max-width:900px) and (orientation:landscape){
  body.exercise-active .stage-layout{
    grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr) !important;
    gap:8px !important;
    padding-bottom:56px !important;
  }

  body.exercise-active .info-card{
    margin:0 8px 0 0 !important;
    max-height:calc(100vh - 78px);
    overflow:auto;
  }

  body.exercise-active .pass-bottom-controls{
    left:auto !important;
    width:min(460px,48vw) !important;
  }

  body.exercise-active .pass-bottom-controls .ghost-btn,
  body.exercise-active .pass-bottom-controls .main-btn{
    height:46px !important;
    min-height:46px !important;
  }
}
