.effort-indicator{margin-top:10px;color:var(--muted,#62706a);font-size:12px}
.workout-card.completed-block{background:#f0f2f1;border-color:#c8ceca;box-shadow:none}
.workout-card.completed-block .type-chip,.workout-card.completed-block .status-dot{background:#e0e5e1;color:#4d5b52}
.workout-card.completed-block .progress{accent-color:#78877d}
.completed-block-label{color:#4d5b52;font-size:13px;font-weight:700;margin:10px 0}
.effort-indicator>div:first-child{display:flex;justify-content:space-between;gap:12px}
.effort-indicator strong{font-size:12px;color:#a14423}
.effort-track{height:8px;background:#e2e8e2;border-radius:8px;overflow:hidden;margin-top:7px;width:100%}
.effort-track .effort-fill{display:block;width:0;height:100%;border-radius:8px;transition:width .25s ease;min-width:0;background:#87968d}
.effort-level-0 .effort-fill{width:0%;background:#87968d}
.effort-level-1 .effort-fill{width:25%;background:#548268}
.effort-level-2 .effort-fill{width:50%;background:#a2842f}
.effort-level-3 .effort-fill{width:75%;background:#bf702e}
.effort-level-4 .effort-fill{width:100%;background:#b44938}
@media(prefers-reduced-motion:reduce){.effort-track .effort-fill{transition:none}}
.weekly-effort{border-top:1px solid var(--line,#dde3de);padding-top:15px;margin-top:18px}
.weekly-effort small{display:block;margin-top:8px;line-height:1.5}
.weekly-cardio{border-top:1px solid var(--line,#dde3de);margin-top:20px;padding-top:16px}
.weekly-cardio .section-heading{gap:12px;flex-wrap:wrap}.weekly-cardio h3{margin:0 0 6px}
.weekly-cardio p{font-size:13px}.weekly-cardio small{display:block;margin-top:8px}
.ask-trainer-host{position:fixed;z-index:190;right:16px;bottom:calc(18px + env(safe-area-inset-bottom,0px));font-family:inherit}
.ask-trainer-bubble{display:block;margin-left:auto;border:1px solid #42524a;border-radius:999px;height:48px;width:auto;min-width:82px;max-width:calc(100vw - 32px);padding:0 16px;background:#14251d;color:white;font:inherit;font-size:14px;font-weight:700;white-space:nowrap;box-shadow:0 3px 14px #0002;cursor:pointer}
.ask-trainer-bubble:focus-visible{outline:3px solid #548268;outline-offset:3px}
.ask-panel{position:absolute;right:0;bottom:60px;width:360px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 115px - env(safe-area-inset-bottom,0px));overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--line,#ddd);border-radius:16px;background:var(--white,#fff);color:var(--ink,#14251d);box-shadow:0 12px 40px #0004;padding:16px}
.ask-panel header,.coach-question header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.ask-panel h2{font-size:20px;margin:0}.ask-panel p{font-size:13px;line-height:1.55}.ask-panel label{display:grid;gap:5px;margin:12px 0;font-size:13px}.ask-panel textarea,.ask-panel select{font:inherit;font-size:16px;max-width:100%;width:100%;padding:10px;border:1px solid #b8c3bb;border-radius:8px;box-sizing:border-box}.ask-panel button{min-height:44px}
.ask-panel .ask-ai-notice{background:#fff4dc;border:1px solid #dfbd72;border-radius:8px;padding:10px;color:#392a15}.ask-panel .ask-ai-notice strong{display:block;margin-bottom:4px}
.coach-question{padding:14px 0;border-top:1px solid var(--line,#ddd);overflow-wrap:anywhere}.coach-question p{white-space:pre-wrap}.coach-question small{font-size:11px;line-height:1.5;color:var(--muted,#55635d)}.overnight-answer{background:#f5f3e9;border-radius:8px;padding:10px}
.trainer-question-reply{background:#edf6ee;border-left:3px solid #548268;border-radius:8px;padding:12px;margin:12px 0}.trainer-question-reply p{margin:8px 0 0}.coach-reply-form{display:grid;gap:10px;margin-top:12px}.coach-reply-form label{display:grid;gap:6px}.coach-reply-form textarea{box-sizing:border-box;width:100%;min-height:90px;padding:10px;border:1px solid #b8c3bb;border-radius:8px;font:inherit;font-size:16px;resize:vertical}.coach-reply-form button{justify-self:start;min-height:44px}.coach-reply-form .form-help{margin:0;font-size:12px}
body.has-ask-trainer .overlay-content,body.has-ask-trainer .program-dialog{padding-bottom:90px}body.has-ask-trainer .app-shell{padding-bottom:80px}body.has-ask-trainer .toast{bottom:calc(80px + env(safe-area-inset-bottom,0px))}
@media(max-width:520px){.ask-trainer-host{right:12px}.ask-panel{max-width:calc(100vw - 24px)}}
