.exercise-panel{margin:0 0 27px;border:1px solid #dce4d0;background:#f3f6ec;border-radius:12px;padding:20px 22px}
.exercise-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:15px}
.exercise-panel h2{font:24px Georgia,serif;margin:5px 0 0;color:#51633f}
.exercise-panel h2 span{font:11px Arial,sans-serif;color:#869674;margin-left:9px}
.exercise-tools{display:flex;gap:13px;flex-wrap:wrap}
.exercise-tools button,.exercise-edit-tools button{font-size:11px;color:#6c8056;border-bottom:1px solid #c4d2b5;padding:6px 0}
.exercise-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px}
.exercise-item{display:flex;align-items:flex-start;gap:10px;text-align:left;padding:13px 12px;border:1px solid #dce5d0;border-radius:7px;background:#fffef9;color:#6a7c56;min-width:0}
.exercise-item.active{border-color:#93a779;background:#e7eeda;box-shadow:inset 0 0 0 1px #93a779}
.exercise-item.done .exercise-index{background:#6c8158;color:#fff}
.exercise-index{display:grid;place-items:center;flex-shrink:0;width:22px;height:22px;border-radius:50%;background:#edf1e6;font:10px Arial;color:#8b9b77}
.exercise-item strong{display:block;font-size:11px;font-weight:500;line-height:1.55;overflow-wrap:anywhere}
.exercise-item small{display:block;font-size:9px;line-height:1.6;color:#8a997b;margin-top:5px}
.exercise-current{border-top:1px solid #dbe4ce;margin-top:16px;padding-top:15px;display:flex;gap:20px;align-items:center;justify-content:space-between}
.exercise-current>div:first-child{flex:1;min-width:0}.exercise-current strong{font-size:12px;color:#5d7549;font-weight:500}
.exercise-current p,#exercise-empty{font-size:11px;line-height:1.8;color:#7c8e68;margin:7px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}
.exercise-current-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end;max-width:240px}
.exercise-current-actions button{font-size:10px;padding:8px 10px;border:1px solid #cddabb;border-radius:5px;color:#607b48;background:#fffef9}
.exercise-current-actions button[aria-pressed=true]{background:#6d8357;color:white}.exercise-current-actions button:disabled{opacity:.35}
.loop-range .range-save-exercise{display:inline-block;background:none;border:0;border-bottom:1px solid #c9d6b9;border-radius:0;margin:12px 0 0;padding:6px 0;font-size:11px;color:#5d7846}
.exercise-dialog,.feedback-dialog,.welcome-dialog{width:650px;padding:32px}
.lesson-field{display:block;font-size:11px;color:#72835f;margin:14px 0}
.lesson-field input,.lesson-field textarea,.feedback-details textarea{display:block;width:100%;box-sizing:border-box;border:1px solid #d6e0ca;background:#fffef9;color:#516745;border-radius:6px;padding:10px 11px;margin-top:6px;font-family:inherit;font-size:12px;line-height:1.65;resize:vertical;min-width:0}
.exercise-options{display:flex;gap:18px;font-size:11px;color:#7c8c6c;align-items:center}
.exercise-options label{display:flex;gap:6px;align-items:center}
.exercise-edit-tools{display:flex;gap:18px;margin-top:18px}.exercise-edit-tools #exercise-delete{margin-left:auto;color:#9a7057}
.exercise-edit-tools button:disabled{opacity:.35}.exercise-dialog [hidden],.exercise-panel [hidden]{display:none!important}
.lesson-file{display:inline-flex;position:relative;align-items:center;overflow:hidden;cursor:pointer;border:1px solid #c6d4b4;border-radius:6px;padding:12px 15px;color:#657e50;font-size:12px;margin:0 10px 15px 0;background:#f4f7ed}
.lesson-file input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.song-notice{font-size:11px;line-height:1.8;color:#927a4f;background:#f8f3e7;padding:12px 15px;border-radius:7px;margin-bottom:20px}
.welcome-dialog p,.welcome-dialog li{font-size:12px;line-height:1.85;color:#7e8c6d}.welcome-dialog ol{padding-left:20px}.welcome-dialog li{padding:6px 0}
.welcome-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.feedback-details{font-size:11px;color:#7a8c64;margin:18px 0}.feedback-details textarea{font-family:inherit;font-size:10px}
#download-file{display:block;overflow-wrap:anywhere;line-height:1.7} .topbar{height:auto;min-height:73px;padding-top:12px;padding-bottom:12px}
.phrase-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:9px}.phrase-tabs button{flex:0 0 auto;white-space:nowrap}
@media(max-width:720px){
 .topbar{min-height:52px;align-items:flex-start}.topbar .breadcrumbs{width:100%}.topbar .top-actions{margin-left:0;justify-content:flex-start;row-gap:12px}
 .phrase-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:9px}.phrase-tabs button{flex:0 0 auto;white-space:nowrap}
 .exercise-panel{padding:17px 14px;margin-bottom:22px}.exercise-panel-heading{align-items:flex-start;gap:10px}.exercise-panel h2{font-size:22px}.exercise-tools{flex-direction:column;gap:4px;align-items:flex-end}.exercise-tools button{font-size:10px}
 .exercise-list{display:flex;overflow-x:auto;padding-bottom:6px;scroll-snap-type:x proximity}.exercise-item{min-width:195px;max-width:230px;scroll-snap-align:start}.exercise-current{display:block}.exercise-current-actions{max-width:none;justify-content:flex-start;margin-top:12px}
 .exercise-dialog,.feedback-dialog,.welcome-dialog{padding:28px 20px}.lesson-field input,.lesson-field textarea{font-size:16px}.welcome-actions{display:block}.welcome-actions .primary-button{width:100%}.song-notice{font-size:10px}
}
