.quick-help { margin:0 0 22px; padding:18px 22px; border:1px solid #c9cfb9; background:#edf0e4; }
.quick-help-title { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:13px; }
.quick-help-title b { color:#587151; font-size:13px; font-weight:500; }
.quick-help-title button, .help-trigger { font-size:11px; color:#78866c; text-decoration:underline; text-underline-offset:3px; }
.help-trigger { display:block; margin:0 0 20px; }
.quick-help ol { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding:0; margin:0; list-style:none; gap:22px; }
.quick-help li b { font-size:12px; font-weight:500; color:#61755a; }
.quick-help li p { font-size:12px; color:#7d856f; line-height:1.9; margin-top:6px; }
.count-help { font-size:11px; color:#8a8b78; line-height:1.8; margin-top:12px; }
.audio-picker { display:flex; align-items:center; flex-wrap:wrap; gap:10px; width:100%; }
.audio-picker .upload-button { font-size:11px; }
.file-picker { position:relative; display:inline-flex; align-items:center; overflow:hidden; cursor:pointer; border:1px solid #bdc7af; }
.file-picker:focus-within { outline:3px solid var(--blue); outline-offset:3px; }
.file-picker input { position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:pointer; }
#audio-filename { font-size:11px; color:#7a846c; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; max-width:280px; }
#bpm-form { display:flex; align-items:center; gap:8px; margin-left:auto; flex-wrap:wrap; }
#bpm-form label { font-size:11px; color:#78846a; }
#bpm-form small { font-size:9px; }
#bpm-input { width:78px; padding:8px; border:1px solid #bcc7ac; background:#fbfcf2; color:#4f694e; font:14px var(--mono); border-radius:3px; }
.audio-help { width:100%; font-size:12px; color:#7d876f; line-height:1.9; }
.sound-studio .audio-controls { margin-left:0; }
.sound-studio { gap:17px; }
body.jelly-on .sound-studio { transform:none !important; animation:none !important; }
@media(max-width:720px) {
  .quick-help { padding:16px; }
  .quick-help ol { grid-template-columns:1fr; gap:12px; }
  .quick-help-title { gap:8px; }
  .quick-help-title b { font-size:12px; }
  #audio-filename { max-width:130px; font-size:10px; }
  #bpm-form { margin-left:0; width:100%; }
  #bpm-form label { flex:1; }
  .audio-picker { gap:8px; }
  .sound-studio .audio-picker .upload-button { padding:10px; font-size:10px; }
  .camera-controls button { padding-left:5px; padding-right:5px; }
}
