.runner-top{position:sticky;top:0;z-index:12;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--bg,#101010);padding:12px 0;border-bottom:1px solid #aa875c44}.runner-top span{display:grid;text-align:center;gap:4px;min-width:0}.runner-top small{max-width:240px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.runner-top button,.runner-dots button{border:1px solid #aa875c66;background:transparent;color:inherit;border-radius:50%;min-width:40px;min-height:40px;cursor:pointer}.runner-dots{display:flex;justify-content:center;flex-wrap:wrap;gap:7px;margin:14px 0}.runner-dots button{min-width:28px;min-height:28px;font-size:12px}.runner-dots button.active{background:#c83c75;color:white;border-color:#c83c75}.runner-exercise h1{font-size:25px;margin:18px 0 10px;line-height:1.25}.runner-media{position:relative;aspect-ratio:1.25;background:#121212;border-radius:18px;overflow:hidden}.runner-media img{width:100%;height:100%;object-fit:contain;display:block}.runner-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;background:#fff;color:#c83c75;border:0;font-size:25px;box-shadow:0 3px 20px #0006;cursor:pointer}.runner-info{position:absolute;bottom:12px;right:12px;width:40px;height:40px;border:1px solid #fff8;border-radius:50%;background:#111b;color:white;font-size:26px;cursor:pointer}.runner-no-media{height:100%;display:grid;place-content:center;text-align:center;color:#d5b665;font:30px 'Permanent Marker',cursive}.runner-no-media small{font:14px sans-serif}.runner-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:16px 0}.runner-actions button{display:grid;gap:7px;justify-items:center;background:transparent;color:inherit;border:1px solid #aa875c44;border-radius:14px;padding:12px 3px;font-size:22px;cursor:pointer;min-height:64px}.runner-actions span{font-size:10px;line-height:1.3}.runner-cue{white-space:pre-line;border-left:3px solid #c83c75;padding:8px 12px}.runner-series{border:1px solid #aa875c44;border-radius:16px;padding:10px;margin:16px 0}.runner-row{display:grid;grid-template-columns:35px minmax(0,1fr) minmax(0,1fr) 36px;gap:8px;align-items:center;padding:10px 0}.runner-rir .runner-row{grid-template-columns:28px minmax(0,1fr) minmax(0,1fr) minmax(0,.65fr) 32px;gap:5px}.runner-row input{width:100%;min-width:0;text-align:center;font-size:17px;padding:12px 3px;margin:0;box-sizing:border-box}.runner-row b{text-align:center}.runner-label{font-size:12px;text-align:center;opacity:.75;padding:8px 0}.runner-row-note{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;font-size:11px;opacity:.85;border-bottom:1px solid #aa875c33;padding:0 0 12px;margin-bottom:4px}.runner-row-note button{background:transparent;border:0;border-bottom:1px solid currentColor;color:inherit;font:inherit;min-height:36px;cursor:pointer}.runner-check{width:34px;height:34px;background:#8883;border:1px solid #8887;border-radius:50%;color:inherit;font-size:21px;padding:0;cursor:pointer}.runner-check.done{background:#c83c75;color:white;border-color:#c83c75}.runner-warm b{color:#c83c75}.runner-notes{margin:18px 0}.runner-notes textarea{width:100%;box-sizing:border-box;margin-top:12px}.runner-bottom{display:flex;gap:12px;justify-content:space-between;margin:22px 0}.runner-bottom button{border-radius:12px;min-height:46px;padding:12px;background:transparent;color:inherit;border:1px solid #aa875c66}.runner-bottom .primary{background:#c83c75;color:white;border:0}.runner-bottom button:disabled{opacity:.3}.runner-saved{text-align:center}.runner-preview-list{display:grid;gap:10px;margin:22px 0}.runner-preview-list button{display:flex;align-items:center;gap:14px;text-align:left;border:1px solid #aa875c44;border-radius:14px;background:transparent;color:inherit;width:100%;padding:10px;cursor:pointer}.runner-preview-list img{width:74px;height:74px;object-fit:cover;border-radius:10px}.runner-preview-list span{display:grid;gap:7px;min-width:0}.runner-preview-list small{font-size:12px;opacity:.75}.runner-session-cover{width:100%;max-height:230px;object-fit:cover;border-radius:15px;margin:10px 0 20px}.runner-overview .primary{width:100%}.runner-finish,.runner-recap{padding:24px 0;display:grid;gap:16px}.runner-finish{text-align:center;min-height:65vh;align-content:center}.runner-trophy{font-size:72px;color:#d5b665;text-align:center}.runner-finish .primary,.runner-recap>.primary{padding:18px;border-radius:30px}.runner-rating{display:grid;gap:10px;margin:16px 0}.runner-replacements{display:grid;gap:8px;max-height:55vh;overflow:auto;margin-top:16px}.runner-replacements button{text-align:left;display:grid;gap:5px;padding:12px}.runner-replacements [hidden]{display:none}.runner-timer[hidden]{display:none!important}.runner-timer{position:fixed;z-index:2000}.runner-timer.minimized{bottom:calc(90px + env(safe-area-inset-bottom));left:16px}.runner-timer.minimized>button{border:3px solid #c83c75;border-radius:50%;width:78px;height:78px;background:#171717;color:#fff;font-size:17px;box-shadow:0 3px 15px #0006;cursor:pointer}.runner-timer.expanded{inset:0;background:#0009;display:flex;align-items:flex-end;justify-content:center}.runner-timer-panel{background:#171717;color:#ead5a6;border-radius:28px 28px 0 0;padding:24px 24px calc(28px + env(safe-area-inset-bottom));max-width:500px;width:100%;max-height:90vh;overflow:auto;box-sizing:border-box;text-align:center;display:grid;gap:14px}.runner-timer-panel h2{margin:6px}.runner-timer-ring{width:220px;height:220px;margin:auto;border-radius:50%;background:conic-gradient(#c83c75 var(--progress),#ffffff18 0);display:grid;place-items:center;position:relative}.runner-timer-ring:before{content:'';position:absolute;inset:7px;border-radius:50%;background:#171717}.runner-timer-ring strong{position:relative;font-size:52px}.runner-timer-panel button{min-height:42px}.runner-timer-panel .secondary{background:transparent;color:inherit;border:1px solid #c83c75;border-radius:20px;padding:12px}.runner-install{display:block;margin:10px auto 18px;min-height:44px;border:1px solid #c83c75;background:transparent;color:inherit;border-radius:24px;padding:10px 22px;cursor:pointer}body:has(.runner-exercise) .shell{overflow-x:hidden}.runner-recap details summary,.runner-notes summary{cursor:pointer;min-height:36px}
.runner-top{height:auto;min-height:64px}.runner-install[hidden]{display:none!important}.runner-active .app>header,.runner-active [data-test-person-banner],.runner-active .runner-install,.runner-active #nav{display:none!important}.runner-active .app{padding-bottom:24px}.runner-active .runner-timer.minimized{bottom:calc(18px + env(safe-area-inset-bottom))}.runner-row input{min-height:44px}.runner-check{min-height:36px}.runner-top button{flex-shrink:0}.runner-top span{max-width:calc(100% - 104px)}
html[data-theme=light] .runner-top{background:#f7f5ef}html[data-theme=light] .runner-timer-panel{background:#f7f5ef;color:#181818}html[data-theme=light] .runner-timer-ring:before{background:#f7f5ef}html[data-theme=light] .runner-check.done{color:white!important}html[data-theme=light] .runner-play{color:#c83c75!important}html[data-theme=light] .runner-info{color:white!important}html[data-theme=light] .runner-no-media{color:#d5b665!important}html[data-theme=light] .runner-dots button.active{color:white!important}
@media(prefers-reduced-motion:reduce){.runner-exercise{scroll-behavior:auto}}

/* V17 — progression, suppression par glissement et notes */
.runner-dots button.completed{background:#d2ac55!important;border-color:#d2ac55!important;color:#16120b!important;font-weight:800}
html[data-theme*="queen"] .runner-dots button.completed,body.theme-queen .runner-dots button.completed,body[data-person="queen"] .runner-dots button.completed{background:#7135a5!important;border-color:#7135a5!important;color:#fff!important}
.runner-row{position:relative}.runner-delete{display:none;position:absolute;right:0;top:0;bottom:0;background:#b52c3c;color:white;border:0;border-radius:8px;padding:0 12px;z-index:2}.runner-row.show-delete .runner-delete{display:block}.runner-note-save{margin-top:10px;min-height:42px;border:0;border-radius:10px;background:#c83c75;color:white;padding:10px 18px}

.runner-back-work{position:fixed;z-index:999999;top:35%;left:50%;transform:translateX(-50%);background:#111;color:#f5c75e;border:2px solid #c8a048;border-radius:18px;padding:25px 22px;font-weight:900;font-size:clamp(23px,7vw,38px);white-space:nowrap;box-shadow:0 10px 40px #000a;pointer-events:none;text-align:center}.runner-notes:not([open]) textarea,.runner-notes:not([open]) .runner-note-save{display:none}

.runner-abandon-link{display:block;width:100%;margin:12px 0 20px;padding:14px;border:1px solid #c83c7588;border-radius:12px;background:transparent;color:inherit;font:inherit;cursor:pointer}
