:root{--graphite: #101412;--graphite-2: #1a201d;--graphite-3: #262e2a;--paper: #f7f8f4;--lime: #b7f05b;--lime-dark: #5f8f12;--grey-1: #e6e8e1;--grey-2: #9aa29c;--grey-3: #5d665f;--warn: #e0a030;--alert: #e5604d;--radius: 16px;--cat-physique: #4c9aff;--cat-basket: #ff8a3d;--cat-recuperation: #a78bfa;--lvl-1: #d64545;--lvl-2: #f08a24;--lvl-3: #e8c21a;--lvl-4: #8fcf5a;--lvl-5: #1f8a45;font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--graphite);color:var(--paper);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}h1,h2,h3,p{margin:0}.muted{color:var(--grey-2);font-size:.9rem}.row{display:flex;align-items:center;gap:10px}.between{justify-content:space-between}.stack{display:flex;flex-direction:column;gap:14px}.btn{background:var(--lime);color:var(--graphite);border:0;border-radius:12px;padding:12px 18px;font-weight:700}.btn.ghost{background:transparent;color:inherit;border:1px solid var(--grey-3)}.btn.block{width:100%;padding:15px;font-size:1rem}.demo-tag{font-size:.6rem;text-transform:uppercase;letter-spacing:.08em;background:#0000002e;padding:2px 6px;border-radius:6px;margin-left:6px;vertical-align:middle}.badge{font-size:.72rem;font-weight:600;padding:3px 9px;border-radius:999px;background:var(--graphite-3);color:var(--grey-1);white-space:nowrap}.badge-lime{background:#b7f05b29;color:var(--lime)}.badge-warn{background:#e0a0302e;color:var(--warn)}.badge-alert{background:#e5604d2e;color:var(--alert)}.dom-physique{--dom: var(--cat-physique)}.dom-basket{--dom: var(--cat-basket)}.dom-recuperation{--dom: var(--cat-recuperation)}.badge-dom{background:color-mix(in srgb,var(--dom) 20%,transparent);color:var(--dom)}.light .badge.badge-dom{background:color-mix(in srgb,var(--dom) 18%,#fff);color:color-mix(in srgb,var(--dom) 60%,#000)}.dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--dom);margin-right:8px;flex:none}.demo-banner{background:var(--lime);color:var(--graphite);font-size:.72rem;font-weight:700;text-align:center;padding:5px 10px;letter-spacing:.02em}.chart{width:100%;height:auto}.chart-val{fill:var(--paper);font-size:9px;font-weight:600}.chart-lab{fill:var(--grey-2);font-size:8px}.landing{min-height:100%;display:flex;flex-direction:column;align-items:center;padding:40px 20px;gap:28px}.brand{font-weight:800;letter-spacing:.14em;font-size:.85rem;color:var(--lime)}.landing h1{font-size:clamp(1.8rem,5vw,3rem);text-align:center;line-height:1.05}.landing-grid{display:grid;gap:18px;width:100%;max-width:860px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.panel{background:var(--graphite-2);border:1px solid var(--graphite-3);border-radius:var(--radius);padding:20px}.choice{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-radius:12px;background:var(--graphite-3)}.choice:hover{outline:1px solid var(--lime)}.phone-stage{min-height:100%;display:flex;justify-content:center;align-items:center;background:radial-gradient(circle at 50% 0,#1d2a22,var(--graphite) 60%)}.phone{width:100%;max-width:430px;height:100dvh;background:var(--graphite);display:flex;flex-direction:column;position:relative;overflow:hidden}@media (min-width: 600px){.phone{height:min(860px,94vh);border-radius:38px;border:8px solid #000;box-shadow:0 30px 80px #0009}}.phone-scroll{flex:1;overflow-y:auto;padding:18px 18px 24px}.tabbar{display:grid;grid-template-columns:repeat(5,1fr);background:var(--graphite-2);border-top:1px solid var(--graphite-3);padding:6px 4px calc(8px + env(safe-area-inset-bottom))}.tab{display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 2px;font-size:.68rem;color:var(--grey-2);border-radius:10px}.tab svg{width:22px;height:22px}.tab.active{color:var(--lime)}.hello h1{font-size:1.6rem}.hero{background:linear-gradient(135deg,var(--lime),#8fd23a);color:var(--graphite);border-radius:22px;padding:20px;display:flex;flex-direction:column;gap:10px}.hero h2{font-size:1.35rem;line-height:1.15}.hero .btn{background:var(--graphite);color:var(--lime)}.hero .badge-dom{background:var(--graphite)}.hero small{opacity:.75;font-weight:600}.card{background:var(--graphite-2);border:1px solid var(--graphite-3);border-radius:var(--radius);padding:16px}.card h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:var(--grey-2);margin-bottom:10px}.progress{height:8px;background:var(--graphite-3);border-radius:999px;overflow:hidden}.progress>i{display:block;height:100%;background:var(--lime);border-radius:999px}.big{font-size:1.9rem;font-weight:800}.screen-title{font-size:1.5rem;margin-bottom:14px}.sess{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px;border-radius:14px;background:var(--graphite-2);border:1px solid var(--graphite-3)}.sess.st-done{border-left:4px solid var(--lime)}.sess.st-partial{border-left:4px solid var(--warn)}.sess.st-missed{border-left:4px solid var(--alert);opacity:.9}.sess.st-postponed{border-style:dashed;border-color:var(--grey-3);opacity:.75}.sess.st-planned{border-left:4px solid var(--grey-3)}.sess.today{border-color:var(--lime)}.week-nav{display:flex;align-items:center;gap:8px}.week-nav>button{background:var(--graphite-3);color:var(--paper);border:0;width:38px;height:38px;border-radius:10px;font-size:1.3rem}.week-nav>button:disabled{opacity:.3}.week-pills{display:flex;gap:6px;flex:1;justify-content:center;overflow-x:auto}.week-pills .pill{border:0;color:var(--paper)}.week-pills .pill.on{color:var(--graphite)}.legend{display:flex;flex-wrap:wrap;gap:12px;font-size:.72rem;color:var(--grey-2);margin-top:6px}.week-title{font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:var(--grey-2);margin:10px 0 2px}.exo{padding:14px;background:var(--graphite-2);border-radius:14px;border:1px solid var(--graphite-3)}.exo h3{font-size:1.02rem;margin-bottom:4px}.exo .meta{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.video-ph{aspect-ratio:16/9;background:var(--graphite-3);border-radius:10px;display:grid;place-items:center;color:var(--grey-2);font-size:.8rem;margin-top:8px}.last{font-size:.82rem;color:var(--lime);margin-top:6px}.seg{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:8px}.seg button,.scale button{background:var(--graphite-3);color:var(--paper);border:1px solid transparent;border-radius:12px;padding:12px 6px}.seg button.on,.scale button.on{border-color:var(--lime);background:#b7f05b24;color:var(--lime);font-weight:700}.scale{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.scale.s11{grid-template-columns:repeat(11,1fr)}.scale.s11 button{padding:10px 0;font-size:.8rem}label.field{display:block;font-size:.85rem;font-weight:600;margin:14px 0 8px}textarea{width:100%;background:var(--graphite-3);color:var(--paper);border:1px solid transparent;border-radius:12px;padding:12px;font:inherit;min-height:70px}.note{font-size:.8rem;color:var(--grey-2);background:var(--graphite-2);border-left:3px solid var(--lime);padding:10px 12px;border-radius:6px}.kv{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--graphite-3);font-size:.92rem}.kv:last-child{border:0}.pill-row{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}.pill{background:var(--graphite-3);padding:7px 13px;border-radius:999px;font-size:.82rem;white-space:nowrap}.pill.on{background:var(--lime);color:var(--graphite);font-weight:700}.back{color:var(--lime);font-weight:600;font-size:.9rem;margin-bottom:10px;display:inline-block}.coach{display:grid;grid-template-columns:250px 1fr;min-height:100%;background:var(--paper);color:var(--graphite)}.coach .muted{color:var(--grey-3)}.side{background:var(--graphite);color:var(--paper);padding:22px 14px;display:flex;flex-direction:column;gap:6px;position:sticky;top:0;height:100vh}.side .brand{padding:0 10px 18px}.nav{display:block;padding:11px 12px;border-radius:10px;color:var(--grey-2);font-weight:600;font-size:.95rem}.nav:hover{background:var(--graphite-2)}.nav.active{background:var(--lime);color:var(--graphite)}.nav.off{opacity:.45}.side-foot{margin-top:auto;font-size:.78rem;color:var(--grey-2);padding:10px}.main{padding:28px 36px 50px;display:flex;flex-direction:column;gap:22px;min-width:0}.main h1{font-size:1.7rem}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px}.light{background:#fff;border:1px solid var(--grey-1);border-radius:14px;padding:18px}.light h3{font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:var(--grey-3);margin-bottom:12px}.light .badge{background:var(--grey-1);color:var(--graphite)}.light .badge-lime{background:#e3f6c4;color:#3c5f08}.light .badge-warn{background:#fbecc9;color:#7a5200}.light .badge-alert{background:#fbd9d3;color:#8a2b1d}.light .kv{border-color:var(--grey-1)}.light .chart-val{fill:var(--graphite)}.light .chart-lab{fill:var(--grey-3)}.light .chart path{stroke:var(--lime-dark)}.light .chart circle{fill:var(--lime-dark)}.cols{display:grid;grid-template-columns:1.4fr 1fr;gap:18px}.list-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--grey-1)}.list-item:last-child{border:0}table.t{width:100%;border-collapse:collapse;font-size:.92rem}table.t th{text-align:left;color:var(--grey-3);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;padding:8px 10px;border-bottom:2px solid var(--grey-1)}table.t td{padding:11px 10px;border-bottom:1px solid var(--grey-1)}table.t tr.click:hover{background:#f0f3ea;cursor:pointer}.coach .btn.ghost{color:var(--graphite);border-color:var(--grey-2)}.coach .demo-tag{background:#0000001f}.tabs{display:flex;gap:6px;border-bottom:1px solid var(--grey-1)}.tabs a{padding:10px 16px;font-weight:600;color:var(--grey-3);border-bottom:3px solid transparent}.tabs a.active{color:var(--graphite);border-color:var(--lime-dark)}.weeks{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.wk{background:#fff;border:1px solid var(--grey-1);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:8px}.wk h4{margin:0;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--grey-3)}.chip{background:var(--paper);border:1px solid var(--grey-1);border-radius:8px;padding:8px;font-size:.82rem}.chip.done{border-left:4px solid var(--lime-dark)}.chip.missed{border-left:4px solid var(--alert)}.chip.partial{border-left:4px solid var(--warn)}.input{border:1px solid var(--grey-1);background:#fff;padding:10px 12px;border-radius:10px;font:inherit;min-width:260px}.login-input{display:block;width:100%;margin-top:6px;background:var(--graphite-3);color:var(--paper);border-color:var(--graphite-3)}.sets{margin-top:10px;display:flex;flex-direction:column;gap:6px}.setrow{display:grid;align-items:center;gap:6px}.c-strength .setrow,.c-bw .setrow{grid-template-columns:34px 1fr 1fr .8fr 42px}.c-iso .setrow{grid-template-columns:34px 1fr 1fr 42px}.c-simple .setrow{grid-template-columns:34px 1fr 42px}.sethead{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--grey-2)}.setno{font-weight:700;display:flex;flex-direction:column;line-height:1.05}.setno small{font-size:.65rem;color:var(--grey-2)}.cell{width:100%;min-width:0;background:var(--graphite-3);color:var(--paper);border:1px solid transparent;border-radius:10px;padding:10px 6px;font:inherit;text-align:center}.cell:focus{outline:none;border-color:var(--lime)}.cell:disabled{opacity:.6}.setcheck{height:42px;border-radius:10px;border:1px solid var(--grey-3);background:transparent;color:var(--grey-2);font-size:1.1rem}.setcheck.on{background:var(--lime);border-color:var(--lime);color:var(--graphite);font-weight:800}.setrow.is-done .setno{color:var(--lime)}.seterr{color:var(--alert);font-size:.78rem;margin:2px 0 4px}.linkbtn{background:none;border:0;color:var(--lime);font-weight:600;padding:8px 0 0;font-size:.85rem}.chip.sel{outline:2px solid var(--lime-dark)}.rx{border:1px solid var(--grey-1);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:10px;background:var(--paper)}.rx-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}.rx-grid label{display:flex;flex-direction:column;gap:4px;font-size:.78rem;font-weight:600;color:var(--grey-3)}.rx-grid .input{min-width:0;width:100%}.rx-check{flex-direction:row!important;align-items:center;gap:8px!important;align-self:end}.filters{display:flex;flex-wrap:wrap;gap:10px}.filters .input{min-width:0}.filters .grow{flex:1 1 280px}.chk{display:flex;align-items:center;gap:8px;font-size:.88rem;cursor:pointer}.kpi-btn{text-align:left;cursor:pointer;font:inherit;color:inherit}.kpi-btn.on{outline:2px solid var(--lime-dark)}.nowrap{white-space:nowrap}table.t tr.sel{background:#e8f3d4}table.t tr.archived td{opacity:.55}.drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#10141273;z-index:40}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(560px,100%);background:#fff;z-index:41;padding:22px;overflow-y:auto;box-shadow:-12px 0 40px #00000040}.fld{display:flex;flex-direction:column;gap:6px;font-size:.82rem;font-weight:600;color:var(--grey-3)}.fld .input{width:100%;min-width:0;font-weight:400;color:var(--graphite)}.chips{display:flex;flex-wrap:wrap;gap:6px}.chips .pill{border:0;cursor:pointer;background:var(--grey-1);color:var(--graphite)}.chips .pill.on{background:var(--lime)}.warn-box{background:#fbecc9;color:#5c3d00;border-radius:10px;padding:12px;font-size:.88rem}.warn-box ul{margin:6px 0;padding-left:18px}.lnk{color:#2a6d12;text-decoration:underline;cursor:pointer}.h3l{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--grey-3);margin-bottom:4px}.drawer .seterr{color:#b3392a}.vp{display:flex;flex-direction:column;gap:8px}.vp-start{width:100%;aspect-ratio:16/9;border:0;border-radius:12px;background:var(--graphite);color:var(--paper);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer;font:inherit}.vp-start.portrait{aspect-ratio:9/14;max-height:460px;width:auto;margin:0 auto;min-width:260px}.vp-play{width:56px;height:56px;border-radius:50%;background:var(--lime);color:var(--graphite);display:grid;place-items:center;font-size:1.4rem}.vp-start small{color:var(--grey-2)}.vp-frame{width:100%;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#000}.vp-frame.portrait{aspect-ratio:9/14;max-height:520px;width:auto;margin:0 auto;min-width:280px}.vp-frame iframe{width:100%;height:100%;border:0}.vp-note{font-size:.82rem;padding:8px 10px;border-radius:8px;background:var(--grey-1);color:var(--graphite)}.vp-note a{color:#2a6d12;font-weight:600}.vp-validee{background:#e3f6c4}.vp-a_verifier,.vp-lien_provisoire{background:#fbecc9}.vp-cassee{background:#fbd9d3}.phone .video-ph,.drawer .video-ph{margin-top:0}.rxline{font-weight:600;color:var(--paper);margin:2px 0 4px}.vp-ext{font-size:.78rem;color:var(--lime);text-align:right}.phone .vp-start{margin-top:6px}.title-input{font-size:1.4rem;font-weight:800;flex:1;border-color:transparent;background:transparent;padding-left:0}.title-input:focus{border-color:var(--grey-2);background:#fff;padding-left:12px}.okmsg{color:var(--lime-dark);font-weight:600}.banner{padding:10px 14px;border-radius:10px;font-size:.9rem}.banner-publie{background:#e3f6c4;color:#234a00}.banner-brouillon{background:#fbecc9;color:#5c3d00}.banner-archive{background:var(--grey-1)}.mini{padding:4px 8px!important;font-size:.78rem!important;min-width:0!important}.newsess{background:var(--paper);border:1px dashed var(--grey-2);border-radius:10px;padding:8px}.drawer.wide{width:min(760px,100%)}.picker{position:fixed;z-index:61;top:6vh;left:50%;transform:translate(-50%);width:min(760px,94vw);max-height:88vh;background:#fff;border-radius:14px;padding:20px;box-shadow:0 20px 60px #0006;display:flex;flex-direction:column;overflow:hidden}.picker-list{overflow-y:auto;display:flex;flex-direction:column;gap:6px}.picker-row{display:flex;justify-content:space-between;align-items:center;gap:10px;text-align:left;background:var(--paper);border:1px solid var(--grey-1);border-radius:10px;padding:10px 12px;font:inherit;color:var(--graphite);cursor:pointer}.picker-row:hover{border-color:var(--lime-dark)}.ctx-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.archived-card{opacity:.6}.weeks{grid-template-columns:repeat(4,minmax(0,1fr))}.lastlink{color:var(--lime);font-weight:600;text-decoration:underline;cursor:pointer}.sessprogress{background:var(--graphite-2);border:1px solid var(--graphite-3);border-radius:14px;padding:12px 14px;position:sticky;top:-18px;z-index:5}.phone .okmsg{color:var(--lime)}a.kv{color:inherit}.setrow .cell{min-height:44px}.jr-fatigue{display:inline-flex;gap:4px}.lvl{display:inline-block;padding:3px 10px;border-radius:999px;font-size:.75rem;font-weight:700;white-space:nowrap;color:#101412}.lvl-1{background:var(--lvl-1);color:#fff}.lvl-2{background:var(--lvl-2)}.lvl-3{background:var(--lvl-3)}.lvl-4{background:var(--lvl-4)}.lvl-5{background:var(--lvl-5);color:#fff}.tlv{display:inline-block;padding:3px 10px;border-radius:8px;font-size:.78rem;font-weight:700;background:var(--graphite-3);color:var(--paper);white-space:nowrap}.tlv-non_evalue{background:transparent;border:1px dashed var(--grey-3);color:var(--grey-2)}.tlv-a_developper{background:#3a3a3a}.tlv-correct{background:#4a5a4a}.tlv-bon{background:#5a7f3a}.tlv-tres_bon{background:#7aa83a;color:#101412}.tlv-elite{background:var(--lime);color:#101412}.light .tlv{color:#101412;background:var(--grey-1)}.light .tlv-non_evalue{background:transparent;color:var(--grey-3);border-color:var(--grey-2)}.light .tlv-a_developper{background:#e4e0dc}.light .tlv-correct{background:#dfe9d3}.light .tlv-bon{background:#cfe5b1}.light .tlv-tres_bon{background:#b6dc84}.light .tlv-elite{background:var(--lime)}.bilan-cell{text-align:center;min-width:110px}.attempt{border:1px solid var(--grey-1);border-radius:12px;padding:12px;background:var(--paper);display:flex;flex-direction:column;gap:8px}.attempt.retained{border-color:var(--lime-dark)}.attempt.invalide{opacity:.6}.note-prov{font-size:.78rem;color:#7a5200}table.pt{width:100%;border-collapse:collapse;font-size:.8rem}table.pt th,table.pt td{padding:8px 6px;text-align:center;border-bottom:1px solid var(--graphite-3)}table.pt th:first-child,table.pt td:first-child{text-align:left}.desktop-only{display:none}@media (max-width: 900px){.coach{grid-template-columns:1fr}.side{position:static;height:auto;flex-direction:row;flex-wrap:wrap}.side-foot{display:none}.cols,.weeks{grid-template-columns:1fr}.main{padding:18px}}.ag-day{display:flex;flex-direction:column;gap:6px}.ag-dayhead{font-weight:700;font-size:.85rem;text-transform:capitalize;margin-top:6px}.ag-item{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%;text-align:left;padding:10px 12px;border-radius:10px;border:0;border-left:5px solid var(--evc, #888);background:#7f7f7f24;color:inherit;font:inherit;cursor:pointer}.ag-detail{padding:10px 12px;margin:4px 0 6px;border-radius:10px;background:#7f7f7f14;font-size:.88rem}.ag-month{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.ag-wd{text-align:center;font-size:.7rem;opacity:.7;text-transform:uppercase}.ag-cell{display:flex;flex-direction:column;align-items:center;justify-content:space-between;min-height:48px;padding:4px 2px;border-radius:8px;border:1px solid rgba(127,127,127,.25);background:transparent;color:inherit;font:inherit;cursor:pointer}.ag-cell.out{opacity:.4}.ag-cell.today{border-color:var(--lime, #c6f432)}.ag-cell.sel{background:#7f7f7f40}.ag-dots{display:flex;gap:2px;flex-wrap:wrap;justify-content:center;min-height:8px}.ag-dots i{width:7px;height:7px;border-radius:50%;display:inline-block}.dash-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px}.dash-item{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--grey-1, #ddd);color:inherit;text-decoration:none}.dash-count{font-size:1.6rem;font-weight:800}
