.mobile-dock{display:none}
@media(max-width:760px){
  body{padding-bottom:82px;background:#07100c}
  .app{padding:10px 10px 22px}
  .top{gap:10px;padding-bottom:10px}
  .brand .mark{width:60px;height:43px}
  .brand strong{font-size:17px;letter-spacing:2px}
  .actions{width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}
  .actions .btn{flex:0 0 auto}
  .grid{display:flex;flex-direction:column;margin-top:10px}
  .side{display:none}
  .main{order:1;padding:14px}
  .right{order:2;display:grid;grid-template-columns:1fr}
  .right .coach{display:none}
  .main h1{font-size:27px;line-height:1.05;margin-top:7px}
  .readiness-banner{margin:12px 0}
  .exercise-visual{width:min(270px,82vw);margin:14px auto}
  .stats{gap:6px}
  .stat{padding:10px 8px}
  .stat strong{font-size:15px}
  .sets{overflow-x:auto;margin-top:12px}
  .set{min-width:350px;grid-template-columns:26px minmax(88px,1fr) minmax(88px,1fr) 56px 38px;gap:5px}
  .field{padding:10px 5px}
  .nav{margin-bottom:6px}
  .nav .btn{font-size:8px;padding:9px 8px}
  .complete{display:none}
  .timer-face{text-align:center}
  .timer-actions{grid-template-columns:repeat(3,1fr)}
  .mobile-dock{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);left:0;right:0;bottom:0;z-index:30;padding:7px max(7px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(7px,env(safe-area-inset-left));background:#09140ef2;border-top:1px solid #31583e;backdrop-filter:blur(12px)}
  .mobile-dock button{display:grid;place-items:center;gap:2px;min-height:54px;border:0;background:transparent;color:#c7d3cb;font-weight:900}
  .mobile-dock button span{font-size:22px;line-height:1}
  .mobile-dock button small{font-size:7px;letter-spacing:.6px}
  .mobile-dock .mobile-done{width:58px;height:58px;min-height:58px;justify-self:center;border-radius:50%;background:var(--green);color:#061009;transform:translateY(-12px);box-shadow:0 5px 22px #75f08d44}
  .mobile-mic{color:var(--green)}
  .dialog{width:100%;max-height:calc(100dvh - 16px);margin:auto;padding:18px}
  body:has(.modal.on) .mobile-dock{display:none}
  .modal{z-index:100;padding:8px;place-items:stretch}
  .dialog .modal-actions{position:sticky;bottom:-18px;z-index:3;margin:14px -18px -18px;padding:12px 18px calc(12px + env(safe-area-inset-bottom));background:#0c1711f5;border-top:1px solid var(--line);backdrop-filter:blur(10px)}
  .ai-prompt,.ai-response{min-height:30dvh;max-height:38dvh}
}
@media(display-mode:standalone){#installBtn{display:none!important}}
