:root{
  --black:#070707;--black2:#111;--panel:#171717;--panel2:#232323;--yellow:#e8e500;--yellow-2:#f5f36a;--yellow-grad:linear-gradient(180deg,#7b7600 0%,#b8b000 38%,#d8d200 68%,#e8e500 100%);
  --paper:#f4f4f1;--white:#fff;--ink:#151515;--muted:#73736f;--line:#deded8;
  --green:#45a960;--orange:#d9962d;--red:#cf4d4d;
  --shadow:0 18px 48px rgba(0,0,0,.12);--shadow-soft:0 9px 28px rgba(0,0,0,.075);--radius:16px;--radius-sm:11px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{margin:0;min-height:100%;background:
  radial-gradient(circle at 86% -5%,rgba(232,229,0,.08),transparent 24rem),
  linear-gradient(180deg,#f7f7f4 0,#efefec 100%);color:var(--ink);font-family:'Montserrat',Arial,Helvetica,sans-serif}
button,input,select,textarea{font:inherit}
a{color:inherit}

/* Identité : même univers que Coaching Success / Leader Impactant */
.brandbar{min-height:154px;padding:0 clamp(20px,4.4vw,72px);display:flex;align-items:center;justify-content:space-between;gap:30px;color:#fff;border-bottom:1px solid rgba(232,229,0,.9);position:relative;overflow:hidden;background:
  radial-gradient(circle at 13% 50%,rgba(255,255,255,.07),transparent 25%),
  repeating-linear-gradient(102deg,rgba(255,255,255,.018) 0 1px,transparent 1px 5px),
  linear-gradient(95deg,#050505 0,#111 50%,#050505 100%)}
.brandbar:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,transparent,var(--yellow) 30%,var(--yellow) 70%,transparent);opacity:.55}
.brand-identity{display:flex;align-items:center;gap:22px;min-width:0;position:relative;z-index:1}
.brand-person{width:142px;height:153px;align-self:flex-end;overflow:hidden;flex:0 0 auto;filter:drop-shadow(0 6px 18px rgba(0,0,0,.25))}
.brand-person img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;mix-blend-mode:screen}
.brandmark{min-width:0}
.brand-title{font-family:'Cinzel',Georgia,'Times New Roman',serif;letter-spacing:1.5px;color:var(--yellow);font-size:clamp(26px,2.8vw,43px);line-height:1.05;text-shadow:0 0 28px rgba(232,229,0,.08)}
.brand-sub{font-family:'Cinzel',Georgia,'Times New Roman',serif;font-size:clamp(19px,2vw,31px);letter-spacing:.7px;text-align:center;line-height:1.15;margin-top:4px;color:#f7f7f2}
.brand-byline{margin-top:9px;font-size:9px;font-weight:600;letter-spacing:1.4px;color:#9c9c97;text-align:center}
.brand-promise{color:var(--yellow);font-size:18px;line-height:1.45;text-align:center;font-weight:500;position:relative;z-index:1}.brand-promise span{color:var(--yellow)}
.mode-switch{display:grid;grid-template-columns:auto 1fr;gap:7px 9px;align-items:center;min-width:225px;position:relative;z-index:1}
.mode-switch label{font-size:10px;color:#8f8f8a;text-transform:uppercase;letter-spacing:1.4px;font-weight:700}
.mode-switch select{grid-column:2;background:rgba(31,31,31,.88);color:#fff;border:1px solid #454541;border-radius:10px;padding:9px 11px;outline:none;box-shadow:inset 0 1px rgba(255,255,255,.03)}
.mode-switch select:focus{border-color:var(--yellow);box-shadow:0 0 0 3px rgba(232,229,0,.08)}
.mode-switch #clientSelect{grid-column:1/-1}

/* Navigation - Montserrat */
.mainnav{position:sticky;top:0;z-index:30;display:flex;gap:0;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none;padding:0 clamp(12px,4vw,55px);background:rgba(16,16,16,.96);backdrop-filter:blur(16px);box-shadow:0 10px 28px rgba(0,0,0,.18);border-bottom:1px solid #2f2f2d}
.mainnav::-webkit-scrollbar{display:none}
.mainnav button{white-space:nowrap;border:0;background:transparent;color:#d6d6d1;padding:17px 18px;font-family:'Montserrat',Arial,sans-serif;font-size:12px;font-weight:600;letter-spacing:.55px;text-transform:uppercase;cursor:pointer;border-bottom:2px solid transparent;transition:.2s ease;position:relative}
.mainnav button:hover{color:#fff;background:rgba(255,255,255,.035)}
.mainnav button.active{color:var(--yellow);border-bottom-color:var(--yellow);background:linear-gradient(180deg,rgba(232,229,0,.055),transparent)}

main{max-width:1460px;margin:0 auto;padding:38px clamp(16px,4vw,50px) 86px}
.page-title{font-family:'Cinzel',Georgia,serif;font-weight:500;font-size:34px;line-height:1.15;margin:0 0 8px;letter-spacing:.1px}
.page-intro{margin:0 0 28px;color:#6d6d68;line-height:1.65;font-size:14px}

.hero{position:relative;overflow:hidden;background:
  radial-gradient(circle at 88% 20%,rgba(232,229,0,.16),transparent 28%),
  repeating-linear-gradient(105deg,rgba(255,255,255,.018) 0 1px,transparent 1px 5px),
  linear-gradient(120deg,#080808,#171717);color:white;padding:30px 34px;border:1px solid #252522;border-left:4px solid var(--yellow);border-radius:var(--radius);box-shadow:0 22px 55px rgba(0,0,0,.18);margin-bottom:28px}
.hero:after{content:"";position:absolute;width:180px;height:180px;border:1px solid rgba(232,229,0,.08);border-radius:50%;right:-55px;top:-70px;box-shadow:0 0 0 22px rgba(232,229,0,.025),0 0 0 45px rgba(232,229,0,.015)}
.hero-kicker{color:var(--yellow);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.35px;position:relative;z-index:1}
.hero h1{font-family:'Cinzel',Georgia,serif;font-weight:500;margin:8px 0 8px;font-size:clamp(27px,3vw,38px);position:relative;z-index:1}
.hero p{color:#d2d2cc;margin:0;line-height:1.7;max-width:820px;font-size:14px;position:relative;z-index:1}

.grid{display:grid;gap:18px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.card{background:rgba(255,255,255,.92);border:1px solid rgba(28,28,26,.09);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:21px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.card:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:rgba(232,229,0,.38)}
.card.dark{background:linear-gradient(145deg,#111,#1a1a1a);color:white;border-color:#292927;box-shadow:0 18px 42px rgba(0,0,0,.16)}
.card h2,.card h3{font-family:'Cinzel',Georgia,serif;font-weight:500}.card h3{line-height:1.35}
.stat{font-size:35px;font-weight:800;letter-spacing:-1.2px}.stat-label{color:#777;font-size:10px;text-transform:uppercase;letter-spacing:1px;font-weight:700}.dark .stat-label{color:#aaa}.yellow{color:var(--yellow)}

.actions-list{display:grid;gap:12px}
.action-card{display:grid;grid-template-columns:84px 1fr auto;gap:16px;align-items:center;background:rgba(255,255,255,.94);border:1px solid rgba(25,25,23,.09);border-left:4px solid #202020;border-radius:14px;padding:14px 16px;cursor:pointer;box-shadow:var(--shadow-soft);transition:.2s ease}
.action-card:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:rgba(232,229,0,.35)}
.action-card.done{border-left-color:var(--green)}.action-card.missed{border-left-color:var(--red)}
.action-card .datebox{text-align:center;border-right:1px solid #e1e1dc;padding-right:13px}.datebox b{font-size:24px;display:block;font-weight:800}.datebox span{font-size:10px;text-transform:uppercase;color:#777;font-weight:700;letter-spacing:.7px}
.action-type{font-size:9.5px;color:#8a8a85;text-transform:uppercase;letter-spacing:1.05px;font-weight:700}.action-name{font-size:16px;font-weight:700;margin-top:4px;line-height:1.35}
.status-pill{display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;padding:7px 10px;border-radius:100px;background:#eee;white-space:nowrap;letter-spacing:.35px}.status-pill.done{background:#dcf1e2;color:#1f7135}.status-pill.missed{background:#f7dddd;color:#9d2e2e}.status-pill.todo{background:#f3f1bf;color:#696600}

.btn{border:1px solid #222;background:#171717;color:white;padding:11px 15px;border-radius:10px;cursor:pointer;font-family:'Montserrat',Arial,sans-serif;font-size:12px;font-weight:700;letter-spacing:.25px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:7px;transition:transform .16s ease,filter .16s ease,box-shadow .16s ease}.btn:hover{filter:brightness(1.12);transform:translateY(-1px)}.btn.yellow{background:linear-gradient(180deg,var(--yellow-2),var(--yellow));border-color:var(--yellow);color:#090909;box-shadow:0 8px 20px rgba(232,229,0,.15)}.btn.ghost{background:transparent;color:#222;border-color:#bdbdb8}.btn.danger{background:#8f2626}.btn.small{font-size:10px;padding:8px 10px;border-radius:8px}
.toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 18px}.toolbar input,.toolbar select{padding:10px;border:1px solid #bbb;background:white;border-radius:9px}.spacer{flex:1}

.daystrip{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:27px}.daycol{background:rgba(255,255,255,.93);border:1px solid rgba(25,25,23,.09);border-top:4px solid #1a1a1a;border-radius:14px;min-height:176px;padding:16px;box-shadow:var(--shadow-soft)}.daycol.today{border-top-color:var(--yellow);box-shadow:0 12px 34px rgba(0,0,0,.08),inset 0 0 0 1px rgba(232,229,0,.08)}.daycol h3{font-family:'Cinzel',Georgia,serif;font-weight:500;margin:0 0 12px;font-size:18px}.mini-action{padding:11px 12px;border:1px solid #e1e1db;background:linear-gradient(180deg,#fff,#f9f9f6);border-radius:10px;margin:8px 0;cursor:pointer;transition:.16s ease}.mini-action:hover{border-color:#c9c600;transform:translateX(2px)}.mini-action b{display:block;font-size:13px}.mini-action small{color:#777;font-size:10px}

.protocol{white-space:pre-line;line-height:1.72;background:#fff;border:1px solid #e0e0da;border-radius:14px;padding:23px;box-shadow:var(--shadow-soft);font-size:14px}.session-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.session-head h1{font-family:'Cinzel',Georgia,serif;font-weight:500;margin:0;font-size:31px}.session-mentor-note{margin:12px 0 18px;padding:11px 13px;border-radius:10px;background:#f6f4c5;border:1px solid #e3df6e;font-size:12px;color:#595600}
.exercise{display:grid;grid-template-columns:92px 1fr auto;gap:16px;border:1px solid #deded8;background:#fff;padding:12px;margin-top:12px;align-items:center;border-radius:13px;box-shadow:0 6px 18px rgba(0,0,0,.045)}
.exercise-thumb{height:72px;border-radius:10px;background:radial-gradient(circle at 35% 30%,#444,#111);color:var(--yellow);display:grid;place-items:center;font-size:25px;cursor:pointer;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}.exercise h4{margin:0 0 6px;font-size:13px}.exercise-meta{display:flex;gap:18px;color:#666;font-size:11px;flex-wrap:wrap}.exercise-note{font-size:12px;color:#555;margin-top:7px;line-height:1.45}
.completion-box{margin-top:22px;background:linear-gradient(145deg,#0d0d0d,#1b1b1b);color:#fff;padding:24px;border:1px solid #292925;border-top:3px solid var(--yellow);border-radius:14px;box-shadow:0 16px 38px rgba(0,0,0,.15)}
.feedback-track{height:12px;border-radius:30px;background:linear-gradient(90deg,var(--red) 0 33.333%,var(--orange) 33.333% 66.666%,var(--green) 66.666% 100%);position:relative;margin:24px 8px 7px;box-shadow:inset 0 1px 3px rgba(0,0,0,.24)}.feedback-track input{width:100%;position:absolute;left:0;top:-9px;height:30px;cursor:pointer;appearance:none;background:transparent}.feedback-track input::-webkit-slider-runnable-track{height:12px;background:transparent}.feedback-track input::-webkit-slider-thumb{appearance:none;width:25px;height:25px;border-radius:50%;background:#fff;border:5px solid #181818;box-shadow:0 2px 8px rgba(0,0,0,.3);margin-top:-7px}.feedback-track input::-moz-range-thumb{width:17px;height:17px;border-radius:50%;background:#fff;border:5px solid #181818;box-shadow:0 2px 8px rgba(0,0,0,.3)}
.feedback-labels{display:flex;justify-content:space-between;font-size:9px;color:#aaa;font-weight:700;letter-spacing:.4px}.feedback-value{font-weight:700;color:var(--yellow);margin-top:9px;font-size:12px}

.field{display:grid;gap:6px;margin:12px 0}.field label{font-size:10px;font-weight:800;text-transform:uppercase;color:#666;letter-spacing:.55px}.field input,.field select,.field textarea{width:100%;padding:11px 12px;border:1px solid #c8c8c2;border-radius:10px;background:white;outline:none;transition:.15s ease}.field input:focus,.field select:focus,.field textarea:focus{border-color:#a9a700;box-shadow:0 0 0 3px rgba(232,229,0,.1)}.dark .field label{color:#aaa}.dark .field input,.dark .field select,.dark .field textarea{background:#242424;color:#fff;border-color:#4a4a4a}

.modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:18px}.hidden{display:none!important}.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.69);backdrop-filter:blur(5px)}.modal-card{position:relative;z-index:1;width:min(920px,96vw);max-height:92vh;overflow:auto;background:linear-gradient(180deg,#fbfbf8,#f2f2ef);border:1px solid rgba(255,255,255,.25);border-radius:20px;box-shadow:0 28px 90px rgba(0,0,0,.46);padding:29px}.modal-close{position:absolute;right:14px;top:10px;width:38px;height:38px;border:0;border-radius:50%;background:#ecece7;font-size:28px;line-height:1;color:#6d6d68;cursor:pointer;z-index:3}.video-wrap{aspect-ratio:16/9;background:#000;margin:10px 0 18px;border-radius:13px;overflow:hidden;box-shadow:0 12px 30px rgba(0,0,0,.16)}.video-wrap iframe{width:100%;height:100%;border:0}.toast{position:fixed;right:22px;bottom:22px;z-index:200;background:#111;color:white;border:1px solid #353531;border-left:4px solid var(--yellow);border-radius:11px;padding:14px 18px;box-shadow:var(--shadow);max-width:360px;font-size:12px}

.calendar-shell{overflow:auto;border-radius:16px;box-shadow:var(--shadow-soft);border:1px solid #dfdfd9;background:#fff}
.calendar{display:grid;grid-template-columns:repeat(7,minmax(138px,1fr));background:#fff;min-width:980px}.cal-day{min-height:146px;border-right:1px solid #e2e2dc;border-bottom:1px solid #e2e2dc;padding:9px;background:linear-gradient(180deg,#fff,#fbfbf8)}.cal-day .num{font-size:18px;font-weight:800;margin-bottom:7px}.cal-item{font-size:10px;padding:8px 8px;background:#f0f0ec;margin:5px 0;border-left:3px solid #333;border-radius:7px;cursor:pointer;line-height:1.3;transition:.15s ease}.cal-item:hover{transform:translateX(2px);box-shadow:0 5px 13px rgba(0,0,0,.07)}.cal-item.session{border-left-color:#202020}.cal-item.capsule{border-left-color:#a6a000;background:#fffed9}.cal-item.done{opacity:.55}.cal-head{background:#171717;color:#fff;padding:11px;text-align:center;font-size:10px;font-weight:700;letter-spacing:.6px;text-transform:uppercase}.date-picker-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.date-choice{display:block;border:1px solid #ddd;padding:9px;text-align:center;border-radius:9px;background:#fff;cursor:pointer}.date-choice:has(input:checked){border-color:#a9a600;background:#fffdd0}.date-choice input{display:block;margin:0 auto 5px}
.coach-action-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0}.coach-action-meta>div{background:#fff;border:1px solid #dfdfd9;border-radius:11px;padding:12px}.coach-action-meta small{display:block;color:#888;text-transform:uppercase;font-size:9px;font-weight:700;letter-spacing:.5px;margin-bottom:4px}

.table-wrap{overflow:auto;background:white;border:1px solid #deded8;border-radius:14px;box-shadow:var(--shadow-soft)}table{border-collapse:collapse;width:100%;min-width:720px}th,td{text-align:left;padding:13px;border-bottom:1px solid #e7e7e2;vertical-align:top;font-size:12px}th{font-size:9px;text-transform:uppercase;background:#f1f1ee;color:#686864;letter-spacing:.65px}.risk{font-weight:800}.risk.high{color:var(--red)}.risk.medium{color:#a66e00}.risk.low{color:#26773a}
.resource-card{background:rgba(255,255,255,.94);border:1px solid #deded8;border-radius:var(--radius);padding:20px;position:relative;box-shadow:var(--shadow-soft);transition:.18s ease}.resource-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.resource-card.locked{filter:grayscale(.85);opacity:.58}.resource-type{color:#777;font-size:9px;text-transform:uppercase;font-weight:700;letter-spacing:.7px}.resource-card h3{margin:8px 0;font-family:'Cinzel',Georgia,serif;font-weight:500}.lock{position:absolute;right:15px;top:15px}
.metric-tabs{display:flex;gap:8px;flex-wrap:wrap}.metric-tab{border:1px solid #c5c5c0;background:white;padding:9px 11px;border-radius:9px;cursor:pointer;font-size:11px;font-weight:700}.metric-tab.active{background:#161616;color:var(--yellow);border-color:#161616}canvas.chart{width:100%;height:320px;border:1px solid #e1e1dc;background:white;border-radius:12px}.metric-value-row{display:flex;gap:10px;align-items:end}.metric-value-row .field{flex:1}.digest-client{border-left:4px solid #ccc;background:#fff;padding:14px;margin:10px 0;border-radius:0 11px 11px 0}.digest-client.alert{border-left-color:var(--red)}.digest-client.good{border-left-color:var(--green)}.digest-client h4{margin:0 0 6px}.muted{color:#777}.micro{font-size:11px}.separator{height:1px;background:#ddd;margin:20px 0}.empty{color:#888;padding:30px;text-align:center;border:1px dashed #c9c9c3;border-radius:12px;background:rgba(255,255,255,.7)}
.print-only{display:none}

@media(max-width:1050px){
  .brand-promise{display:none}.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .brandbar{min-height:112px;padding:0 12px 0 8px;gap:8px;align-items:center}
  .brand-identity{gap:9px;flex:1;min-width:0}.brand-person{width:82px;height:110px}.brandmark{min-width:0}
  .brand-title{font-size:18px;letter-spacing:.45px;white-space:nowrap}.brand-sub{font-size:12px;text-align:left;letter-spacing:.4px;margin-top:3px}.brand-byline{font-size:6.5px;text-align:left;letter-spacing:.5px;white-space:nowrap;margin-top:5px}
  .mode-switch{min-width:102px;display:flex;flex-direction:column;gap:5px;align-items:stretch}.mode-switch label{display:none}.mode-switch select{grid-column:auto;width:100%;max-width:120px;font-size:9px;padding:7px 8px;border-radius:8px}.mode-switch #clientSelect{grid-column:auto}
  .mainnav{padding:0 4px}.mainnav button{padding:13px 11px;font-size:9.5px;letter-spacing:.2px;flex:0 0 auto}
  main{padding:24px 11px 72px}.hero{padding:22px 19px;border-radius:14px}.hero h1{font-size:25px}.hero p{font-size:12px}.page-title{font-size:26px}.page-intro{font-size:12px;margin-bottom:20px}
  .grid-4,.grid-3,.grid-2{grid-template-columns:1fr}.daystrip{grid-template-columns:1fr;gap:11px}.daycol{min-height:auto}.toolbar{align-items:stretch}.toolbar>.spacer{display:none}.toolbar>.btn{flex:1}
  .action-card{grid-template-columns:50px minmax(0,1fr) auto;gap:10px;padding:11px 10px;border-radius:12px}.action-card .datebox{padding-right:8px}.datebox b{font-size:20px}.action-name{font-size:13px}.status-pill{font-size:8px;padding:6px 7px}
  .session-head{display:block;padding-right:24px}.session-head h1{font-size:25px}.session-head .toolbar{margin-top:13px;display:grid;grid-template-columns:1fr 1fr}.session-head .toolbar .btn{width:100%;font-size:9px;padding:10px 7px}
  .protocol{padding:17px;font-size:12px}.exercise{grid-template-columns:70px minmax(0,1fr);gap:10px;padding:10px}.exercise-thumb{height:64px}.exercise .btn{grid-column:1/-1;width:100%}.exercise h4{font-size:11px}.exercise-meta{gap:8px;font-size:9px}.exercise-note{font-size:10px}.completion-box{padding:18px}
  .calendar-shell{border-radius:12px}.calendar{grid-template-columns:repeat(7,minmax(120px,1fr));min-width:840px}.cal-day{min-height:125px}.cal-item{font-size:9px}
  .coach-action-meta{grid-template-columns:1fr}.date-picker-grid{grid-template-columns:repeat(4,1fr)}
  .modal{padding:6px}.modal-card{width:100%;max-height:96vh;border-radius:15px;padding:23px 12px 20px}.modal-close{right:9px;top:8px}
  canvas.chart{height:260px}.metric-value-row{display:block}.metric-value-row .btn{width:100%}
  .card:hover,.resource-card:hover,.action-card:hover{transform:none}
}
@media(max-width:390px){
  .brand-person{width:70px}.brand-title{font-size:15px}.brand-sub{font-size:10px}.brand-byline{display:none}.mode-switch{min-width:92px}.mode-switch select{font-size:8px}
  .mainnav button{font-size:8.7px;padding:12px 9px}.page-title{font-size:23px}.hero h1{font-size:22px}.date-picker-grid{grid-template-columns:repeat(3,1fr)}
}

@media print{
  @page{size:A4;margin:12mm}
  body{background:#fff!important;font-family:'Montserrat',Arial,sans-serif;color:#111}
  body>header,body>nav,body>main,.toast,.modal-backdrop,.modal-close,.no-print,.completion-box .field,.completion-box .btn{display:none!important}
  .modal{display:block!important;position:static!important;padding:0!important}
  .modal-card{display:block!important;position:static!important;width:100%!important;max-height:none!important;overflow:visible!important;background:#fff!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important}
  .print-only{display:block!important;font-family:'Cinzel',Georgia,serif;color:#111;border-bottom:2px solid #111;padding-bottom:10px;margin-bottom:12px}
  .session-head{border-bottom:1px solid #bbb;padding-bottom:12px}.session-head h1{font-size:23px}.protocol,.exercise{box-shadow:none!important;break-inside:avoid;border-color:#bbb;border-radius:0}.protocol{font-size:11px}.exercise{grid-template-columns:58px 1fr;padding:8px}.exercise-thumb{height:48px;background:#eee!important;color:#111!important;border-radius:0}.exercise .btn{display:none!important}.session-mentor-note{display:none!important}
}

/* Calendrier Mentor : vue mobile native, sans débordement horizontal */
.mobile-daylabel{display:none}
@media(max-width:760px){
  html,body{max-width:100%;overflow-x:hidden}
  main{width:100%;max-width:100%;overflow-x:hidden}
  .calendar-shell{width:100%;max-width:100%;overflow:visible;border:0;background:transparent;box-shadow:none;border-radius:0}
  .calendar{display:block;width:100%;min-width:0!important;background:transparent}
  .calendar .cal-head,.calendar .cal-blank{display:none}
  .calendar .cal-day{position:relative;width:100%;min-height:0;margin:0 0 10px;padding:12px 52px 12px 12px;border:1px solid #deded8;border-radius:13px;background:linear-gradient(180deg,#fff,#f8f8f4);box-shadow:0 6px 18px rgba(0,0,0,.055)}
  .calendar .cal-day .num{margin:0 0 9px;font-size:13px;line-height:1.2;font-weight:800;text-transform:capitalize;color:#1a1a18}
  .calendar .desktop-daynum{display:none}
  .calendar .mobile-daylabel{display:inline}
  .calendar .cal-item{width:100%;margin:6px 0;padding:10px 11px;font-size:11px;line-height:1.35;border-radius:9px;white-space:normal;overflow-wrap:anywhere}
  .calendar .cal-item b{display:inline;font-size:11px}
  .calendar .cal-add{position:absolute;right:10px;top:9px;width:34px;height:34px;min-width:34px;padding:0;display:grid;place-items:center;border-radius:10px;font-size:16px}
}

/* V1.4 — repères de navigation clairs dans les vues détail */
.detail-context{
  position:sticky;top:-29px;z-index:12;
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;
  margin:-29px -29px 24px;padding:18px 58px 17px 22px;
  color:#fff;border-bottom:1px solid rgba(232,229,0,.35);
  background:
    radial-gradient(circle at 88% 25%,rgba(232,229,0,.12),transparent 12rem),
    repeating-linear-gradient(105deg,rgba(255,255,255,.016) 0 1px,transparent 1px 5px),
    linear-gradient(115deg,#090909,#171717 70%,#0b0b0b);
  box-shadow:0 13px 30px rgba(0,0,0,.17)
}
.detail-context:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,var(--yellow),rgba(232,229,0,.12) 70%,transparent)}
.detail-back{align-self:center;border:1px solid #4c4c48;background:rgba(255,255,255,.04);color:#fff;border-radius:10px;padding:9px 11px;cursor:pointer;font:700 10px 'Montserrat',Arial,sans-serif;text-transform:uppercase;letter-spacing:.35px;white-space:nowrap;transition:.15s ease}
.detail-back:hover{border-color:var(--yellow);color:var(--yellow);background:rgba(232,229,0,.055)}
.detail-context-copy{min-width:0}
.detail-breadcrumb{font:700 8.5px 'Montserrat',Arial,sans-serif;letter-spacing:1px;color:var(--yellow);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:5px}
.detail-context-title{font:600 22px 'Cinzel',Georgia,serif;line-height:1.12;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff}
.detail-context-subtitle{font:500 10px 'Montserrat',Arial,sans-serif;color:#aaa;margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.detail-context-badge{align-self:center;padding:7px 9px;border:1px solid rgba(232,229,0,.55);background:rgba(232,229,0,.07);color:var(--yellow);border-radius:100px;font:800 8px 'Montserrat',Arial,sans-serif;letter-spacing:.8px;white-space:nowrap}
.detail-body{position:relative}
.section-eyebrow{font:800 8.5px 'Montserrat',Arial,sans-serif;color:#999;letter-spacing:1px;text-transform:uppercase;margin-bottom:6px}
.protocol .section-eyebrow{color:#85857f}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:26px 0 8px}
.section-heading h2{margin:0;font:500 24px 'Cinzel',Georgia,serif}
.section-count{font:700 9px 'Montserrat',Arial,sans-serif;color:#777;text-transform:uppercase;letter-spacing:.4px}

@media(max-width:760px){
  .modal{padding:0;place-items:stretch}
  .modal-card{height:100dvh;max-height:100dvh;width:100%;border-radius:0;border:0;padding:0 12px 24px;overscroll-behavior:contain}
  .modal-close{display:none}
  .detail-context{top:0;margin:0 -12px 19px;padding:13px 12px calc(13px + env(safe-area-inset-top));grid-template-columns:auto minmax(0,1fr);gap:10px;box-shadow:0 8px 22px rgba(0,0,0,.2)}
  .detail-context-badge{display:none}
  .detail-back{width:39px;height:39px;padding:0;border-radius:11px;font-size:19px;line-height:1}
  .detail-back span{display:none}
  .detail-breadcrumb{font-size:7.5px;letter-spacing:.7px;margin-bottom:3px}
  .detail-context-title{font-family:'Montserrat',Arial,sans-serif;font-size:15px;font-weight:800;letter-spacing:-.15px}
  .detail-context-subtitle{font-size:8.5px;margin-top:3px}
  .session-page.detail-body,.detail-body{padding:0 2px}
  .session-head{margin-top:3px;padding-right:0}.session-head h1{font-size:22px}
  .section-heading{margin-top:22px}.section-heading h2{font-size:21px}
  .protocol{border-left:3px solid var(--yellow)}
}

@media print{
  .detail-context{display:none!important}
  .detail-body{padding:0!important}
}

/* V1.6 — Le calendrier devient l'accueil client */
.client-calendar-head{display:flex;align-items:flex-end;gap:20px;justify-content:space-between;margin:4px 0 22px}.client-calendar-head .page-title{margin:4px 0 5px}.client-calendar-tools{display:flex;gap:8px;flex-wrap:wrap}.client-primary-calendar{margin-bottom:10px}.client-primary-calendar .daycol{position:relative;overflow:hidden}.client-primary-calendar .daycol.today:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--yellow)}.client-day-label{font-size:10px;letter-spacing:.14em;font-weight:800;color:#8a8a84;margin-bottom:5px}.daycol.today .client-day-label{color:#9f9d00}.client-primary-calendar .mini-action{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 13px}.client-primary-calendar .mini-action.done{opacity:.68}.client-primary-calendar .mini-action.missed{border-color:#e6b9b4}.mini-action-arrow{font-size:27px;line-height:1;color:#a7a700;font-weight:300}.no-action{padding:12px 3px}.client-calendar-footnote{text-align:center;color:#8a8a84;font-size:10px;margin:10px 0 24px}
@media(max-width:720px){.client-calendar-head{align-items:stretch;flex-direction:column;margin-bottom:14px}.client-calendar-head .hero-kicker{font-size:10px}.client-calendar-head .page-title{font-size:27px;line-height:1.06}.client-calendar-head .page-intro{font-size:12px;margin-bottom:0}.client-calendar-tools{display:grid;grid-template-columns:1fr auto}.client-calendar-tools .btn{min-height:42px}.client-primary-calendar{gap:9px}.client-primary-calendar .daycol{padding:14px 13px;border-radius:13px}.client-primary-calendar .daycol h3{font-size:16px;margin-bottom:9px}.client-primary-calendar .mini-action{min-height:58px;margin:7px 0;border-radius:11px}.client-primary-calendar .mini-action b{font-size:13px}.client-primary-calendar .mini-action small{font-size:10px;margin-top:2px;display:block}}


/* V1.7 — accueil client comme écran principal */
.client-home-hero{
  display:flex;align-items:flex-end;justify-content:space-between;gap:22px;
  padding:26px 28px;margin:4px 0 24px;border-radius:18px;color:#fff;overflow:hidden;position:relative;
  background:
    radial-gradient(circle at 82% 18%,rgba(232,229,0,.14),transparent 27%),
    linear-gradient(135deg,#111210 0%,#1b1c19 52%,#0e0f0d 100%);
  border:1px solid rgba(232,229,0,.18);box-shadow:0 18px 46px rgba(0,0,0,.18)
}
.client-home-hero:after{
  content:"";position:absolute;right:-30px;bottom:-70px;width:190px;height:190px;border-radius:50%;
  border:1px solid rgba(232,229,0,.09);box-shadow:0 0 0 25px rgba(232,229,0,.025)
}
.client-home-hero>div,.client-home-hero>.btn{position:relative;z-index:1}
.client-home-hero h1{font-family:'Cinzel',Georgia,serif;font-size:clamp(27px,4vw,40px);font-weight:500;margin:6px 0 7px}
.client-home-hero p{margin:0;color:#d8d8d0;font-size:13px}
.client-home-add{white-space:nowrap}
.client-home-section{margin:0 0 28px}
.home-heading{margin-bottom:12px}
.home-heading h2{margin:2px 0 0;font-size:24px}
.home-count{
  min-width:34px;height:34px;border-radius:50%;display:grid;place-items:center;
  background:#171815;color:var(--yellow);font-weight:800;font-size:13px;border:1px solid rgba(232,229,0,.25)
}
.today-done-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.done-item{
  appearance:none;width:100%;border:1px solid #e0e0da;background:linear-gradient(180deg,#fff,#f8f8f4);
  border-radius:13px;padding:13px 14px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;
  text-align:left;color:#181916;font-family:'Montserrat',Arial,sans-serif;box-shadow:var(--shadow-soft)
}
button.done-item{cursor:pointer}
button.done-item:hover{border-color:#c7c500;transform:translateY(-1px)}
.done-item b{display:block;font-size:13px}
.done-item small{display:block;color:#797973;font-size:10px;margin-top:3px;line-height:1.4}
.done-check{
  width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#171815;color:var(--yellow);font-weight:900
}
.free-activity .done-check{background:#eeeee8;color:#6f7000}
.done-arrow{font-size:24px;color:#9b9a00}
.home-secondary-add{
  width:100%;margin-top:10px;min-height:44px;border:1px dashed #bcbcaf;background:rgba(255,255,255,.58);
  border-radius:12px;color:#4f504a;font-family:'Montserrat',Arial,sans-serif;font-weight:700;cursor:pointer
}
.home-secondary-add:hover{border-color:#9d9c00;color:#5e5d00;background:#fff}
.upcoming-compact{margin-bottom:12px}
.upcoming-days{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.upcoming-day{
  background:rgba(255,255,255,.88);border:1px solid rgba(25,25,23,.1);border-radius:14px;padding:14px;
  box-shadow:var(--shadow-soft)
}
.upcoming-date{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:8px}
.upcoming-date span{font-size:9px;font-weight:800;letter-spacing:.12em;color:#96968f}
.upcoming-date b{font-family:'Cinzel',Georgia,serif;font-size:14px;font-weight:500}
.upcoming-action{
  appearance:none;width:100%;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:8px;
  border:0;border-top:1px solid #ecece5;background:transparent;padding:10px 0;text-align:left;cursor:pointer;
  font-family:'Montserrat',Arial,sans-serif;color:#171815
}
.upcoming-action span{font-size:12px;font-weight:700}
.upcoming-action small{font-size:9px;color:#888880}
.upcoming-action strong{font-size:20px;color:#a1a000}
.compact-empty{padding:16px}

@media(max-width:720px){
  .client-home-hero{padding:20px 17px 18px;margin-top:0;border-radius:15px;align-items:stretch;flex-direction:column;gap:16px}
  .client-home-hero h1{font-size:27px;line-height:1.05}
  .client-home-hero p{font-size:12px}
  .client-home-add{width:100%;min-height:45px}
  .client-home-section{margin-bottom:24px}
  .home-heading h2{font-size:21px}
  .today-done-grid{grid-template-columns:1fr}
  .done-item{min-height:61px;padding:12px}
  .done-item b{font-size:13px}
  .upcoming-days{grid-template-columns:1fr}
  .upcoming-day{padding:12px 13px}
  .upcoming-action{min-height:45px}
}


/* V1.8 — repère visuel des séances */
.modal-card.session-frame{
  border:1.5px solid rgba(232,229,0,.55);
  box-shadow:0 28px 90px rgba(0,0,0,.46),0 0 0 1px rgba(232,229,0,.08),0 0 24px rgba(232,229,0,.08);
}
.modal-card.session-frame .modal-close{
  color:var(--yellow);
  border:1px solid rgba(232,229,0,.45);
  background:rgba(232,229,0,.08);
  box-shadow:0 6px 16px rgba(0,0,0,.10);
}
.modal-card.session-frame .modal-close:hover{
  background:rgba(232,229,0,.16);
  color:#a3a100;
  transform:translateY(-1px);
}
@media(max-width:720px){
  .modal-card.session-frame{border-left:3px solid rgba(232,229,0,.72)}
}


/* V1.10 — actions du jour directement pilotables côté Mentor */
.coach-today-section{
  margin-top:26px;
  padding:22px;
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(248,248,244,.94));
  border:1px solid rgba(25,25,23,.10);
  box-shadow:var(--shadow-soft);
}
.coach-today-heading{align-items:flex-end;margin-bottom:14px}
.coach-today-heading .page-intro{margin:5px 0 0}
.coach-today-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.coach-today-action{
  appearance:none;width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;
  border:1px solid #dfdfd8;background:#fff;border-radius:13px;padding:13px 14px;text-align:left;
  font-family:'Montserrat',Arial,sans-serif;color:#171815;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.045);
  transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;
}
.coach-today-action:hover{transform:translateY(-1px);border-color:rgba(169,166,0,.62);box-shadow:0 10px 24px rgba(0,0,0,.075)}
.coach-today-action.done{background:linear-gradient(180deg,#fff,#fafaf6)}
.coach-today-action.missed{border-color:rgba(150,45,45,.24)}
.coach-today-status{
  width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#181916;color:var(--yellow);font-weight:900;
}
.coach-today-action.missed .coach-today-status{background:#5a2222;color:#fff}
.coach-today-main{min-width:0}
.coach-today-main b{display:block;font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:#77776f;margin-bottom:3px}
.coach-today-main strong{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.coach-today-main small{display:block;color:#85857e;font-size:9.5px;margin-top:4px;line-height:1.35}
.coach-today-main em{display:block;color:#55564f;font-size:10px;font-style:normal;margin-top:6px;line-height:1.45}
.coach-today-arrow{font-size:25px;color:#9f9d00}

@media(max-width:720px){
  .coach-today-section{padding:15px 12px;border-radius:15px}
  .coach-today-heading{display:block}
  .coach-today-heading .btn{width:100%;margin-top:12px;min-height:45px}
  .coach-today-list{grid-template-columns:1fr}
  .coach-today-action{min-height:68px;padding:12px}
}


/* V1.11 — calendrier Mentor sur 3 mois */
.mentor-three-months{display:grid;gap:28px}
.mentor-month{scroll-margin-top:18px}
.mentor-month-title{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin:0 0 10px;padding:0 3px;
}
.mentor-month-title span{
  font-family:'Cinzel',Georgia,serif;font-size:24px;font-weight:500;text-transform:capitalize;color:#171815;
}
.mentor-month-title small{
  font-family:'Montserrat',Arial,sans-serif;font-size:9px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#8a8a82;
}
@media(max-width:760px){
  .mentor-three-months{gap:30px}
  .mentor-month-title{
    position:sticky;top:0;z-index:8;
    margin:0 -11px 10px;padding:12px 13px;
    background:rgba(245,245,240,.96);
    border-top:1px solid #e1e1da;border-bottom:1px solid #d8d8d1;
    backdrop-filter:blur(8px);
  }
  .mentor-month-title span{font-family:'Montserrat',Arial,sans-serif;font-size:16px;font-weight:800}
  .mentor-month-title small{font-size:8px}
}


/* V1.12 — calendrier Mentor par blocs de 3 mois + horizon annuel */
.mentor-calendar-top{
  display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:16px
}
.mentor-calendar-title .page-title{margin-bottom:5px}
.mentor-calendar-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}

.quarter-navigator{
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;
  padding:13px 14px;margin:0 0 10px;border-radius:16px;
  background:linear-gradient(135deg,#111210,#1a1b18);border:1px solid rgba(232,229,0,.20);
  box-shadow:0 14px 34px rgba(0,0,0,.14)
}
.quarter-arrow{
  width:46px;height:46px;border-radius:13px;border:1px solid rgba(232,229,0,.42);
  background:rgba(232,229,0,.06);color:var(--yellow);font:500 32px/1 'Montserrat',Arial,sans-serif;
  cursor:pointer;transition:.15s ease
}
.quarter-arrow:hover:not(:disabled){background:rgba(232,229,0,.14);transform:translateY(-1px)}
.quarter-arrow:disabled{opacity:.23;cursor:not-allowed}
.quarter-center{min-width:0}
.quarter-position{
  text-align:center;color:#fff;font:700 11px 'Montserrat',Arial,sans-serif;letter-spacing:.04em;margin-bottom:9px
}
.quarter-pills{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
.quarter-pill{
  min-height:36px;border:1px solid #40403c;border-radius:9px;background:#22231f;color:#bdbdb5;
  font:700 10px 'Montserrat',Arial,sans-serif;cursor:pointer;white-space:nowrap
}
.quarter-pill span{
  display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;margin-right:5px;background:#343530;color:#aaa;font-size:8px
}
.quarter-pill.active{border-color:rgba(232,229,0,.72);background:rgba(232,229,0,.10);color:var(--yellow)}
.quarter-pill.active span{background:var(--yellow);color:#171815}

.year-horizon-strip{
  display:flex;align-items:center;gap:14px;padding:10px 12px;margin-bottom:24px;border:1px solid #dfdfd8;
  border-radius:13px;background:rgba(255,255,255,.78);box-shadow:var(--shadow-soft)
}
.year-horizon-now{font:800 9px 'Montserrat',Arial,sans-serif;color:#6f7069;text-transform:uppercase;white-space:nowrap}
.year-horizon-months{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:4px;flex:1}
.year-horizon-months button{
  border:0;border-radius:7px;background:#efefe9;color:#76766f;padding:6px 2px;
  font:700 9px 'Montserrat',Arial,sans-serif;cursor:pointer;text-transform:capitalize
}
.year-horizon-months button small{display:block;font-size:7px;color:#aaa;margin-top:2px}
.year-horizon-months button.visible{background:#1b1c19;color:var(--yellow)}
.year-horizon-months button.visible small{color:#9b9b91}

.annual-plan-modal h2{margin:5px 0 7px;font-family:'Cinzel',Georgia,serif;font-weight:500;font-size:28px}
.annual-plan-fields{margin-top:18px}
.annual-plan-preview{
  margin:5px 0 16px;padding:14px;border-radius:12px;background:#171815;color:#fff;border:1px solid rgba(232,229,0,.22);
  font:500 11px 'Montserrat',Arial,sans-serif
}
.annual-plan-preview b{color:var(--yellow)}
.annual-plan-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.annual-plan-tags span{padding:6px 8px;border-radius:100px;background:#292a25;border:1px solid #3d3e38;color:#d4d4cc;font-size:9px}
.annual-plan-empty{color:#b8b8b0}
.annual-plan-cta{width:100%;min-height:48px}

@media(max-width:760px){
  .mentor-calendar-top{display:block}
  .mentor-calendar-actions{display:grid;grid-template-columns:1fr 1fr;margin-top:12px}
  .mentor-calendar-actions .btn{width:100%;padding-left:8px;padding-right:8px}
  .quarter-navigator{grid-template-columns:auto 1fr auto;gap:7px;padding:10px 8px;border-radius:14px}
  .quarter-arrow{width:39px;height:42px;border-radius:10px;font-size:27px}
  .quarter-position{font-size:9px;margin-bottom:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .quarter-pills{grid-template-columns:repeat(4,1fr);gap:4px}
  .quarter-pill{min-width:0;min-height:33px;font-size:8px;padding:3px 2px}
  .quarter-pill span{display:none}
  .year-horizon-strip{display:block;padding:10px;margin-bottom:18px;overflow:hidden}
  .year-horizon-now{display:block;margin-bottom:7px}
  .year-horizon-months{display:flex;gap:5px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}
  .year-horizon-months::-webkit-scrollbar{display:none}
  .year-horizon-months button{min-width:52px;padding:7px 5px}
  .annual-plan-modal h2{font-size:23px}
  .annual-plan-fields{grid-template-columns:1fr}
}


/* V1.13 — badge de build pour vérifier immédiatement la version active */
.build-badge{
  margin-left:auto;
  padding:6px 9px;
  border:1px solid rgba(232,229,0,.5);
  background:rgba(232,229,0,.08);
  color:var(--yellow);
  border-radius:999px;
  font:800 8px 'Montserrat',Arial,sans-serif;
  letter-spacing:.08em;
  white-space:nowrap;
}
@media(max-width:760px){
  .build-badge{
    position:absolute;
    top:7px;
    right:8px;
    z-index:20;
    padding:4px 7px;
    font-size:7px;
  }
}


/* V1.15 — feedback tricolore renforcé */
.feedback-field{margin-top:18px}
.feedback-presets{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:12px 0 4px}
.feedback-preset{min-height:38px;border-radius:9px;border:1px solid transparent;background:#2a2a27;color:#d7d7d0;font:800 9px 'Montserrat',Arial,sans-serif;letter-spacing:.04em;cursor:pointer;transition:.15s ease}
.feedback-preset span{font-size:14px;vertical-align:-1px;margin-right:4px}
.feedback-preset.bad span{color:var(--red)}.feedback-preset.medium span{color:var(--orange)}.feedback-preset.good span{color:var(--green)}
.feedback-preset.bad.active{border-color:var(--red);background:rgba(207,77,77,.18);color:#fff}
.feedback-preset.medium.active{border-color:var(--orange);background:rgba(217,150,45,.18);color:#fff}
.feedback-preset.good.active{border-color:var(--green);background:rgba(69,169,96,.18);color:#fff}
.feedback-track.tricolor{height:14px;border:2px solid rgba(255,255,255,.24);box-shadow:inset 0 1px 4px rgba(0,0,0,.35),0 0 0 1px rgba(0,0,0,.12)}
.feedback-track.tricolor:before,.feedback-track.tricolor:after{content:"";position:absolute;top:-2px;bottom:-2px;width:2px;background:rgba(255,255,255,.65);pointer-events:none}
.feedback-track.tricolor:before{left:33.333%}.feedback-track.tricolor:after{left:66.666%}
.feedback-value{display:inline-flex;margin-top:10px;padding:7px 10px;border-radius:8px;border:1px solid currentColor}
.feedback-value.feedback-bad{color:#ff7777;background:rgba(207,77,77,.08)}
.feedback-value.feedback-medium{color:#f0b556;background:rgba(217,150,45,.08)}
.feedback-value.feedback-good{color:#6fd38a;background:rgba(69,169,96,.08)}

/* V1.15 — modèles Mentor */
.models-toolbar{align-items:flex-end}.models-section-head{display:flex;align-items:center;justify-content:space-between;margin:18px 0 10px}.models-section-head.second{margin-top:34px}.models-section-head h2{margin:2px 0 0;font-size:22px}
.model-card{display:flex;flex-direction:column;min-height:220px}.model-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.model-kind{display:inline-flex;padding:5px 8px;border-radius:999px;background:#171815;color:#fff;font:800 8px 'Montserrat',Arial,sans-serif;letter-spacing:.08em}
.model-kind.session{border:1px solid rgba(232,229,0,.35);color:var(--yellow)}.model-kind.capsule{background:#f2f1c6;color:#646300;border:1px solid #dedb77}
.model-count{font:700 9px 'Montserrat',Arial,sans-serif;color:#8b8b84}.model-protocol-preview{flex:1;line-height:1.55}
.model-card-actions{display:grid;grid-template-columns:auto auto 1fr;gap:6px;margin-top:13px}.model-card-actions .btn{width:100%}
.model-main-btn{border-color:rgba(232,229,0,.75)!important;color:#4b4a00!important;background:linear-gradient(180deg,#ffffd5,#f7f6a3)!important;font-weight:900!important}

/* Sélecteur modèle calendrier */
.model-picker-modal h2{font-family:'Cinzel',Georgia,serif;font-size:28px;font-weight:500;margin:5px 0 8px}
.model-pick-preview{min-height:104px;margin:8px 0 15px;padding:15px;border-radius:13px;background:linear-gradient(135deg,#161715,#22231f);color:#fff;border:1px solid rgba(232,229,0,.20)}
.model-pick-preview h3{margin:5px 0 6px;color:#fff}.model-pick-preview p{margin:0 0 5px;color:#d0d0c8}
.model-preview-kind{font:900 8px 'Montserrat',Arial,sans-serif;color:var(--yellow);letter-spacing:.1em}.model-preview-kind.capsule{color:#dedb52}
.model-picker-actions{display:grid;grid-template-columns:auto 1fr;gap:8px}.model-picker-actions .btn{min-height:45px}

/* Créateur de modèle séance */
.session-model-editor h2{font-family:'Cinzel',Georgia,serif;font-size:28px;font-weight:500;margin:5px 0 7px}
.model-checkbox{display:flex;align-items:center;gap:8px;font:700 11px 'Montserrat',Arial,sans-serif;margin:15px 0}
.exercise-builder-title{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:24px 0 10px}.exercise-builder-title h3{margin:2px 0 0;font-size:21px}
.exercise-builder-row{border:1px solid #d8d8d1;border-left:3px solid rgba(232,229,0,.72);border-radius:13px;padding:14px;margin:10px 0;background:#fff;box-shadow:0 7px 20px rgba(0,0,0,.045)}
.exercise-builder-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px}.exercise-builder-head b{font-size:11px;text-transform:uppercase;letter-spacing:.05em}
.exercise-remove{width:30px;height:30px;border-radius:50%;border:1px solid rgba(232,229,0,.45);background:#181916;color:var(--yellow);font-size:21px;line-height:1;cursor:pointer}
.model-save-main{width:100%;min-height:48px;margin-top:16px}

@media(max-width:760px){
  .feedback-presets{gap:4px}.feedback-preset{font-size:7.5px;padding:5px 3px}
  .models-toolbar{display:block}.models-toolbar>.btn{width:100%;margin-top:6px}
  .model-card-actions{grid-template-columns:1fr 1fr}.model-card-actions .yellow{grid-column:1/-1}
  .model-picker-modal h2,.session-model-editor h2{font-size:23px}.model-picker-actions{grid-template-columns:1fr}
  .exercise-builder-title{align-items:stretch;flex-direction:column}.exercise-builder-title .btn{width:100%}.exercise-builder-grid{grid-template-columns:1fr}
}


/* V1.16 — validation uniquement le jour prévu + édition le jour même */
.completion-confirmed{
  display:flex;align-items:center;gap:11px;margin:20px 0 10px;padding:12px 14px;
  border:1px solid rgba(69,169,96,.36);background:rgba(69,169,96,.08);border-radius:12px
}
.completion-confirmed>span{
  width:31px;height:31px;display:grid;place-items:center;border-radius:50%;
  background:var(--green);color:#fff;font-weight:900
}
.completion-confirmed b{display:block;font-size:12px}
.completion-confirmed small{display:block;margin-top:2px;color:#6f706a;font-size:9px}
.session-feedback-editor.editing{
  border-color:rgba(232,229,0,.55);
  box-shadow:0 10px 28px rgba(0,0,0,.07),0 0 0 1px rgba(232,229,0,.06)
}
.session-feedback-editor-head{
  display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:5px
}
.session-feedback-editor-head h3{margin:2px 0 0}
.edit-deadline{
  display:inline-flex;padding:6px 9px;border-radius:999px;background:#171815;color:var(--yellow);
  border:1px solid rgba(232,229,0,.32);font:800 8px 'Montserrat',Arial,sans-serif;white-space:nowrap
}
.edit-info{
  margin:8px 0 14px;padding:10px 11px;border-radius:9px;background:#fffedc;border:1px solid #e5e286;
  color:#5f5d20;font-size:10px;line-height:1.5
}
.session-date-lock{
  display:flex;gap:10px;align-items:flex-start;margin-top:15px;padding:11px 12px;border-radius:10px;
  background:#f0f0eb;border:1px solid #d7d7cf;color:#55564f
}
.session-date-lock b{display:block;font:800 10px 'Montserrat',Arial,sans-serif;text-transform:uppercase;letter-spacing:.035em}
.session-date-lock span{display:block;margin-top:3px;font:500 10px 'Montserrat',Arial,sans-serif;line-height:1.5;color:#77776f}
.session-date-lock.main-lock{
  margin-top:20px;padding:16px;background:linear-gradient(180deg,#f7f7f3,#ecece7);border-left:3px solid #b6b500
}
.lock-symbol{
  flex:0 0 auto;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;
  background:#191a17;color:var(--yellow);font-size:18px
}
.locked-completion .session-date-lock{margin-bottom:0}

@media(max-width:720px){
  .session-feedback-editor-head{display:block}
  .edit-deadline{margin-top:8px}
  .session-date-lock.main-lock{padding:13px}
}


/* V1.17 — navigation mobile fixe en bas, style app/Spotify */
.mainnav button .nav-ico{
  display:none;
}

@media(max-width:760px){
  body{
    padding-bottom:calc(94px + env(safe-area-inset-bottom));
  }
  main{
    padding-bottom:calc(108px + env(safe-area-inset-bottom));
  }
  .brandbar{
    position:sticky;
    top:0;
    z-index:31;
  }
  .mainnav{
    position:fixed;
    top:auto;
    bottom:0;
    left:0;
    right:0;
    z-index:35;
    display:grid;
    grid-template-columns:repeat(var(--nav-count), minmax(0,1fr));
    gap:7px;
    align-items:stretch;
    padding:9px 10px calc(10px + env(safe-area-inset-bottom));
    background:rgba(8,8,8,.97);
    backdrop-filter:blur(18px);
    border-top:1px solid rgba(232,229,0,.11);
    border-bottom:0;
    box-shadow:0 -12px 35px rgba(0,0,0,.22);
    overflow:visible;
  }
  .mainnav button{
    min-width:0;
    min-height:64px;
    padding:7px 4px 8px;
    border-radius:16px;
    border:1px solid rgba(255,255,255,.06);
    background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.015));
    color:#d7d7d1;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:5px;
    text-transform:none;
    letter-spacing:0;
    font-size:8.5px;
    font-weight:700;
    line-height:1.08;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
    white-space:normal;
    border-bottom:1px solid rgba(255,255,255,.06);
  }
  .mainnav button .nav-ico{
    display:grid;
    place-items:center;
    width:26px;
    height:26px;
    border-radius:9px;
    background:rgba(255,255,255,.055);
    color:#f1f1eb;
    font-size:16px;
    font-weight:700;
  }
  .mainnav button .nav-label{
    display:block;
    max-width:100%;
    text-align:center;
  }
  .mainnav button:hover{
    background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));
    color:#fff;
  }
  .mainnav button.active{
    color:#191915;
    background:linear-gradient(180deg,#f8f69f,#e8e500);
    border-color:rgba(232,229,0,.85);
    box-shadow:0 10px 24px rgba(0,0,0,.16);
  }
  .mainnav button.active .nav-ico{
    background:#191915;
    color:var(--yellow);
  }
  .mainnav button.active .nav-label{
    color:#191915;
    font-weight:800;
  }

  /* 6 onglets mentor : on garde lisibilité maximale */
  .mainnav[data-mode="coach"]{
    gap:6px;
    padding-left:7px;
    padding-right:7px;
  }
  .mainnav[data-mode="coach"] button{
    min-height:62px;
    padding-left:2px;
    padding-right:2px;
    font-size:7.4px;
  }
  .mainnav[data-mode="coach"] button .nav-ico{
    width:24px;
    height:24px;
    font-size:14px;
  }
}

@media(max-width:390px){
  body{padding-bottom:calc(92px + env(safe-area-inset-bottom));}
  main{padding-bottom:calc(104px + env(safe-area-inset-bottom));}
  .mainnav{
    gap:5px;
    padding:8px 7px calc(9px + env(safe-area-inset-bottom));
  }
  .mainnav button{
    min-height:60px;
    border-radius:14px;
    font-size:7.2px;
  }
  .mainnav button .nav-ico{
    width:23px;
    height:23px;
    font-size:13px;
  }
  .mainnav[data-mode="coach"] button{
    font-size:6.8px;
  }
}

/* Sur desktop on garde la nav haute plus classique */
@media(min-width:761px){
  .mainnav button .nav-ico{
    display:none;
  }
  .mainnav button .nav-label{
    display:inline;
  }
}


/* V1.18 — identité client mobile plus premium, claire et cohérente */
.brand-identity-centered{align-items:center;gap:16px}
.brandmark-vertical{display:flex;flex-direction:column;align-items:flex-start}
.winged-lion-mark{display:flex;align-items:center;justify-content:center;gap:6px;min-width:104px;height:62px;position:relative;filter:drop-shadow(0 6px 16px rgba(0,0,0,.14))}
.winged-lion-mark .wing{width:34px;height:24px;display:block;position:relative;background:linear-gradient(180deg,#fffbd4 0%,#f5df72 33%,#d6b33b 70%,#ae8517 100%);clip-path:polygon(0 52%,45% 18%,100% 0,82% 40%,100% 42%,80% 60%,100% 100%,45% 82%);opacity:.95}
.winged-lion-mark .wing.left{transform:scaleX(-1) translateY(1px)}
.winged-lion-mark .lion-core{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#fff9c8 0%,#f0d65b 42%,#bb931f 82%,#8b6808 100%);color:#3f2f00;font-size:18px;font-weight:800;box-shadow:0 0 0 2px rgba(232,229,0,.16), inset 0 1px 3px rgba(255,255,255,.35)}
.brand-greeting{margin-top:8px;font-size:11px;font-weight:800;letter-spacing:.04em;color:#f0f0ea}
.admin-access{display:grid;gap:6px;min-width:270px;position:relative;z-index:1}
.admin-access-title{font-size:10px;color:var(--yellow);text-transform:uppercase;letter-spacing:1.2px;font-weight:800}
.admin-access-sub{font-size:9px;color:#a0a09a;line-height:1.35}
.admin-access .mode-switch{min-width:0;display:grid;grid-template-columns:1fr;gap:7px}
.admin-access .mode-switch select{grid-column:auto}
.admin-access .mode-switch label{display:none}

/* Client mobile : fond blanc / gris / métal */
@media(max-width:760px){
  body[data-ui-mode="client"]{
    background:
      radial-gradient(circle at 92% 0%, rgba(255,255,255,.95), transparent 22%),
      repeating-linear-gradient(100deg, rgba(255,255,255,.28) 0 1px, rgba(255,255,255,0) 1px 7px),
      linear-gradient(180deg, #fcfcfb 0%, #f0f1f2 26%, #e4e7e9 58%, #f7f7f6 100%);
  }
  body[data-ui-mode="client"] .brandbar{
    min-height:136px;align-items:flex-start;gap:16px;
    background:
      radial-gradient(circle at 14% 18%, rgba(255,255,255,.95), transparent 28%),
      repeating-linear-gradient(100deg, rgba(255,255,255,.24) 0 1px, rgba(0,0,0,0) 1px 8px),
      linear-gradient(180deg, #fafafa 0%, #eceff1 44%, #dde0e3 100%);
    color:#171815;border-bottom:1px solid rgba(190,190,180,.55);box-shadow:0 14px 30px rgba(0,0,0,.07);
  }
  body[data-ui-mode="client"] .brandbar:after{background:linear-gradient(90deg, transparent, rgba(210,185,61,.55) 24%, rgba(146,129,35,.55) 76%, transparent);opacity:.8}
  body[data-ui-mode="client"] .brand-title{color:#96731a;text-shadow:none;font-size:25px}
  body[data-ui-mode="client"] .brand-sub{color:#1b1c19;font-size:15px;letter-spacing:.08em;margin-top:3px}
  body[data-ui-mode="client"] .brand-greeting{color:#53544f;margin-top:7px;font-size:11px}
  body[data-ui-mode="client"] .admin-access{background:rgba(255,255,255,.55);border:1px solid rgba(165,165,155,.35);border-radius:14px;padding:10px 11px;box-shadow:0 6px 14px rgba(0,0,0,.04)}
  body[data-ui-mode="client"] .admin-access-title{color:#7b6213}
  body[data-ui-mode="client"] .admin-access-sub{color:#70716b}
  body[data-ui-mode="client"] .admin-access .mode-switch select{background:rgba(255,255,255,.8);color:#171815;border-color:#c9cbc9;box-shadow:none}
  body[data-ui-mode="client"] .build-badge{color:#7a6214;border-color:rgba(170,145,36,.45);background:rgba(255,255,255,.58)}
  body[data-ui-mode="client"] .client-home-hero{
    background:
      radial-gradient(circle at 84% 20%, rgba(255,255,255,.68), transparent 30%),
      repeating-linear-gradient(102deg, rgba(255,255,255,.20) 0 1px, transparent 1px 6px),
      linear-gradient(145deg, #fafafa 0%, #eceff1 48%, #dde1e4 100%);
    color:#171815;border:1px solid rgba(182,182,173,.45);box-shadow:0 18px 34px rgba(0,0,0,.07);
  }
  body[data-ui-mode="client"] .client-home-hero p{color:#5e605b}
  body[data-ui-mode="client"] .hero-kicker{color:#8c6f16}
  body[data-ui-mode="client"] .btn.yellow{box-shadow:0 8px 18px rgba(189,168,49,.18)}
}

@media(max-width:760px){
  .brandbar{display:grid;grid-template-columns:1fr;padding:14px 14px 12px}
  .brand-identity-centered{justify-content:flex-start;align-items:center}
  .winged-lion-mark{min-width:88px;height:52px;gap:4px}
  .winged-lion-mark .wing{width:29px;height:21px}
  .winged-lion-mark .lion-core{width:31px;height:31px;font-size:16px}
  .brandmark-vertical{align-items:flex-start}
  .admin-access{min-width:0}
  .build-badge{justify-self:start;margin-left:0;margin-top:2px}
}

@media(min-width:761px){
  .brandbar{min-height:148px}
  .brandmark-vertical{align-items:flex-start}
  .brand-sub{text-align:left}
}


/* V1.19 — vraie identité logo + agenda */
.brand-logo-wrap{
  width:74px;
  height:74px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  filter:drop-shadow(0 8px 20px rgba(0,0,0,.18));
}
.brand-logo-lion{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}
.brand-identity-centered{
  align-items:center;
  gap:14px;
}
.brand-title{letter-spacing:1.1px}
.brand-sub{letter-spacing:.11em}

/* Barre mobile en bas + devise */
.mobile-nav-motto{display:none}
@media(max-width:760px){
  .mainnav{
    padding-bottom:calc(28px + env(safe-area-inset-bottom)) !important;
  }
  .mobile-nav-motto{
    display:block;
    grid-column:1/-1;
    text-align:center;
    margin-top:2px;
    color:#a4a49c;
    font:800 9px 'Montserrat',Arial,sans-serif;
    letter-spacing:.2em;
    text-transform:uppercase;
    opacity:.96;
  }
}

/* Client mobile : on masque complètement le bloc connexion/admin */
@media(max-width:760px){
  .admin-access{
    display:none !important;
  }
  body[data-ui-mode="client"] .brandbar{
    min-height:114px;
    padding-top:12px;
    padding-bottom:10px;
  }
  body[data-ui-mode="client"] .brand-logo-wrap{
    width:58px;
    height:58px;
  }
  body[data-ui-mode="client"] .brand-title{
    color:var(--yellow);
    font-size:23px;
    line-height:1.04;
  }
  body[data-ui-mode="client"] .brand-sub{
    color:#1b1c19;
    font-size:14px;
    letter-spacing:.13em;
    margin-top:2px;
  }
  body[data-ui-mode="client"] .brand-greeting{
    color:#595a55;
    margin-top:5px;
    font-size:10px;
  }
  body[data-ui-mode="client"] .brandmark-vertical{
    gap:0;
  }
}

/* Desktop : bloc réservé admin visible et plus propre */
@media(min-width:761px){
  .brand-logo-wrap{
    width:92px;
    height:92px;
  }
  .admin-access{
    display:grid;
  }
  body[data-admin-session="1"] .admin-access-title::after{
    content:" · ADMIN RECONNU";
    color:#fff;
    opacity:.92;
  }
}

/* Nettoyage de l'ancienne déco fictive */
.winged-lion-mark,
.winged-lion-mark .wing,
.winged-lion-mark .lion-core{
  display:none !important;
}


/* V1.20 — header épuré + fond mobile plus clair brossé métallisé */
.brand-greeting{
  display:none !important;
}

@media(max-width:760px){
  body[data-ui-mode="client"]{
    background:
      linear-gradient(100deg, rgba(255,255,255,.55) 0%, rgba(255,255,255,0) 7%, rgba(255,255,255,.30) 13%, rgba(255,255,255,0) 18%, rgba(255,255,255,.22) 24%, rgba(255,255,255,0) 30%, rgba(255,255,255,.18) 36%, rgba(255,255,255,0) 42%, rgba(255,255,255,.16) 48%, rgba(255,255,255,0) 54%, rgba(255,255,255,.14) 60%, rgba(255,255,255,0) 66%, rgba(255,255,255,.12) 72%, rgba(255,255,255,0) 78%, rgba(255,255,255,.12) 84%, rgba(255,255,255,0) 90%, rgba(255,255,255,.10) 100%),
      linear-gradient(180deg, #ffffff 0%, #f5f6f7 20%, #eceeef 42%, #e4e7e8 63%, #f4f5f5 100%);
    background-attachment:fixed;
  }

  body[data-ui-mode="client"] .brandbar{
    background:
      linear-gradient(100deg, rgba(255,255,255,.65) 0%, rgba(255,255,255,.05) 8%, rgba(255,255,255,.34) 15%, rgba(255,255,255,.06) 22%, rgba(255,255,255,.26) 30%, rgba(255,255,255,.07) 38%, rgba(255,255,255,.20) 46%, rgba(255,255,255,.06) 54%, rgba(255,255,255,.17) 62%, rgba(255,255,255,.06) 70%, rgba(255,255,255,.14) 78%, rgba(255,255,255,.05) 86%, rgba(255,255,255,.12) 100%),
      linear-gradient(180deg, #ffffff 0%, #f3f5f6 35%, #e6e9eb 68%, #fafafa 100%);
    box-shadow:0 12px 28px rgba(0,0,0,.06);
    border-bottom:1px solid rgba(196,196,186,.55);
  }

  body[data-ui-mode="client"] .client-home-hero{
    background:
      linear-gradient(100deg, rgba(255,255,255,.48) 0%, rgba(255,255,255,.08) 9%, rgba(255,255,255,.28) 17%, rgba(255,255,255,.06) 25%, rgba(255,255,255,.21) 33%, rgba(255,255,255,.05) 41%, rgba(255,255,255,.17) 49%, rgba(255,255,255,.05) 57%, rgba(255,255,255,.14) 65%, rgba(255,255,255,.05) 73%, rgba(255,255,255,.11) 81%, rgba(255,255,255,.04) 89%, rgba(255,255,255,.10) 100%),
      linear-gradient(145deg, #ffffff 0%, #f0f2f3 50%, #e4e7e9 100%);
    color:#171815;
    border:1px solid rgba(188,188,180,.42);
    box-shadow:0 14px 28px rgba(0,0,0,.06);
  }

  body[data-ui-mode="client"] .action-card,
  body[data-ui-mode="client"] .card,
  body[data-ui-mode="client"] .daycol,
  body[data-ui-mode="client"] .resource-card,
  body[data-ui-mode="client"] .completion-box,
  body[data-ui-mode="client"] .session-page{
    background-color:rgba(255,255,255,.78);
    backdrop-filter:blur(4px);
  }

  body[data-ui-mode="client"] .mainnav{
    background:
      linear-gradient(100deg, rgba(255,255,255,.30) 0%, rgba(255,255,255,.05) 8%, rgba(255,255,255,.20) 15%, rgba(255,255,255,.04) 22%, rgba(255,255,255,.14) 30%, rgba(255,255,255,.03) 38%, rgba(255,255,255,.12) 46%, rgba(255,255,255,.03) 54%, rgba(255,255,255,.10) 62%, rgba(255,255,255,.02) 70%, rgba(255,255,255,.09) 78%, rgba(255,255,255,.02) 86%, rgba(255,255,255,.08) 100%),
      linear-gradient(180deg, rgba(238,240,241,.97) 0%, rgba(228,231,233,.98) 100%);
    border-top:1px solid rgba(170,170,160,.35);
    box-shadow:0 -8px 22px rgba(0,0,0,.08);
  }
  body[data-ui-mode="client"] .mainnav button{
    background:linear-gradient(180deg, rgba(255,255,255,.72), rgba(255,255,255,.40));
    color:#4a4b46;
    border-color:rgba(178,178,170,.20);
  }
  body[data-ui-mode="client"] .mainnav button .nav-ico{
    background:rgba(255,255,255,.55);
    color:#5a5b56;
  }
  body[data-ui-mode="client"] .mobile-nav-motto{
    color:#777870;
  }
}


/* V1.21 — vidéo d'exercice avec retour clair vers la séance */
.exercise-video-layer{
  position:absolute;
  inset:0;
  z-index:60;
  display:flex;
  flex-direction:column;
  overflow:auto;
  background:
    radial-gradient(circle at 85% 10%,rgba(232,229,0,.08),transparent 22rem),
    linear-gradient(180deg,#11120f 0%,#181916 100%);
  color:#fff;
  border-radius:inherit;
}
.exercise-video-topbar{
  position:sticky;
  top:0;
  z-index:2;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:12px;
  min-height:66px;
  padding:11px 16px;
  background:rgba(10,10,9,.96);
  backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(232,229,0,.28);
  box-shadow:0 8px 22px rgba(0,0,0,.22);
}
.exercise-video-back{
  min-height:42px;
  padding:0 13px;
  border-radius:11px;
  border:1px solid rgba(232,229,0,.58);
  background:rgba(232,229,0,.07);
  color:var(--yellow);
  font:800 10px 'Montserrat',Arial,sans-serif;
  cursor:pointer;
  transition:.15s ease;
}
.exercise-video-back:hover{
  background:rgba(232,229,0,.14);
}
.exercise-video-title{
  text-align:center;
  font:700 12px 'Montserrat',Arial,sans-serif;
  color:#f3f3ed;
}
.exercise-video-content{
  width:min(900px,100%);
  margin:auto;
  padding:24px;
}
.exercise-video-wrap{
  margin:0;
  border:1px solid rgba(232,229,0,.30);
  box-shadow:0 18px 42px rgba(0,0,0,.34);
}
.exercise-video-bottom-back{
  width:100%;
  margin-top:16px;
  min-height:46px;
}

@media(max-width:760px){
  .exercise-video-layer{
    position:fixed;
    inset:0;
    border-radius:0;
    height:100dvh;
    max-height:100dvh;
    padding-bottom:env(safe-area-inset-bottom);
  }
  .exercise-video-topbar{
    grid-template-columns:auto minmax(0,1fr);
    min-height:58px;
    padding:calc(9px + env(safe-area-inset-top)) 10px 9px;
  }
  .exercise-video-back{
    width:43px;
    min-width:43px;
    height:43px;
    padding:0;
    font-size:22px;
    line-height:1;
  }
  .exercise-video-back span{
    display:none;
  }
  .exercise-video-title{
    text-align:left;
    font-size:11px;
  }
  .exercise-video-content{
    margin:0;
    padding:16px 10px 22px;
  }
  .exercise-video-wrap{
    border-radius:12px;
  }
}


/* V1.22 — trait fin noir autour des plages sur PC */
@media(min-width:761px){
  /* Calendrier mentor : ex. jeudi 10 > Accès M.A.S */
  .calendar .cal-item{
    border:1px solid #1a1a1a;
    box-shadow:0 2px 7px rgba(0,0,0,.04);
  }

  /* Calendrier client 3 jours : ex. demain > SM2 */
  .client-primary-calendar .mini-action,
  .daycol .mini-action{
    border:1px solid #1a1a1a;
    box-shadow:0 3px 8px rgba(0,0,0,.035);
  }

  /* Boutons / plages d'ajout visibles côté client */
  .client-home-add,
  .home-secondary-add,
  .client-calendar-tools .btn,
  #addActivity,
  #addActivitySecondary{
    border:1px solid #1a1a1a !important;
  }

  /* Cohérence légère sur les cartes d'action desktop */
  .action-card{
    border-color:#1a1a1a;
  }
}


/* V1.23 — mobile client plus clair : gris/blanc premium avec métal brossé */
@media(max-width:760px){
  body[data-ui-mode="client"]{
    background:
      linear-gradient(92deg,
        rgba(255,255,255,.42) 0%,
        rgba(255,255,255,.10) 6%,
        rgba(223,226,229,.26) 11%,
        rgba(255,255,255,.08) 17%,
        rgba(214,218,221,.20) 24%,
        rgba(255,255,255,.06) 31%,
        rgba(204,208,211,.16) 39%,
        rgba(255,255,255,.05) 48%,
        rgba(196,200,203,.13) 58%,
        rgba(255,255,255,.04) 69%,
        rgba(188,192,195,.10) 80%,
        rgba(255,255,255,.03) 90%,
        rgba(255,255,255,.18) 100%),
      linear-gradient(180deg,#fafafa 0%,#f1f2f3 24%,#e7e9eb 54%,#eff1f2 78%,#fcfcfc 100%);
    background-attachment:fixed;
    color:#171815;
  }
  body[data-ui-mode="client"] .brandbar{
    background:
      linear-gradient(92deg,
        rgba(255,255,255,.34) 0%,
        rgba(255,255,255,.08) 8%,
        rgba(221,224,227,.22) 15%,
        rgba(255,255,255,.06) 23%,
        rgba(208,212,215,.16) 34%,
        rgba(255,255,255,.05) 45%,
        rgba(198,202,205,.12) 58%,
        rgba(255,255,255,.03) 72%,
        rgba(255,255,255,.14) 100%),
      linear-gradient(180deg,#fcfcfc 0%,#f0f2f3 46%,#e5e7e8 100%);
    border-bottom:1px solid rgba(175,175,166,.42);
    box-shadow:0 14px 30px rgba(0,0,0,.05);
  }
  body[data-ui-mode="client"] .client-home-hero,
  body[data-ui-mode="client"] .hero{
    background:
      linear-gradient(92deg,
        rgba(255,255,255,.27) 0%,
        rgba(255,255,255,.07) 10%,
        rgba(219,223,226,.14) 18%,
        rgba(255,255,255,.05) 28%,
        rgba(206,210,213,.10) 40%,
        rgba(255,255,255,.04) 54%,
        rgba(196,200,203,.08) 68%,
        rgba(255,255,255,.03) 82%,
        rgba(255,255,255,.10) 100%),
      linear-gradient(145deg,#f9faf9 0%,#eef0f1 48%,#e6e9eb 100%) !important;
    color:#171815 !important;
    border:1px solid rgba(28,28,26,.16) !important;
    border-left:1px solid rgba(28,28,26,.16) !important;
    box-shadow:0 14px 28px rgba(0,0,0,.05) !important;
  }
  body[data-ui-mode="client"] .hero:after,
  body[data-ui-mode="client"] .client-home-hero:after{
    opacity:.24;
    border-color:rgba(28,28,26,.08);
    box-shadow:0 0 0 22px rgba(255,255,255,.20),0 0 0 45px rgba(255,255,255,.08);
  }
  body[data-ui-mode="client"] .hero h1,
  body[data-ui-mode="client"] .client-home-hero h1,
  body[data-ui-mode="client"] .page-title,
  body[data-ui-mode="client"] .action-card,
  body[data-ui-mode="client"] .mini-action,
  body[data-ui-mode="client"] .daycol,
  body[data-ui-mode="client"] .card{
    color:#171815;
  }
  body[data-ui-mode="client"] .hero p,
  body[data-ui-mode="client"] .client-home-hero p,
  body[data-ui-mode="client"] .page-intro{
    color:#5f615d !important;
  }
  body[data-ui-mode="client"] .action-card,
  body[data-ui-mode="client"] .daycol,
  body[data-ui-mode="client"] .mini-action,
  body[data-ui-mode="client"] .card{
    background:rgba(255,255,255,.72);
    border-color:rgba(28,28,26,.14);
    box-shadow:0 10px 22px rgba(0,0,0,.045);
  }
  body[data-ui-mode="client"] .mainnav{
    background:
      linear-gradient(180deg,rgba(245,246,247,.97) 0%,rgba(232,234,236,.98) 100%);
    border-top:1px solid rgba(28,28,26,.12);
    box-shadow:0 -8px 20px rgba(0,0,0,.06);
  }
  body[data-ui-mode="client"] .mainnav button{
    background:linear-gradient(180deg,rgba(255,255,255,.68),rgba(255,255,255,.36));
    color:#4d4f4a;
    border-color:rgba(28,28,26,.08);
  }
  body[data-ui-mode="client"] .mainnav button .nav-ico{
    background:rgba(255,255,255,.56);
    color:#5b5d59;
  }
  body[data-ui-mode="client"] .mobile-nav-motto{
    color:#6c6e68;
  }
}

/* V1.23 — calendrier mentor filtré par client */
.mentor-schedule-layout{
  display:grid;
  grid-template-columns:280px minmax(0,1fr);
  gap:22px;
  align-items:start;
}
.mentor-client-sidebar{
  position:sticky;
  top:88px;
  background:linear-gradient(180deg,#fbfbf8,#f1f1ed);
  border:1px solid #dcdcd5;
  border-radius:18px;
  padding:18px 16px;
  box-shadow:var(--shadow-soft);
}
.mentor-client-sidebar-head h2{
  margin:4px 0 6px;
  font-family:'Cinzel',Georgia,serif;
  font-weight:500;
}
.mentor-client-sidebar-head p{
  margin:0 0 14px;
  color:#70706a;
  font-size:12px;
  line-height:1.55;
}
.mentor-client-list{
  display:grid;
  gap:9px;
}
.mentor-client-chip{
  width:100%;
  text-align:left;
  border:1px solid #d5d5cf;
  border-radius:13px;
  background:linear-gradient(180deg,#ffffff,#f6f6f2);
  padding:12px 13px;
  cursor:pointer;
  transition:.16s ease;
  box-shadow:0 2px 8px rgba(0,0,0,.03);
}
.mentor-client-chip:hover{
  transform:translateY(-1px);
  border-color:#b8b89c;
  box-shadow:0 8px 20px rgba(0,0,0,.05);
}
.mentor-client-chip.active{
  border-color:#1a1a1a;
  background:linear-gradient(180deg,#fffef0,#f4f0b8);
  box-shadow:0 10px 24px rgba(0,0,0,.07);
}
.mentor-client-chip-name{
  display:block;
  font-weight:800;
  font-size:13px;
  color:#181815;
}
.mentor-client-chip-meta{
  display:block;
  margin-top:4px;
  font-size:10px;
  color:#76776f;
}
.mentor-focus-banner{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:18px;
  margin:0 0 20px;
  padding:18px 20px;
  background:linear-gradient(180deg,#fff,#f7f7f3);
  border:1px solid #dfdfd8;
  border-left:4px solid var(--yellow);
  border-radius:16px;
  box-shadow:var(--shadow-soft);
}
.mentor-focus-banner h2{
  margin:4px 0 5px;
  font-family:'Cinzel',Georgia,serif;
  font-weight:500;
}
.mentor-focus-banner p{
  margin:0;
  color:#70706b;
  font-size:13px;
}
.mentor-schedule-main .mentor-three-months{
  gap:22px;
}

@media(max-width:980px){
  .mentor-schedule-layout{
    grid-template-columns:1fr;
  }
  .mentor-client-sidebar{
    position:static;
    padding:14px;
  }
  .mentor-client-list{
    display:flex;
    overflow:auto;
    gap:10px;
    padding-bottom:2px;
  }
  .mentor-client-chip{
    min-width:220px;
    flex:0 0 auto;
  }
  .mentor-focus-banner{
    display:block;
  }
  .mentor-focus-banner .btn{
    margin-top:12px;
    width:100%;
  }
}


/* V1.24 — fond mobile client vraiment clair, blanc > gris clair, métal brossé */
@media(max-width:760px){
  body[data-ui-mode="client"]{
    background:
      repeating-linear-gradient(
        90deg,
        rgba(255,255,255,.34) 0px,
        rgba(255,255,255,.34) 2px,
        rgba(226,229,232,.34) 2px,
        rgba(226,229,232,.34) 5px,
        rgba(246,247,248,.16) 5px,
        rgba(246,247,248,.16) 10px,
        rgba(214,217,220,.14) 10px,
        rgba(214,217,220,.14) 16px
      ),
      linear-gradient(180deg,#ffffff 0%,#fafafa 14%,#f2f3f4 36%,#eceeef 62%,#f3f4f5 82%,#ffffff 100%) !important;
    background-attachment:fixed !important;
    color:#171815 !important;
  }

  body[data-ui-mode="client"] .brandbar{
    background:
      repeating-linear-gradient(
        90deg,
        rgba(255,255,255,.26) 0px,
        rgba(255,255,255,.26) 2px,
        rgba(223,226,229,.25) 2px,
        rgba(223,226,229,.25) 5px,
        rgba(244,245,246,.10) 5px,
        rgba(244,245,246,.10) 10px,
        rgba(212,215,218,.11) 10px,
        rgba(212,215,218,.11) 16px
      ),
      linear-gradient(180deg,#fcfcfc 0%,#f3f4f5 45%,#ebedef 100%) !important;
    border-bottom:1px solid rgba(179,179,170,.5) !important;
    box-shadow:0 10px 24px rgba(0,0,0,.05) !important;
  }

  body[data-ui-mode="client"] .client-home-hero,
  body[data-ui-mode="client"] .hero,
  body[data-ui-mode="client"] .daycol,
  body[data-ui-mode="client"] .mini-action,
  body[data-ui-mode="client"] .action-card,
  body[data-ui-mode="client"] .card{
    background:
      linear-gradient(180deg,rgba(255,255,255,.88) 0%,rgba(248,249,249,.84) 100%) !important;
    color:#171815 !important;
    border-color:rgba(28,28,26,.14) !important;
    box-shadow:0 10px 24px rgba(0,0,0,.045) !important;
  }

  body[data-ui-mode="client"] .client-home-hero,
  body[data-ui-mode="client"] .hero{
    border-left:1px solid rgba(28,28,26,.14) !important;
  }

  body[data-ui-mode="client"] .client-home-hero:after,
  body[data-ui-mode="client"] .hero:after{
    opacity:.16 !important;
    border-color:rgba(28,28,26,.08) !important;
    box-shadow:
      0 0 0 22px rgba(255,255,255,.16),
      0 0 0 45px rgba(224,226,228,.10) !important;
  }

  body[data-ui-mode="client"] .client-home-hero h1,
  body[data-ui-mode="client"] .hero h1,
  body[data-ui-mode="client"] .page-title,
  body[data-ui-mode="client"] .action-name,
  body[data-ui-mode="client"] .done-item b,
  body[data-ui-mode="client"] .daycol h3{
    color:#171815 !important;
  }

  body[data-ui-mode="client"] .client-home-hero p,
  body[data-ui-mode="client"] .hero p,
  body[data-ui-mode="client"] .page-intro,
  body[data-ui-mode="client"] .mini-action small,
  body[data-ui-mode="client"] .muted,
  body[data-ui-mode="client"] .stat-label{
    color:#61635f !important;
  }

  body[data-ui-mode="client"] .mainnav{
    background:
      linear-gradient(180deg,rgba(247,248,249,.98) 0%,rgba(236,238,239,.98) 100%) !important;
    border-top:1px solid rgba(28,28,26,.12) !important;
    border-bottom:0 !important;
    box-shadow:0 -10px 24px rgba(0,0,0,.055) !important;
  }

  body[data-ui-mode="client"] .mainnav button{
    color:#50524e !important;
  }

  body[data-ui-mode="client"] .mainnav button.active{
    color:var(--yellow) !important;
    background:linear-gradient(180deg,rgba(232,229,0,.12),rgba(255,255,255,0)) !important;
  }

  body[data-ui-mode="client"] .mainnav button .nav-ico{
    background:rgba(255,255,255,.82) !important;
    color:#5d5f5b !important;
    box-shadow:inset 0 0 0 1px rgba(28,28,26,.07) !important;
  }

  body[data-ui-mode="client"] .mobile-nav-motto{
    color:#696b66 !important;
  }
}


/* V1.25 — fond mobile client forcé clair : blanc vers gris clair brossé */
@media(max-width:760px){
  body[data-ui-mode="client"],
  html:has(body[data-ui-mode="client"]){
    background:
      repeating-linear-gradient(
        90deg,
        rgba(255,255,255,.26) 0px,
        rgba(255,255,255,.26) 1px,
        rgba(220,223,226,.16) 1px,
        rgba(220,223,226,.16) 3px,
        rgba(255,255,255,.12) 3px,
        rgba(255,255,255,.12) 8px
      ),
      linear-gradient(
        180deg,
        #ffffff 0%,
        #fafafa 18%,
        #f3f4f5 40%,
        #eceeef 68%,
        #f5f6f6 86%,
        #ffffff 100%
      ) !important;
    background-attachment:fixed !important;
  }

  body[data-ui-mode="client"] main{
    background:transparent !important;
  }

  body[data-ui-mode="client"] .brandbar{
    background:
      repeating-linear-gradient(
        90deg,
        rgba(255,255,255,.24) 0px,
        rgba(255,255,255,.24) 1px,
        rgba(218,221,224,.14) 1px,
        rgba(218,221,224,.14) 3px,
        rgba(255,255,255,.10) 3px,
        rgba(255,255,255,.10) 8px
      ),
      linear-gradient(180deg,#ffffff 0%,#f4f5f6 58%,#eceeef 100%) !important;
  }

  body[data-ui-mode="client"] .client-calendar-head,
  body[data-ui-mode="client"] .client-primary-calendar{
    color:#171815 !important;
  }

  body[data-ui-mode="client"] .daycol{
    background:rgba(255,255,255,.88) !important;
    border-color:rgba(25,25,23,.16) !important;
  }

  body[data-ui-mode="client"] .mini-action{
    background:linear-gradient(180deg,#ffffff,#f7f8f8) !important;
    color:#171815 !important;
    border-color:rgba(25,25,23,.15) !important;
  }
}


/* V1.26 — apparence personnalisable */
:root{
  --li-client-mobile-bg: repeating-linear-gradient(90deg, rgba(255,255,255,.24) 0px, rgba(255,255,255,.24) 1px, rgba(226,229,232,.15) 1px, rgba(226,229,232,.15) 4px, rgba(255,255,255,.10) 4px, rgba(255,255,255,.10) 10px, rgba(214,217,220,.08) 10px, rgba(214,217,220,.08) 16px), linear-gradient(180deg,#ffffff 0%,#fafafa 16%,#f3f4f5 40%,#eceeef 68%,#f5f6f6 86%,#ffffff 100%);
  --li-header-bg: radial-gradient(circle at 13% 50%,rgba(255,255,255,.07),transparent 25%), repeating-linear-gradient(102deg,rgba(255,255,255,.018) 0 1px,transparent 1px 5px), linear-gradient(95deg,#050505 0,#111 50%,#050505 100%);
}

.brandbar{
  background:var(--li-header-bg) !important;
}

@media(max-width:760px){
  body[data-ui-mode="client"]{
    background:var(--li-client-mobile-bg) !important;
    background-attachment:fixed !important;
  }
  body[data-ui-mode="client"] .brandbar{
    background:var(--li-header-bg) !important;
  }
}

.appearance-grid{
  align-items:start;
}
.appearance-card h2{
  margin:4px 0 8px;
  font-family:'Cinzel',Georgia,serif;
  font-weight:500;
}
.appearance-card p{
  margin:0 0 14px;
  color:#6b6c67;
  line-height:1.6;
}
.appearance-presets{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 14px;
}
.appearance-label{
  display:block;
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:#5c5d58;
  margin-bottom:7px;
}
.appearance-textarea{
  width:100%;
  min-height:180px;
  resize:vertical;
  border:1px solid #cfcfc8;
  border-radius:12px;
  padding:14px;
  background:linear-gradient(180deg,#fff,#f7f7f4);
  color:#171815;
  box-shadow:inset 0 1px 2px rgba(0,0,0,.03);
}
.appearance-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:18px 0 22px;
}
.appearance-help ul{
  margin:12px 0 10px 18px;
}
.appearance-help li{
  margin:8px 0;
  color:#383934;
}
@media(max-width:760px){
  .appearance-actions .btn{
    width:100%;
  }
  .appearance-textarea{
    min-height:160px;
    font-size:13px;
  }
}


/* V1.27 — retrait apparence + fond client clair + entête texture fournie */
:root{
  --li-client-mobile-bg: linear-gradient(180deg,#ffffff 0%,#f9f9f9 22%,#f1f2f3 56%,#e7e9eb 82%,#f2f3f4 100%);
  --li-header-bg: linear-gradient(180deg,rgba(5,5,5,.44),rgba(5,5,5,.44)), url('/header-texture-v127.jpg') center/cover no-repeat;
}

.brandbar{
  background:var(--li-header-bg) !important;
}

@media(max-width:760px){
  body[data-ui-mode="client"],
  html:has(body[data-ui-mode="client"]){
    background:var(--li-client-mobile-bg) !important;
    background-attachment:fixed !important;
    color:#171815 !important;
  }
  body[data-ui-mode="client"] main{
    background:transparent !important;
  }

  /* fond clair sous les sections "Aujourd'hui", "Tes prochaines actions", etc. */
  body[data-ui-mode="client"] .client-calendar-page,
  body[data-ui-mode="client"] .client-home-section,
  body[data-ui-mode="client"] .client-primary-calendar,
  body[data-ui-mode="client"] .client-calendar-head,
  body[data-ui-mode="client"] .section-heading{
    background:transparent !important;
    color:#171815 !important;
  }

  body[data-ui-mode="client"] .client-home-hero,
  body[data-ui-mode="client"] .hero{
    background:linear-gradient(180deg,rgba(255,255,255,.96) 0%,rgba(245,246,247,.92) 100%) !important;
    color:#171815 !important;
    border:1px solid rgba(25,25,23,.14) !important;
    border-left:1px solid rgba(25,25,23,.14) !important;
    box-shadow:0 10px 24px rgba(0,0,0,.045) !important;
  }

  body[data-ui-mode="client"] .hero-kicker{
    color:#9a7a16 !important;
  }

  body[data-ui-mode="client"] .client-home-hero h1,
  body[data-ui-mode="client"] .hero h1,
  body[data-ui-mode="client"] .page-title,
  body[data-ui-mode="client"] .section-heading h2,
  body[data-ui-mode="client"] .client-calendar-title,
  body[data-ui-mode="client"] .action-name,
  body[data-ui-mode="client"] .daycol h3{
    color:#171815 !important;
  }

  body[data-ui-mode="client"] .client-home-hero p,
  body[data-ui-mode="client"] .hero p,
  body[data-ui-mode="client"] .page-intro,
  body[data-ui-mode="client"] .muted,
  body[data-ui-mode="client"] .section-heading p{
    color:#646661 !important;
  }

  body[data-ui-mode="client"] .card,
  body[data-ui-mode="client"] .action-card,
  body[data-ui-mode="client"] .daycol,
  body[data-ui-mode="client"] .mini-action,
  body[data-ui-mode="client"] .resource-card,
  body[data-ui-mode="client"] .completion-box,
  body[data-ui-mode="client"] .session-page{
    background:linear-gradient(180deg,#ffffff 0%,#f7f8f8 100%) !important;
    border-color:rgba(25,25,23,.14) !important;
    color:#171815 !important;
    box-shadow:0 10px 24px rgba(0,0,0,.045) !important;
  }

  body[data-ui-mode="client"] .mainnav{
    background:linear-gradient(180deg,rgba(248,249,249,.98) 0%,rgba(236,238,239,.98) 100%) !important;
    border-top:1px solid rgba(25,25,23,.10) !important;
    box-shadow:0 -10px 24px rgba(0,0,0,.05) !important;
  }
  body[data-ui-mode="client"] .mainnav button{
    color:#4f514c !important;
  }
  body[data-ui-mode="client"] .mainnav button .nav-ico{
    background:rgba(255,255,255,.85) !important;
    color:#575955 !important;
  }
  body[data-ui-mode="client"] .mobile-nav-motto{
    color:#6a6c67 !important;
  }
}

/* cacher les styles d'apparence s'ils restaient dans le CSS */
.appearance-grid,
.appearance-card,
.appearance-actions,
.appearance-help,
[data-page="appearance"]{
  display:none !important;
}


/* V1.28 — fond mobile client basé sur l'image fournie */
:root{
  --li-client-mobile-bg: linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.04)), url('/mobile-background-v128.png') center top / cover no-repeat fixed;
}

/* Demande explicite d'affichage clair au navigateur */
html, body{
  color-scheme: light;
}

@media(max-width:760px){
  body[data-ui-mode="client"]{
    background: var(--li-client-mobile-bg) !important;
    background-color:#f3f3f3 !important;
    background-attachment: fixed !important;
    background-size: cover !important;
    background-position: center top !important;
    color:#171815 !important;
  }

  body[data-ui-mode="client"] main,
  body[data-ui-mode="client"] #app,
  body[data-ui-mode="client"] .client-calendar-page,
  body[data-ui-mode="client"] .client-home-section{
    background: transparent !important;
  }

  /* Les zones "Aujourd'hui / tes 3 prochains jours" et cartes restent claires */
  body[data-ui-mode="client"] .client-home-hero,
  body[data-ui-mode="client"] .hero,
  body[data-ui-mode="client"] .card,
  body[data-ui-mode="client"] .action-card,
  body[data-ui-mode="client"] .daycol,
  body[data-ui-mode="client"] .mini-action,
  body[data-ui-mode="client"] .resource-card,
  body[data-ui-mode="client"] .completion-box,
  body[data-ui-mode="client"] .session-page{
    background: linear-gradient(180deg, rgba(255,255,255,.94) 0%, rgba(245,246,247,.92) 100%) !important;
    border-color: rgba(25,25,23,.13) !important;
    box-shadow: 0 12px 26px rgba(0,0,0,.05) !important;
    color:#171815 !important;
  }

  body[data-ui-mode="client"] .client-home-hero h1,
  body[data-ui-mode="client"] .hero h1,
  body[data-ui-mode="client"] .page-title,
  body[data-ui-mode="client"] .action-name,
  body[data-ui-mode="client"] .daycol h3,
  body[data-ui-mode="client"] .section-heading h2,
  body[data-ui-mode="client"] .client-calendar-title{
    color:#171815 !important;
  }

  body[data-ui-mode="client"] .client-home-hero p,
  body[data-ui-mode="client"] .hero p,
  body[data-ui-mode="client"] .page-intro,
  body[data-ui-mode="client"] .muted,
  body[data-ui-mode="client"] .section-heading p,
  body[data-ui-mode="client"] .mini-action small{
    color:#666863 !important;
  }
}


/* V1.29 — finitions visuelles mobile client */
@media(max-width:760px){

  /* Entête plus compact et mieux équilibré */
  body[data-ui-mode="client"] .brandbar{
    min-height:92px !important;
    padding:7px 12px 7px 10px !important;
    align-items:center !important;
  }

  body[data-ui-mode="client"] .brand-identity-centered{
    width:100% !important;
    display:grid !important;
    grid-template-columns:62px minmax(0,1fr) !important;
    align-items:center !important;
    gap:10px !important;
  }

  body[data-ui-mode="client"] .brand-logo-wrap{
    width:60px !important;
    height:60px !important;
    align-self:center !important;
  }

  body[data-ui-mode="client"] .brandmark-vertical{
    width:100% !important;
    min-width:0 !important;
    justify-content:center !important;
    gap:0 !important;
  }

  /* Leader Impactant prend toute la largeur disponible après le logo */
  body[data-ui-mode="client"] .brand-title{
    width:100% !important;
    color:var(--yellow) !important;
    font-family:'Cinzel',Georgia,serif !important;
    font-size:clamp(25px,7.2vw,31px) !important;
    line-height:.98 !important;
    letter-spacing:.35px !important;
    white-space:nowrap !important;
    text-align:left !important;
    text-shadow:0 1px 1px rgba(0,0,0,.25) !important;
  }

  /* Agenda du succès agrandi proportionnellement */
  body[data-ui-mode="client"] .brand-sub{
    color:#f4f4ef !important;
    font-family:'Cinzel',Georgia,serif !important;
    font-size:clamp(16px,4.6vw,20px) !important;
    line-height:1 !important;
    letter-spacing:.12em !important;
    margin-top:5px !important;
    text-align:left !important;
  }

  /* Bonjour prénom : doré plus foncé */
  body[data-ui-mode="client"] .client-calendar-head .hero-kicker{
    color:#806514 !important;
    font-family:'Montserrat',Arial,sans-serif !important;
    font-size:10px !important;
    font-weight:800 !important;
    letter-spacing:.12em !important;
  }

  /* Titre et texte principal en noir */
  body[data-ui-mode="client"] .client-calendar-head .page-title{
    color:#090909 !important;
    font-family:'Cinzel',Georgia,serif !important;
  }

  body[data-ui-mode="client"] .client-calendar-head .page-intro{
    color:#090909 !important;
    opacity:1 !important;
  }

  /* + Autre activité : texte noir */
  body[data-ui-mode="client"] .client-calendar-tools #addActivity,
  body[data-ui-mode="client"] .client-calendar-tools .btn.ghost{
    color:#090909 !important;
    background:rgba(255,255,255,.72) !important;
    border:1px solid rgba(9,9,9,.72) !important;
    box-shadow:0 4px 10px rgba(0,0,0,.035) !important;
  }

  /* Aujourd'hui : Cinzel + jaune */
  body[data-ui-mode="client"] .client-primary-calendar .daycol.today .client-day-label{
    color:var(--yellow) !important;
    font-family:'Cinzel',Georgia,serif !important;
    font-size:11px !important;
    font-weight:600 !important;
    letter-spacing:.12em !important;
  }

  /* Cellule Aujourd'hui entourée d'un trait fin */
  body[data-ui-mode="client"] .client-primary-calendar .daycol.today{
    border:1px solid #1a1a1a !important;
    box-shadow:0 10px 24px rgba(0,0,0,.045) !important;
  }

  /* On supprime l'ancienne barre jaune latérale pour garder un vrai contour fin */
  body[data-ui-mode="client"] .client-primary-calendar .daycol.today:before{
    display:none !important;
  }

  /* Force & Honneur : Cinzel + jaune */
  body[data-ui-mode="client"] .mobile-nav-motto{
    color:var(--yellow) !important;
    font-family:'Cinzel',Georgia,serif !important;
    font-size:10px !important;
    font-weight:600 !important;
    letter-spacing:.17em !important;
    text-shadow:0 1px 0 rgba(0,0,0,.12) !important;
  }
}

/* Très petits écrans : éviter que LEADER IMPACTANT déborde */
@media(max-width:380px){
  body[data-ui-mode="client"] .brand-title{
    font-size:24px !important;
    letter-spacing:0 !important;
  }
  body[data-ui-mode="client"] .brand-sub{
    font-size:16px !important;
  }
}


/* V1.30 — Graphiques Leader Impactant : noir / jaune / blanc */
@media(max-width:760px){
  body[data-ui-mode="client"] .client-metrics-page .page-title,
  body[data-ui-mode="client"] .client-metrics-page .page-intro,
  body[data-ui-mode="client"] .client-library-page .page-title,
  body[data-ui-mode="client"] .client-library-page .page-intro,
  body[data-ui-mode="client"] .client-library-page .resource-card h3,
  body[data-ui-mode="client"] .client-library-page .resource-card p,
  body[data-ui-mode="client"] .client-library-page .resource-type,
  body[data-ui-mode="client"] .client-library-page .muted{
    color:#090909 !important;
  }

  /* Onglets Graphiques */
  body[data-ui-mode="client"] .metric-tabs{
    display:flex;
    gap:7px;
    overflow-x:auto;
    flex-wrap:nowrap;
    padding-bottom:3px;
  }
  body[data-ui-mode="client"] .metric-tab{
    flex:0 0 auto;
    background:#111 !important;
    color:#fff !important;
    border:1px solid #111 !important;
  }
  body[data-ui-mode="client"] .metric-tab.active{
    background:var(--yellow) !important;
    color:#090909 !important;
    border-color:#090909 !important;
  }

  /* Carte graphique noire */
  body[data-ui-mode="client"] .metric-panel{
    background:#080808 !important;
    border:1px solid #111 !important;
    color:#fff !important;
    box-shadow:0 12px 28px rgba(0,0,0,.10) !important;
  }
  body[data-ui-mode="client"] .metric-panel h2,
  body[data-ui-mode="client"] .metric-panel-info{
    color:#fff !important;
  }
  body[data-ui-mode="client"] .metric-panel h2{
    margin:0 !important;
  }
  body[data-ui-mode="client"] canvas.chart{
    background:#080808 !important;
    border:1px solid #2b2b2b !important;
  }

  /* Zone de saisie sous le graphique : informations noires/lisibles */
  body[data-ui-mode="client"] .metric-value-row{
    margin-top:12px;
    padding:12px;
    border-radius:11px;
    background:#f7f7f5;
    color:#090909;
  }
  body[data-ui-mode="client"] .metric-value-row .field label{
    color:#090909 !important;
  }
  body[data-ui-mode="client"] .metric-value-row input{
    color:#090909 !important;
    background:#fff !important;
  }

  /* Menu inférieur : Graphiques et Bibliothèque en noir hors état actif */
  body[data-ui-mode="client"] .mainnav button[data-page="metrics"] .nav-label,
  body[data-ui-mode="client"] .mainnav button[data-page="resources"] .nav-label,
  body[data-ui-mode="client"] .mainnav button[data-page="metrics"] .nav-ico,
  body[data-ui-mode="client"] .mainnav button[data-page="resources"] .nav-ico{
    color:#090909 !important;
  }
  body[data-ui-mode="client"] .mainnav button.active[data-page="metrics"] .nav-label,
  body[data-ui-mode="client"] .mainnav button.active[data-page="resources"] .nav-label{
    color:#090909 !important;
  }

  /* Bibliothèque : cartes claires, texte noir */
  body[data-ui-mode="client"] .client-library-page .resource-card{
    background:linear-gradient(180deg,#fff,#f5f6f6) !important;
    color:#090909 !important;
    border:1px solid rgba(9,9,9,.16) !important;
  }
}


/* V1.31 — gamification / scoring client */
.momentum-card{
  margin:16px 0 18px;
  padding:16px 16px 15px;
  border-radius:18px;
  border:1px solid rgba(12,12,12,.12);
  background:linear-gradient(180deg,rgba(255,255,255,.96) 0%,rgba(244,245,246,.92) 100%);
  box-shadow:0 12px 26px rgba(0,0,0,.05);
}
.momentum-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.momentum-head h2{
  margin:4px 0 6px;
  font-family:'Cinzel',Georgia,serif;
  font-size:28px;
  line-height:1;
  color:#101010;
}
.momentum-head p{
  margin:0;
  color:#343633;
  line-height:1.45;
}
.momentum-score{
  flex:0 0 auto;
  min-width:92px;
  height:92px;
  border-radius:50%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  background:#0b0b0b;
  color:var(--yellow);
  font-family:'Cinzel',Georgia,serif;
  font-size:30px;
  line-height:1;
  border:2px solid rgba(232,229,0,.46);
  box-shadow:inset 0 0 0 4px rgba(255,255,255,.06);
}
.momentum-score small{
  display:block;
  margin-top:2px;
  font-size:11px;
  letter-spacing:.08em;
  color:#fff;
}
.momentum-bar{
  margin:14px 0 14px;
  height:10px;
  border-radius:999px;
  background:rgba(0,0,0,.08);
  overflow:hidden;
}
.momentum-bar span{
  display:block;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,#c7b600 0%, var(--yellow) 70%, #fff388 100%);
}
.momentum-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.momentum-stat{
  border-radius:14px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(12,12,12,.08);
  padding:10px 8px;
  text-align:center;
}
.momentum-stat b{
  display:block;
  color:#090909;
  font-size:20px;
  line-height:1.05;
}
.momentum-stat small{
  display:block;
  margin-top:3px;
  color:#666862;
  line-height:1.2;
  font-size:11px;
}
.momentum-card.elite{border-color:rgba(232,229,0,.34)}
.momentum-card.good .momentum-score{background:#121212}
.momentum-card.mid .momentum-score{color:#d8b600;border-color:rgba(216,182,0,.40)}
.momentum-card.warning .momentum-score{color:#ffdb57;border-color:rgba(160,106,0,.40)}
.momentum-card.warning .momentum-bar span{background:linear-gradient(90deg,#9d7a00 0%,#d4b100 55%,#ffe26c 100%)}

@media(max-width:760px){
  body[data-ui-mode="client"] .momentum-card{
    margin:14px 0 16px !important;
  }
  body[data-ui-mode="client"] .momentum-head h2{
    font-size:24px !important;
  }
  body[data-ui-mode="client"] .momentum-head p{
    color:#0e0e0e !important;
  }
  body[data-ui-mode="client"] .momentum-score{
    width:84px;
    min-width:84px;
    height:84px;
    font-size:28px;
  }
  body[data-ui-mode="client"] .momentum-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}


/* V1.32 — correction priorité couleurs Graphiques / Bibliothèque */
html,
body,
body[data-ui-mode="client"]{
  color-scheme:only light !important;
}

/* Titres et textes fonctionnels HORS zone graphique : toujours noirs */
@media(max-width:760px){
  body[data-ui-mode="client"] #app .client-metrics-page > .client-metrics-heading .page-title,
  body[data-ui-mode="client"] #app .client-metrics-page > .client-metrics-heading .page-intro,
  body[data-ui-mode="client"] #app .client-library-page > .page-title,
  body[data-ui-mode="client"] #app .client-library-page > .page-intro,
  body[data-ui-mode="client"] #app .client-library-page .resource-card .resource-type,
  body[data-ui-mode="client"] #app .client-library-page .resource-card h3,
  body[data-ui-mode="client"] #app .client-library-page .resource-card p,
  body[data-ui-mode="client"] #app .client-library-page .resource-card .muted{
    color:#090909 !important;
    -webkit-text-fill-color:#090909 !important;
    opacity:1 !important;
  }

  /* Bouton Nouvelle donnée : noir */
  body[data-ui-mode="client"] #app .client-metrics-heading #clientAddMetric{
    color:#090909 !important;
    -webkit-text-fill-color:#090909 !important;
    background:rgba(255,255,255,.88) !important;
    border:1px solid #090909 !important;
  }

  /* Sélection des courbes : actif = jaune, texte noir, contour noir fin */
  body[data-ui-mode="client"] #app .metric-tabs .metric-tab.active{
    background:var(--yellow) !important;
    color:#090909 !important;
    -webkit-text-fill-color:#090909 !important;
    border:1px solid #090909 !important;
    box-shadow:none !important;
  }

  /* Courbes non sélectionnées : noires avec texte blanc */
  body[data-ui-mode="client"] #app .metric-tabs .metric-tab:not(.active){
    background:#0b0b0b !important;
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
    border:1px solid #0b0b0b !important;
  }

  /* Dans le panneau noir du graphique : nom + infos restent blancs */
  body[data-ui-mode="client"] #app .metric-panel,
  body[data-ui-mode="client"] #app .metric-panel .metric-panel-head,
  body[data-ui-mode="client"] #app .metric-panel .metric-panel-head h2,
  body[data-ui-mode="client"] #app .metric-panel .metric-panel-info{
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
  }

  /* Zone de saisie sous le graphique : noir sur clair */
  body[data-ui-mode="client"] #app .metric-value-row,
  body[data-ui-mode="client"] #app .metric-value-row label{
    color:#090909 !important;
    -webkit-text-fill-color:#090909 !important;
  }

  /* Bibliothèque : bouton de ressource garde texte noir sur jaune */
  body[data-ui-mode="client"] #app .client-library-page .resource-card .btn.yellow{
    color:#090909 !important;
    -webkit-text-fill-color:#090909 !important;
    border:1px solid #090909 !important;
  }
}


/* V1.33 — Musiques + lecteur persistant */
.client-music-page .page-title,.client-music-page .page-intro{color:#090909!important}
.music-page-heading{margin-bottom:18px}
.music-album-card{margin:0 0 18px;padding:18px;border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(245,246,247,.94));border:1px solid rgba(9,9,9,.14);box-shadow:0 12px 26px rgba(0,0,0,.05)}
.music-album-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:12px}
.music-album-head h2{margin:3px 0 4px;font-family:'Cinzel',Georgia,serif;font-size:25px;color:#090909}
.music-album-head p{margin:0;color:#5f615d;font-size:11px}
.music-track-list{display:grid;gap:7px}
.music-track{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;min-height:62px;padding:10px 11px;border-radius:12px;border:1px solid #dedfdc;background:#fff}
.music-track.playing{border-color:#090909;box-shadow:inset 3px 0 0 var(--yellow)}
.music-track.locked{opacity:.58;background:#f1f2f1}
.music-track-number{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#0b0b0b;color:var(--yellow);font:800 10px 'Montserrat',Arial,sans-serif}
.music-track.locked .music-track-number{background:#dedfdb;color:#666}
.music-track-copy b{display:block;color:#090909;font-size:12px}
.music-track-copy span{display:block;margin-top:3px;color:#595b57;font-size:9.5px;line-height:1.3}
.music-track-copy small{display:block;margin-top:4px;color:#8c741b;font-size:8.5px;font-weight:700}
.music-track-play{width:38px;height:38px;border-radius:50%;border:1px solid #090909;background:var(--yellow);color:#090909;font-size:14px;cursor:pointer}
.music-track-play:disabled{opacity:.35;cursor:not-allowed}
.music-lock-label{font-size:8px;font-weight:800;color:#777;text-transform:uppercase}
.music-admin-list{display:grid;gap:10px}
.music-admin-track{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:center}
.music-admin-order{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#0b0b0b;color:var(--yellow);font:700 16px 'Cinzel',Georgia,serif}
.music-admin-copy h3{margin:3px 0 4px}.music-admin-copy p{margin:0 0 5px;color:#666}.music-admin-copy small{display:block;color:#777;font-size:9px;margin-top:2px}
.music-editor h2{font-family:'Cinzel',Georgia,serif;font-size:28px;font-weight:500;margin:4px 0 8px}
.music-editor-note{margin:12px 0 16px;padding:10px 12px;border-radius:10px;background:#fffed9;border:1px solid #e2df77;color:#5d5b22;font-size:10px;line-height:1.5}

.global-music-player{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:90;width:min(920px,calc(100vw - 28px));min-height:76px;display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 12px;border-radius:17px;background:rgba(8,8,8,.97);color:#fff;border:1px solid rgba(232,229,0,.38);box-shadow:0 18px 50px rgba(0,0,0,.32);backdrop-filter:blur(16px)}
.hidden-audio{display:none}
.music-player-art{width:52px;height:52px;border-radius:11px;display:grid;place-items:center;background:#191a17 center/cover no-repeat;color:var(--yellow);font-size:22px;border:1px solid #333}
.music-player-info{min-width:0}.music-player-info b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}.music-player-info span{display:block;margin:3px 0 7px;color:#aaa;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.music-player-progress{width:100%;accent-color:var(--yellow);height:4px}
.music-player-controls{display:flex;align-items:center;gap:5px}
.music-player-controls button{width:36px;height:36px;border-radius:10px;border:1px solid #393a35;background:#20211e;color:#fff;cursor:pointer;font-size:16px}
.music-player-controls .music-main-control{background:var(--yellow);color:#090909;border-color:#090909}.music-player-controls .music-stop-control{color:var(--yellow)}
body.music-playing-visible{padding-bottom:105px}

@media(max-width:760px){
  .global-music-player{left:8px;right:8px;bottom:calc(91px + env(safe-area-inset-bottom));transform:none;width:auto;min-height:68px;grid-template-columns:44px minmax(0,1fr) auto;gap:8px;padding:8px;border-radius:14px}
  .music-player-art{width:43px;height:43px;border-radius:9px}.music-player-info b{font-size:10.5px}.music-player-info span{font-size:8px;margin-bottom:4px}
  .music-player-controls{gap:3px}.music-player-controls button{width:30px;height:32px;border-radius:8px;font-size:13px}.music-player-controls #musicPrev{display:none}
  body.music-playing-visible main{padding-bottom:180px!important}
  .music-album-head{display:block}.music-album-head .btn{width:100%;margin-top:10px}
  .music-album-card{padding:14px 12px;border-radius:15px}.music-track{grid-template-columns:31px minmax(0,1fr) 36px;padding:9px}
  .music-admin-track{grid-template-columns:42px minmax(0,1fr);gap:10px}.music-admin-track>.btn{grid-column:1/-1;width:100%}
}

/* V1.34 — score protégé le jour J + droit au rattrapage */
.momentum-protection{
  margin-top:12px;display:grid;grid-template-columns:30px 1fr;gap:9px;align-items:center;
  padding:9px 10px;border-radius:12px;background:rgba(232,229,0,.10);
  border:1px solid rgba(150,137,0,.18)
}
.momentum-shield{
  width:28px;height:28px;border-radius:50%;display:grid;place-items:center;
  background:#0b0b0b;color:var(--yellow);font-size:9px
}
.momentum-protection b{display:block;color:#111;font-size:10px;margin-bottom:2px}
.momentum-protection small{display:block;color:#4f514c;font-size:9px;line-height:1.4}
@media(max-width:760px){
  body[data-ui-mode="client"] .momentum-protection b{color:#090909!important;-webkit-text-fill-color:#090909!important}
  body[data-ui-mode="client"] .momentum-protection small{color:#4b4d48!important;-webkit-text-fill-color:#4b4d48!important}
}


/* V1.35 — mouvement, NEAT, données physiques et check-in */
.movement-card,.daily-checkin-card{
  margin:16px 0 18px;padding:17px;border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(244,245,246,.94));
  border:1px solid rgba(10,10,10,.14);box-shadow:0 12px 26px rgba(0,0,0,.05);color:#0b0b0b
}
.movement-card-head,.daily-checkin-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.movement-card-head h2,.daily-checkin-head h2{font-family:'Cinzel',Georgia,serif;margin:4px 0 5px;font-weight:500;color:#0b0b0b}
.movement-card-head p,.daily-checkin-head p{margin:0;color:#565853;font-size:11px;line-height:1.5}
.movement-info-btn{
  width:34px;height:34px;border-radius:50%;border:1px solid #111;background:#fff;color:#111;font-weight:800;cursor:pointer
}
.movement-card-body{display:grid;grid-template-columns:160px 1fr;gap:18px;align-items:center;margin-top:14px}
.movement-donut{
  width:150px;height:150px;border-radius:50%;display:grid;place-items:center;
  background:conic-gradient(
    var(--yellow) 0 var(--neat-end),
    #dedfda var(--neat-end) 180deg,
    #111 180deg var(--train-end),
    #dedfda var(--train-end) 360deg
  );
  position:relative
}
.movement-donut:after{content:"";position:absolute;inset:22px;border-radius:50%;background:#fff;border:1px solid rgba(0,0,0,.08)}
.movement-donut-core{position:relative;z-index:1;text-align:center}
.movement-donut-core b{display:block;font-family:'Cinzel',Georgia,serif;font-size:30px;line-height:1;color:#0b0b0b}
.movement-donut-core span{display:block;margin-top:4px;color:#666;font-size:8px;text-transform:uppercase;letter-spacing:.08em}
.movement-summary h3{font-family:'Cinzel',Georgia,serif;margin:0 0 5px;font-size:22px;color:#0b0b0b}
.movement-summary>p{margin:0 0 12px;color:#444641;line-height:1.5;font-size:11px}
.movement-legend{display:grid;gap:8px}
.movement-legend>div{display:grid;grid-template-columns:12px auto 1fr;gap:7px;align-items:center}
.legend-dot{width:9px;height:9px;border-radius:50%}.legend-dot.neat{background:var(--yellow);border:1px solid #111}.legend-dot.training{background:#111}
.movement-legend b{font-size:10px}.movement-legend small{color:#62645f;font-size:9px}
.movement-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}
.daily-checkin-head{align-items:center}
.checkin-saved{font-size:9px;font-weight:800;color:#4f6c30;border:1px solid #a9c58d;background:#eef7e7;border-radius:999px;padding:6px 9px;white-space:nowrap}
.checkin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:15px 0 12px}
.checkin-grid label{display:block;padding:10px;border-radius:12px;background:#fff;border:1px solid #dddeda}
.checkin-grid label>span{display:flex;justify-content:space-between;gap:5px;font-size:10px;color:#111}.checkin-grid label b{color:#111}
.checkin-grid input{width:100%;accent-color:var(--yellow);margin-top:8px}
.checkin-save{width:100%}
.range-readout{margin-top:4px;font-size:11px;font-weight:700;color:#111}
.movement-tips-modal h2,.health-profile-modal h2,.health-connect-modal h2,.health-app-modal h2{font-family:'Cinzel',Georgia,serif;font-weight:500;margin:4px 0 8px}
.tips-list{display:grid;gap:7px;margin:15px 0}
.tips-list>div{display:grid;grid-template-columns:34px 1fr;gap:8px;align-items:center;padding:10px;border-radius:11px;background:#f5f6f5;border:1px solid #deded8}
.tips-list b{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#111;color:var(--yellow);font-size:9px}
.tips-list span{font-size:11px;color:#181916}
.tips-target{margin:12px 0;padding:11px;border-radius:10px;background:#fffed2;border:1px solid #dfdb59;color:#4a491b;font-size:11px}
.manual-steps-box,.health-consent-box{margin:13px 0;padding:13px;border-radius:13px;background:#f5f6f5;border:1px solid #deded8}
.manual-steps-box label{display:block;font-size:10px;font-weight:800;margin-bottom:7px}.manual-steps-box>div{display:flex;gap:7px}.manual-steps-box input{flex:1;min-width:0;padding:10px;border:1px solid #bbb;border-radius:9px}
.health-consent-box h3,.compatible-apps h3{font-family:'Cinzel',Georgia,serif;margin:0 0 9px}
.health-consent-box label{display:block;font-size:10px;line-height:1.5}.health-consent-box select{width:100%;margin:10px 0;padding:10px;border-radius:9px;border:1px solid #bbb;background:#fff}
.health-consent-box small{display:block;margin-top:8px;color:#777;line-height:1.45}
.compatible-apps{margin-top:16px}.compatible-apps article{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid #e2e2dd}
.compatible-apps article b{display:block;font-size:11px}.compatible-apps article span{display:block;font-size:8px;color:#7b6416;font-weight:800;text-transform:uppercase;margin-top:2px}.compatible-apps article p{margin:4px 0 0;font-size:9px;color:#666;line-height:1.4}
.mentor-wellness-section{margin-top:28px}
.mentor-wellness-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.mentor-wellness-card{padding:14px;border-radius:14px;background:#fff;border:1px solid #deded8;box-shadow:var(--shadow-soft)}
.mentor-wellness-name{display:flex;justify-content:space-between;gap:8px;align-items:center}.mentor-wellness-name span{font-size:8px;text-transform:uppercase;color:#777;font-weight:800}
.mentor-wellness-values{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px}.mentor-wellness-values span{text-align:center;background:#f6f6f3;border-radius:9px;padding:8px 5px}.mentor-wellness-values b{display:block;color:#111}.mentor-wellness-values small{font-size:8px;color:#777}
.mentor-client-integrations{margin-top:20px}.health-app-admin-list{display:grid;gap:7px}.health-app-admin-list>div{padding:8px 0;border-bottom:1px solid #e2e2dd}.health-app-admin-list b{display:block}.health-app-admin-list span{display:block;color:#8b7217;font-size:8px;font-weight:800;text-transform:uppercase}.health-app-admin-list small{display:block;color:#666;margin-top:3px}.health-app-admin-list a{font-size:9px}

@media(max-width:760px){
  body[data-ui-mode="client"] .movement-card,
  body[data-ui-mode="client"] .daily-checkin-card{color:#090909!important}
  body[data-ui-mode="client"] .movement-card h2,
  body[data-ui-mode="client"] .movement-card h3,
  body[data-ui-mode="client"] .daily-checkin-card h2,
  body[data-ui-mode="client"] .movement-card p,
  body[data-ui-mode="client"] .daily-checkin-card p{color:#090909!important;-webkit-text-fill-color:#090909!important}
  .movement-card-body{grid-template-columns:118px minmax(0,1fr);gap:12px}
  .movement-donut{width:114px;height:114px}.movement-donut:after{inset:17px}.movement-donut-core b{font-size:24px}
  .movement-summary h3{font-size:18px}.movement-legend>div{grid-template-columns:10px 52px 1fr;gap:5px}.movement-legend small{font-size:8px}
  .movement-actions .btn{flex:1 1 135px;color:#090909!important;-webkit-text-fill-color:#090909!important}
  .checkin-grid{grid-template-columns:1fr;gap:7px}.checkin-grid label{padding:8px 10px}
  .daily-checkin-head{display:block}.checkin-saved{display:inline-flex;margin-top:8px}
  .mentor-wellness-grid{grid-template-columns:1fr}
}


/* V1.36 — humeur qualitative + push quotidiens */
.mood-checkin-field{grid-column:1/-1;padding:10px;border-radius:12px;background:#fff;border:1px solid #dddeda}
.mood-field-title{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#111;margin-bottom:9px}
.mood-field-title b{color:#111;font-size:11px}
.mood-choice-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}
.mood-choice{min-height:38px;padding:6px 4px;border-radius:9px;border:1px solid #cacbc7;background:#f4f5f4;color:#282924;font-size:9px;font-weight:700;cursor:pointer}
.mood-choice.active{background:var(--yellow);color:#090909;border:1px solid #090909;box-shadow:none}

.mentor-push-settings{margin:28px 0}
.mentor-push-settings h2{font-family:'Cinzel',Georgia,serif;margin:4px 0 6px}
.push-setting-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0}
.push-setting-grid>label{padding:12px;border-radius:12px;background:#f6f6f3;border:1px solid #deded8}
.push-setting-grid>label>span{display:block;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}
.push-setting-grid>label>div{display:flex;align-items:center;gap:9px}
.push-setting-grid input[type="time"]{flex:1;padding:8px;border:1px solid #bbb;border-radius:8px;background:#fff}
.mentor-push-settings textarea{width:100%;border:1px solid #bbb;border-radius:10px;padding:11px;background:#fff;color:#111}

.client-notification-modal h2{font-family:'Cinzel',Georgia,serif;font-weight:500;margin:4px 0 8px}
.client-notification-modal>p{color:#5e605a;line-height:1.5}
.client-notif-options{display:grid;gap:9px;margin:14px 0}
.client-notif-options label{padding:11px;border-radius:11px;border:1px solid #deded8;background:#f6f6f3;color:#111;font-size:11px}
.client-notification-modal>small{display:block;margin-top:10px;color:#777;line-height:1.5;font-size:9px}

@media(max-width:760px){
  .mood-choice-row{grid-template-columns:repeat(5,minmax(54px,1fr));overflow-x:auto;padding-bottom:2px}
  .mood-choice{font-size:8.5px;min-height:40px}
  body[data-ui-mode="client"] .mood-field-title,
  body[data-ui-mode="client"] .mood-field-title b,
  body[data-ui-mode="client"] .mood-choice:not(.active){color:#090909!important;-webkit-text-fill-color:#090909!important}
  body[data-ui-mode="client"] .mood-choice.active{color:#090909!important;-webkit-text-fill-color:#090909!important;background:var(--yellow)!important;border:1px solid #090909!important}
  .push-setting-grid{grid-template-columns:1fr}
}


/* V1.37 — personnalisation client + catégories graphiques */
.qualitative-grid{display:grid;grid-template-columns:1fr;gap:8px}
.qualitative-checkin-field{padding:10px;border-radius:12px;background:#fff;border:1px solid #dddeda}
.featured-metrics-title{display:flex;justify-content:space-between;gap:12px;align-items:flex-end;margin:12px 0 10px}
.featured-metrics-title h2{margin:3px 0 3px;font-family:'Cinzel',Georgia,serif;color:#090909}
.featured-metrics-title p{margin:0;color:#656762;font-size:10px}
.featured-metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.featured-metric-card{min-width:0;padding:12px;border-radius:15px;background:#080808;border:1px solid #111;box-shadow:0 12px 26px rgba(0,0,0,.09);color:#fff}
.featured-metric-head{display:flex;justify-content:space-between;gap:8px;align-items:flex-start;margin-bottom:7px}
.featured-metric-head h3{margin:2px 0;font-family:'Cinzel',Georgia,serif;font-size:16px;color:#fff}
.featured-metric-head span{font-size:8.5px;color:#bbb}
.metric-category-label{font-size:7.5px;font-weight:800;color:var(--yellow);text-transform:uppercase;letter-spacing:.09em}
.featured-chart{width:100%;height:180px;border:1px solid #292929;border-radius:9px}
.featured-metric-actions{display:flex;gap:6px;margin-top:8px}
.metric-pin{width:32px;height:32px;border-radius:50%;border:1px solid #171717;background:#fff;color:#111;cursor:pointer;font-size:16px}
.featured-metric-card .metric-pin{background:#171717;color:var(--yellow);border-color:#555}
.metric-pin.active{background:var(--yellow);color:#090909;border:1px solid #090909}
.metric-categories-wrap{margin-top:22px;display:grid;gap:18px}
.metric-category-section{padding-top:4px}
.metric-category-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(0,0,0,.13);padding-bottom:7px;margin-bottom:8px}
.metric-category-head h2{margin:0;font-family:'Cinzel',Georgia,serif;font-size:21px;color:#090909}
.metric-category-head span{font-size:8px;color:#777;text-transform:uppercase;font-weight:800}
.metric-category-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.metric-category-item{display:grid;grid-template-columns:1fr 34px 34px;gap:5px;align-items:center;padding:8px;border-radius:11px;background:rgba(255,255,255,.9);border:1px solid rgba(0,0,0,.12)}
.metric-main-open{border:0;background:transparent;text-align:left;cursor:pointer;min-width:0}
.metric-main-open b{display:block;color:#090909;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.metric-main-open span{display:block;margin-top:3px;color:#656762;font-size:9px}
.metric-quick-entry{width:32px;height:32px;border-radius:9px;background:#111;color:var(--yellow);border:1px solid #111;cursor:pointer}
.metric-detail-modal h2,.metric-entry-modal h2,.client-settings-modal h2,.mentor-client-metrics-modal>h1{font-family:'Cinzel',Georgia,serif;font-weight:500}
.detail-metric-chart{width:100%;height:300px;border-radius:10px;background:#080808}
.client-settings-modal h3{font-family:'Cinzel',Georgia,serif;margin:20px 0 8px}
.client-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.client-setting-toggle{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px;border-radius:11px;background:#f6f6f3;border:1px solid #deded8}
.client-setting-toggle span{min-width:0}.client-setting-toggle b{display:block;color:#111;font-size:10px}.client-setting-toggle small{display:block;color:#71736d;font-size:8px;margin-top:2px}
.client-push-mentor{margin:18px 0;padding:12px;border-radius:12px;background:#fffed8;border:1px solid #dfda5f}.client-push-mentor h3{margin:0 0 8px}.client-push-mentor label{display:block;font-size:10px;margin:7px 0}
.mentor-client-row-actions{display:flex;gap:5px;flex-wrap:wrap}
.mentor-client-metrics-modal .featured-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.mentor-client-metrics-modal .metric-category-item{grid-template-columns:1fr}
.mentor-metrics-dashboard .metric-pin,.mentor-metrics-dashboard .metric-quick-entry{display:none}

@media(max-width:760px){
  .featured-metric-grid{grid-template-columns:1fr}
  .featured-chart{height:190px}
  .metric-category-list{grid-template-columns:1fr}
  .client-settings-grid{grid-template-columns:1fr}
  .metric-category-item{grid-template-columns:1fr 34px 34px}
  body[data-ui-mode="client"] .featured-metrics-title h2,
  body[data-ui-mode="client"] .metric-category-head h2,
  body[data-ui-mode="client"] .metric-main-open b,
  body[data-ui-mode="client"] .metric-main-open span{color:#090909!important;-webkit-text-fill-color:#090909!important}
  .mentor-client-metrics-modal .featured-metric-grid{grid-template-columns:1fr}
}


/* V1.38 — état du jour cockpit + mail */
.mentor-wellness-section{margin-top:28px}
.mentor-wellness-heading{margin-bottom:10px}
.mentor-wellness-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.mentor-wellness-card{padding:14px;border-radius:14px;background:#fff;border:1px solid #deded8;box-shadow:var(--shadow-soft)}
.mentor-wellness-card.alert{border-color:#d6a05a;background:#fffaf3}
.mentor-wellness-card.no-data{background:#f5f5f2}
.mentor-wellness-name{display:flex;justify-content:space-between;gap:8px;align-items:center}
.mentor-wellness-name>div{min-width:0}
.mentor-wellness-name b{display:block;color:#111}
.mentor-wellness-name span{display:block;margin-top:3px;font-size:8px;text-transform:uppercase;color:#777;font-weight:800}
.mentor-wellness-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:10px}
.mentor-wellness-values span{text-align:center;background:#f6f6f3;border-radius:9px;padding:9px 5px;border:1px solid #ecece8}
.mentor-wellness-values span.low{background:#fff1df;border-color:#edc58c}
.mentor-wellness-values b{display:block;color:#111;font-size:11px}
.mentor-wellness-values small{display:block;margin-top:3px;font-size:8px;color:#777}
.mentor-wellness-empty{margin-top:11px;color:#777;font-size:10px}
.digest-state{margin:7px 0 9px;padding:8px 10px;border-radius:9px;background:#f6f6f3;border:1px solid #e2e2dd;font-size:10px;color:#222}
.digest-state span.alert{color:#9b4e19;font-weight:700}
@media(max-width:900px){.mentor-wellness-grid{grid-template-columns:1fr}}


/* V1.39 — état explicitement "Désactivé" */
.mentor-wellness-card.disabled{
  background:#f1f1ee;
  border-color:#d5d5cf;
}
.mentor-wellness-values span.disabled{
  background:#eeeeea;
  border-color:#d7d7d1;
}
.mentor-wellness-values span.disabled b{
  color:#858681;
  font-size:9px;
}
.digest-state span.disabled{
  color:#858681;
  font-style:italic;
}


/* V1.40 — check-in séquentiel + menu mobile + couleurs claires */

/* Check-in : un seul état à la fois */
.sequential-checkin-card{
  min-height:190px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.sequential-checkin-progress{
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:1fr;
  gap:6px;
  margin-bottom:15px;
}
.sequential-checkin-progress span{
  height:4px;border-radius:999px;background:#d8d9d5;
}
.sequential-checkin-progress span.active,
.sequential-checkin-progress span.done{
  background:var(--yellow);
}
.sequential-quality{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:6px;
  margin-top:16px;
}
.sequential-quality .mood-choice{
  min-height:46px;
  font-size:10px;
}
.checkin-complete-card{
  min-height:116px;
  display:grid;
  grid-template-columns:46px 1fr;
  gap:12px;
  align-items:center;
}
.checkin-complete-mark{
  width:42px;height:42px;border-radius:50%;
  display:grid;place-items:center;
  background:#10110f;color:var(--yellow);
  border:1px solid rgba(232,229,0,.55);
  font-size:19px;font-weight:800
}
.checkin-complete-card h2{
  margin:3px 0 5px;
  font-family:'Cinzel',Georgia,serif;
  font-size:21px;
}
.checkin-complete-card p{margin:0;line-height:1.5}
.checkin-cadence-setting{
  margin:0 0 10px;
  padding:11px;
  border-radius:11px;
  background:#f6f6f3;
  border:1px solid #deded8;
}
.checkin-cadence-setting label{
  display:block;
  font-size:10px;
  font-weight:800;
  color:#111;
  margin-bottom:6px;
}
.checkin-cadence-setting select{
  width:100%;
  padding:9px 10px;
  border:1px solid #bbb;
  border-radius:9px;
  background:#fff;
  color:#111;
}
.checkin-cadence-setting small{
  display:block;
  color:#71736d;
  font-size:8px;
  margin-top:5px;
}

/* SVG menu */
.mainnav .nav-ico svg{
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

/* Couleurs noires forcées sur les zones CLAIRES client */
@media(max-width:760px){
  body[data-ui-mode="client"] main .client-calendar-head,
  body[data-ui-mode="client"] main .momentum-card,
  body[data-ui-mode="client"] main .movement-card,
  body[data-ui-mode="client"] main .daily-checkin-card,
  body[data-ui-mode="client"] main .metric-category-section,
  body[data-ui-mode="client"] main .client-library-page,
  body[data-ui-mode="client"] main .music-album-card,
  body[data-ui-mode="client"] main .resource-card,
  body[data-ui-mode="client"] main .daycol{
    color:#090909 !important;
    -webkit-text-fill-color:#090909 !important;
  }

  body[data-ui-mode="client"] main .client-calendar-head :is(h1,h2,h3,p,span,b,strong,small,label),
  body[data-ui-mode="client"] main .momentum-card :is(h1,h2,h3,p,span,b,strong,small,label),
  body[data-ui-mode="client"] main .movement-card :is(h1,h2,h3,p,span,b,strong,small,label),
  body[data-ui-mode="client"] main .daily-checkin-card :is(h1,h2,h3,p,span,b,strong,small,label),
  body[data-ui-mode="client"] main .metric-category-section :is(h1,h2,h3,p,span,b,strong,small,label),
  body[data-ui-mode="client"] main .client-library-page :is(h1,h2,h3,p,span,b,strong,small,label),
  body[data-ui-mode="client"] main .music-album-card :is(h1,h2,h3,p,span,b,strong,small,label),
  body[data-ui-mode="client"] main .resource-card :is(h1,h2,h3,p,span,b,strong,small,label),
  body[data-ui-mode="client"] main .daycol :is(h1,h2,h3,p,span,b,strong,small,label){
    color:#090909 !important;
    -webkit-text-fill-color:#090909 !important;
  }

  /* Exceptions voulues : jaune/noir */
  body[data-ui-mode="client"] main .hero-kicker,
  body[data-ui-mode="client"] main .section-eyebrow{
    color:#8b6d12 !important;
    -webkit-text-fill-color:#8b6d12 !important;
  }
  body[data-ui-mode="client"] main .client-primary-calendar .daycol.today .client-day-label{
    color:var(--yellow) !important;
    -webkit-text-fill-color:var(--yellow) !important;
    text-shadow:0 1px 1px rgba(0,0,0,.22);
  }
  body[data-ui-mode="client"] main .featured-metric-card,
  body[data-ui-mode="client"] main .featured-metric-card :is(h1,h2,h3,p,span,b,strong,small,label){
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
  }
  body[data-ui-mode="client"] main .featured-metric-card .metric-category-label,
  body[data-ui-mode="client"] main .featured-metric-card .metric-pin.active{
    color:var(--yellow) !important;
    -webkit-text-fill-color:var(--yellow) !important;
  }

  /* Menu : plus grand sans agrandir le rectangle */
  body[data-ui-mode="client"] .mainnav button{
    min-height:64px !important;
    height:64px !important;
    padding:4px 3px 5px !important;
    gap:2px !important;
    font-size:10.5px !important;
  }
  body[data-ui-mode="client"] .mainnav button .nav-ico{
    width:32px !important;
    height:32px !important;
    padding:4px !important;
    border-radius:9px !important;
  }
  body[data-ui-mode="client"] .mainnav button .nav-label{
    font-size:10.5px !important;
    line-height:1 !important;
    font-weight:800 !important;
  }
  body[data-ui-mode="client"] .mainnav button:not(.active) .nav-label{
    color:#090909 !important;
    -webkit-text-fill-color:#090909 !important;
  }
  body[data-ui-mode="client"] .mainnav button:not(.active) .nav-ico{
    color:#090909 !important;
    -webkit-text-fill-color:#090909 !important;
  }
  body[data-ui-mode="client"] .mainnav button.active .nav-label{
    color:#090909 !important;
    -webkit-text-fill-color:#090909 !important;
  }

  .sequential-quality{
    grid-template-columns:repeat(5,minmax(55px,1fr));
    overflow-x:auto;
    padding-bottom:2px;
  }
  .sequential-quality .mood-choice{
    min-height:44px;
    color:#090909 !important;
    -webkit-text-fill-color:#090909 !important;
  }
}

@media(max-width:390px){
  body[data-ui-mode="client"] .mainnav button{
    min-height:60px !important;
    height:60px !important;
    font-size:9.5px !important;
    padding:3px 2px 4px !important;
  }
  body[data-ui-mode="client"] .mainnav button .nav-ico{
    width:29px !important;
    height:29px !important;
  }
  body[data-ui-mode="client"] .mainnav button .nav-label{
    font-size:9.5px !important;
  }
}


/* V1.41 — confirmation check-in temporaire */
.checkin-temporary-thanks{
  animation:checkinThanksIn .22s ease both;
}
@keyframes checkinThanksIn{
  from{opacity:0;transform:translateY(4px)}
  to{opacity:1;transform:translateY(0)}
}


/* V1.42 — Check-in en premier + sélection groupée + Vimeo LIVE + finitions */

/* Menu mobile : équilibre vertical autour de Force & Honneur */
@media(max-width:760px){
  body[data-ui-mode="client"] .mainnav{
    padding-top:7px !important;
    padding-left:10px !important;
    padding-right:10px !important;
    padding-bottom:calc(7px + env(safe-area-inset-bottom)) !important;
    row-gap:6px !important;
  }
  body[data-ui-mode="client"] .mobile-nav-motto{
    margin:0 !important;
    padding:0 !important;
    min-height:11px;
    line-height:11px !important;
    display:flex !important;
    align-items:center;
    justify-content:center;
  }

  /* Ombre légère et cohérente des en-têtes client */
  body[data-ui-mode="client"] .client-calendar-head .hero-kicker,
  body[data-ui-mode="client"] .client-calendar-head .page-title,
  body[data-ui-mode="client"] .client-calendar-head .page-intro,
  body[data-ui-mode="client"] .client-home-hero .hero-kicker,
  body[data-ui-mode="client"] .client-home-hero h1,
  body[data-ui-mode="client"] .client-home-hero p,
  body[data-ui-mode="client"] .client-metrics-heading .page-title,
  body[data-ui-mode="client"] .client-metrics-heading .page-intro,
  body[data-ui-mode="client"] .music-page-heading .hero-kicker,
  body[data-ui-mode="client"] .music-page-heading .page-title,
  body[data-ui-mode="client"] .music-page-heading .page-intro,
  body[data-ui-mode="client"] .client-library-page > .page-title,
  body[data-ui-mode="client"] .client-library-page > .page-intro{
    text-shadow:0 1px 2px rgba(0,0,0,.18) !important;
  }

  /* Le check-in est le premier bloc : pas de marge haute superflue */
  body[data-ui-mode="client"] main > .daily-checkin-card:first-child{
    margin-top:0 !important;
  }
}

/* Réglages groupés Mentor */
.bulk-selected-count{
  font-size:10px;
  font-weight:800;
  color:#686963;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.bulk-check-col{
  width:42px;
  text-align:center !important;
}
.mentor-clients-table input[type="checkbox"]{
  width:17px;height:17px;accent-color:var(--yellow);
}
.bulk-client-settings-modal h2{
  font-family:'Cinzel',Georgia,serif;
  font-weight:500;
  margin:4px 0 4px;
}
.bulk-client-settings-modal h3{
  font-family:'Cinzel',Georgia,serif;
  font-weight:500;
  margin:20px 0 8px;
}
.bulk-quick-actions{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin:14px 0 6px;
}
.bulk-settings-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
}
.bulk-setting-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) 150px;
  gap:10px;
  align-items:center;
  padding:10px;
  border-radius:11px;
  background:#f6f6f3;
  border:1px solid #deded8;
}
.bulk-setting-row b{display:block;color:#111;font-size:10px}
.bulk-setting-row small{display:block;color:#71736d;font-size:8px;margin-top:2px}
.bulk-setting-row select{
  width:100%;
  padding:8px;
  border:1px solid #bbb;
  border-radius:8px;
  background:#fff;
  color:#111;
}
.bulk-save-main{
  width:100%;
  margin-top:20px;
}

/* Session LIVE Vimeo intégrée */
.live-session-video .exercise-video-wrap{
  background:#000;
}
.live-video-tools{
  display:flex;
  align-items:center;
  gap:12px;
  margin:12px 0 3px;
  padding:10px;
  border-radius:11px;
  background:#f5f5f2;
  border:1px solid #deded8;
}
.live-video-tools small{
  color:#646660;
  font-size:9px;
  line-height:1.4;
}

@media(max-width:760px){
  .bulk-settings-grid{grid-template-columns:1fr}
  .bulk-setting-row{grid-template-columns:minmax(0,1fr) 130px}
  .mentor-clients-table{min-width:760px}
  .live-video-tools{
    display:grid;
    grid-template-columns:1fr;
  }
  .live-video-tools .btn{width:100%}
}


/* V1.43 — hiérarchie accueil, tablette premium, fin de page propre */

/* Bonjour toujours au-dessus du check-in */
.client-top-greeting{
  margin:0 0 10px;
  font-family:'Montserrat',Arial,sans-serif;
  font-size:12px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.08em;
  color:#775f18;
  text-transform:uppercase;
  text-shadow:0 1px 2px rgba(0,0,0,.18);
}

/* Mouvement volontairement tout en bas */
.movement-bottom-zone{
  margin-top:20px;
}
.movement-bottom-zone .movement-card{
  margin-bottom:0;
}

/* MOBILE — supprimer le double espace qui obligeait à scroller pour rien */
@media(max-width:760px){
  body{
    padding-bottom:0 !important;
  }
  body[data-ui-mode="client"] main{
    /* hauteur nav ≈ 92 px + un seul espace visuel équivalent aux blocs */
    padding-bottom:calc(112px + env(safe-area-inset-bottom)) !important;
  }
  body[data-ui-mode="client"].music-playing-visible main{
    padding-bottom:calc(184px + env(safe-area-inset-bottom)) !important;
  }

  body[data-ui-mode="client"] .client-top-greeting{
    margin:1px 0 9px;
    padding-left:2px;
    color:#765d13 !important;
    -webkit-text-fill-color:#765d13 !important;
    font-size:11px;
  }

  /* la zone "actions" est prioritaire avant le bilan */
  body[data-ui-mode="client"] .client-primary-calendar{
    margin-bottom:10px !important;
  }
  body[data-ui-mode="client"] .client-calendar-footnote{
    margin-bottom:16px !important;
  }
  body[data-ui-mode="client"] .momentum-card{
    margin-top:0 !important;
    margin-bottom:18px !important;
  }
  body[data-ui-mode="client"] .movement-bottom-zone{
    margin-top:0 !important;
  }
}

/* TABLETTE CLIENT — même univers visuel, gestes tactiles et espace optimisé */
@media(min-width:761px) and (max-width:1180px){
  body[data-ui-mode="client"]{
    background:var(--li-client-mobile-bg) !important;
    background-attachment:fixed !important;
    color:#171815 !important;
    padding-bottom:0 !important;
  }

  body[data-ui-mode="client"] .admin-access{
    display:none !important;
  }

  body[data-ui-mode="client"] .brandbar{
    position:sticky;
    top:0;
    z-index:40;
    min-height:112px;
    padding:12px 24px !important;
    background:var(--li-header-bg) !important;
  }
  body[data-ui-mode="client"] .brand-logo-wrap{
    width:76px !important;
    height:76px !important;
  }
  body[data-ui-mode="client"] .brand-title{
    font-size:clamp(30px,4.2vw,42px) !important;
  }
  body[data-ui-mode="client"] .brand-sub{
    font-size:clamp(18px,2.5vw,24px) !important;
  }

  body[data-ui-mode="client"] main{
    max-width:1060px;
    padding:26px 28px calc(126px + env(safe-area-inset-bottom)) !important;
  }

  /* même navigation que mobile, agrandie pour le tactile */
  body[data-ui-mode="client"] .mainnav{
    position:fixed !important;
    top:auto !important;
    bottom:0 !important;
    left:50% !important;
    right:auto !important;
    transform:translateX(-50%);
    width:min(820px,calc(100vw - 32px));
    z-index:50;
    display:grid !important;
    grid-template-columns:repeat(var(--nav-count),minmax(0,1fr));
    gap:10px !important;
    padding:9px 14px calc(9px + env(safe-area-inset-bottom)) !important;
    border:1px solid rgba(25,25,23,.10);
    border-bottom:0;
    border-radius:22px 22px 0 0;
    background:linear-gradient(180deg,rgba(248,249,249,.985),rgba(232,234,235,.985)) !important;
    box-shadow:0 -12px 34px rgba(0,0,0,.10);
  }
  body[data-ui-mode="client"] .mainnav button{
    min-height:68px;
    padding:5px 6px 6px !important;
    border-radius:15px;
    display:flex !important;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:4px;
    color:#090909 !important;
    background:rgba(255,255,255,.70) !important;
    border:1px solid rgba(9,9,9,.08) !important;
  }
  body[data-ui-mode="client"] .mainnav button .nav-ico{
    display:grid !important;
    place-items:center;
    width:34px;
    height:34px;
    padding:5px;
    color:#090909 !important;
    background:rgba(255,255,255,.88);
    border-radius:10px;
  }
  body[data-ui-mode="client"] .mainnav button .nav-label{
    display:block !important;
    font-size:11px;
    font-weight:800;
    line-height:1;
    color:#090909 !important;
  }
  body[data-ui-mode="client"] .mainnav button.active{
    background:var(--yellow) !important;
    border-color:#090909 !important;
  }
  body[data-ui-mode="client"] .mainnav button.active .nav-ico{
    background:#111 !important;
    color:var(--yellow) !important;
  }
  body[data-ui-mode="client"] .mobile-nav-motto{
    display:flex !important;
    grid-column:1/-1;
    min-height:12px;
    align-items:center;
    justify-content:center;
    margin:0;
    padding:0;
    font-family:'Cinzel',Georgia,serif;
    font-size:10px;
    color:#a17e12 !important;
    letter-spacing:.18em;
  }

  /* contenu tablette : fluide, sans bloc étiré inutilement */
  body[data-ui-mode="client"] .client-top-greeting{
    font-size:12px;
    margin-bottom:11px;
  }
  body[data-ui-mode="client"] .daily-checkin-card{
    max-width:100%;
  }
  body[data-ui-mode="client"] .client-calendar-head{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:18px;
    align-items:end;
  }
  body[data-ui-mode="client"] .client-calendar-tools{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    justify-content:flex-end;
  }
  body[data-ui-mode="client"] .daystrip.client-primary-calendar{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:14px !important;
  }
  body[data-ui-mode="client"] .daycol{
    min-height:210px;
  }
  body[data-ui-mode="client"] .momentum-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
  body[data-ui-mode="client"] .movement-card-body{
    grid-template-columns:180px minmax(0,1fr);
  }

  /* Graphiques, Musiques, Bibliothèque */
  body[data-ui-mode="client"] .featured-metric-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  body[data-ui-mode="client"] .metric-category-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  body[data-ui-mode="client"] .music-track{
    min-height:68px;
  }
  body[data-ui-mode="client"] .client-library-page .grid-3{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  /* les mêmes ombres textuelles que mobile */
  body[data-ui-mode="client"] .client-top-greeting,
  body[data-ui-mode="client"] .client-calendar-head .page-title,
  body[data-ui-mode="client"] .client-calendar-head .page-intro,
  body[data-ui-mode="client"] .client-metrics-heading .page-title,
  body[data-ui-mode="client"] .client-metrics-heading .page-intro,
  body[data-ui-mode="client"] .music-page-heading .page-title,
  body[data-ui-mode="client"] .music-page-heading .page-intro,
  body[data-ui-mode="client"] .client-library-page > .page-title,
  body[data-ui-mode="client"] .client-library-page > .page-intro{
    text-shadow:0 1px 2px rgba(0,0,0,.16);
  }

  body[data-ui-mode="client"].music-playing-visible main{
    padding-bottom:210px !important;
  }
  body[data-ui-mode="client"] .global-music-player{
    bottom:112px;
    width:min(780px,calc(100vw - 56px));
  }
}

/* tablette paysage : garder les proportions sans étaler l'interface */
@media(min-width:900px) and (max-width:1180px) and (orientation:landscape){
  body[data-ui-mode="client"] main{
    max-width:1100px;
    padding-left:34px !important;
    padding-right:34px !important;
  }
  body[data-ui-mode="client"] .client-calendar-head{
    grid-template-columns:minmax(0,1fr) 330px;
  }
}


/* V1.44 — favoris compacts, catégories déroulantes, objectif vert, retour global */

/* 3 boutons favoris au-dessus d'un seul graphique */
.featured-metric-switcher{display:grid;gap:9px}
.featured-metric-tabs{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:7px;
}
.featured-metric-tab{
  min-height:40px;
  padding:8px 9px;
  border-radius:10px;
  border:1px solid #111;
  background:#111;
  color:#fff;
  font-size:10px;
  font-weight:800;
  cursor:pointer;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.featured-metric-tab.active{
  background:var(--yellow);
  color:#090909;
  border:1px solid #090909;
}
.featured-metric-focus{
  padding:14px;
  border-radius:16px;
  background:#080808;
  border:1px solid #111;
  color:#fff;
  box-shadow:0 12px 28px rgba(0,0,0,.10);
}
.featured-metric-focus .featured-chart{
  width:100%;
  height:260px;
}
.featured-metric-focus .featured-metric-head h3{color:#fff}
.featured-metric-focus .featured-metric-head span{color:#bbb}

/* Catégories cliquables / repliables */
.metric-category-details{
  border:1px solid rgba(0,0,0,.13);
  border-radius:13px;
  background:rgba(255,255,255,.72);
  overflow:hidden;
}
.metric-category-summary{
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-height:50px;
  padding:11px 13px;
  cursor:pointer;
  user-select:none;
}
.metric-category-summary::-webkit-details-marker{display:none}
.metric-category-summary b{
  display:block;
  font-family:'Cinzel',Georgia,serif;
  font-size:17px;
  color:#090909;
}
.metric-category-summary small{
  display:block;
  margin-top:2px;
  color:#71736d;
  font-size:8px;
  text-transform:uppercase;
  font-weight:800;
}
.category-chevron{
  color:#111;
  font-size:21px;
  transition:transform .18s ease;
}
.metric-category-details[open] .category-chevron{transform:rotate(180deg)}
.metric-category-details .metric-category-list{
  padding:0 10px 10px;
}
.metric-categories-wrap{gap:9px}

/* Bouton Retour automatique pour tout écran modal qui masque le menu bas */
.modal-auto-back{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  margin:0 0 14px;
  padding:8px 12px;
  border-radius:10px;
  border:1px solid #20211e;
  background:#fff;
  color:#111;
  font-size:10px;
  font-weight:800;
  cursor:pointer;
}
.metric-entry-modal .modal-auto-back{
  margin-bottom:16px;
}

/* Réglage mentor ligne d'objectif */
.metric-target-settings{
  display:grid;
  gap:7px;
  margin-bottom:16px;
}
.metric-target-setting{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(160px,220px);
  gap:10px;
  align-items:center;
  padding:10px;
  border-radius:11px;
  background:#f6f6f3;
  border:1px solid #deded8;
}
.metric-target-toggle{
  display:flex;
  gap:8px;
  align-items:center;
  color:#111;
  font-size:10px;
  font-weight:800;
}
.metric-target-toggle input{accent-color:#45c96b}
.metric-target-value-wrap{
  display:grid;
  grid-template-columns:1fr auto;
  gap:6px;
  align-items:center;
}
.metric-target-value-wrap input{
  min-width:0;
  width:100%;
  padding:8px;
  border:1px solid #bbb;
  border-radius:8px;
  background:#fff;
  color:#111;
}
.metric-target-value-wrap span{
  color:#666;
  font-size:9px;
  font-weight:700;
}

@media(max-width:760px){
  body[data-ui-mode="client"] .featured-metric-grid{
    display:block !important;
  }
  .featured-metric-tabs{
    grid-template-columns:repeat(3,minmax(92px,1fr));
    overflow-x:auto;
    padding-bottom:2px;
  }
  .featured-metric-tab{
    min-height:42px;
    font-size:9.5px;
  }
  .featured-metric-focus .featured-chart{
    height:230px;
  }
  .metric-target-setting{
    grid-template-columns:1fr;
  }
  .modal-auto-back{
    position:sticky;
    top:8px;
    z-index:5;
    box-shadow:0 5px 14px rgba(0,0,0,.08);
  }
}

@media(min-width:761px) and (max-width:1180px){
  .featured-metric-focus .featured-chart{
    height:290px;
  }
}


/* V1.45 — contenu client en une seule colonne */
@media(max-width:1180px){
  body[data-ui-mode="client"] .client-calendar-head{
    display:block !important;
  }

  body[data-ui-mode="client"] .client-calendar-tools{
    justify-content:flex-start !important;
    margin-top:12px !important;
  }

  body[data-ui-mode="client"] .daystrip.client-primary-calendar{
    grid-template-columns:1fr !important;
  }

  body[data-ui-mode="client"] .featured-metric-grid{
    grid-template-columns:1fr !important;
  }

  body[data-ui-mode="client"] .metric-category-list{
    grid-template-columns:1fr !important;
  }

  body[data-ui-mode="client"] .client-library-page .grid-3{
    grid-template-columns:1fr !important;
  }

  body[data-ui-mode="client"] .music-track-list{
    grid-template-columns:1fr !important;
  }
}

/* Les 3 favoris restent des boutons compacts côte à côte */
@media(min-width:390px) and (max-width:1180px){
  body[data-ui-mode="client"] .featured-metric-tabs{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}


/* V1.46 — tablette adaptative + lisibilité + profondeur visuelle */

/* Ombre premium sous les principaux blocs, sans effet lourd */
body[data-ui-mode="client"] .daily-checkin-card,
body[data-ui-mode="client"] .momentum-card,
body[data-ui-mode="client"] .daycol,
body[data-ui-mode="client"] .movement-card,
body[data-ui-mode="client"] .featured-metric-focus,
body[data-ui-mode="client"] .metric-category-details,
body[data-ui-mode="client"] .music-album-card,
body[data-ui-mode="client"] .resource-card,
body[data-ui-mode="client"] .client-home-hero{
  box-shadow:
    0 10px 24px rgba(0,0,0,.07),
    0 2px 6px rgba(0,0,0,.035) !important;
}

/* Aujourd'hui : contour jaune fin, propre et immédiatement identifiable */
body[data-ui-mode="client"] .client-primary-calendar .daycol.today{
  border:1px solid var(--yellow) !important;
  box-shadow:
    0 10px 24px rgba(0,0,0,.07),
    0 0 0 1px rgba(232,229,0,.14) !important;
}
body[data-ui-mode="client"] .client-primary-calendar .daycol.today:before{
  display:none !important;
}

/* Mobile : conserver une seule colonne */
@media(max-width:760px){
  body[data-ui-mode="client"] .daystrip.client-primary-calendar,
  body[data-ui-mode="client"] .metric-category-list,
  body[data-ui-mode="client"] .client-library-page .grid-3,
  body[data-ui-mode="client"] .music-track-list{
    grid-template-columns:1fr !important;
  }
}

/* Tablette : utiliser plusieurs colonnes seulement là où cela améliore la lecture */
@media(min-width:761px) and (max-width:1180px){
  /* Les 3 jours se lisent naturellement côte à côte */
  body[data-ui-mode="client"] .daystrip.client-primary-calendar{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:14px !important;
  }

  /* Une catégorie ouverte peut afficher 2 données par ligne */
  body[data-ui-mode="client"] .metric-category-list{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:9px !important;
  }

  /* Bibliothèque : 2 cartes par ligne, plus naturelle sur tablette */
  body[data-ui-mode="client"] .client-library-page .grid-3{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:14px !important;
  }

  /* Les titres d'albums / listes musicales restent en une colonne */
  body[data-ui-mode="client"] .music-track-list{
    grid-template-columns:1fr !important;
  }

  /* Un seul graphique principal reste large */
  body[data-ui-mode="client"] .featured-metric-grid{
    grid-template-columns:1fr !important;
  }

  body[data-ui-mode="client"] .featured-metric-focus{
    padding:16px !important;
  }
}

/* Tablette paysage : exploiter l'espace sans densifier exagérément */
@media(min-width:900px) and (max-width:1180px) and (orientation:landscape){
  body[data-ui-mode="client"] .metric-category-list{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  body[data-ui-mode="client"] .client-library-page .grid-3{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}


/* V1.47 — typographie, scoring compact, catégories et swipe */

/* Bonjour + titres Calendrier centrés, plus lisibles */
.client-top-greeting{
  text-align:center !important;
  font-size:15px !important;
  letter-spacing:.075em !important;
  text-shadow:0 1px 1px rgba(0,0,0,.34) !important;
}
.client-calendar-head{
  text-align:center !important;
}
.client-calendar-head .page-title,
.client-calendar-head .page-intro{
  text-align:center !important;
  text-shadow:0 1px 1px rgba(0,0,0,.30) !important;
}
.client-calendar-tools{
  justify-content:center !important;
}

/* Ombre plus nette et discrète sur les pages client */
body[data-ui-mode="client"] .client-metrics-heading .page-title,
body[data-ui-mode="client"] .client-metrics-heading .page-intro,
body[data-ui-mode="client"] .music-page-heading .page-title,
body[data-ui-mode="client"] .music-page-heading .page-intro,
body[data-ui-mode="client"] .client-library-page > .page-title,
body[data-ui-mode="client"] .client-library-page > .page-intro{
  text-shadow:0 1px 1px rgba(0,0,0,.28) !important;
}

/* Scoring : partie essentielle visible, détail replié */
.momentum-grid-3{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}
.momentum-details{
  margin-top:12px;
  border-top:1px solid rgba(0,0,0,.10);
}
.momentum-details summary{
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:42px;
  cursor:pointer;
  color:#111;
  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
  user-select:none;
}
.momentum-details summary::-webkit-details-marker{display:none}
.momentum-details-chevron{
  font-size:17px;
  transition:transform .18s ease;
}
.momentum-details[open] .momentum-details-chevron{transform:rotate(180deg)}
.momentum-details-body{
  padding-top:5px;
}
.momentum-rules{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-top:10px;
}
.momentum-rules>div{
  display:grid;
  grid-template-columns:44px 1fr;
  gap:9px;
  align-items:center;
  padding:10px;
  border-radius:11px;
  background:#fff;
  border:1px solid rgba(0,0,0,.10);
}
.rule-score{
  width:42px;height:42px;border-radius:50%;
  display:grid;place-items:center;
  font-weight:900;font-size:13px;
}
.rule-score.negative{background:#f3e3dc;color:#9a452a}
.rule-score.positive{background:#e4f2e7;color:#25733c}
.momentum-rules p{margin:0}
.momentum-rules p b{display:block;color:#111;font-size:10px}
.momentum-rules p small{display:block;color:#666;font-size:8.5px;line-height:1.35;margin-top:2px}
.momentum-rule-note{
  margin:8px 0 0 !important;
  color:#5d5f5a !important;
  font-size:9px !important;
  line-height:1.45 !important;
}

/* Graphiques : titres centrés, sans "En évidence" */
.client-metrics-heading{
  justify-content:center !important;
  text-align:center !important;
}
.client-metrics-heading>div:first-child{
  width:100%;
  text-align:center;
}
.client-metrics-heading .spacer{
  display:none;
}
.client-metrics-heading #clientAddMetric{
  margin:7px auto 0;
}
.featured-metrics-title{
  justify-content:center !important;
  text-align:center !important;
}
.featured-metrics-title>div{
  width:100%;
  text-align:center;
}
.featured-metrics-title h2,
.featured-metrics-title p{
  text-align:center !important;
}

/* Catégorie ouverte = contour jaune, fermée = contour neutre */
.metric-category-details{
  border:1px solid rgba(0,0,0,.13) !important;
  transition:border-color .16s ease,box-shadow .16s ease;
}
.metric-category-details[open]{
  border:1px solid var(--yellow) !important;
  box-shadow:0 8px 18px rgba(0,0,0,.055),0 0 0 1px rgba(232,229,0,.10) !important;
}

/* Musiques / Bibliothèque : même alignement propre */
.music-page-heading,
.client-library-page{
  text-align:center;
}
.music-page-heading .page-title,
.music-page-heading .page-intro,
.client-library-page > .page-title,
.client-library-page > .page-intro{
  text-align:center !important;
}
.music-page-heading .page-intro,
.client-library-page > .page-intro{
  max-width:760px;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Mentor : sélection clients à droite */
.bulk-check-col-right{
  text-align:right !important;
  padding-right:14px !important;
}
.bulk-check-col-right input{
  margin-left:auto;
}

/* Plus aucun bleu natif au clic/focus */
*{
  -webkit-tap-highlight-color:rgba(232,229,0,.16);
}
button,
a,
input,
select,
textarea,
summary{
  outline-color:var(--yellow);
}
button:focus,
a:focus,
input:focus,
select:focus,
textarea:focus,
summary:focus{
  outline:none;
}
button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible{
  outline:2px solid rgba(190,161,35,.85) !important;
  outline-offset:2px;
  box-shadow:0 0 0 3px rgba(232,229,0,.12) !important;
}
button:active,
a:active{
  filter:brightness(.97);
}

/* Graphiques canvas : rendu plus premium sans modifier le rectangle */
.featured-metric-focus canvas,
.detail-metric-chart{
  image-rendering:auto;
}

/* Mobile */
@media(max-width:760px){
  .client-top-greeting{
    font-size:14px !important;
    margin-bottom:10px !important;
  }
  .momentum-rules{
    grid-template-columns:1fr;
  }
  .momentum-grid-3{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:6px !important;
  }
  .momentum-stat{
    padding:9px 5px !important;
  }
  .momentum-stat b{
    font-size:18px !important;
  }
  .momentum-stat small{
    font-size:8.5px !important;
  }
}

/* Tablette */
@media(min-width:761px) and (max-width:1180px){
  .client-top-greeting{
    font-size:16px !important;
  }
}


/* V1.48 — ombre homogène sur tous les textes hors blocs */
body[data-ui-mode="client"] main{
  --li-outside-text-shadow:0 1px 1px rgba(0,0,0,.34);
}

/* Tous les textes de structure situés hors des cartes reprennent l'ombre de Bonjour Pierre */
body[data-ui-mode="client"] main > *,
body[data-ui-mode="client"] .client-calendar-head,
body[data-ui-mode="client"] .client-metrics-heading,
body[data-ui-mode="client"] .featured-metrics-title,
body[data-ui-mode="client"] .music-page-heading,
body[data-ui-mode="client"] .client-library-page > .page-title,
body[data-ui-mode="client"] .client-library-page > .page-intro,
body[data-ui-mode="client"] .metric-categories-wrap > .section-title,
body[data-ui-mode="client"] .page-title,
body[data-ui-mode="client"] .page-intro,
body[data-ui-mode="client"] .hero-kicker,
body[data-ui-mode="client"] .section-eyebrow{
  text-shadow:var(--li-outside-text-shadow) !important;
}

/* Aucune ombre ajoutée à l'intérieur des blocs eux-mêmes */
body[data-ui-mode="client"] :is(
  .daily-checkin-card,
  .momentum-card,
  .daycol,
  .movement-card,
  .featured-metric-focus,
  .metric-category-details,
  .metric-category-item,
  .music-album-card,
  .music-track,
  .resource-card,
  .client-home-hero,
  .global-music-player,
  .modal-card,
  .exercise-video-layer
),
body[data-ui-mode="client"] :is(
  .daily-checkin-card,
  .momentum-card,
  .daycol,
  .movement-card,
  .featured-metric-focus,
  .metric-category-details,
  .metric-category-item,
  .music-album-card,
  .music-track,
  .resource-card,
  .client-home-hero,
  .global-music-player,
  .modal-card,
  .exercise-video-layer
) *{
  text-shadow:none !important;
}

/* Le nom du client conserve précisément la référence voulue */
body[data-ui-mode="client"] .client-top-greeting{
  text-shadow:var(--li-outside-text-shadow) !important;
}


/* V1.50 — transitions premium entre onglets */
#app{
  will-change:auto;
  transform:translateZ(0);
}

#app.app-page-enter-next{
  animation:liPageEnterNext .22s cubic-bezier(.22,.75,.28,1) both;
}
#app.app-page-enter-prev{
  animation:liPageEnterPrev .22s cubic-bezier(.22,.75,.28,1) both;
}

@keyframes liPageEnterNext{
  0%{
    opacity:.15;
    transform:translate3d(18px,0,0);
  }
  100%{
    opacity:1;
    transform:translate3d(0,0,0);
  }
}
@keyframes liPageEnterPrev{
  0%{
    opacity:.15;
    transform:translate3d(-18px,0,0);
  }
  100%{
    opacity:1;
    transform:translate3d(0,0,0);
  }
}

/* Le bouton d'onglet actif accompagne discrètement le changement */
body[data-ui-mode="client"] .mainnav button.active .nav-ico,
body[data-ui-mode="coach"] .mainnav button.active .nav-ico{
  animation:liNavActive .20s cubic-bezier(.22,.75,.28,1) both;
}
@keyframes liNavActive{
  0%{transform:scale(.92);opacity:.70}
  70%{transform:scale(1.045);opacity:1}
  100%{transform:scale(1);opacity:1}
}

/* Les catégories Graphiques s'ouvrent avec un mouvement léger */
.metric-category-details[open] .metric-category-list{
  animation:liCategoryOpen .20s cubic-bezier(.22,.75,.28,1) both;
}
@keyframes liCategoryOpen{
  from{opacity:0;transform:translateY(-5px)}
  to{opacity:1;transform:translateY(0)}
}

/* Respect des utilisateurs demandant moins de mouvement */
@media(prefers-reduced-motion:reduce){
  #app.app-page-enter-next,
  #app.app-page-enter-prev,
  body[data-ui-mode="client"] .mainnav button.active .nav-ico,
  body[data-ui-mode="coach"] .mainnav button.active .nav-ico,
  .metric-category-details[open] .metric-category-list{
    animation:none !important;
  }
}


/* V1.51 — passe UX premium hors ligne */

/* Splash instantané : évite l'écran blanc au lancement */
.boot-splash{
  position:fixed;inset:0;z-index:9999;
  display:grid;place-items:center;
  background:#090909;
  color:#fff;
  opacity:1;visibility:visible;
  transition:opacity .22s ease,visibility .22s ease;
}
.app-ready .boot-splash{opacity:0;visibility:hidden;pointer-events:none}
.boot-splash-core{text-align:center;transform:translateY(-3vh)}
.boot-splash-core img{width:116px;height:116px;object-fit:contain;filter:drop-shadow(0 10px 20px rgba(0,0,0,.25))}
.boot-splash-title{margin-top:12px;font-family:'Cinzel',Georgia,serif;font-size:24px;letter-spacing:.08em}
.boot-splash-sub{margin-top:4px;font-family:'Cinzel',Georgia,serif;font-size:12px;letter-spacing:.17em;color:var(--yellow,#e8e500)}
.boot-splash-loader{width:126px;height:2px;margin:20px auto 0;background:#252525;overflow:hidden;border-radius:999px}
.boot-splash-loader span{display:block;width:45%;height:100%;background:var(--yellow,#e8e500);animation:liBootLoad 1s ease-in-out infinite}
@keyframes liBootLoad{0%{transform:translateX(-110%)}100%{transform:translateX(330%)}}

/* Skeleton : structure visible pendant le premier chargement */
.app-skeleton{display:grid;gap:12px;padding:5px 0 30px}
.skeleton-line,.skeleton-card{position:relative;overflow:hidden;background:rgba(255,255,255,.68);border:1px solid rgba(0,0,0,.06);border-radius:14px}
.skeleton-line:after,.skeleton-card:after{content:'';position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.78),transparent);animation:liSkeleton 1.05s ease-in-out infinite}
.skeleton-greeting{width:150px;height:18px;margin:0 auto 3px;border-radius:8px}.skeleton-state{height:166px}.skeleton-score{height:150px}.skeleton-title{width:220px;height:27px;margin:8px auto 0}.skeleton-action{height:108px}
@keyframes liSkeleton{100%{transform:translateX(100%)}}

/* Feedback de validation : petite coche jaune, sans toast système */
.li-premium-notice{
  position:fixed;left:50%;bottom:118px;z-index:10020;
  display:flex;align-items:center;gap:10px;
  min-width:220px;max-width:calc(100vw - 32px);
  padding:10px 14px 10px 10px;
  border:1px solid rgba(0,0,0,.10);border-radius:14px;
  background:rgba(250,250,248,.97);box-shadow:0 14px 38px rgba(0,0,0,.16);
  color:#10110f;opacity:0;transform:translate(-50%,12px) scale(.97);
  transition:opacity .20s ease,transform .20s cubic-bezier(.22,.75,.28,1);
  pointer-events:none;
}
.li-premium-notice.show{opacity:1;transform:translate(-50%,0) scale(1)}
.li-premium-notice-mark{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#111;color:var(--yellow);font-size:18px;font-weight:900;box-shadow:0 0 0 2px rgba(232,229,0,.35)}
.li-premium-notice b{display:block;font-size:11px}.li-premium-notice span{display:block;margin-top:2px;color:#6b6c67;font-size:8.5px}
.li-just-validated{animation:liValidatedCard .24s ease both}
@keyframes liValidatedCard{0%{box-shadow:0 0 0 0 rgba(232,229,0,0)}50%{box-shadow:0 0 0 2px rgba(232,229,0,.80),0 12px 26px rgba(0,0,0,.08)}100%{box-shadow:0 0 0 1px rgba(232,229,0,.16),0 10px 24px rgba(0,0,0,.07)}}

/* Passage Énergie → Motivation → Humeur */
.li-checkin-step-enter{animation:liCheckinStep .19s cubic-bezier(.22,.75,.28,1) both}
@keyframes liCheckinStep{from{opacity:.35;transform:translateX(9px)}to{opacity:1;transform:translateX(0)}}

/* Changement d'un des 3 graphiques favoris */
.li-graph-focus-enter{animation:liGraphFocus .18s cubic-bezier(.22,.75,.28,1) both}
@keyframes liGraphFocus{from{opacity:.45;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}

/* Swipe : le contenu suit légèrement le doigt */
#app.app-swipe-dragging{transform:translate3d(var(--li-swipe-x,0),0,0) !important;opacity:var(--li-swipe-opacity,1);transition:none !important;will-change:transform,opacity}
#app.app-swipe-return{transform:translate3d(var(--li-swipe-x,0),0,0) !important;opacity:var(--li-swipe-opacity,1);transition:transform .18s cubic-bezier(.22,.75,.28,1),opacity .18s ease !important}

/* États vides : plus éditoriaux, moins techniques */
.client-empty-premium{color:#545650;border-style:solid;background:rgba(255,255,255,.72);font-weight:600;line-height:1.55}
.client-empty-inline{color:#696b66 !important;line-height:1.45;padding:10px 5px !important}

/* Installation PWA dans la fenêtre Notifications */
.pwa-install-row{display:grid;gap:5px;margin-top:10px;padding-top:10px;border-top:1px solid rgba(0,0,0,.10)}
.pwa-install-row small{color:#6e706b;line-height:1.4}

/* Erreur de tout premier lancement sans serveur/copie locale */
.offline-first-error{max-width:520px;margin:50px auto;padding:28px;text-align:center;background:rgba(255,255,255,.86);border:1px solid rgba(0,0,0,.08);border-radius:18px;box-shadow:0 12px 28px rgba(0,0,0,.08)}
.offline-first-icon{width:52px;height:52px;margin:0 auto 12px;border-radius:50%;display:grid;place-items:center;background:#111;color:var(--yellow);font-family:'Cinzel',serif;font-weight:700}
.offline-first-error h2{font-family:'Cinzel',serif;font-size:20px}.offline-first-error p{color:#686a65;line-height:1.55}

@media(max-width:760px){.li-premium-notice{bottom:106px}.boot-splash-core img{width:98px;height:98px}.boot-splash-title{font-size:20px}}
@media(prefers-reduced-motion:reduce){.boot-splash-loader span,.skeleton-line:after,.skeleton-card:after,.li-just-validated,.li-checkin-step-enter,.li-graph-focus-enter{animation:none !important}.li-premium-notice,.boot-splash{transition:none !important}}
.boot-passed .boot-splash{opacity:0;visibility:hidden;pointer-events:none}


/* V1.52 — sensibilité, fluidité, discipline, pratiques, session */

/* Swipe plus sensible, sans baisse d'opacité */
#app.app-swipe-dragging{
  opacity:1 !important;
  transform:translate3d(var(--li-swipe-x,0),0,0) !important;
}
#app.app-swipe-return{
  opacity:1 !important;
  transition:transform .16s cubic-bezier(.22,.75,.28,1) !important;
}

/* Changement de page : déplacement uniquement, aucun flash de fondu */
#app.app-page-enter-next{animation:liPagePremiumNext .20s cubic-bezier(.22,.75,.28,1) both !important}
#app.app-page-enter-prev{animation:liPagePremiumPrev .20s cubic-bezier(.22,.75,.28,1) both !important}
@keyframes liPagePremiumNext{from{transform:translate3d(13px,0,0)}to{transform:translate3d(0,0,0)}}
@keyframes liPagePremiumPrev{from{transform:translate3d(-13px,0,0)}to{transform:translate3d(0,0,0)}}
body[data-ui-mode="client"] main{overflow-x:clip}

/* Énergie > Motivation > Humeur : sort à gauche, suivante arrive de droite */
.li-checkin-step-enter{animation:liCheckinEnterRight .32s cubic-bezier(.22,.75,.28,1) both !important}
.li-checkin-step-exit{animation:liCheckinExitLeft .28s cubic-bezier(.4,0,.6,1) both !important}
@keyframes liCheckinEnterRight{from{opacity:.2;transform:translateX(24px)}to{opacity:1;transform:translateX(0)}}
@keyframes liCheckinExitLeft{from{opacity:1;transform:translateX(0)}to{opacity:.15;transform:translateX(-24px)}}

/* Bonjour Pierre x2 et ombre hors bloc plus noire / nette */
body[data-ui-mode="client"] main{--li-outside-text-shadow:0 1px 0 rgba(0,0,0,.60) !important}
body[data-ui-mode="client"] .client-top-greeting{
  font-size:30px !important;
  line-height:1.04 !important;
  letter-spacing:.045em !important;
  margin-bottom:14px !important;
}
@media(max-width:760px){
  body[data-ui-mode="client"] .client-top-greeting{font-size:28px !important}
}
@media(min-width:761px) and (max-width:1180px){
  body[data-ui-mode="client"] .client-top-greeting{font-size:32px !important}
}

/* Discipline */
.momentum-discipline-label{
  font-size:13px !important;
  letter-spacing:.13em !important;
  font-weight:900 !important;
}

/* Traits jaunes plus visibles */
body[data-ui-mode="client"] .client-primary-calendar .daycol.today{
  border:2px solid var(--yellow) !important;
}
.metric-category-details[open]{
  border:2px solid var(--yellow) !important;
  box-shadow:0 8px 18px rgba(0,0,0,.055),0 0 0 1px rgba(232,229,0,.16) !important;
}
.metric-category-details:not([open]){
  border:1px solid rgba(0,0,0,.13) !important;
}

/* Trait jaune fin autour de chaque bouton du menu */
body[data-ui-mode="client"] .mainnav button{
  box-sizing:border-box;
  border:1px solid rgba(232,229,0,.72) !important;
}
body[data-ui-mode="client"] .mainnav button.active{
  border:1px solid var(--yellow) !important;
  box-shadow:inset 0 0 0 1px rgba(232,229,0,.14) !important;
}

/* Notification client */
.client-notif-fixed{display:grid;gap:7px;margin:12px 0}
.client-notif-fixed>div{
  display:grid;grid-template-columns:34px 1fr auto;gap:9px;align-items:center;
  padding:10px;border:1px solid rgba(0,0,0,.10);border-radius:11px;background:#f4f4f0;
}
.notif-lock{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#111;color:var(--yellow);font-size:10px}
.client-notif-fixed p{margin:0}.client-notif-fixed b{display:block;font-size:10px}.client-notif-fixed small{display:block;color:#666;font-size:8.5px;margin-top:2px}
.client-notif-fixed em{font-style:normal;font-size:7.5px;font-weight:900;color:#8a6b00}
.client-notif-options{display:grid;gap:7px;margin:12px 0}
.client-notif-options label{
  display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;
  padding:11px;border:1px solid rgba(0,0,0,.10);border-radius:11px;background:#fff;
}
.client-notif-options b{display:block;font-size:10px}.client-notif-options small{display:block;color:#696b66;font-size:8.5px;margin-top:2px}
.client-notif-options input{width:19px;height:19px;accent-color:var(--yellow)}

/* Pratiques + Approfondir */
.client-centered-heading{text-align:center;margin-bottom:14px}
.client-centered-heading .page-title,.client-centered-heading .page-intro{text-align:center !important}
.practice-grid{display:grid;grid-template-columns:1fr;gap:10px}
.practice-card{
  padding:15px;border-radius:15px;background:rgba(255,255,255,.88);
  border:1px solid rgba(0,0,0,.10);box-shadow:0 10px 24px rgba(0,0,0,.07);
}
.practice-category{font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#8c6e13}
.practice-card h3{margin:5px 0 5px}.practice-card p{color:#60625d;line-height:1.5}
.practice-awaiting{padding:9px 10px;border-radius:9px;background:#f1f1ed;color:#777;font-size:9px;font-weight:700}
.pillar-tabs{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;
  max-width:520px;margin:0 auto 14px;
}
.pillar-tabs button{
  min-height:42px;border-radius:11px;border:1px solid #111;background:#111;color:#fff;font-weight:800;cursor:pointer;
}
.pillar-tabs button.active{background:var(--yellow);color:#111;border:2px solid #111}

/* Connexion pas : 1 clic / QR, saisie manuelle en secours */
.health-connect-lead{line-height:1.55;color:#595b56}
.health-quick-connect{display:grid;gap:7px;margin:12px 0}
.health-source-card{
  display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center;
  width:100%;padding:10px;border-radius:12px;border:1px solid rgba(0,0,0,.12);background:#fff;text-align:left;cursor:pointer;
}
.health-source-card.selected{border:2px solid var(--yellow);box-shadow:0 8px 18px rgba(0,0,0,.055)}
.health-source-mark{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#111;color:var(--yellow);font-size:15px}
.health-source-card b{display:block}.health-source-card small{display:block;color:#777}.health-source-card strong{font-size:8px;color:#8a6b00}
.health-connect-methods{display:grid;gap:7px;padding:11px;border-radius:12px;background:#f5f5f1;border:1px solid rgba(0,0,0,.09)}
.health-connect-methods small{color:#6a6c66;line-height:1.45}
.manual-steps-fallback{margin-top:12px;border:1px solid rgba(0,0,0,.10);border-radius:11px;background:#fff}
.manual-steps-fallback summary{padding:11px;font-weight:800;cursor:pointer}
.manual-steps-fallback .manual-steps-box{margin:0;padding:0 11px 11px;border:0;background:transparent}

/* Retour de séance séquentiel tout en haut */
.session-feedback-wizard{overflow:hidden}
.session-feedback-step{display:none;min-height:205px}
.session-feedback-step.active{display:block}
.session-feedback-step.entering{animation:liSessionFeedbackIn .26s cubic-bezier(.22,.75,.28,1) both}
.session-feedback-step.leaving{animation:liSessionFeedbackOut .22s cubic-bezier(.4,0,.6,1) both}
@keyframes liSessionFeedbackIn{from{opacity:.2;transform:translateX(18px)}to{opacity:1;transform:translateX(0)}}
@keyframes liSessionFeedbackOut{from{opacity:1;transform:translateX(0)}to{opacity:.1;transform:translateX(-18px)}}
.feedback-step-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-bottom:10px}
.feedback-step-progress span{height:3px;border-radius:999px;background:#d7d8d3}
.feedback-step-progress span.active,.feedback-step-progress span.done{background:var(--yellow)}
.feedback-step-number{font-size:8px;font-weight:900;letter-spacing:.12em;color:#8a6b00;text-transform:uppercase}
.session-feedback-step h4{text-align:center;font-size:18px;margin:12px 0}
.feedback-tour-select{display:block;width:min(230px,100%);margin:0 auto 12px;padding:12px;border:1px solid #bbb;border-radius:10px;background:#fff;font-size:16px;text-align:center}
.feedback-step-cta{display:block;margin:0 auto}
.session-feeling-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.session-feeling-choice{min-height:55px;border-radius:11px;border:1px solid #cfd0ca;background:#fff;font-size:10px;font-weight:900;cursor:pointer}
.session-feeling-choice.bad.active{background:#9b3e2d;color:#fff;border-color:#9b3e2d}
.session-feeling-choice.medium.active{background:#d88d21;color:#111;border-color:#d88d21}
.session-feeling-choice.good.active{background:#2d8a4a;color:#fff;border-color:#2d8a4a}
.feedback-back-link{display:block;margin:12px auto 0;border:0;background:transparent;color:#666;font-size:9px;font-weight:800;cursor:pointer}
.feedback-step-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.feedback-review-check{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;margin:0 auto;background:#111;color:var(--yellow);font-size:20px;font-weight:900}
.session-feedback-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:10px}
.session-feedback-review-grid>div{padding:10px;border:1px solid rgba(0,0,0,.10);border-radius:10px;background:#f6f6f2;text-align:center}
.session-feedback-review-grid small{display:block;font-size:8px;color:#777;text-transform:uppercase;font-weight:800}
.session-feedback-review-grid b{display:block;margin-top:4px;font-size:11px}
.session-videos-bottom{margin-top:24px;padding-top:18px;border-top:1px solid rgba(0,0,0,.10)}
.session-video-list{display:grid;gap:8px}
.session-exercise-video-card{
  display:grid;grid-template-columns:42px 1fr 18px;gap:10px;align-items:center;width:100%;
  padding:10px;border-radius:11px;border:1px solid rgba(0,0,0,.10);background:#fff;text-align:left;cursor:pointer;
}
.session-video-play{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#111;color:var(--yellow)}
.session-exercise-video-card b{display:block}.session-exercise-video-card small{display:block;color:#777;margin-top:2px}

/* Plein écran vidéo : le conteneur prend tout l'écran, orientation verrouillée en paysage si le navigateur l'autorise */
.exercise-video-wrap:fullscreen,
.exercise-video-wrap:-webkit-full-screen{
  width:100vw !important;height:100vh !important;max-width:none !important;background:#000 !important;
  display:grid;place-items:center;
}
.exercise-video-wrap:fullscreen iframe,
.exercise-video-wrap:-webkit-full-screen iframe{
  width:100vw !important;height:100vh !important;aspect-ratio:auto !important;
}

@media(max-width:760px){
  .session-feedback-review-grid{grid-template-columns:1fr}
}
@media(min-width:761px) and (max-width:1180px){
  .practice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* reduced motion */
@media(prefers-reduced-motion:reduce){
  .li-checkin-step-enter,.li-checkin-step-exit,
  .session-feedback-step.entering,.session-feedback-step.leaving{
    animation:none !important;
  }
}


/* V1.53 — Agenda externe universel */
.external-calendar-trigger{
  border-color:rgba(232,229,0,.72) !important;
}
.external-calendar-modal h2{
  margin:4px 0 8px;
  font-family:'Cinzel',Georgia,serif;
  font-weight:500;
}
.external-calendar-lead{
  line-height:1.55;
  color:#52544f;
}
.external-calendar-preview{
  display:grid;
  gap:8px;
  margin:14px 0;
}
.external-calendar-day{
  padding:11px;
  border-radius:12px;
  border:1px solid rgba(0,0,0,.11);
  background:#f7f7f3;
}
.external-calendar-day.today{
  border:2px solid var(--yellow);
}
.external-calendar-day>div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.external-calendar-day small{
  display:block;
  font-size:8px;
  font-weight:900;
  letter-spacing:.10em;
  color:#8a6b00;
}
.external-calendar-day b{
  font-size:11px;
}
.external-calendar-day>span{
  display:block;
  margin-top:3px;
  color:#666;
  font-size:9px;
  font-weight:800;
}
.external-calendar-day ul{
  margin:8px 0 0;
  padding-left:18px;
}
.external-calendar-day li{
  margin:3px 0;
  color:#222;
  font-size:10px;
  font-weight:700;
}
.external-calendar-day p{
  margin:7px 0 0;
  color:#777;
  font-size:9px;
}
.external-calendar-main,
.external-calendar-download{
  width:100%;
  margin-top:7px;
}
.calendar-compatibility{
  margin-top:14px;
  padding:11px;
  border-radius:12px;
  border:1px solid rgba(0,0,0,.09);
  background:#fff;
}
.calendar-compatibility>b{
  display:block;
  margin-bottom:7px;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.09em;
}
.calendar-compatibility>div{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}
.calendar-compatibility span{
  padding:6px 8px;
  border-radius:999px;
  background:#111;
  color:#fff;
  font-size:8px;
  font-weight:800;
}
.calendar-behaviour-note{
  margin-top:10px;
  padding:10px;
  border-left:3px solid var(--yellow);
  background:#f5f5f1;
}
.calendar-behaviour-note b{
  font-size:10px;
}
.calendar-behaviour-note p{
  margin:3px 0 0;
  color:#62645f;
  font-size:9px;
  line-height:1.45;
}
.calendar-offline-note{
  display:block;
  margin-top:10px;
  color:#777;
  font-size:8.5px;
  line-height:1.45;
}
@media(min-width:761px) and (max-width:1180px){
  .external-calendar-preview{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}


/* V1.54 — vidéos de formation + Approfondir = acquis validés */
.model-kind.content{
  background:#111 !important;
  color:var(--yellow) !important;
  border:1px solid var(--yellow);
}
.content-model-editor .content-attachment-editor{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.content-music-picker{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
  max-height:260px;
  overflow:auto;
}
.content-music-picker label{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:8px;
  align-items:center;
  padding:9px;
  border:1px solid rgba(0,0,0,.10);
  border-radius:10px;
  background:#f7f7f4;
}
.content-music-picker b,.content-music-picker small{display:block}
.content-music-picker small{color:#777;font-size:8px;margin-top:2px}
.content-learning-head{text-align:center;margin-bottom:14px}
.content-learning-head .page-title,.content-learning-head .page-intro{text-align:center !important}
.content-main-video{
  overflow:hidden;
  border-radius:16px;
  background:#080808;
  box-shadow:0 12px 28px rgba(0,0,0,.12);
}
.content-main-video .video-wrap{margin:0}
.content-video-actions{padding:10px;background:#111;text-align:center}
.content-supports{display:grid;gap:14px;margin:18px 0}
.content-supports section{
  padding:13px;
  border-radius:14px;
  background:#f7f7f3;
  border:1px solid rgba(0,0,0,.09);
}
.content-support-list{display:grid;gap:7px;margin-top:8px}
.content-support-item{
  display:grid;
  grid-template-columns:42px 1fr auto;
  gap:9px;
  align-items:center;
  width:100%;
  padding:10px;
  border:1px solid rgba(0,0,0,.10);
  border-radius:10px;
  background:#fff;
  color:#111;
  text-decoration:none;
  text-align:left;
  cursor:pointer;
}
.content-support-item>span{
  width:38px;height:38px;border-radius:9px;
  display:grid;place-items:center;
  background:#111;color:var(--yellow);
  font-size:9px;font-weight:900;
}
.content-support-item b{font-size:10px}
.content-support-item strong{font-size:8px;color:#8a6b00}
.content-support-item.music{font:inherit}
.content-validate-btn{display:block;width:min(360px,100%);margin:18px auto 0}
.content-completed{margin-top:16px}
.acquired-content-list{display:grid;gap:9px}
.acquired-content-card{
  width:100%;
  display:grid;
  grid-template-columns:48px 1fr 18px;
  gap:10px;
  align-items:center;
  padding:12px;
  border:1px solid rgba(0,0,0,.10);
  border-radius:13px;
  background:rgba(255,255,255,.90);
  box-shadow:0 9px 22px rgba(0,0,0,.06);
  text-align:left;
  cursor:pointer;
}
.acquired-play{
  width:44px;height:44px;border-radius:50%;
  display:grid;place-items:center;
  background:#111;color:var(--yellow);
}
.acquired-content-card small,.acquired-content-card b,.acquired-content-card em{display:block}
.acquired-content-card small{font-size:8px;color:#8a6b00;text-transform:uppercase;font-weight:900}
.acquired-content-card b{font-size:11px;margin-top:2px}
.acquired-content-card em{font-style:normal;color:#777;font-size:8px;margin-top:3px}
.kooneo-admin-card code{display:inline-block;margin:7px 0}
@media(max-width:760px){
  .content-model-editor .content-attachment-editor,
  .content-music-picker{grid-template-columns:1fr}
}
@media(min-width:761px) and (max-width:1180px){
  .acquired-content-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}


/* V1.55 — Graphiques épurés + boutons Agenda + 12 semaines */
.client-metrics-quickbar{
  display:flex;
  justify-content:center;
  margin:0 0 12px;
}
.client-metrics-quickbar .btn{
  min-width:190px;
}

.calendar-tools-stacked{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:7px !important;
  width:100%;
}
.calendar-activity-main{
  width:100%;
}
.calendar-tools-secondary{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
  width:100%;
}
.calendar-tools-secondary .btn{
  width:100%;
}

.calendar-12w-summary{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
  margin:13px 0;
}
.calendar-12w-summary>div{
  padding:10px;
  border-radius:11px;
  background:#f5f5f1;
  border:1px solid rgba(0,0,0,.09);
  text-align:center;
}
.calendar-12w-summary b{display:block;font-size:15px}
.calendar-12w-summary small{
  display:block;
  color:#777;
  font-size:8px;
  text-transform:uppercase;
  font-weight:800;
  margin-top:2px;
}
.calendar-12w-preview{
  display:grid;
  gap:7px;
  margin:10px 0 13px;
}
.calendar-12w-preview details{
  border:1px solid rgba(0,0,0,.10);
  border-radius:11px;
  background:#fff;
  overflow:hidden;
}
.calendar-12w-preview summary{
  list-style:none;
  display:flex;
  justify-content:space-between;
  gap:10px;
  padding:10px;
  cursor:pointer;
  font-size:10px;
}
.calendar-12w-preview summary::-webkit-details-marker{display:none}
.calendar-12w-preview details[open]{border:2px solid var(--yellow)}
.calendar-12w-preview details>div{padding:0 10px 8px}
.calendar-12w-preview p{
  display:grid;
  grid-template-columns:92px 1fr;
  gap:8px;
  margin:4px 0;
  padding-top:5px;
  border-top:1px solid rgba(0,0,0,.06);
}
.calendar-12w-preview p small{color:#777;font-size:8px}
.calendar-12w-preview p span{font-size:9px;font-weight:700}

@media(min-width:761px) and (max-width:1180px){
  .calendar-12w-summary{grid-template-columns:repeat(4,minmax(0,1fr))}
}


/* V1.56 — Discipline + bouton graphique sous favoris */
.momentum-head > div:first-child{
  min-width:0;
}
.momentum-head > div:first-child > p{
  text-align:center !important;
  font-size:9px !important;
  line-height:1.4 !important;
  margin:5px auto 0 !important;
  max-width:420px;
}
.momentum-discipline-label{
  white-space:normal;
}

.featured-metrics-new-action{
  display:flex;
  justify-content:center;
  margin:10px 0 16px;
}
.featured-metrics-new-action .btn{
  min-width:190px;
}

@media(max-width:760px){
  .momentum-head > div:first-child > p{
    font-size:8.5px !important;
    max-width:270px;
  }
  .featured-metrics-new-action .btn{
    min-width:180px;
  }
}


/* V1.57 — Pratiques organisées en 3 onglets */
.practice-section-tabs{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:7px;
  margin:0 auto 12px;
  max-width:760px;
}
.practice-section-tabs button{
  min-height:44px;
  padding:8px 10px;
  border-radius:11px;
  border:1px solid #111;
  background:#111;
  color:#fff;
  font-size:9.5px;
  font-weight:850;
  line-height:1.15;
  cursor:pointer;
  transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease;
}
.practice-section-tabs button.active{
  background:var(--yellow);
  color:#090909;
  border:2px solid #090909;
}
.practice-section-tabs button:active{
  transform:scale(.985);
}
.practice-section-intro{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:3px;
  margin:0 auto 12px;
  max-width:680px;
}
.practice-section-intro b{
  font-family:'Cinzel',Georgia,serif;
  font-size:16px;
  font-weight:600;
  color:#111;
  text-shadow:var(--li-outside-text-shadow);
}
.practice-section-intro span{
  font-size:9px;
  line-height:1.45;
  color:#535550;
  text-shadow:var(--li-outside-text-shadow);
}
.practice-tab-content{
  animation:liPracticeTabIn .20s cubic-bezier(.22,.75,.28,1) both;
}
@keyframes liPracticeTabIn{
  from{opacity:.25;transform:translateX(10px)}
  to{opacity:1;transform:translateX(0)}
}

@media(max-width:760px){
  .practice-section-tabs{
    grid-template-columns:1fr;
  }
  .practice-section-tabs button{
    min-height:41px;
    font-size:9px;
  }
}

@media(min-width:761px) and (max-width:1180px){
  .practice-section-tabs{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .practice-grid.practice-tab-content{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}


/* V1.58 — Sport + Séquence Flash */
.practice-duration{
  display:inline-flex;
  align-items:center;
  margin:2px 0 6px;
  padding:5px 8px;
  border-radius:999px;
  background:#111;
  color:var(--yellow);
  font-size:7.5px;
  font-weight:900;
  letter-spacing:.08em;
}
.practice-awaiting.session{
  border-left:3px solid var(--yellow);
  background:#efefe9;
  color:#565852;
}


/* V1.59 — sous-textes d’onglets légèrement agrandis */
body[data-ui-mode="client"] .page-intro,
body[data-ui-mode="client"] .featured-metrics-title p,
body[data-ui-mode="client"] .practice-section-intro span,
body[data-ui-mode="client"] .music-page-heading .page-intro,
body[data-ui-mode="client"] .client-centered-heading .page-intro{
  font-size:11px !important;
  line-height:1.5 !important;
}

@media(max-width:760px){
  body[data-ui-mode="client"] .page-intro,
  body[data-ui-mode="client"] .featured-metrics-title p,
  body[data-ui-mode="client"] .practice-section-intro span,
  body[data-ui-mode="client"] .music-page-heading .page-intro,
  body[data-ui-mode="client"] .client-centered-heading .page-intro{
    font-size:10.5px !important;
  }
}


/* V1.60 — AUJOURD’HUI et actions principales plus visibles */
body[data-ui-mode="client"] .client-primary-calendar .daycol.today .client-day-label{
  font-size:20px !important;
  line-height:1.05 !important;
  font-weight:900 !important;
  letter-spacing:.055em !important;
  margin-bottom:7px !important;
}

body[data-ui-mode="client"] .calendar-activity-main,
body[data-ui-mode="client"] .calendar-tools-secondary .btn{
  font-size:18px !important;
  line-height:1.05 !important;
  font-weight:850 !important;
  min-height:54px !important;
  padding:10px 14px !important;
}

@media(max-width:760px){
  body[data-ui-mode="client"] .client-primary-calendar .daycol.today .client-day-label{
    font-size:19px !important;
  }

  body[data-ui-mode="client"] .calendar-activity-main,
  body[data-ui-mode="client"] .calendar-tools-secondary .btn{
    font-size:16px !important;
    min-height:52px !important;
  }
}

@media(min-width:761px) and (max-width:1180px){
  body[data-ui-mode="client"] .client-primary-calendar .daycol.today .client-day-label{
    font-size:22px !important;
  }

  body[data-ui-mode="client"] .calendar-activity-main,
  body[data-ui-mode="client"] .calendar-tools-secondary .btn{
    font-size:18px !important;
    min-height:56px !important;
  }
}


/* V1.61 — Aujourd’hui encore plus visible */
body[data-ui-mode="client"] .client-primary-calendar .daycol.today{
  border:4px solid var(--yellow) !important;
}


/* V1.62 — sélection jaune = texte noir + contour noir */
body[data-ui-mode="client"] :is(
  .featured-metric-tab.active,
  .practice-section-tabs button.active,
  .pillar-tabs button.active,
  .mood-choice.active,
  .mainnav button.active
){
  background:var(--yellow) !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  border-color:#090909 !important;
}

/* Menu du bas : aucune icône blanche dans l'onglet sélectionné */
body[data-ui-mode="client"] .mainnav button.active .nav-label{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
}
body[data-ui-mode="client"] .mainnav button.active .nav-ico{
  background:transparent !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  border-color:#090909 !important;
}
body[data-ui-mode="client"] .mainnav button.active .nav-ico svg{
  stroke:#090909 !important;
  fill:none !important;
}

/* Sélecteurs jaunes secondaires */
body[data-ui-mode="client"] .quarter-pill.active,
body[data-ui-mode="client"] .quarter-pill.active span{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  border-color:#090909 !important;
}

body[data-ui-mode="client"] .practice-section-tabs button.active,
body[data-ui-mode="client"] .pillar-tabs button.active,
body[data-ui-mode="client"] .featured-metric-tab.active{
  border:2px solid #090909 !important;
  box-shadow:none !important;
}


/* V1.63 — alignements et relief */
body[data-ui-mode="client"] .practice-section-tabs button{
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
}

.calendar-inline-tools{display:none}
@media(max-width:760px){
  body[data-ui-mode="client"] .client-calendar-head .client-calendar-tools{
    display:none !important;
  }
  body[data-ui-mode="client"] .calendar-inline-tools{
    display:grid !important;
    grid-template-columns:1fr;
    gap:7px;
    margin:-2px 0 8px;
  }
  body[data-ui-mode="client"] .calendar-inline-tools .calendar-tools-secondary{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
  }
}
@media(min-width:761px){
  body[data-ui-mode="client"] .calendar-inline-tools{display:none !important}
}

body[data-ui-mode="client"] .momentum-top-label,
body[data-ui-mode="client"] .movement-top-label{
  display:block;
  width:100%;
  text-align:center;
  font-size:12px !important;
  letter-spacing:.16em !important;
  margin:0 0 10px !important;
}
body[data-ui-mode="client"] .movement-card-head h2,
body[data-ui-mode="client"] .movement-card-head p{
  text-align:center;
}

body[data-ui-mode="client"] .client-primary-calendar .mini-action{
  border:1px solid rgba(255,255,255,.98) !important;
  background:linear-gradient(180deg,#ffffff 0%, #f8f8f4 100%) !important;
  box-shadow:0 10px 22px rgba(0,0,0,.08), inset 0 0 0 1px rgba(255,255,255,.92) !important;
}
body[data-ui-mode="client"] .client-primary-calendar .mini-action:hover{
  box-shadow:0 12px 24px rgba(0,0,0,.10), inset 0 0 0 1px rgba(255,255,255,.98) !important;
}

@media(max-width:760px){
  body[data-ui-mode="client"] .momentum-top-label,
  body[data-ui-mode="client"] .movement-top-label{
    font-size:11px !important;
    margin-bottom:9px !important;
  }
}


/* V1.64 — Graphiques : nettoyage, alignements et explication */
body[data-ui-mode="client"] .featured-metrics-title{
  margin:12px 0 12px !important;
}
body[data-ui-mode="client"] .featured-metrics-title p{
  display:none !important;
}
body[data-ui-mode="client"] .featured-metric-switcher{
  gap:10px !important;
}
body[data-ui-mode="client"] .featured-metric-tabs{
  align-items:stretch;
  margin:0 0 2px;
}
body[data-ui-mode="client"] .featured-metric-tab{
  min-height:44px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  line-height:1.18 !important;
  padding:8px 10px !important;
}
body[data-ui-mode="client"] .featured-metrics-new-action{
  margin:12px 0 12px !important;
}
body[data-ui-mode="client"] .metric-categories-wrap{
  margin-top:12px !important;
  gap:12px !important;
}
body[data-ui-mode="client"] .metric-categories-explainer{
  text-align:center;
  font-size:10.5px;
  line-height:1.45;
  color:#565954;
  text-shadow:var(--li-outside-text-shadow);
  margin:0 auto 2px;
  max-width:520px;
}

/* Swipe plus premium, sans blocage sur les boutons d’action */
#app.app-swipe-dragging{
  opacity:1 !important;
  transform:translate3d(var(--li-swipe-x,0),0,0) scale(var(--li-swipe-scale,1)) !important;
  transition:none !important;
  will-change:transform;
}
#app.app-swipe-return{
  opacity:1 !important;
  transform:translate3d(var(--li-swipe-x,0),0,0) scale(var(--li-swipe-scale,1)) !important;
  transition:transform .17s cubic-bezier(.16,.84,.32,1),opacity .17s ease !important;
}

#app.app-page-enter-next{
  animation:liGalaxyPageNext .24s cubic-bezier(.16,.84,.32,1) both !important;
}
#app.app-page-enter-prev{
  animation:liGalaxyPagePrev .24s cubic-bezier(.16,.84,.32,1) both !important;
}
@keyframes liGalaxyPageNext{
  0%{
    opacity:1;
    transform:translate3d(22px,0,0) scale(.992);
  }
  100%{
    opacity:1;
    transform:translate3d(0,0,0) scale(1);
  }
}
@keyframes liGalaxyPagePrev{
  0%{
    opacity:1;
    transform:translate3d(-22px,0,0) scale(.992);
  }
  100%{
    opacity:1;
    transform:translate3d(0,0,0) scale(1);
  }
}

/* Boutons action agenda : plus neutres dans le geste */
body[data-ui-mode="client"] .calendar-inline-tools .btn,
body[data-ui-mode="client"] .client-calendar-tools .btn{
  touch-action:pan-y pan-x;
}

@media(max-width:760px){
  body[data-ui-mode="client"] .metric-categories-explainer{
    font-size:10px;
    max-width:92%;
  }
  body[data-ui-mode="client"] .featured-metric-tab{
    min-height:46px !important;
  }
}


/* V1.65 — centrage plus juste du logo + Leader Impactant + Agenda du succès */
@media(max-width:1180px){
  body[data-ui-mode="client"] .brandbar{
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    padding-left:16px !important;
    padding-right:16px !important;
  }

  body[data-ui-mode="client"] .brand-identity,
  body[data-ui-mode="client"] .brand-identity-centered{
    width:auto !important;
    max-width:max-content !important;
    margin:0 auto !important;
    display:grid !important;
    grid-template-columns:auto auto !important;
    align-items:center !important;
    justify-content:center !important;
    gap:10px !important;
    flex:0 1 auto !important;
  }

  body[data-ui-mode="client"] .brand-logo-wrap,
  body[data-ui-mode="client"] .winged-lion-mark{
    justify-self:center !important;
    align-self:center !important;
  }

  body[data-ui-mode="client"] .brandmark-vertical{
    width:auto !important;
    min-width:0 !important;
    justify-content:center !important;
    align-items:flex-start !important;
    margin:0 !important;
  }

  body[data-ui-mode="client"] .brand-title,
  body[data-ui-mode="client"] .brand-sub,
  body[data-ui-mode="client"] .brand-byline{
    width:auto !important;
  }
}

@media(max-width:760px){
  body[data-ui-mode="client"] .brandbar{
    padding-left:14px !important;
    padding-right:14px !important;
  }

  body[data-ui-mode="client"] .brand-identity,
  body[data-ui-mode="client"] .brand-identity-centered{
    gap:10px !important;
  }
}

@media(min-width:761px) and (max-width:1180px){
  body[data-ui-mode="client"] .brandbar{
    padding-left:24px !important;
    padding-right:24px !important;
  }

  body[data-ui-mode="client"] .brand-identity,
  body[data-ui-mode="client"] .brand-identity-centered{
    gap:14px !important;
  }
}


/* V1.67 — finitions mobile / graphiques / pratiques */
body[data-ui-mode="client"] .momentum-head > div:first-child > p{
  font-size:10.8px !important;
  line-height:1.48 !important;
  color:#242622 !important;
  max-width:460px;
}
@media(max-width:760px){
  body[data-ui-mode="client"] .momentum-head > div:first-child > p{
    font-size:10.4px !important;
    max-width:320px !important;
  }
}

body[data-ui-mode="client"] .featured-metrics-title{
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  text-align:center !important;
  margin:18px 0 18px !important;
}
body[data-ui-mode="client"] .featured-metrics-title h2{
  text-align:center !important;
  margin:0 auto !important;
}
body[data-ui-mode="client"] .client-metrics-page,
body[data-ui-mode="client"] .client-music-page,
body[data-ui-mode="client"] .client-practice-page{
  animation:liTabPageSoftIn .20s cubic-bezier(.16,.84,.32,1) both;
}
@keyframes liTabPageSoftIn{
  0%{opacity:.985;transform:translate3d(14px,0,0) scale(.992)}
  100%{opacity:1;transform:translate3d(0,0,0) scale(1)}
}

body[data-ui-mode="client"] .metric-categories-explainer,
body[data-ui-mode="client"] .practice-section-intro span,
body[data-ui-mode="client"] .practice-card p,
body[data-ui-mode="client"] .music-track-copy span,
body[data-ui-mode="client"] .music-track-copy small{
  font-size:13px !important;
  line-height:1.52 !important;
}
body[data-ui-mode="client"] .practice-section-intro b{
  font-size:18px !important;
}

body[data-ui-mode="client"] .featured-metric-tabs{
  align-items:stretch !important;
}
body[data-ui-mode="client"] .featured-metric-tab,
body[data-ui-mode="client"] .practice-section-tabs button{
  font-size:12px !important;
  font-weight:850 !important;
  min-height:48px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  line-height:1.15 !important;
}
body[data-ui-mode="client"] .practice-section-tabs{
  align-items:stretch !important;
  margin:0 auto 16px !important;
}

/* Jaune sélectionné = texte noir + contour noir partout (sauf boutons CTA jaunes de contenu) */
body[data-ui-mode="client"] .featured-metric-tab.active,
body[data-ui-mode="client"] .practice-section-tabs button.active,
body[data-ui-mode="client"] .pillar-tabs button.active,
body[data-ui-mode="client"] .mainnav button.active,
body[data-ui-mode="client"] .quarter-pill.active,
body[data-ui-mode="client"] .mood-choice.active,
body[data-ui-mode="client"] .metric-pin.active,
body[data-ui-mode="client"] .metric-category-details[open] > .metric-category-summary{
  background:var(--yellow) !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  border-color:#090909 !important;
  box-shadow:none !important;
}
body[data-ui-mode="client"] .featured-metric-tab.active *,
body[data-ui-mode="client"] .practice-section-tabs button.active *,
body[data-ui-mode="client"] .pillar-tabs button.active *,
body[data-ui-mode="client"] .mainnav button.active *,
body[data-ui-mode="client"] .quarter-pill.active *,
body[data-ui-mode="client"] .mood-choice.active *,
body[data-ui-mode="client"] .metric-pin.active *{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
}
body[data-ui-mode="client"] .mainnav button.active .nav-ico svg,
body[data-ui-mode="client"] .mainnav button.active .nav-ico svg *{
  stroke:#090909 !important;
}
body[data-ui-mode="client"] .metric-pin.active{
  border:2px solid #090909 !important;
}
body[data-ui-mode="client"] .metric-pin.active:hover{
  background:var(--yellow) !important;
}

/* étoile favori plus cohérente */
body[data-ui-mode="client"] .featured-metric-head .metric-pin{
  width:38px;
  height:38px;
  font-size:19px;
}

/* pratiques */
body[data-ui-mode="client"] .practice-grid .practice-awaiting.pdf{
  background:linear-gradient(180deg,#f7f7f4,#efefea);
  color:#111;
  border:1px solid rgba(17,17,17,.14);
}

/* interaction swipe plus premium */
#app.app-swipe-dragging,
#app.app-swipe-return{
  transform:translate3d(var(--li-swipe-x,0),0,0) scale(var(--li-swipe-scale,1)) !important;
  transform-origin:center center !important;
  backface-visibility:hidden;
}
#app.app-page-enter-next{
  animation:liGalaxyPageNextDeep .24s cubic-bezier(.16,.84,.32,1) both !important;
}
#app.app-page-enter-prev{
  animation:liGalaxyPagePrevDeep .24s cubic-bezier(.16,.84,.32,1) both !important;
}
@keyframes liGalaxyPageNextDeep{
  0%{opacity:1;transform:translate3d(28px,0,0) scale(.989)}
  100%{opacity:1;transform:translate3d(0,0,0) scale(1)}
}
@keyframes liGalaxyPagePrevDeep{
  0%{opacity:1;transform:translate3d(-28px,0,0) scale(.989)}
  100%{opacity:1;transform:translate3d(0,0,0) scale(1)}
}


/* V1.68 — lisibilité, alignements et effacement au swipe */

/* Textes sous Musiques / Tes 3 prochains jours / Pratiques : +2 px */
body[data-ui-mode="client"] .music-page-heading .page-intro,
body[data-ui-mode="client"] .client-calendar-head .page-intro,
body[data-ui-mode="client"] .client-practice-page .client-centered-heading .page-intro{
  font-size:14.5px !important;
  line-height:1.55 !important;
}

/* Explication sous les graphiques : encore +2 px */
body[data-ui-mode="client"] .metric-categories-explainer{
  font-size:15px !important;
  line-height:1.5 !important;
  max-width:620px !important;
  margin:2px auto 6px !important;
}

/* Mes 3 graphiques favoris : vrai centrage horizontal + même respiration que les autres pages */
body[data-ui-mode="client"] .client-metrics-page .featured-metrics-title{
  width:100% !important;
  min-height:58px !important;
  display:grid !important;
  place-items:center !important;
  text-align:center !important;
  margin:18px auto 18px !important;
  padding:0 !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metrics-title > div{
  width:100% !important;
  display:grid !important;
  place-items:center !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metrics-title h2{
  display:block !important;
  width:100% !important;
  margin:0 auto !important;
  text-align:center !important;
}

/* Pratiques : Sport / détente / étirements exactement sur une seule ligne comme les 3 favoris */
body[data-ui-mode="client"] .practice-section-tabs{
  width:100% !important;
  max-width:none !important;
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:7px !important;
  align-items:stretch !important;
  margin:0 auto 16px !important;
}
body[data-ui-mode="client"] .practice-section-tabs button{
  width:100% !important;
  min-width:0 !important;
  min-height:48px !important;
  padding:7px 5px !important;
  white-space:normal !important;
  text-align:center !important;
}

/* Effacement du contenu nettement plus visible pendant le geste */
#app.app-swipe-dragging{
  opacity:var(--li-swipe-opacity,1) !important;
  transition:none !important;
}
#app.app-swipe-return{
  opacity:var(--li-swipe-opacity,1) !important;
  transition:
    transform .15s cubic-bezier(.16,.84,.32,1),
    opacity .15s ease !important;
}

/* Le nouvel écran revient progressivement, sans flash */
#app.app-page-enter-next{
  animation:liGalaxyPageNextFade .24s cubic-bezier(.16,.84,.32,1) both !important;
}
#app.app-page-enter-prev{
  animation:liGalaxyPagePrevFade .24s cubic-bezier(.16,.84,.32,1) both !important;
}
@keyframes liGalaxyPageNextFade{
  0%{opacity:.62;transform:translate3d(30px,0,0) scale(.988)}
  100%{opacity:1;transform:translate3d(0,0,0) scale(1)}
}
@keyframes liGalaxyPagePrevFade{
  0%{opacity:.62;transform:translate3d(-30px,0,0) scale(.988)}
  100%{opacity:1;transform:translate3d(0,0,0) scale(1)}
}

@media(max-width:760px){
  body[data-ui-mode="client"] .music-page-heading .page-intro,
  body[data-ui-mode="client"] .client-calendar-head .page-intro,
  body[data-ui-mode="client"] .client-practice-page .client-centered-heading .page-intro{
    font-size:12.5px !important;
  }

  body[data-ui-mode="client"] .metric-categories-explainer{
    font-size:15px !important;
    max-width:94% !important;
  }

  body[data-ui-mode="client"] .practice-section-tabs{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }

  body[data-ui-mode="client"] .practice-section-tabs button{
    font-size:11.5px !important;
    line-height:1.12 !important;
  }
}


/* V1.69 — verrouillage définitif des états sélectionnés : JAUNE + NOIR */
body[data-ui-mode="client"] button.li-selected,
body[data-ui-mode="client"] button.active.featured-metric-tab,
body[data-ui-mode="client"] .practice-section-tabs > button.active,
body[data-ui-mode="client"] .pillar-tabs > button.active,
body[data-ui-mode="client"] .mainnav > button.active,
body[data-ui-mode="client"] .mood-choice.active,
body[data-ui-mode="client"] .metric-pin.active{
  background:#E8E500 !important;
  background-image:none !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  border:2px solid #090909 !important;
  outline:0 !important;
  box-shadow:none !important;
  filter:none !important;
  text-shadow:none !important;
}

/* Tout le contenu interne d'un bouton sélectionné devient noir */
body[data-ui-mode="client"] button.li-selected *,
body[data-ui-mode="client"] button.active.featured-metric-tab *,
body[data-ui-mode="client"] .practice-section-tabs > button.active *,
body[data-ui-mode="client"] .pillar-tabs > button.active *,
body[data-ui-mode="client"] .mainnav > button.active *,
body[data-ui-mode="client"] .mood-choice.active *,
body[data-ui-mode="client"] .metric-pin.active *{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  text-shadow:none !important;
}

/* Menu inférieur : texte + carré icône + SVG entièrement noirs */
body[data-ui-mode="client"] .mainnav > button.active .nav-label{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  font-weight:900 !important;
}
body[data-ui-mode="client"] .mainnav > button.active .nav-ico{
  background:transparent !important;
  background-image:none !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  border-color:#090909 !important;
  box-shadow:none !important;
}
body[data-ui-mode="client"] .mainnav > button.active .nav-ico svg,
body[data-ui-mode="client"] .mainnav > button.active .nav-ico svg *,
body[data-ui-mode="client"] .mainnav > button.active .nav-ico path,
body[data-ui-mode="client"] .mainnav > button.active .nav-ico rect,
body[data-ui-mode="client"] .mainnav > button.active .nav-ico circle,
body[data-ui-mode="client"] .mainnav > button.active .nav-ico line,
body[data-ui-mode="client"] .mainnav > button.active .nav-ico polyline{
  stroke:#090909 !important;
  color:#090909 !important;
}
body[data-ui-mode="client"] .mainnav > button.active .nav-ico polygon{
  stroke:#090909 !important;
  fill:#090909 !important;
}

/* Étoile favori : jaune, étoile noire, contour noir */
body[data-ui-mode="client"] .featured-metric-head .metric-pin.active,
body[data-ui-mode="client"] .metric-pin.active{
  background:#E8E500 !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  border:2px solid #090909 !important;
  box-shadow:none !important;
}

/* Les états ouverts de catégories gardent un contour noir/jaune lisible sans devenir blanc */
body[data-ui-mode="client"] .metric-category-details[open]{
  border:2px solid #090909 !important;
  box-shadow:0 0 0 2px #E8E500 !important;
}

/* Exceptions voulues : CTA Saisir et Écouter l'album conservent leur style de bouton d'action */
body[data-ui-mode="client"] .featured-metric-actions .btn.yellow,
body[data-ui-mode="client"] .music-album-head .btn.yellow{
  border-color:inherit;
}


/* V1.70 — fallback sans data-ui-mode pour verrouiller les sélections jaunes/noires */
button.li-selected,
button.active.featured-metric-tab,
.practice-section-tabs > button.active,
.pillar-tabs > button.active,
.mainnav > button.active,
.mood-choice.active,
.metric-pin.active{
  background:#E8E500 !important;
  background-image:none !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  border:2px solid #090909 !important;
  outline:0 !important;
  box-shadow:none !important;
  filter:none !important;
  text-shadow:none !important;
}
button.li-selected *,
button.active.featured-metric-tab *,
.practice-section-tabs > button.active *,
.pillar-tabs > button.active *,
.mainnav > button.active *,
.mood-choice.active *,
.metric-pin.active *{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  text-shadow:none !important;
}
.mainnav > button.active .nav-label{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
}
.mainnav > button.active .nav-ico,
.mainnav > button.active .nav-ico *{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  border-color:#090909 !important;
  text-shadow:none !important;
}
.mainnav > button.active .nav-ico svg,
.mainnav > button.active .nav-ico svg *,
.mainnav > button.active .nav-ico path,
.mainnav > button.active .nav-ico rect,
.mainnav > button.active .nav-ico circle,
.mainnav > button.active .nav-ico line,
.mainnav > button.active .nav-ico polyline{
  stroke:#090909 !important;
  fill:none !important;
}
.mainnav > button.active .nav-ico polygon{
  stroke:#090909 !important;
  fill:#090909 !important;
}
.featured-metric-head .metric-pin.active,
.metric-pin.active{
  background:#E8E500 !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  border:2px solid #090909 !important;
}


/* V1.71 — correctifs définitifs visibilité + cache local */

/* Textes explicatifs : même taille que la zone Graphiques */
.music-page-heading .page-intro,
.client-calendar-head .page-intro,
.client-practice-page .client-centered-heading .page-intro,
.client-centered-heading .page-intro,
.page-intro{
  font-size:15px !important;
  line-height:1.55 !important;
}
.metric-categories-explainer{
  font-size:15px !important;
  line-height:1.55 !important;
}

/* Mes 3 graphiques favoris : centrage réel */
.featured-metrics-title,
.featured-metrics-title > div{
  width:100% !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  text-align:center !important;
}
.featured-metrics-title{
  margin:20px auto 18px !important;
  min-height:56px !important;
}
.featured-metrics-title h2,
.featured-metrics-title .client-section-title{
  width:100% !important;
  margin:0 auto !important;
  text-align:center !important;
}

/* Sélections jaunes = toujours noir, sans dépendre du mode */
.featured-metric-tab.active,
.practice-section-tabs button.active,
.pillar-tabs button.active,
.mainnav button.active,
.mood-choice.active,
.metric-pin.active,
button.li-selected,
.metric-tabs .metric-tab.active,
.quarter-pill.active,
.metric-category-details[open] > .metric-category-summary{
  background:#E8E500 !important;
  background-image:none !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  border:2px solid #090909 !important;
  box-shadow:none !important;
  text-shadow:none !important;
  filter:none !important;
}
.featured-metric-tab.active *,
.practice-section-tabs button.active *,
.pillar-tabs button.active *,
.mainnav button.active *,
.mood-choice.active *,
.metric-pin.active *,
button.li-selected *,
.metric-tabs .metric-tab.active *,
.quarter-pill.active *,
.metric-category-details[open] > .metric-category-summary *{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  text-shadow:none !important;
}

/* Sécurité supplémentaire pour les libellés visibles */
.practice-section-tabs button.active,
.practice-section-tabs button.active span,
.practice-section-tabs button.active b,
.mainnav button.active .nav-label,
.mainnav button.active .nav-ico,
.mainnav button.active .nav-ico *,
.featured-metric-tab.active,
.featured-metric-tab.active span,
.metric-tabs .metric-tab.active,
.metric-tabs .metric-tab.active span,
.metric-pin.active,
.metric-pin.active span{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  border-color:#090909 !important;
}
.mainnav button.active .nav-ico svg,
.mainnav button.active .nav-ico svg *,
.mainnav button.active .nav-ico path,
.mainnav button.active .nav-ico rect,
.mainnav button.active .nav-ico circle,
.mainnav button.active .nav-ico line,
.mainnav button.active .nav-ico polyline{
  stroke:#090909 !important;
  fill:none !important;
}
.mainnav button.active .nav-ico polygon,
.metric-pin.active svg,
.metric-pin.active svg *{
  stroke:#090909 !important;
  fill:#090909 !important;
}

@media(max-width:760px){
  .music-page-heading .page-intro,
  .client-calendar-head .page-intro,
  .client-practice-page .client-centered-heading .page-intro,
  .client-centered-heading .page-intro,
  .page-intro,
  .metric-categories-explainer{
    font-size:15px !important;
    line-height:1.55 !important;
  }
  .featured-metrics-title{
    margin:18px auto 16px !important;
  }
}


/* V1.72 — renfort mobile sélection + graphiques */
@media (max-width:760px){
  .featured-metrics-title,
  .featured-metrics-title > div,
  .featured-metrics-title h2{
    width:100% !important;
    text-align:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  .featured-metrics-title h2{ font-size:24px !important; }
  .page-intro,
  .metric-categories-explainer,
  .practice-section-intro p,
  .music-page-heading .page-intro,
  .practice-card .muted,
  .practice-card p{
    font-size:16px !important;
    line-height:1.55 !important;
  }
  .mainnav > button.active,
  .mainnav > button.active .nav-label,
  .mainnav > button.active .nav-ico,
  .mainnav > button.active .nav-ico *,
  .practice-section-tabs > button.active,
  .practice-section-tabs > button.active *,
  .featured-metric-tab.active,
  .featured-metric-tab.active *,
  .metric-tabs .metric-tab.active,
  .metric-tabs .metric-tab.active *,
  .metric-pin.active,
  .metric-pin.active *{
    color:#090909 !important;
    -webkit-text-fill-color:#090909 !important;
    border-color:#090909 !important;
    text-shadow:none !important;
  }
  .mainnav > button.active .nav-ico{ background:transparent !important; }
  .mainnav > button.active .nav-ico svg,
  .mainnav > button.active .nav-ico svg *,
  .mainnav > button.active .nav-ico path,
  .mainnav > button.active .nav-ico rect,
  .mainnav > button.active .nav-ico circle,
  .mainnav > button.active .nav-ico line,
  .mainnav > button.active .nav-ico polyline{
    stroke:#090909 !important;
    fill:none !important;
  }
}


/* V1.73 — blocs fond clair, dynamique à droite, textes +1 */
body[data-ui-mode="client"] :is(.daily-checkin-card,.momentum-card,.client-home-hero,.client-home-section,.upcoming-day,.daycol,.metric-focus-card,.metric-category-details,.practice-card,.music-album-card,.music-page-panel,.movement-card,.mentor-wellness-card){
  background-image:url('/block-background-v173.png') !important;
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
}

body[data-ui-mode="client"] .momentum-head > div:first-child{
  width:100%;
}
body[data-ui-mode="client"] .momentum-head > div:first-child > p{
  text-align:right !important;
  margin:6px 0 0 auto !important;
  max-width:100% !important;
  font-size:18px !important;
  line-height:1.4 !important;
}

body[data-ui-mode="client"] .page-intro,
body[data-ui-mode="client"] .metric-categories-explainer,
body[data-ui-mode="client"] .practice-section-intro p,
body[data-ui-mode="client"] .music-page-heading .page-intro,
body[data-ui-mode="client"] .practice-card .muted,
body[data-ui-mode="client"] .practice-card p,
body[data-ui-mode="client"] .client-home-hero p,
body[data-ui-mode="client"] .client-top-greeting,
body[data-ui-mode="client"] .section-heading p,
body[data-ui-mode="client"] .upcoming-day small,
body[data-ui-mode="client"] .muted,
body[data-ui-mode="client"] .micro{
  font-size:17px !important;
  line-height:1.55 !important;
}

body[data-ui-mode="client"] .featured-metrics-title,
body[data-ui-mode="client"] .featured-metrics-title > div{
  width:100% !important;
  display:flex !important;
  justify-content:center !important;
  text-align:center !important;
}
body[data-ui-mode="client"] .featured-metrics-title h2{
  width:100% !important;
  text-align:center !important;
  margin:0 auto !important;
  font-size:30px !important;
}

@media(max-width:760px){
  body[data-ui-mode="client"] .momentum-head > div:first-child > p{
    font-size:18px !important;
  }
  body[data-ui-mode="client"] .page-intro,
  body[data-ui-mode="client"] .metric-categories-explainer,
  body[data-ui-mode="client"] .practice-section-intro p,
  body[data-ui-mode="client"] .music-page-heading .page-intro,
  body[data-ui-mode="client"] .practice-card .muted,
  body[data-ui-mode="client"] .practice-card p,
  body[data-ui-mode="client"] .client-home-hero p,
  body[data-ui-mode="client"] .client-top-greeting,
  body[data-ui-mode="client"] .section-heading p,
  body[data-ui-mode="client"] .upcoming-day small,
  body[data-ui-mode="client"] .muted,
  body[data-ui-mode="client"] .micro{
    font-size:17px !important;
  }
  body[data-ui-mode="client"] .featured-metrics-title h2{
    font-size:26px !important;
  }
}


/* V1.74 — Graphiques : vrai centrage et respiration égale entre entête / titre / boutons */
body[data-ui-mode="client"] .client-metrics-page .metrics-dashboard{
  display:flex !important;
  flex-direction:column !important;
  gap:24px !important;
  padding-top:24px !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metrics-title{
  margin:0 !important;
  min-height:auto !important;
  padding:0 !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metrics-title > div,
body[data-ui-mode="client"] .client-metrics-page .featured-metrics-title h2{
  margin:0 !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-switcher{
  margin:0 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:24px !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-tabs{
  margin:0 !important;
}
body[data-ui-mode="client"] .client-metrics-page .metric-categories-wrap{
  margin-top:0 !important;
}
@media(max-width:760px){
  body[data-ui-mode="client"] .client-metrics-page .metrics-dashboard{
    gap:22px !important;
    padding-top:22px !important;
  }
  body[data-ui-mode="client"] .client-metrics-page .featured-metric-switcher{
    gap:22px !important;
  }
}


/* V1.75 — Graphiques : centrage vertical STRUCTUREL du titre */
body[data-ui-mode="client"][data-ui-page="metrics"] main{
  padding-top:0 !important;
}
body[data-ui-mode="client"] .client-metrics-page .metrics-dashboard{
  display:block !important;
  padding-top:0 !important;
}
body[data-ui-mode="client"] .metrics-favorites-stage{
  height:174px !important;
  display:grid !important;
  grid-template-rows:1fr auto 1fr auto !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
}
body[data-ui-mode="client"] .metrics-favorites-stage .featured-metrics-title{
  grid-row:2 !important;
  align-self:center !important;
  justify-self:stretch !important;
  width:100% !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  display:grid !important;
  place-items:center !important;
}
body[data-ui-mode="client"] .metrics-favorites-stage .featured-metrics-title > div,
body[data-ui-mode="client"] .metrics-favorites-stage .featured-metrics-title h2{
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  text-align:center !important;
}
body[data-ui-mode="client"] .metrics-favorites-stage .featured-metric-tabs{
  grid-row:4 !important;
  width:100% !important;
  margin:0 !important;
  align-self:end !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-switcher{
  margin-top:18px !important;
  gap:18px !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metrics-new-action{
  margin-top:18px !important;
}
@media(max-width:760px){
  body[data-ui-mode="client"] .metrics-favorites-stage{
    height:168px !important;
  }
  body[data-ui-mode="client"] .client-metrics-page .featured-metric-switcher{
    margin-top:16px !important;
  }
}


/* V1.76 — retour aux blocs foncés d'origine */
body[data-ui-mode="client"] :is(.daily-checkin-card,.momentum-card,.client-home-hero,.client-home-section,.upcoming-day,.daycol,.metric-focus-card,.metric-category-details,.practice-card,.music-album-card,.music-page-panel,.movement-card,.mentor-wellness-card){
  background:#101114 !important;
  background-image:linear-gradient(180deg, rgba(28,29,34,.97) 0%, rgba(14,15,18,.98) 100%) !important;
  background-size:auto !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
}
body[data-ui-mode="client"] .metric-category-details[open] > .metric-category-summary,
body[data-ui-mode="client"] .metric-category-summary,
body[data-ui-mode="client"] .featured-metric-card,
body[data-ui-mode="client"] .practice-card,
body[data-ui-mode="client"] .music-album-card,
body[data-ui-mode="client"] .movement-card,
body[data-ui-mode="client"] .upcoming-day,
body[data-ui-mode="client"] .client-home-hero,
body[data-ui-mode="client"] .client-home-section,
body[data-ui-mode="client"] .momentum-card,
body[data-ui-mode="client"] .daily-checkin-card{
  box-shadow:0 10px 24px rgba(0,0,0,.16), 0 1px 0 rgba(255,255,255,.03) inset !important;
}


/* V1.77 — remonter le titre Graphiques et le bloc graphique d'environ 25% */
body[data-ui-mode="client"] .client-metrics-page .metrics-dashboard{
  padding-top:10px !important;
  gap:18px !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metrics-title{
  margin-top:-6px !important;
  margin-bottom:0 !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-switcher{
  gap:18px !important;
  margin-top:-2px !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-tabs{
  margin-top:0 !important;
}
body[data-ui-mode="client"] .client-metrics-page .metric-focus-card{
  margin-top:-2px !important;
}

@media(max-width:760px){
  body[data-ui-mode="client"] .client-metrics-page .metrics-dashboard{
    padding-top:8px !important;
    gap:16px !important;
  }
  body[data-ui-mode="client"] .client-metrics-page .featured-metrics-title{
    margin-top:-10px !important;
  }
  body[data-ui-mode="client"] .client-metrics-page .featured-metric-switcher{
    gap:16px !important;
    margin-top:-4px !important;
  }
  body[data-ui-mode="client"] .client-metrics-page .metric-focus-card{
    margin-top:-4px !important;
  }
}


/* V1.78 — Graphiques alignés EXACTEMENT comme Musiques */
body[data-ui-mode="client"] .client-metrics-page .metrics-dashboard{
  display:block !important;
  padding-top:0 !important;
  margin:0 !important;
}

/* Le titre Graphiques réutilise exactement le bloc d'entête de Musiques */
body[data-ui-mode="client"] .client-metrics-page .metrics-page-heading{
  margin:0 0 18px !important;
  padding:0 !important;
  min-height:0 !important;
  height:auto !important;
  display:block !important;
  text-align:center !important;
}
body[data-ui-mode="client"] .client-metrics-page .metrics-page-heading .page-title{
  margin:0 !important;
  padding:0 !important;
  text-align:center !important;
}

/* Annule complètement l'ancienne scène V1.75 */
body[data-ui-mode="client"] .metrics-favorites-stage{
  display:none !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-switcher{
  margin:0 !important;
  gap:9px !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-tabs{
  margin:0 !important;
}

/* Même distance du haut que la page Musiques */
@media(max-width:760px){
  body[data-ui-mode="client"][data-ui-page="metrics"] main{
    padding-top:24px !important;
  }
}
@media(min-width:761px) and (max-width:1180px){
  body[data-ui-mode="client"][data-ui-page="metrics"] main{
    padding-top:26px !important;
  }
}
@media(min-width:1181px){
  body[data-ui-mode="client"][data-ui-page="metrics"] main{
    padding-top:38px !important;
  }
}


/* V1.79 — Graphiques plus hauts + états sélectionnés JAUNE / NOIR verrouillés sur mobile */
body[data-ui-mode="client"][data-ui-page="metrics"] main{padding-top:6px !important;}
body[data-ui-mode="client"] .client-metrics-page .metrics-dashboard{display:block !important;padding-top:0 !important;margin:0 !important;}
body[data-ui-mode="client"] .client-metrics-page .metrics-page-heading{margin:0 0 8px !important;padding:0 !important;}
body[data-ui-mode="client"] .client-metrics-page .metrics-page-heading .page-title{margin:0 !important;padding:0 !important;}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-switcher{margin:0 !important;gap:12px !important;}
.featured-metric-transition-stage{
  position:relative;
  overflow:hidden;
  border-radius:28px;
  isolation:isolate;
}
.featured-metric-transition-stage > .featured-metric-focus{
  position:absolute !important;
  inset:0;
  width:100%;
  height:100%;
  margin:0 !important;
  will-change:transform,opacity,filter;
  transition:
    transform .34s cubic-bezier(.22,.61,.36,1),
    opacity .34s cubic-bezier(.22,.61,.36,1),
    filter .34s cubic-bezier(.22,.61,.36,1);
  backface-visibility:hidden;
}
.featured-metric-transition-stage > .featured-metric-focus.is-current{
  transform:translate3d(0,0,0) scale(1);
  opacity:1;
  z-index:1;
}
.featured-metric-transition-stage > .featured-metric-focus.is-next{
  transform:translate3d(18%,0,0) scale(.992);
  opacity:.82;
  z-index:2;
}
.featured-metric-transition-stage.is-animating > .featured-metric-focus.is-current{
  transform:translate3d(-18%,0,0) scale(.988);
  opacity:.24;
  filter:blur(.45px);
}
.featured-metric-transition-stage.is-animating > .featured-metric-focus.is-next{
  transform:translate3d(0,0,0) scale(1);
  opacity:1;
  filter:none;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-tabs{margin:0 !important;}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-focus,
body[data-ui-mode="client"] .client-metrics-page .metric-focus-card{margin-top:0 !important;}
body[data-ui-mode="client"] .client-metrics-page .featured-metrics-new-action{margin-top:10px !important;}
@media(min-width:761px){
  body[data-ui-mode="client"][data-ui-page="metrics"] main{padding-top:10px !important;}
  body[data-ui-mode="client"] .client-metrics-page .metrics-page-heading{margin:0 0 10px !important;}
  body[data-ui-mode="client"] .client-metrics-page .featured-metric-switcher{gap:14px !important;}
  body[data-ui-mode="client"] .client-metrics-page .featured-metrics-new-action{margin-top:12px !important;}
}

/* Verrouillage final des états sélectionnés — noir sur jaune partout, y compris mobile */
button.li-selected,
.practice-section-tabs > button.active,
.practice-section-tabs button.active,
.featured-metric-tab.active,
.pillar-tabs > button.active,
.mainnav > button.active,
.metric-tabs .metric-tab.active,
.metric-pin.active,
.mood-choice.active{
  background:#E8E500 !important;
  background-image:none !important;
  border:2px solid #090909 !important;
  box-shadow:none !important;
  filter:none !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  text-shadow:none !important;
}
button.li-selected *,
.practice-section-tabs > button.active *,
.practice-section-tabs button.active *,
.featured-metric-tab.active *,
.pillar-tabs > button.active *,
.mainnav > button.active *,
.metric-tabs .metric-tab.active *,
.metric-pin.active *,
.mood-choice.active *{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  text-shadow:none !important;
}
.mainnav > button.active .nav-label,
.mainnav > button.active .nav-ico,
.mainnav > button.active .nav-ico *,
.mainnav > button.active svg,
.mainnav > button.active svg *,
.mainnav > button.active path,
.mainnav > button.active rect,
.mainnav > button.active circle,
.mainnav > button.active line,
.mainnav > button.active polyline,
.mainnav > button.active polygon{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  stroke:#090909 !important;
  border-color:#090909 !important;
}
.mainnav > button.active polygon{fill:#090909 !important;}


/* V1.80 — Textes hors blocs premium + Bonjour Pierre agrandi */
body[data-ui-mode="client"] .client-top-greeting{
  font-size:42px !important;
  line-height:1.02 !important;
  letter-spacing:.04em !important;
  margin-bottom:14px !important;
  text-shadow:none !important;
  -webkit-text-stroke:0 !important;
}
@media(min-width:761px) and (max-width:1180px){
  body[data-ui-mode="client"] .client-top-greeting{font-size:46px !important;}
}
@media(max-width:760px){
  body[data-ui-mode="client"] .client-top-greeting{font-size:42px !important;}
}

/* Titres hors blocs : contour fin noir premium pour mieux ressortir sur fond clair */
body[data-ui-mode="client"] .client-calendar-head .page-title,
body[data-ui-mode="client"] .featured-metrics-title h2,
body[data-ui-mode="client"] .music-page-heading .page-title,
body[data-ui-mode="client"] .client-centered-heading .page-title,
body[data-ui-mode="client"] .content-learning-head .page-title,
body[data-ui-mode="client"] .client-metrics-heading .page-title,
body[data-ui-mode="client"] .section-heading > h2,
body[data-ui-mode="client"] .section-heading > h3{
  color:#111 !important;
  text-shadow:none !important;
  -webkit-text-stroke:.7px rgba(0,0,0,.55) !important;
  paint-order:stroke fill !important;
}

/* Texte sous “Tes 3 prochains jours” : +3 px */
body[data-ui-mode="client"] .client-calendar-head .page-intro{
  font-size:17.5px !important;
  line-height:1.55 !important;
}
@media(max-width:760px){
  body[data-ui-mode="client"] .client-calendar-head .page-intro{
    font-size:17.5px !important;
  }
}


/* V1.81 — Graphiques : remettre les 3 favoris entre le titre et le graphique, alignés comme Musiques */
body[data-ui-mode="client"] .client-metrics-page .metrics-dashboard{
  display:block !important;
  padding-top:0 !important;
  margin:0 !important;
}
body[data-ui-mode="client"] .client-metrics-page .metrics-page-heading{
  display:block !important;
  text-align:center !important;
  margin:0 !important;
  padding:18px 0 18px !important;
  min-height:0 !important;
}
body[data-ui-mode="client"] .client-metrics-page .metrics-page-heading .page-title{
  margin:0 !important;
  padding:0 !important;
  text-align:center !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-switcher{
  display:flex !important;
  flex-direction:column !important;
  gap:14px !important;
  margin:0 !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-tabs{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:12px !important;
  margin:0 0 4px !important;
  width:100% !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-tab{
  min-height:58px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  padding:10px 12px !important;
  border-radius:16px !important;
  font-weight:900 !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-focus,
body[data-ui-mode="client"] .client-metrics-page .metric-focus-card{
  margin-top:0 !important;
}
@media(max-width:760px){
  body[data-ui-mode="client"][data-ui-page="metrics"] main{padding-top:0 !important;}
  body[data-ui-mode="client"] .client-metrics-page .metrics-page-heading{padding:16px 0 16px !important;}
  body[data-ui-mode="client"] .client-metrics-page .featured-metric-switcher{gap:12px !important;}
  body[data-ui-mode="client"] .client-metrics-page .featured-metric-tabs{gap:10px !important;margin:0 0 2px !important;}
  body[data-ui-mode="client"] .client-metrics-page .featured-metric-tab{min-height:54px !important;font-size:20px !important;}
}

/* États sélectionnés : JAUNE avec texte et contour NOIRS partout, y compris mobile */
button.li-selected, button.li-selected *,
.practice-section-tabs > button.active, .practice-section-tabs > button.active *,
.practice-section-tabs button.active, .practice-section-tabs button.active *,
.featured-metric-tab.active, .featured-metric-tab.active *,
.pillar-tabs > button.active, .pillar-tabs > button.active *,
.mainnav > button.active, .mainnav > button.active *,
.metric-tabs .metric-tab.active, .metric-tabs .metric-tab.active *,
.metric-pin.active, .metric-pin.active *,
.mood-choice.active, .mood-choice.active *{
  background:#E8E500 !important;
  color:#0b0b0b !important;
  border-color:#0b0b0b !important;
  -webkit-text-fill-color:#0b0b0b !important;
  text-shadow:none !important;
  box-shadow:none !important;
}
.featured-metric-tab.active{
  border:2px solid #0b0b0b !important;
}


/* V1.82 — Bonjour Pierre même taille que le titre + contour noir net sur tous les textes hors blocs */
body[data-ui-mode="client"] .client-top-greeting,
body[data-ui-mode="client"] .client-calendar-head .page-title{
  font-size:34px !important;
  line-height:1.04 !important;
  letter-spacing:.02em !important;
}
@media(min-width:761px) and (max-width:1180px){
  body[data-ui-mode="client"] .client-top-greeting,
  body[data-ui-mode="client"] .client-calendar-head .page-title{
    font-size:42px !important;
  }
}
@media(min-width:1181px){
  body[data-ui-mode="client"] .client-top-greeting,
  body[data-ui-mode="client"] .client-calendar-head .page-title{
    font-size:46px !important;
  }
}

/* Contour noir premium bien net pour tous les textes hors blocs sur fond clair */
body[data-ui-mode="client"] .client-top-greeting,
body[data-ui-mode="client"] .client-calendar-head .page-title,
body[data-ui-mode="client"] .client-calendar-head .page-intro,
body[data-ui-mode="client"] .music-page-heading .page-title,
body[data-ui-mode="client"] .music-page-heading .page-intro,
body[data-ui-mode="client"] .metrics-page-heading .page-title,
body[data-ui-mode="client"] .metrics-page-heading .page-intro,
body[data-ui-mode="client"] .client-library-page > .page-title,
body[data-ui-mode="client"] .client-library-page > .page-intro,
body[data-ui-mode="client"] .client-centered-heading .page-title,
body[data-ui-mode="client"] .client-centered-heading .page-intro,
body[data-ui-mode="client"] .content-learning-head .page-title,
body[data-ui-mode="client"] .content-learning-head .page-intro,
body[data-ui-mode="client"] .section-heading > h2,
body[data-ui-mode="client"] .section-heading > h3,
body[data-ui-mode="client"] .metric-categories-explainer,
body[data-ui-mode="client"] .client-practices-page > p,
body[data-ui-mode="client"] .practice-section-copy,
body[data-ui-mode="client"] .music-page-copy,
body[data-ui-mode="client"] .page-intro,
body[data-ui-mode="client"] .hero-kicker{
  color:#111 !important;
  text-shadow:none !important;
  -webkit-text-stroke:0.9px rgba(0,0,0,.92) !important;
  paint-order:stroke fill !important;
}

/* Bonjour Pierre garde un rendu propre sans ombre ni flou */
body[data-ui-mode="client"] .client-top-greeting{
  margin-bottom:10px !important;
}


/* V1.83 — Brave mobile: contour noir via text-shadow + boutons favoris -30% */
/* Pourquoi: Brave Android rend parfois -webkit-text-stroke avec un halo/blanc. On remplace par un faux contour noir plus stable. */
body[data-ui-mode="client"] .client-top-greeting,
body[data-ui-mode="client"] .client-calendar-head .page-title,
body[data-ui-mode="client"] .client-calendar-head .page-intro,
body[data-ui-mode="client"] .music-page-heading .page-title,
body[data-ui-mode="client"] .music-page-heading .page-intro,
body[data-ui-mode="client"] .metrics-page-heading .page-title,
body[data-ui-mode="client"] .metrics-page-heading .page-intro,
body[data-ui-mode="client"] .client-library-page > .page-title,
body[data-ui-mode="client"] .client-library-page > .page-intro,
body[data-ui-mode="client"] .client-centered-heading .page-title,
body[data-ui-mode="client"] .client-centered-heading .page-intro,
body[data-ui-mode="client"] .content-learning-head .page-title,
body[data-ui-mode="client"] .content-learning-head .page-intro,
body[data-ui-mode="client"] .section-heading > h2,
body[data-ui-mode="client"] .section-heading > h3,
body[data-ui-mode="client"] .metric-categories-explainer,
body[data-ui-mode="client"] .client-practices-page > p,
body[data-ui-mode="client"] .practice-section-copy,
body[data-ui-mode="client"] .music-page-copy,
body[data-ui-mode="client"] .page-intro,
body[data-ui-mode="client"] .hero-kicker{
  -webkit-text-stroke:0 !important;
  text-shadow:
    -1px 0 0 rgba(0,0,0,.92),
     1px 0 0 rgba(0,0,0,.92),
     0 -1px 0 rgba(0,0,0,.92),
     0 1px 0 rgba(0,0,0,.92) !important;
}

/* Bonjour Pierre garde la même taille que le titre mais contour noir net */
body[data-ui-mode="client"] .client-top-greeting{
  color:#111 !important;
}

/* Boutons des 3 graphiques favoris: texte réduit d'environ 30% */
body[data-ui-mode="client"] .client-metrics-page .featured-metric-tab{
  font-size:14px !important;
  line-height:1.12 !important;
}
@media(max-width:760px){
  body[data-ui-mode="client"] .client-metrics-page .featured-metric-tab{
    font-size:14px !important;
    line-height:1.1 !important;
    padding:8px 10px !important;
  }
}


/* V1.84 — Finitions globales demandées */

/* Textes sur fond clair : blancs avec contour noir fin */
body[data-ui-mode="client"] .client-top-greeting,
body[data-ui-mode="client"] .client-calendar-head .page-title,
body[data-ui-mode="client"] .client-calendar-head .page-intro,
body[data-ui-mode="client"] .music-page-heading .page-title,
body[data-ui-mode="client"] .music-page-heading .page-intro,
body[data-ui-mode="client"] .metrics-page-heading .page-title,
body[data-ui-mode="client"] .metrics-page-heading .page-intro,
body[data-ui-mode="client"] .client-library-page > .page-title,
body[data-ui-mode="client"] .client-library-page > .page-intro,
body[data-ui-mode="client"] .client-centered-heading .page-title,
body[data-ui-mode="client"] .client-centered-heading .page-intro,
body[data-ui-mode="client"] .content-learning-head .page-title,
body[data-ui-mode="client"] .content-learning-head .page-intro,
body[data-ui-mode="client"] .section-heading > h2,
body[data-ui-mode="client"] .section-heading > h3,
body[data-ui-mode="client"] .metric-categories-explainer,
body[data-ui-mode="client"] .client-practices-page > p,
body[data-ui-mode="client"] .practice-section-copy,
body[data-ui-mode="client"] .music-page-copy,
body[data-ui-mode="client"] .page-intro,
body[data-ui-mode="client"] .hero-kicker,
body[data-ui-mode="client"] .metrics-dashboard .metric-category-head h2,
body[data-ui-mode="client"] .metrics-dashboard .metric-category-head span,
body[data-ui-mode="client"] .metrics-dashboard .metric-main-open b,
body[data-ui-mode="client"] .metrics-dashboard .metric-main-open span,
body[data-ui-mode="client"] .practice-section-title,
body[data-ui-mode="client"] .practice-section-intro p{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  -webkit-text-stroke:0 !important;
  text-shadow:
    -0.8px 0 0 rgba(0,0,0,.95),
     0.8px 0 0 rgba(0,0,0,.95),
     0 -0.8px 0 rgba(0,0,0,.95),
     0 0.8px 0 rgba(0,0,0,.95) !important;
}

/* Bonjour Pierre réduit de 25% */
body[data-ui-mode="client"] .client-top-greeting{
  font-size:26px !important;
  line-height:1.04 !important;
  margin-bottom:8px !important;
}
@media(min-width:761px){
  body[data-ui-mode="client"] .client-top-greeting{font-size:31px !important;}
}

/* Tes 3 prochains jours réduit de 15% et sous-texte mieux espacé / centré */
body[data-ui-mode="client"] .client-calendar-head .page-title{
  font-size:29px !important;
  line-height:1.05 !important;
}
body[data-ui-mode="client"] .client-calendar-head .page-intro{
  font-size:18px !important;
  line-height:1.55 !important;
  margin:14px auto 0 !important;
  max-width:540px !important;
  text-align:center !important;
}

/* Toutes les explications +1 px */
body[data-ui-mode="client"] .music-page-heading .page-intro,
body[data-ui-mode="client"] .client-calendar-head .page-intro,
body[data-ui-mode="client"] .client-practice-page .client-centered-heading .page-intro,
body[data-ui-mode="client"] .client-centered-heading .page-intro,
body[data-ui-mode="client"] .page-intro,
body[data-ui-mode="client"] .metric-categories-explainer,
body[data-ui-mode="client"] .practice-section-intro p,
body[data-ui-mode="client"] .music-page-copy,
body[data-ui-mode="client"] .practice-section-copy{
  font-size:17px !important;
}

/* Graphiques un peu plus bas */
body[data-ui-mode="client"] .client-metrics-page .metrics-page-heading,
body[data-ui-mode="client"] .client-metrics-page .music-page-heading.metrics-page-heading{
  margin-top:18px !important;
  margin-bottom:16px !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-switcher{
  margin-top:10px !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-tabs{
  margin-top:10px !important;
  margin-bottom:14px !important;
}

/* Boutons favoris un peu plus compacts */
body[data-ui-mode="client"] .client-metrics-page .featured-metric-tab{
  font-size:14px !important;
  line-height:1.1 !important;
}

/* Contour noir plus fin et propre sur tous les boutons sélectionnés */
body[data-ui-mode="client"] button.li-selected,
body[data-ui-mode="client"] button.active.featured-metric-tab,
body[data-ui-mode="client"] .practice-section-tabs > button.active,
body[data-ui-mode="client"] .pillar-tabs > button.active,
body[data-ui-mode="client"] .mainnav > button.active,
body[data-ui-mode="client"] .mood-choice.active,
body[data-ui-mode="client"] .metric-pin.active,
button.li-selected,
button.active.featured-metric-tab,
.practice-section-tabs > button.active,
.pillar-tabs > button.active,
.mainnav > button.active,
.mood-choice.active,
.metric-pin.active,
.metric-category-details[open] > .metric-category-summary{
  border:1px solid #090909 !important;
}

/* Mouvement global : la partie séances passe en marron comme l'identité du bloc */
body[data-ui-mode="client"] .movement-donut{
  background:conic-gradient(
    var(--yellow) 0 var(--neat-end),
    #dedfda var(--neat-end) 180deg,
    #6b4a24 180deg var(--train-end),
    #dedfda var(--train-end) 360deg
  ) !important;
}
body[data-ui-mode="client"] .legend-dot.training{
  background:#6b4a24 !important;
  border:1px solid #4d3517 !important;
}

/* Le cercle/score mouvement global adopte le brun de la partie séances */
body[data-ui-mode="client"] .movement-bottom-zone .movement-score,
body[data-ui-mode="client"] .movement-score,
body[data-ui-mode="client"] .movement-global-score,
body[data-ui-mode="client"] .movement-badge{
  background:#6b4a24 !important;
  color:#f5e7c8 !important;
  border-color:#4d3517 !important;
}

/* Blocs conservent le fond sombre d'origine */
body[data-ui-mode="client"] :is(.daily-checkin-card,.momentum-card,.client-home-hero,.client-home-section,.upcoming-day,.daycol,.metric-focus-card,.metric-category-details,.practice-card,.music-album-card,.music-page-panel,.movement-card,.mentor-wellness-card){
  background:#101010 !important;
  background-image:linear-gradient(180deg,rgba(34,34,34,.98),rgba(14,14,14,.98)) !important;
  background-size:auto !important;
}


/* V1.85 — PALETTE VERROUILLÉE CROSS-BROWSER (Brave / Chrome / PWA) */
:root{
  --li-bg-top:#ededec;
  --li-bg-mid:#e2e2e0;
  --li-bg-bottom:#d7d7d4;
  --li-panel:#17181a;
  --li-panel-deep:#0d0d0f;
  --li-panel-soft:#202126;
  --li-yellow:#e8e500;
  --li-gold:#c2a255;
  --li-white:#f4f4f1;
  --li-muted:#d0d0cc;
  --li-brown:#6b4a24;
  --yellow:#e8e500;
  --yellow-2:#f1ed00;
}

html,body{
  color-scheme:only light !important;
  forced-color-adjust:none !important;
  -webkit-print-color-adjust:exact !important;
  print-color-adjust:exact !important;
  -webkit-font-smoothing:antialiased;
  text-rendering:geometricPrecision;
}
body[data-ui-mode="client"]{
  background:linear-gradient(180deg,var(--li-bg-top) 0%,var(--li-bg-mid) 48%,var(--li-bg-bottom) 100%) !important;
  color:#111 !important;
}

/* Blocs : anthracite identique aux captures */
body[data-ui-mode="client"] :is(
  .daily-checkin-card,.momentum-card,.client-home-hero,.client-home-section,.upcoming-day,.daycol,
  .featured-metric-focus,.metric-focus-card,.metric-category-details,.practice-card,.music-album-card,
  .music-page-panel,.movement-card,.mentor-wellness-card,.mini-action,.action-card
){
  background:linear-gradient(180deg,#1b1c1f 0%,#101114 100%) !important;
  background-color:var(--li-panel) !important;
  border-color:rgba(255,255,255,.10) !important;
  color:var(--li-white) !important;
}

/* Texte DANS les blocs : blanc / gris, sans contour parasite */
body[data-ui-mode="client"] :is(
  .daily-checkin-card,.momentum-card,.client-home-hero,.client-home-section,.upcoming-day,.daycol,
  .featured-metric-focus,.practice-card,.music-album-card,.movement-card,.mini-action,.action-card
) :is(h1,h2,h3,h4,p,span,b,strong,small,label,em){
  -webkit-text-stroke:0 !important;
  text-shadow:none !important;
}
body[data-ui-mode="client"] :is(
  .daily-checkin-card,.momentum-card,.client-home-hero,.client-home-section,.upcoming-day,.daycol,
  .featured-metric-focus,.practice-card,.music-album-card,.movement-card,.mini-action,.action-card
) :is(h1,h2,h3,h4,b,strong){
  color:var(--li-white) !important;
  -webkit-text-fill-color:var(--li-white) !important;
}
body[data-ui-mode="client"] :is(
  .daily-checkin-card,.momentum-card,.client-home-hero,.client-home-section,.upcoming-day,.daycol,
  .featured-metric-focus,.practice-card,.music-album-card,.movement-card,.mini-action,.action-card
) :is(p,span,small,em){
  color:var(--li-muted) !important;
  -webkit-text-fill-color:var(--li-muted) !important;
}

/* Accents or dans les blocs */
body[data-ui-mode="client"] :is(.section-eyebrow,.movement-top-label,.metric-category-label,.practice-category,.music-album-head .section-eyebrow){
  color:var(--li-gold) !important;
  -webkit-text-fill-color:var(--li-gold) !important;
  text-shadow:none !important;
}

/* Bonjour Pierre : or capturé sur les screenshots */
body[data-ui-mode="client"] .client-top-greeting{
  color:var(--li-gold) !important;
  -webkit-text-fill-color:var(--li-gold) !important;
  -webkit-text-stroke:0 !important;
  text-shadow:
    -0.65px 0 #f2ead7,
     0.65px 0 #f2ead7,
     0 -0.65px #f2ead7,
     0 0.65px #f2ead7 !important;
}

/* Textes hors blocs : blanc + contour noir fin, stable Brave/Chrome */
body[data-ui-mode="client"] :is(
  .client-calendar-head .page-title,.client-calendar-head .page-intro,
  .music-page-heading .page-title,.music-page-heading .page-intro,
  .metrics-page-heading .page-title,.metrics-page-heading .page-intro,
  .client-centered-heading .page-title,.client-centered-heading .page-intro,
  .client-library-page > .page-title,.client-library-page > .page-intro,
  .metric-categories-explainer,.practice-section-intro b,.practice-section-intro span
){
  color:var(--li-white) !important;
  -webkit-text-fill-color:var(--li-white) !important;
  -webkit-text-stroke:0 !important;
  text-shadow:
    -0.75px 0 #090909,
     0.75px 0 #090909,
     0 -0.75px #090909,
     0 0.75px #090909 !important;
}

/* Boutons non sélectionnés : noir + texte blanc */
body[data-ui-mode="client"] :is(
  .featured-metric-tab,.practice-section-tabs button,.pillar-tabs button,.mainnav > button
):not(.active):not(.li-selected){
  background:linear-gradient(180deg,#18191b,#101113) !important;
  color:var(--li-white) !important;
  -webkit-text-fill-color:var(--li-white) !important;
  border:1px solid rgba(232,229,0,.22) !important;
}
body[data-ui-mode="client"] :is(
  .featured-metric-tab,.practice-section-tabs button,.pillar-tabs button,.mainnav > button
):not(.active):not(.li-selected) *{
  color:var(--li-white) !important;
  -webkit-text-fill-color:var(--li-white) !important;
}

/* SELECTION : jaune + noir, seule exception demandée aux captures */
body[data-ui-mode="client"] :is(
  button.li-selected,.featured-metric-tab.active,.practice-section-tabs button.active,.pillar-tabs button.active,
  .mainnav > button.active,.metric-tabs .metric-tab.active,.metric-pin.active,.mood-choice.active
){
  background:var(--li-yellow) !important;
  background-image:none !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  border:1px solid #090909 !important;
  box-shadow:none !important;
  filter:none !important;
  text-shadow:none !important;
}
body[data-ui-mode="client"] :is(
  button.li-selected,.featured-metric-tab.active,.practice-section-tabs button.active,.pillar-tabs button.active,
  .mainnav > button.active,.metric-tabs .metric-tab.active,.metric-pin.active,.mood-choice.active
) *{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  text-shadow:none !important;
}
body[data-ui-mode="client"] .mainnav > button.active .nav-ico svg,
body[data-ui-mode="client"] .mainnav > button.active .nav-ico svg *{
  stroke:#090909 !important;
}

/* CTA jaunes NON sélectionnés : conservent le texte blanc comme sur les captures */
body[data-ui-mode="client"] :is(.featured-metric-actions .btn.yellow,.music-album-head .btn.yellow,.movement-actions .btn.yellow){
  background:var(--yellow-grad) !important;
  color:var(--li-white) !important;
  -webkit-text-fill-color:var(--li-white) !important;
  border:1px solid rgba(232,229,0,.75) !important;
  text-shadow:0 1px 1px rgba(0,0,0,.35) !important;
}

/* Mouvement global : jaune + brun */
body[data-ui-mode="client"] .movement-donut{
  background:conic-gradient(
    var(--li-yellow) 0 var(--neat-end),
    #3b3c38 var(--neat-end) 180deg,
    var(--li-brown) 180deg var(--train-end),
    #3b3c38 var(--train-end) 360deg
  ) !important;
}
body[data-ui-mode="client"] .legend-dot.neat{background:var(--li-yellow) !important;}
body[data-ui-mode="client"] .legend-dot.training{background:var(--li-brown) !important;}

/* Aujourd'hui : jaune propre */
body[data-ui-mode="client"] .client-primary-calendar .daycol.today{
  border:4px solid #5f5d00 !important;
  box-shadow:0 0 0 1px rgba(232,229,0,.55),0 10px 24px rgba(0,0,0,.10) !important;
}
body[data-ui-mode="client"] .client-primary-calendar .daycol.today .client-day-label{
  color:var(--li-yellow) !important;
  -webkit-text-fill-color:var(--li-yellow) !important;
}


/* V1.86 — dégradé jaune premium généralisé */
.btn.yellow,
body[data-ui-mode="client"] .featured-metric-actions .btn.yellow,
body[data-ui-mode="client"] .music-album-head .btn.yellow,
body[data-ui-mode="client"] .feedback-step-cta,
body[data-ui-mode="client"] .annual-plan-cta,
body[data-ui-mode="client"] .model-main-btn{
  background:var(--yellow-grad) !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  border-color:#8d8500 !important;
  box-shadow:0 10px 24px rgba(232,229,0,.22), inset 0 1px 0 rgba(255,255,255,.32) !important;
}

body[data-ui-mode="client"] :is(
  button.li-selected,
  button.active.featured-metric-tab,
  .practice-section-tabs > button.active,
  .pillar-tabs > button.active,
  .mainnav > button.active,
  .mood-choice.active,
  .metric-pin.active,
  .quarter-pill.active,
  .metric-category-details[open] > .metric-category-summary
){
  background:var(--yellow-grad) !important;
  background-image:var(--yellow-grad) !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  border-color:#090909 !important;
  box-shadow:0 8px 18px rgba(232,229,0,.14), inset 0 1px 0 rgba(255,255,255,.28) !important;
}

:is(
  button.li-selected,
  button.active.featured-metric-tab,
  .practice-section-tabs > button.active,
  .pillar-tabs > button.active,
  .mainnav > button.active,
  .mood-choice.active,
  .metric-pin.active,
  .quarter-pill.active,
  .metric-category-details[open] > .metric-category-summary
){
  background:var(--yellow-grad) !important;
  background-image:var(--yellow-grad) !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  border-color:#090909 !important;
}

body[data-ui-mode="client"] :is(
  button.li-selected *,
  button.active.featured-metric-tab *,
  .practice-section-tabs > button.active *,
  .pillar-tabs > button.active *,
  .mainnav > button.active *,
  .mood-choice.active *,
  .metric-pin.active *,
  .quarter-pill.active *,
  .metric-category-details[open] > .metric-category-summary *
){
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  text-shadow:none !important;
}

body[data-ui-mode="client"] .mainnav > button.active .nav-ico svg,
body[data-ui-mode="client"] .mainnav > button.active .nav-ico svg *,
body[data-ui-mode="client"] .mainnav > button.active .nav-ico path,
body[data-ui-mode="client"] .mainnav > button.active .nav-ico rect,
body[data-ui-mode="client"] .mainnav > button.active .nav-ico circle,
body[data-ui-mode="client"] .mainnav > button.active .nav-ico line,
body[data-ui-mode="client"] .mainnav > button.active .nav-ico polyline,
body[data-ui-mode="client"] .featured-metric-tab.active svg,
body[data-ui-mode="client"] .featured-metric-tab.active svg *,
body[data-ui-mode="client"] .practice-section-tabs > button.active svg,
body[data-ui-mode="client"] .practice-section-tabs > button.active svg *{
  stroke:#090909 !important;
  fill:none !important;
}

body[data-ui-mode="client"] .metric-pin.active svg,
body[data-ui-mode="client"] .metric-pin.active svg *,
body[data-ui-mode="client"] .metric-pin.active path{
  fill:#090909 !important;
  stroke:#090909 !important;
}


/* V1.88 — Brave/Chrome unification + menu fond entête */
body[data-ui-mode="client"] .mainnav,
body[data-ui-mode="coach"] .mainnav{
  background:var(--li-header-bg) !important;
  background-image:var(--li-header-bg) !important;
  border-top:1px solid rgba(232,229,0,.18) !important;
  box-shadow:0 -10px 26px rgba(0,0,0,.16) !important;
}

/* Boutons sélectionnés : NOIR partout, y compris Brave mobile */
body[data-ui-mode="client"] :is(
  .mainnav > button.active,
  .featured-metric-tab.active,
  .practice-section-tabs > button.active,
  .pillar-tabs > button.active,
  .metric-tabs .metric-tab.active,
  .metric-pin.active,
  .mood-choice.active,
  .quarter-pill.active,
  button.li-selected,
  .metric-category-details[open] > .metric-category-summary
),
body[data-ui-mode="coach"] :is(
  .mainnav > button.active,
  .featured-metric-tab.active,
  .practice-section-tabs > button.active,
  .pillar-tabs > button.active,
  .metric-tabs .metric-tab.active,
  .metric-pin.active,
  .mood-choice.active,
  .quarter-pill.active,
  button.li-selected,
  .metric-category-details[open] > .metric-category-summary
){
  background:var(--yellow-grad) !important;
  background-image:var(--yellow-grad) !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  -webkit-text-stroke:0 !important;
  text-shadow:none !important;
  border-color:#090909 !important;
}

body[data-ui-mode="client"] :is(
  .mainnav > button.active,
  .featured-metric-tab.active,
  .practice-section-tabs > button.active,
  .pillar-tabs > button.active,
  .metric-tabs .metric-tab.active,
  .metric-pin.active,
  .mood-choice.active,
  .quarter-pill.active,
  button.li-selected,
  .metric-category-details[open] > .metric-category-summary
) *,
body[data-ui-mode="coach"] :is(
  .mainnav > button.active,
  .featured-metric-tab.active,
  .practice-section-tabs > button.active,
  .pillar-tabs > button.active,
  .metric-tabs .metric-tab.active,
  .metric-pin.active,
  .mood-choice.active,
  .quarter-pill.active,
  button.li-selected,
  .metric-category-details[open] > .metric-category-summary
) *{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  -webkit-text-stroke:0 !important;
  text-shadow:none !important;
  filter:none !important;
}

body[data-ui-mode="client"] .mainnav > button.active .nav-label,
body[data-ui-mode="client"] .mainnav > button.active .nav-ico,
body[data-ui-mode="client"] .mainnav > button.active .nav-ico *,
body[data-ui-mode="client"] .featured-metric-tab.active,
body[data-ui-mode="client"] .featured-metric-tab.active *,
body[data-ui-mode="client"] .practice-section-tabs > button.active,
body[data-ui-mode="client"] .practice-section-tabs > button.active *,
body[data-ui-mode="client"] .pillar-tabs > button.active,
body[data-ui-mode="client"] .pillar-tabs > button.active *{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  -webkit-text-stroke:0 !important;
  text-shadow:none !important;
}

body[data-ui-mode="client"] .mainnav > button.active svg,
body[data-ui-mode="client"] .mainnav > button.active svg *,
body[data-ui-mode="client"] .mainnav > button.active path,
body[data-ui-mode="client"] .mainnav > button.active rect,
body[data-ui-mode="client"] .mainnav > button.active circle,
body[data-ui-mode="client"] .mainnav > button.active line,
body[data-ui-mode="client"] .mainnav > button.active polyline,
body[data-ui-mode="client"] .featured-metric-tab.active svg,
body[data-ui-mode="client"] .featured-metric-tab.active svg *,
body[data-ui-mode="client"] .practice-section-tabs > button.active svg,
body[data-ui-mode="client"] .practice-section-tabs > button.active svg *,
body[data-ui-mode="client"] .pillar-tabs > button.active svg,
body[data-ui-mode="client"] .pillar-tabs > button.active svg *{
  stroke:#090909 !important;
  fill:none !important;
}

/* Textes dans les blocs : garder blanc partout */
body[data-ui-mode="client"] :is(.client-card,.music-album-card,.practice-card,.movement-shell,.daycol,.metric-card,.featured-metric-card,.summary-card,.session-card,.client-primary-calendar .daycol,.capsule-card,.score-shell,.discipline-card) :is(h1,h2,h3,h4,p,span,small,strong,em,li,div){
  color:#ffffff;
}


/* V1.89 — Safari / Brave / Chrome / Samsung Internet harmonisation */
html, body {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

button,
.mainnav > button,
.featured-metric-tab,
.practice-section-tabs > button,
.pillar-tabs > button,
.metric-tab,
.metric-pin,
.mood-choice,
.quarter-pill,
.metric-category-summary{
  -webkit-appearance:none;
  appearance:none;
  -webkit-tap-highlight-color: transparent;
}

/* Verrouillage couleur sélectionnée sur moteurs WebKit/Blink */
@supports (-webkit-touch-callout: none) {
  body[data-ui-mode="client"] :is(
    .mainnav > button.active,
    .featured-metric-tab.active,
    .practice-section-tabs > button.active,
    .pillar-tabs > button.active,
    .metric-tabs .metric-tab.active,
    .metric-pin.active,
    .mood-choice.active,
    .quarter-pill.active,
    button.li-selected,
    .metric-category-details[open] > .metric-category-summary
  ),
  body[data-ui-mode="coach"] :is(
    .mainnav > button.active,
    .featured-metric-tab.active,
    .practice-section-tabs > button.active,
    .pillar-tabs > button.active,
    .metric-tabs .metric-tab.active,
    .metric-pin.active,
    .mood-choice.active,
    .quarter-pill.active,
    button.li-selected,
    .metric-category-details[open] > .metric-category-summary
  ){
    color:#090909 !important;
    -webkit-text-fill-color:#090909 !important;
    border-color:#090909 !important;
    text-shadow:none !important;
  }

  body[data-ui-mode="client"] :is(
    .mainnav > button.active,
    .featured-metric-tab.active,
    .practice-section-tabs > button.active,
    .pillar-tabs > button.active,
    .metric-tabs .metric-tab.active,
    .metric-pin.active,
    .mood-choice.active,
    .quarter-pill.active,
    button.li-selected,
    .metric-category-details[open] > .metric-category-summary
  ) *,
  body[data-ui-mode="coach"] :is(
    .mainnav > button.active,
    .featured-metric-tab.active,
    .practice-section-tabs > button.active,
    .pillar-tabs > button.active,
    .metric-tabs .metric-tab.active,
    .metric-pin.active,
    .mood-choice.active,
    .quarter-pill.active,
    button.li-selected,
    .metric-category-details[open] > .metric-category-summary
  ) *{
    color:#090909 !important;
    -webkit-text-fill-color:#090909 !important;
    -webkit-text-stroke:0 !important;
    text-shadow:none !important;
  }
}


/* V1.90 — Finitions demandées */

/* Tous les textes hors blocs en blanc avec contour fin noir réduit */
body[data-ui-mode="client"] .client-top-greeting,
body[data-ui-mode="client"] .client-calendar-head .page-title,
body[data-ui-mode="client"] .client-calendar-head .page-intro,
body[data-ui-mode="client"] .calendar-intro-subline,
body[data-ui-mode="client"] .music-page-heading .page-title,
body[data-ui-mode="client"] .music-page-heading .page-intro,
body[data-ui-mode="client"] .metrics-page-heading .page-title,
body[data-ui-mode="client"] .metrics-page-heading .page-intro,
body[data-ui-mode="client"] .client-library-page > .page-title,
body[data-ui-mode="client"] .client-library-page > .page-intro,
body[data-ui-mode="client"] .client-centered-heading .page-title,
body[data-ui-mode="client"] .client-centered-heading .page-intro,
body[data-ui-mode="client"] .content-learning-head .page-title,
body[data-ui-mode="client"] .content-learning-head .page-intro,
body[data-ui-mode="client"] .section-eyebrow,
body[data-ui-mode="client"] .metric-categories-explainer,
body[data-ui-mode="client"] .practice-section-copy,
body[data-ui-mode="client"] .music-page-copy,
body[data-ui-mode="client"] .page-intro,
body[data-ui-mode="client"] .hero-kicker,
body[data-ui-mode="client"] .practice-section-intro,
body[data-ui-mode="client"] .practice-section-intro b,
body[data-ui-mode="client"] .practice-section-intro span{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  -webkit-text-stroke:0 !important;
  text-shadow:
    -0.6px 0 0 rgba(0,0,0,.92),
     0.6px 0 0 rgba(0,0,0,.92),
     0 -0.6px 0 rgba(0,0,0,.92),
     0 0.6px 0 rgba(0,0,0,.92) !important;
}

/* Bonjour Pierre plus petit et bien en Montserrat */
body[data-ui-mode="client"] .client-top-greeting{
  font-family:'Montserrat', Arial, sans-serif !important;
  font-weight:800 !important;
  font-size:22px !important;
  line-height:1.06 !important;
  letter-spacing:.01em !important;
  margin-bottom:8px !important;
}
@media(min-width:761px){
  body[data-ui-mode="client"] .client-top-greeting{font-size:26px !important;}
}

/* Tes 3 prochains jours un peu plus petit et phrase dessous sur une nouvelle ligne, bien centrée */
body[data-ui-mode="client"] .client-calendar-head .page-title{
  font-size:24px !important;
  line-height:1.06 !important;
}
body[data-ui-mode="client"] .client-calendar-head .page-intro{
  display:block !important;
  text-align:center !important;
  margin:12px auto 0 !important;
  max-width:560px !important;
}
body[data-ui-mode="client"] .calendar-intro-subline{
  display:block !important;
  margin-top:10px !important;
  text-align:center !important;
  font-size:1em !important;
}

/* Discipline de leader impactant + Mouvement global plus grands */
body[data-ui-mode="client"] .momentum-top-label,
body[data-ui-mode="client"] .movement-top-label{
  font-size:14px !important;
  line-height:1.1 !important;
  letter-spacing:.17em !important;
}
@media(max-width:760px){
  body[data-ui-mode="client"] .momentum-top-label,
  body[data-ui-mode="client"] .movement-top-label{
    font-size:13px !important;
  }
}

/* Catégories Graphiques : dégradé jaune gauche > anthracite droite */
body[data-ui-mode="client"] .metric-category-summary{
  background:linear-gradient(90deg,#e8e500 0%, #d6d218 26%, #595959 26%, #1f1f1f 100%) !important;
  border:1px solid rgba(255,255,255,.22) !important;
  box-shadow:0 10px 18px rgba(0,0,0,.14) !important;
}
body[data-ui-mode="client"] .metric-category-summary b,
body[data-ui-mode="client"] .metric-category-summary small,
body[data-ui-mode="client"] .metric-category-summary span{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  text-shadow:none !important;
}
body[data-ui-mode="client"] .metric-category-summary::before{display:none !important;}
body[data-ui-mode="client"] .metric-category-details[open] > .metric-category-summary{
  background:linear-gradient(90deg,#e8e500 0%, #d6d218 26%, #6a6a6a 26%, #262626 100%) !important;
  border:1px solid #0b0b0b !important;
}

/* Pratiques : sous-onglets en grille 2 par 2 */
body[data-ui-mode="client"] .practice-section-tabs{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
  align-items:stretch !important;
}
body[data-ui-mode="client"] .practice-section-tabs button{
  width:100% !important;
  min-height:58px !important;
  padding:10px 12px !important;
}
@media(min-width:761px){
  body[data-ui-mode="client"] .practice-section-tabs{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    max-width:760px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
}

/* Boutons sélectionnés : contour noir plus fin */
body[data-ui-mode="client"] :is(
  .mainnav > button.active,
  .featured-metric-tab.active,
  .practice-section-tabs > button.active,
  .pillar-tabs > button.active,
  .metric-tabs .metric-tab.active,
  .metric-pin.active,
  .mood-choice.active,
  .quarter-pill.active,
  button.li-selected,
  .metric-category-details[open] > .metric-category-summary
){
  border:1px solid #090909 !important;
}


/* V1.91 — harmonisation Brave / Chrome / Safari */
:root{ color-scheme: only light !important; }
html, body{ forced-color-adjust:none; }

@media(max-width:760px){
  /* fond clair verrouillé, même rendu tous navigateurs */
  html:has(body[data-ui-mode="client"]),
  body[data-ui-mode="client"]{
    background:#f3f4f5 !important;
    color:#171815 !important;
  }
  body[data-ui-mode="client"]::before{
    content:"";
    position:fixed;
    inset:0;
    z-index:-1;
    pointer-events:none;
    background:var(--li-client-mobile-bg) !important;
  }

  /* barre du bas = même fond que l'entête */
  body[data-ui-mode="client"] .mainnav{
    background:var(--li-header-bg) !important;
    border-top:1px solid rgba(232,229,0,.24) !important;
    box-shadow:0 -10px 26px rgba(0,0,0,.18) !important;
  }
  body[data-ui-mode="client"] .mobile-nav-motto{ color:#d8c257 !important; }

  /* titres de pages graphiques / musiques / pratiques en couleur */
  body[data-ui-mode="client"] .music-page-heading .page-title,
  body[data-ui-mode="client"] .metrics-page-heading .page-title,
  body[data-ui-mode="client"] .content-learning-head .page-title,
  body[data-ui-mode="client"] .client-centered-heading .page-title{
    color:#d8c257 !important;
    -webkit-text-fill-color:#d8c257 !important;
    text-shadow:
      -0.6px 0 0 rgba(0,0,0,.90),
       0.6px 0 0 rgba(0,0,0,.90),
       0 -0.6px 0 rgba(0,0,0,.90),
       0 0.6px 0 rgba(0,0,0,.90) !important;
  }

  /* Bonjour Pierre doré */
  body[data-ui-mode="client"] .client-top-greeting{
    color:#d8c257 !important;
    -webkit-text-fill-color:#d8c257 !important;
    font-family:'Montserrat', Arial, sans-serif !important;
    font-weight:800 !important;
    text-shadow:
      -0.7px 0 0 rgba(0,0,0,.96),
       0.7px 0 0 rgba(0,0,0,.96),
       0 -0.7px 0 rgba(0,0,0,.96),
       0 0.7px 0 rgba(0,0,0,.96) !important;
  }

  /* textes dans les blocs en blanc pour homogénéiser */
  body[data-ui-mode="client"] .card,
  body[data-ui-mode="client"] .card *,
  body[data-ui-mode="client"] .action-card,
  body[data-ui-mode="client"] .action-card *,
  body[data-ui-mode="client"] .completion-box,
  body[data-ui-mode="client"] .completion-box *,
  body[data-ui-mode="client"] .client-primary-calendar .daycol,
  body[data-ui-mode="client"] .client-primary-calendar .daycol *{
    color:#ffffff;
  }
  body[data-ui-mode="client"] .card .momentum-top-label,
  body[data-ui-mode="client"] .card .movement-top-label,
  body[data-ui-mode="client"] .action-card .momentum-top-label,
  body[data-ui-mode="client"] .action-card .movement-top-label{
    color:#d8c257 !important;
    -webkit-text-fill-color:#d8c257 !important;
  }

  /* boutons sélectionnés : vrai jaune + texte noir partout, y compris Brave */
  body[data-ui-mode="client"] :is(
    .mainnav > button.active,
    .featured-metric-tab.active,
    .practice-section-tabs > button.active,
    .pillar-tabs > button.active,
    .metric-tabs .metric-tab.active,
    .metric-pin.active,
    .mood-choice.active,
    .quarter-pill.active,
    button.li-selected
  ){
    background:#e8e500 !important;
    background-image:linear-gradient(180deg,#7b7600 0%,#b8b000 35%,#d8d200 70%,#e8e500 100%) !important;
    color:#090909 !important;
    -webkit-text-fill-color:#090909 !important;
    border:1px solid #090909 !important;
    text-shadow:none !important;
    filter:none !important;
    opacity:1 !important;
  }
  body[data-ui-mode="client"] :is(
    .mainnav > button.active,
    .featured-metric-tab.active,
    .practice-section-tabs > button.active,
    .pillar-tabs > button.active,
    .metric-tabs .metric-tab.active,
    .metric-pin.active,
    .mood-choice.active,
    .quarter-pill.active,
    button.li-selected
  ) *,
  body[data-ui-mode="client"] :is(
    .mainnav > button.active,
    .featured-metric-tab.active,
    .practice-section-tabs > button.active,
    .pillar-tabs > button.active,
    .metric-tabs .metric-tab.active,
    .metric-pin.active,
    .mood-choice.active,
    .quarter-pill.active,
    button.li-selected
  ) svg,
  body[data-ui-mode="client"] :is(
    .mainnav > button.active,
    .featured-metric-tab.active,
    .practice-section-tabs > button.active,
    .pillar-tabs > button.active,
    .metric-tabs .metric-tab.active,
    .metric-pin.active,
    .mood-choice.active,
    .quarter-pill.active,
    button.li-selected
  ) svg *{
    color:#090909 !important;
    fill:#090909 !important;
    stroke:#090909 !important;
    -webkit-text-fill-color:#090909 !important;
    text-shadow:none !important;
  }
  body[data-ui-mode="client"] .mainnav > button.active .nav-ico{
    background:rgba(0,0,0,.06) !important;
    box-shadow:none !important;
  }

  /* exceptions demandées: saisir / écouter l'album restent en texte blanc */
  body[data-ui-mode="client"] .btn.yellow,
  body[data-ui-mode="client"] .btn.yellow *,
  body[data-ui-mode="client"] .album-cta,
  body[data-ui-mode="client"] .album-cta *{
    color:#ffffff !important;
    fill:#ffffff !important;
    stroke:none !important;
    -webkit-text-fill-color:#ffffff !important;
  }

  /* fond menu bas homogène + labels Musiques / Graphiques en couleur (inactifs) */
  body[data-ui-mode="client"] .mainnav > button[data-page="metrics"] .nav-label,
  body[data-ui-mode="client"] .mainnav > button[data-page="music"] .nav-label{
    color:#d8c257 !important;
    -webkit-text-fill-color:#d8c257 !important;
  }

  /* Pratiques mieux aligné sous Chrome */
  body[data-ui-mode="client"] .practice-section-tabs{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:16px 18px !important;
    align-items:stretch !important;
    justify-items:stretch !important;
  }
  body[data-ui-mode="client"] .practice-section-tabs button{
    min-height:70px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
  }
}


/* V1.92 — STABILISATION VISUELLE CROSS-BROWSER */
html,body{color-scheme:only light !important; forced-color-adjust:none !important;}
body{position:relative !important; background:#f1f2f3 !important;}
.li-fixed-page-bg{
  position:fixed; inset:0; width:100vw; height:100vh; object-fit:cover; object-position:center top;
  z-index:-9999; pointer-events:none; user-select:none; -webkit-user-drag:none;
  filter:none !important; opacity:1 !important; mix-blend-mode:normal !important;
}
body[data-ui-mode="client"]{background:transparent !important;}
body[data-ui-mode="client"] main{background:transparent !important;}

/* Entête et menu bas utilisent la même texture IMAGE */
body[data-ui-mode="client"] .brandbar,
body[data-ui-mode="client"] .mainnav{
  background-color:#0b0b0b !important;
  background-image:linear-gradient(180deg,rgba(5,5,5,.40),rgba(5,5,5,.52)),url('/header-texture-v127.jpg') !important;
  background-position:center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
  filter:none !important;
}
body[data-ui-mode="client"] .mainnav{border-top:1px solid rgba(232,229,0,.22) !important;}
body[data-ui-mode="client"] .mobile-nav-motto{color:#d8c257 !important;-webkit-text-fill-color:#d8c257 !important;}

/* Bonjour Pierre définitivement doré */
body[data-ui-mode="client"] .client-top-greeting{
  color:#d8b45a !important;
  -webkit-text-fill-color:#d8b45a !important;
  font-family:'Montserrat',Arial,sans-serif !important;
  font-weight:800 !important;
  -webkit-text-stroke:0 !important;
  text-shadow:0 1px 0 rgba(0,0,0,.72) !important;
}

/* Titres demandés en couleur */
body[data-ui-mode="client"] .music-page-heading .page-title,
body[data-ui-mode="client"] .metrics-page-heading .page-title{
  color:#d8b45a !important;
  -webkit-text-fill-color:#d8b45a !important;
  -webkit-text-stroke:0 !important;
  text-shadow:0 1px 0 rgba(0,0,0,.68) !important;
}
body[data-ui-mode="client"] .mainnav > button[data-page="metrics"]:not(.active) .nav-label,
body[data-ui-mode="client"] .mainnav > button[data-page="music"]:not(.active) .nav-label{
  color:#d8b45a !important;
  -webkit-text-fill-color:#d8b45a !important;
}

/* Boutons sélectionnés : gradient image réel, donc identique Brave/Chrome/Safari */
body[data-ui-mode="client"] :is(
  .mainnav > button.active,
  .featured-metric-tab.active,
  .practice-section-tabs > button.active,
  .pillar-tabs > button.active,
  .metric-tabs .metric-tab.active,
  .metric-pin.active,
  .mood-choice.active,
  .quarter-pill.active,
  button.li-selected
){
  background-color:#e8e500 !important;
  background-image:url('/yellow-gradient-v192.png') !important;
  background-size:100% 100% !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  -webkit-text-stroke:0 !important;
  text-shadow:none !important;
  border:1px solid #090909 !important;
  box-shadow:0 8px 18px rgba(0,0,0,.10) !important;
  filter:none !important;
  opacity:1 !important;
}
body[data-ui-mode="client"] :is(
  .mainnav > button.active,
  .featured-metric-tab.active,
  .practice-section-tabs > button.active,
  .pillar-tabs > button.active,
  .metric-tabs .metric-tab.active,
  .metric-pin.active,
  .mood-choice.active,
  .quarter-pill.active,
  button.li-selected
) *{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  -webkit-text-stroke:0 !important;
  text-shadow:none !important;
  filter:none !important;
}
body[data-ui-mode="client"] .mainnav > button.active svg,
body[data-ui-mode="client"] .mainnav > button.active svg *,
body[data-ui-mode="client"] .featured-metric-tab.active svg,
body[data-ui-mode="client"] .featured-metric-tab.active svg *,
body[data-ui-mode="client"] .practice-section-tabs > button.active svg,
body[data-ui-mode="client"] .practice-section-tabs > button.active svg *{
  stroke:#090909 !important; fill:none !important;
}

/* Saisir / écouter l'album gardent le dégradé avec texte blanc */
body[data-ui-mode="client"] .featured-metric-actions .btn.yellow,
body[data-ui-mode="client"] .music-album-head .btn.yellow{
  background-color:#e8e500 !important;
  background-image:url('/yellow-gradient-v192.png') !important;
  background-size:100% 100% !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  text-shadow:0 1px 1px rgba(0,0,0,.35) !important;
}

/* Blocs foncés : texte blanc, libellés dorés */
body[data-ui-mode="client"] :is(.momentum-card,.movement-card,.practice-card,.music-album-card,.featured-metric-focus,.daycol){
  background:linear-gradient(180deg,#18191d 0%,#0e0f12 100%) !important;
  color:#fff !important;
}
body[data-ui-mode="client"] :is(.momentum-card,.movement-card,.practice-card,.music-album-card,.featured-metric-focus,.daycol) :is(h1,h2,h3,h4,p,span,small,b,strong,em){
  color:#fff;
}
body[data-ui-mode="client"] :is(.momentum-top-label,.movement-top-label,.practice-category,.music-album-head .section-eyebrow,.metric-category-label){
  color:#d8b45a !important; -webkit-text-fill-color:#d8b45a !important;
}

/* Discipline plus discrète */
body[data-ui-mode="client"] .momentum-top-label{font-size:11px !important;letter-spacing:.14em !important;}

/* Pratiques : 2 + 1 centré, identique Chrome/Brave */
body[data-ui-mode="client"] .practice-section-tabs{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
  width:100% !important;
  max-width:760px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  align-items:stretch !important;
}
body[data-ui-mode="client"] .practice-section-tabs > button{
  width:100% !important;
  min-width:0 !important;
  min-height:60px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
}
body[data-ui-mode="client"] .practice-section-tabs > button:nth-child(3):last-child{
  grid-column:1 / -1 !important;
  width:calc((100% - 12px)/2) !important;
  justify-self:center !important;
}

/* Le fond clair reste visible entre les blocs */
body[data-ui-mode="client"] .client-calendar-head,
body[data-ui-mode="client"] .client-primary-calendar,
body[data-ui-mode="client"] .client-centered-heading,
body[data-ui-mode="client"] .client-metrics-page,
body[data-ui-mode="client"] .client-music-page,
body[data-ui-mode="client"] .client-practice-page{background:transparent !important;}

/* V1.93 — Correctifs finaux homogénéisation Brave / Chrome */
html,body{color-scheme:only light !important;}
body[data-ui-mode="client"]{
  background:#eceeef url('/mobile-background-v128.png') center top / cover fixed no-repeat !important;
}
body[data-ui-mode="client"] main,
body[data-ui-mode="client"] .client-calendar-page,
body[data-ui-mode="client"] .client-metrics-page,
body[data-ui-mode="client"] .client-music-page,
body[data-ui-mode="client"] .client-practice-page{background:transparent !important;}
body[data-ui-mode="client"] .brandbar,
body[data-ui-mode="client"] .mainnav{
  background-color:#0c0c0c !important;
  background-image:linear-gradient(180deg,rgba(5,5,5,.34),rgba(5,5,5,.52)),url('/header-texture-v127.jpg') !important;
  background-position:center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}
body[data-ui-mode="client"] .client-top-greeting,
body[data-ui-mode="client"] .client-calendar-head .page-title,
body[data-ui-mode="client"] .client-metrics-heading .page-title,
body[data-ui-mode="client"] .music-page-heading .page-title,
body[data-ui-mode="client"] .client-practice-page .page-title,
body[data-ui-mode="client"] .practice-section-intro b{
  color:#d6b55b !important;
  -webkit-text-fill-color:#d6b55b !important;
  text-shadow:0 1px 0 rgba(0,0,0,.65) !important;
}
body[data-ui-mode="client"] .client-top-greeting{font-family:'Montserrat',Arial,sans-serif !important;font-weight:800 !important;}
body[data-ui-mode="client"] .client-calendar-head .page-intro,
body[data-ui-mode="client"] .client-metrics-heading .page-intro,
body[data-ui-mode="client"] .music-page-heading .page-intro,
body[data-ui-mode="client"] .client-practice-page .page-intro,
body[data-ui-mode="client"] .practice-section-intro span,
body[data-ui-mode="client"] .metric-categories-explainer{
  color:#20201d !important;
  -webkit-text-fill-color:#20201d !important;
  text-shadow:0 1px 0 rgba(255,255,255,.35) !important;
}
body[data-ui-mode="client"] :is(.momentum-card,.movement-card,.practice-card,.music-album-card,.featured-metric-focus,.daycol,.metric-category-item){
  background:linear-gradient(180deg,#17181c 0%,#0d0f13 100%) !important;
  color:#fff !important;
}
body[data-ui-mode="client"] :is(.momentum-card,.movement-card,.practice-card,.music-album-card,.featured-metric-focus,.daycol,.metric-category-item) :is(h1,h2,h3,h4,p,span,small,b,strong,div){
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
body[data-ui-mode="client"] :is(.momentum-top-label,.movement-top-label,.practice-category,.music-album-head .section-eyebrow,.metric-category-label,.client-day-label,.daycol h3){
  color:#d6b55b !important;
  -webkit-text-fill-color:#d6b55b !important;
}
body[data-ui-mode="client"] .mainnav > button[data-page="metrics"]:not(.active) .nav-label,
body[data-ui-mode="client"] .mainnav > button[data-page="metrics"]:not(.active) .nav-ico,
body[data-ui-mode="client"] .mainnav > button[data-page="music"]:not(.active) .nav-label,
body[data-ui-mode="client"] .mainnav > button[data-page="music"]:not(.active) .nav-ico,
body[data-ui-mode="client"] .mainnav > button[data-page="practice"]:not(.active) .nav-label,
body[data-ui-mode="client"] .mainnav > button[data-page="practice"]:not(.active) .nav-ico{
  color:#d6b55b !important;
  -webkit-text-fill-color:#d6b55b !important;
}
body[data-ui-mode="client"] .mainnav > button.active,
body[data-ui-mode="client"] .mainnav > button.active .nav-label,
body[data-ui-mode="client"] .mainnav > button.active .nav-ico,
body[data-ui-mode="client"] .mainnav > button.active svg,
body[data-ui-mode="client"] .mainnav > button.active svg *{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  stroke:#090909 !important;
  fill:none !important;
  text-shadow:none !important;
}
body[data-ui-mode="client"] .mainnav > button.active .nav-ico{background:transparent !important;box-shadow:none !important;}
body[data-ui-mode="client"] :is(.featured-metric-tab.active,.practice-section-tabs > button.active,.pillar-tabs > button.active,button.li-selected,.metric-pin.active,.mood-choice.active){
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  text-shadow:none !important;
}
body[data-ui-mode="client"] :is(.featured-metric-tab.active,.practice-section-tabs > button.active,.pillar-tabs > button.active,button.li-selected,.metric-pin.active,.mood-choice.active) *{color:#090909 !important;-webkit-text-fill-color:#090909 !important;}
body[data-ui-mode="client"] .metric-category-details{
  background:linear-gradient(90deg,#ece500 0%,#908e24 16%,#535353 38%,#252525 68%,#0f0f10 100%) !important;
  border:1px solid rgba(9,9,9,.65) !important;
  overflow:hidden !important;
}
body[data-ui-mode="client"] .metric-category-summary{background:transparent !important;min-height:64px !important;padding:12px 16px !important;}
body[data-ui-mode="client"] .metric-category-summary b,
body[data-ui-mode="client"] .metric-category-summary small,
body[data-ui-mode="client"] .metric-category-summary .category-chevron{color:#fff !important;-webkit-text-fill-color:#fff !important;}
body[data-ui-mode="client"] .metric-category-summary span:first-child{max-width:80%;}
body[data-ui-mode="client"] .metric-category-summary small{font-size:10px !important;opacity:.95;}
body[data-ui-mode="client"] .metric-category-details[open]{box-shadow:0 10px 22px rgba(0,0,0,.12),0 0 0 1px rgba(232,229,0,.18) !important;}
body[data-ui-mode="client"] .featured-metric-tab{font-size:11px !important;}
body[data-ui-mode="client"] .featured-metric-focus .featured-chart{height:240px !important;}
body[data-ui-mode="client"] .practice-section-tabs{gap:12px !important;align-items:stretch !important;}
body[data-ui-mode="client"] .practice-section-tabs > button{min-height:60px !important;border-radius:16px !important;background:linear-gradient(180deg,#17181c 0%,#0d0f13 100%) !important;color:#fff !important;-webkit-text-fill-color:#fff !important;border:1px solid rgba(255,255,255,.08) !important;}
body[data-ui-mode="client"] .practice-section-tabs > button.active{background-image:url('/yellow-gradient-v192.png') !important;background-size:100% 100% !important;}
body[data-ui-mode="client"] .practice-grid{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:14px !important;}
body[data-ui-mode="client"] .practice-grid > .empty{grid-column:1 / -1;}
body[data-ui-mode="client"] .practice-card .btn.yellow,
body[data-ui-mode="client"] .practice-card a.btn.yellow{background-image:url('/yellow-gradient-v192.png') !important;background-size:100% 100% !important;color:#fff !important;-webkit-text-fill-color:#fff !important;}
body[data-ui-mode="client"] .momentum-top-label,
body[data-ui-mode="client"] .movement-top-label{font-size:13px !important;letter-spacing:.14em !important;}
body[data-ui-mode="client"] .momentum-progress,
body[data-ui-mode="client"] .feedback-track,
body[data-ui-mode="client"] .gradient-track{height:10px !important;}


/* V1.94 — Structure Pratiques + harmonisation finale */

/* Fond clair identique Brave / Chrome */
html,body{color-scheme:only light !important;}
body[data-ui-mode="client"]{
  background-color:#eef0f1 !important;
  background-image:url('/mobile-background-v128.png') !important;
  background-position:center top !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
  background-attachment:fixed !important;
}

/* Titres principaux harmonisés */
body[data-ui-mode="client"] :is(.client-top-greeting,.client-calendar-head .page-title,.metrics-page-heading .page-title,.music-page-heading .page-title,.practice-page-heading .page-title){
  color:#d6b55b !important;
  -webkit-text-fill-color:#d6b55b !important;
  text-shadow:0 1px 0 rgba(0,0,0,.70) !important;
}
body[data-ui-mode="client"] .client-top-greeting{font-family:'Montserrat',Arial,sans-serif !important;font-weight:800 !important;}
body[data-ui-mode="client"] :is(.client-calendar-head .page-intro,.metrics-page-heading .page-intro,.music-page-heading .page-intro,.practice-page-heading .page-intro,.metric-categories-explainer){
  color:#262622 !important;
  -webkit-text-fill-color:#262622 !important;
  text-shadow:0 1px 0 rgba(255,255,255,.55) !important;
}

/* Les 3 onglets principaux Pratiques TOUJOURS sur une seule ligne */
body[data-ui-mode="client"] .practice-section-tabs{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:8px !important;
  width:100% !important;
  max-width:none !important;
  margin:14px 0 16px !important;
}
body[data-ui-mode="client"] .practice-section-tabs > button,
body[data-ui-mode="client"] .practice-section-tabs > button:nth-child(3):last-child{
  grid-column:auto !important;
  width:100% !important;
  min-width:0 !important;
  min-height:64px !important;
  padding:8px 6px !important;
  border-radius:15px !important;
  font-size:10.5px !important;
  line-height:1.08 !important;
  white-space:normal !important;
  justify-self:stretch !important;
  background:linear-gradient(180deg,#17181c,#0c0e11) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border:1px solid rgba(214,181,91,.34) !important;
}
body[data-ui-mode="client"] .practice-section-tabs > button.active{
  background-color:#e8e500 !important;
  background-image:url('/yellow-gradient-v192.png') !important;
  background-size:100% 100% !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  border:1px solid #090909 !important;
}

/* Sous-onglets : même langage visuel, 2 par 2 */
body[data-ui-mode="client"] .practice-subtabs-shell{display:grid;gap:10px;margin:0 0 18px;}
body[data-ui-mode="client"] .practice-subtabs-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
body[data-ui-mode="client"] .practice-subtabs-row.single{grid-template-columns:minmax(0,1fr);max-width:50%;margin:0 auto;width:100%;}
body[data-ui-mode="client"] .practice-subtab,
body[data-ui-mode="client"] .practice-child-tab{
  min-height:56px;
  border-radius:14px;
  border:1px solid rgba(214,181,91,.34);
  background:linear-gradient(180deg,#17181c,#0c0e11);
  color:#fff;
  -webkit-text-fill-color:#fff;
  font-weight:850;
  font-size:12px;
  padding:9px 10px;
  cursor:pointer;
  text-align:center;
}
body[data-ui-mode="client"] .practice-subtab.wide{width:100%;min-height:60px;font-size:13px;}
body[data-ui-mode="client"] :is(.practice-subtab.active,.practice-child-tab.active){
  background-color:#e8e500 !important;
  background-image:url('/yellow-gradient-v192.png') !important;
  background-size:100% 100% !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  border:1px solid #090909 !important;
  text-shadow:none !important;
}
body[data-ui-mode="client"] .practice-child-tabs{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin:0 0 14px;
}
body[data-ui-mode="client"] .practice-child-tabs > button:last-child:nth-child(odd){grid-column:1 / -1;width:calc((100% - 10px)/2);justify-self:center;}
body[data-ui-mode="client"] .practice-child-content{margin-top:8px;}
body[data-ui-mode="client"] .practice-content-grid{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:14px !important;}
body[data-ui-mode="client"] .practice-content-card{min-width:0 !important;}
body[data-ui-mode="client"] .practice-content-card h3{font-size:20px !important;line-height:1.15 !important;}
body[data-ui-mode="client"] .practice-content-card p{font-size:14px !important;line-height:1.5 !important;}

/* Dégradé catégorie Graphiques : jaune dominant -> noir, identique ouvert/fermé */
body[data-ui-mode="client"] .metric-category-details,
body[data-ui-mode="client"] .metric-category-details[open]{
  background:linear-gradient(90deg,#eee700 0%,#e3dc00 36%,#c0b71a 48%,#5e5b36 66%,#282828 82%,#101010 100%) !important;
  border:1px solid rgba(15,15,15,.75) !important;
  box-shadow:0 8px 20px rgba(0,0,0,.12) !important;
  overflow:hidden !important;
}
body[data-ui-mode="client"] .metric-category-summary,
body[data-ui-mode="client"] .metric-category-details[open] > .metric-category-summary{
  background:transparent !important;
  background-image:none !important;
  min-height:66px !important;
  padding:12px 16px !important;
  border:0 !important;
  box-shadow:none !important;
}
body[data-ui-mode="client"] .metric-category-summary :is(b,small,.category-chevron){
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  text-shadow:0 1px 0 rgba(0,0,0,.42) !important;
}
body[data-ui-mode="client"] .metric-category-details .metric-category-list{
  background:rgba(12,13,16,.92) !important;
  padding:10px !important;
}
body[data-ui-mode="client"] .metric-category-item{
  background:linear-gradient(180deg,#17181c,#0c0e11) !important;
  border:1px solid rgba(255,255,255,.08) !important;
}
body[data-ui-mode="client"] .metric-category-item :is(.metric-main-open b,.metric-main-open span){color:#fff !important;-webkit-text-fill-color:#fff !important;}

/* Menu bas : Graphiques / Musiques / Pratiques dorés hors sélection */
body[data-ui-mode="client"] .mainnav > button[data-page="metrics"]:not(.active) :is(.nav-label,.nav-ico),
body[data-ui-mode="client"] .mainnav > button[data-page="music"]:not(.active) :is(.nav-label,.nav-ico),
body[data-ui-mode="client"] .mainnav > button[data-page="practice"]:not(.active) :is(.nav-label,.nav-ico){
  color:#d6b55b !important;
  -webkit-text-fill-color:#d6b55b !important;
}
body[data-ui-mode="client"] .mainnav > button[data-page="metrics"]:not(.active) svg *,
body[data-ui-mode="client"] .mainnav > button[data-page="music"]:not(.active) svg *,
body[data-ui-mode="client"] .mainnav > button[data-page="practice"]:not(.active) svg *{stroke:#d6b55b !important;}
body[data-ui-mode="client"] .mainnav > button.active :is(.nav-label,.nav-ico){color:#090909 !important;-webkit-text-fill-color:#090909 !important;}
body[data-ui-mode="client"] .mainnav > button.active svg *{stroke:#090909 !important;}

/* Textes blancs dans les blocs sombres, noir uniquement dans les cartes blanches internes */
body[data-ui-mode="client"] .momentum-card :is(.momentum-head h2,.momentum-head p,.momentum-score,.momentum-score small,.momentum-details summary,.momentum-stat b,.momentum-stat small,.momentum-protection b,.momentum-protection small,.momentum-rules b,.momentum-rules small,.momentum-rule-note),
body[data-ui-mode="client"] .movement-card :is(.movement-card-head h2,.movement-card-head p,.movement-summary h3,.movement-summary>p,.movement-legend b,.movement-legend small),
body[data-ui-mode="client"] .practice-card :is(h3,p,.practice-awaiting),
body[data-ui-mode="client"] .music-album-card :is(h2,p,.music-track-copy b,.music-track-copy span,.music-track-copy small),
body[data-ui-mode="client"] .featured-metric-focus :is(h3,span),
body[data-ui-mode="client"] .daycol > :is(h3,.no-action){
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
body[data-ui-mode="client"] .mini-action :is(b,small),
body[data-ui-mode="client"] .movement-donut-core :is(b,span){color:#111 !important;-webkit-text-fill-color:#111 !important;}
body[data-ui-mode="client"] :is(.momentum-top-label,.movement-top-label,.practice-category,.music-album-head .section-eyebrow,.metric-category-label,.client-day-label){color:#d6b55b !important;-webkit-text-fill-color:#d6b55b !important;}

/* Dégradé Saisir partout sur les actions jaunes */
body[data-ui-mode="client"] :is(.btn.yellow,.practice-subtab.active,.practice-child-tab.active,.practice-section-tabs>button.active,.featured-metric-tab.active,.mainnav>button.active,.metric-pin.active){
  background-color:#e8e500 !important;
  background-image:url('/yellow-gradient-v192.png') !important;
  background-size:100% 100% !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
}

/* Discipline et Mouvement global cohérents */
body[data-ui-mode="client"] .momentum-top-label,
body[data-ui-mode="client"] .movement-top-label{font-size:13px !important;letter-spacing:.14em !important;}

@media(max-width:390px){
  body[data-ui-mode="client"] .practice-section-tabs > button{font-size:9.5px !important;padding:7px 4px !important;}
  body[data-ui-mode="client"] .practice-content-card h3{font-size:18px !important;}
}


/* V1.95 — CHROME ONLY : rendu maître */
:root{
  --li-active-gradient:linear-gradient(180deg,#15150c 0%,#4d4a00 28%,#a9a300 62%,#f0ed00 100%);
  --li-anthracite:linear-gradient(180deg,#202126 0%,#111216 100%);
  --li-gold:#d6b55b;
}
.chrome-only-gate{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:34px;background:#efefed;color:#111;font-family:'Montserrat',Arial,sans-serif}
.chrome-gate-logo{width:96px;height:96px;object-fit:contain;margin-bottom:16px}.chrome-only-gate h1{font-family:'Cinzel',serif;color:#b18d2b;margin:0 0 22px}.chrome-only-gate h2{margin:0 0 8px}.chrome-only-gate p{max-width:520px;line-height:1.55}.chrome-only-gate button{margin:18px 0 12px;padding:14px 22px;border-radius:12px;border:1px solid #111;background:var(--li-active-gradient);color:#090909;font-weight:900}.chrome-only-gate small{max-width:90vw;word-break:break-all;color:#666}

/* Bonjour Pierre = même famille/taille/traitement que Tes 3 prochains jours */
body[data-ui-mode="client"] .client-top-greeting,
body[data-ui-mode="client"] .client-calendar-head .page-title{
  font-family:'Cinzel',Georgia,serif !important;
  font-size:27px !important;
  line-height:1.08 !important;
  font-weight:500 !important;
  letter-spacing:.02em !important;
  color:var(--li-gold) !important;
  -webkit-text-fill-color:var(--li-gold) !important;
  text-shadow:0 1px 0 rgba(0,0,0,.58) !important;
}

/* Actions calendrier : anthracite, texte blanc, contour doré */
body[data-ui-mode="client"] .client-primary-calendar .mini-action,
body[data-ui-mode="client"] .action-card{
  background:var(--li-anthracite) !important;
  border:1px solid rgba(214,181,91,.82) !important;
  color:#fff !important;
  box-shadow:0 8px 18px rgba(0,0,0,.14) !important;
}
body[data-ui-mode="client"] .client-primary-calendar .mini-action :is(b,small,span),
body[data-ui-mode="client"] .action-card :is(b,small,span){color:#fff !important;-webkit-text-fill-color:#fff !important;}
body[data-ui-mode="client"] .client-primary-calendar .mini-action-arrow{color:var(--li-gold) !important;-webkit-text-fill-color:var(--li-gold) !important;}
body[data-ui-mode="client"] .calendar-activity-main{background:var(--li-anthracite) !important;color:#fff !important;-webkit-text-fill-color:#fff !important;border:1px solid rgba(214,181,91,.82) !important;}

/* Mouvement : boutons blancs, info noir */
body[data-ui-mode="client"] .movement-actions .btn{background:#fff !important;color:#111 !important;-webkit-text-fill-color:#111 !important;border:1px solid #bbb !important;text-shadow:none !important;}
body[data-ui-mode="client"] .movement-actions .btn *{color:#111 !important;-webkit-text-fill-color:#111 !important;}
body[data-ui-mode="client"] .movement-info-btn{background:#0c0c0c !important;color:#fff !important;-webkit-text-fill-color:#fff !important;border:1px solid #0c0c0c !important;}

/* Tous les boutons actifs : noir en haut -> jaune en bas */
body[data-ui-mode="client"] :is(
  .mainnav > button.active,.featured-metric-tab.active,.practice-section-tabs > button.active,
  .practice-subtab.active,.practice-child-tab.active,.pillar-tabs > button.active,.metric-tabs .metric-tab.active,
  .metric-pin.active,.mood-choice.active,.quarter-pill.active,button.li-selected
){background:var(--li-active-gradient) !important;background-image:var(--li-active-gradient) !important;color:#090909 !important;-webkit-text-fill-color:#090909 !important;border:1px solid #090909 !important;text-shadow:none !important;}
body[data-ui-mode="client"] :is(
  .mainnav > button.active,.featured-metric-tab.active,.practice-section-tabs > button.active,
  .practice-subtab.active,.practice-child-tab.active,.pillar-tabs > button.active,.metric-tabs .metric-tab.active,
  .metric-pin.active,.mood-choice.active,.quarter-pill.active,button.li-selected
) *{color:#090909 !important;-webkit-text-fill-color:#090909 !important;text-shadow:none !important;}
body[data-ui-mode="client"] .mainnav > button.active svg,
body[data-ui-mode="client"] .mainnav > button.active svg *{stroke:#090909 !important;fill:none !important;}

/* Catégories graphiques : jaune dominant à gauche, noir à droite, texte noir à gauche */
body[data-ui-mode="client"] .metric-category-details{background:linear-gradient(90deg,#f0ed00 0%,#e5df00 36%,#8a8613 58%,#3d3d32 76%,#151515 100%) !important;border:1px solid #111 !important;overflow:hidden !important;}
body[data-ui-mode="client"] .metric-category-summary{background:transparent !important;}
body[data-ui-mode="client"] .metric-category-summary b,
body[data-ui-mode="client"] .metric-category-summary small{color:#090909 !important;-webkit-text-fill-color:#090909 !important;text-shadow:none !important;}
body[data-ui-mode="client"] .metric-category-summary .category-chevron{color:#fff !important;-webkit-text-fill-color:#fff !important;}
body[data-ui-mode="client"] .metric-category-details[open]>.metric-category-summary{background:transparent !important;border:0 !important;box-shadow:none !important;}

/* Musiques : pistes anthracite */
body[data-ui-mode="client"] .music-track{background:var(--li-anthracite) !important;border:1px solid rgba(255,255,255,.12) !important;color:#fff !important;}
body[data-ui-mode="client"] .music-track :is(b,span,small){color:#fff !important;-webkit-text-fill-color:#fff !important;}

/* PRATIQUES : trois onglets sur une même ligne */
body[data-ui-mode="client"] .practice-section-tabs{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:8px !important;width:100% !important;max-width:none !important;margin:0 auto 18px !important;overflow:visible !important;}
body[data-ui-mode="client"] .practice-section-tabs>button{min-width:0 !important;width:100% !important;min-height:66px !important;padding:8px 5px !important;font-size:10.5px !important;line-height:1.12 !important;white-space:normal !important;display:flex !important;align-items:center !important;justify-content:center !important;text-align:center !important;position:relative !important;background:var(--li-anthracite) !important;color:#fff !important;-webkit-text-fill-color:#fff !important;border:1px solid rgba(214,181,91,.30) !important;border-radius:14px !important;}
body[data-ui-mode="client"] .practice-section-tabs>button.active{background:var(--li-active-gradient) !important;color:#090909 !important;-webkit-text-fill-color:#090909 !important;}
body[data-ui-mode="client"] .practice-section-tabs>button.active::after,
body[data-ui-mode="client"] .practice-subtab.active.has-children::after,
body[data-ui-mode="client"] .practice-child-tab.active::after{content:"";position:absolute;left:50%;bottom:-10px;transform:translateX(-50%);width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid var(--li-gold);z-index:3;}
.practice-level-arrow{height:8px;position:relative;margin:-8px 0 8px}.practice-level-arrow::after{content:"";display:block;width:1px;height:8px;background:rgba(214,181,91,.55);margin:auto}

/* Sous-onglets : même design, 2 par 2 */
body[data-ui-mode="client"] .practice-subtabs-shell{display:grid !important;gap:10px !important;margin:4px 0 14px !important;}
body[data-ui-mode="client"] .practice-subtabs-row{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px !important;}
body[data-ui-mode="client"] .practice-subtabs-row.single{grid-template-columns:1fr !important;max-width:52% !important;margin:0 auto !important;width:100% !important;}
body[data-ui-mode="client"] .practice-subtab,
body[data-ui-mode="client"] .practice-child-tab{position:relative !important;min-height:58px !important;border-radius:14px !important;border:1px solid rgba(214,181,91,.30) !important;background:var(--li-anthracite) !important;color:#fff !important;-webkit-text-fill-color:#fff !important;font-weight:800 !important;padding:10px !important;text-align:center !important;}
body[data-ui-mode="client"] .practice-subtab.wide{width:100% !important;min-height:62px !important;}
body[data-ui-mode="client"] .practice-subtab.practice-direct:active{background:var(--li-active-gradient) !important;color:#090909 !important;}
body[data-ui-mode="client"] .practice-child-tabs{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px !important;margin:4px 0 16px !important;}
body[data-ui-mode="client"] .practice-child-tabs>.practice-child-tab:last-child:nth-child(odd){grid-column:1/-1 !important;width:calc((100% - 10px)/2) !important;justify-self:center !important;}
body[data-ui-mode="client"] .practice-choice-hint{text-align:center;padding:22px 12px;color:#555;font-size:13px;}

/* Fenêtre session issue des Pratiques */
.practice-session-modal{padding:4px}.practice-session-modal h2{font-family:'Cinzel',serif;font-size:28px;margin:6px 0 10px}.practice-session-modal>p{line-height:1.6;color:#555}.practice-session-duration{display:inline-flex;padding:5px 9px;border-radius:999px;background:#111;color:#fff;font-size:10px;font-weight:800}.practice-session-stage{min-height:160px;margin:18px 0;display:flex;flex-direction:column;gap:8px;align-items:center;justify-content:center;border-radius:16px;background:var(--li-anthracite);color:#fff;border:1px solid rgba(214,181,91,.38)}.practice-session-stage span{font-size:36px;color:#e8e500}.practice-session-stage b{font-size:18px}.practice-session-placeholder{padding:14px;border-radius:12px;background:#efefeb;color:#555;text-align:center;border:1px dashed #aaa}.practice-session-cta{width:100%;min-height:48px}

/* Menu inactif doré pour Graphiques / Musiques / Pratiques */
body[data-ui-mode="client"] .mainnav>button[data-page="metrics"]:not(.active) :is(.nav-label,.nav-ico),
body[data-ui-mode="client"] .mainnav>button[data-page="music"]:not(.active) :is(.nav-label,.nav-ico),
body[data-ui-mode="client"] .mainnav>button[data-page="practice"]:not(.active) :is(.nav-label,.nav-ico){color:var(--li-gold) !important;-webkit-text-fill-color:var(--li-gold) !important;}

/* Saisir / album / actions session : même dégradé, texte blanc */
body[data-ui-mode="client"] :is(.btn.yellow,.featured-metric-actions .btn.yellow,.music-album-head .btn.yellow,.practice-session-cta){background:var(--li-active-gradient) !important;background-image:var(--li-active-gradient) !important;color:#fff !important;-webkit-text-fill-color:#fff !important;border:1px solid rgba(214,181,91,.72) !important;text-shadow:0 1px 1px rgba(0,0,0,.55) !important;}

@media(max-width:380px){body[data-ui-mode="client"] .practice-section-tabs{gap:6px !important}body[data-ui-mode="client"] .practice-section-tabs>button{font-size:9.5px !important;padding:7px 3px !important}}


/* V1.96 — scoring / sessions / chrome final pass */

/* + Autre activité : anthracite, texte blanc, contour doré */
body[data-ui-mode="client"] .calendar-activity-main,
body[data-ui-mode="client"] #addActivity,
body[data-ui-mode="client"] #addActivityMobile{
  background:#252629 !important;
  background-image:linear-gradient(180deg,#303135 0%,#202124 100%) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border:1px solid rgba(214,181,91,.82) !important;
  box-shadow:0 8px 18px rgba(0,0,0,.12) !important;
}

/* Scoring */
body[data-ui-mode="client"] .momentum-top-label{
  font-size:13px !important;
  letter-spacing:.13em !important;
  white-space:normal !important;
}
body[data-ui-mode="client"] .momentum-details > summary{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-weight:800 !important;
}
body[data-ui-mode="client"] .momentum-details > summary *{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
body[data-ui-mode="client"] .momentum-head > div:first-child > p,
body[data-ui-mode="client"] .momentum-head p{
  font-size:15.3px !important;
  line-height:1.42 !important;
}
body[data-ui-mode="client"] .rule-score.negative,
body[data-ui-mode="client"] .rule-score.positive{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  text-shadow:none !important;
}
body[data-ui-mode="client"] .momentum-protection,
body[data-ui-mode="client"] .momentum-protection b,
body[data-ui-mode="client"] .momentum-protection small,
body[data-ui-mode="client"] .momentum-shield{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
body[data-ui-mode="client"] .calendar-intro-subline{
  font-weight:400 !important;
}

/* Catégories graphiques : texte noir, y compris ouvert */
body[data-ui-mode="client"] .metric-category-summary b,
body[data-ui-mode="client"] .metric-category-summary small,
body[data-ui-mode="client"] .metric-category-summary span:first-child,
body[data-ui-mode="client"] .metric-category-details[open] > .metric-category-summary b,
body[data-ui-mode="client"] .metric-category-details[open] > .metric-category-summary small{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  text-shadow:none !important;
}

/* Pages Session : gris moyen foncé et texte blanc */
.modal-card.session-frame{
  background:#4a4b4d !important;
  background-image:linear-gradient(180deg,#55575a 0%,#414245 100%) !important;
  color:#fff !important;
  border-color:rgba(214,181,91,.62) !important;
}
.modal-card.session-frame :is(h1,h2,h3,h4,p,span,small,b,strong,label,.action-type,.page-title,.page-intro,.section-eyebrow){
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
.modal-card.session-frame .detail-context,
.modal-card.session-frame .session-page,
.modal-card.session-frame .practice-session-modal{
  background:transparent !important;
  color:#fff !important;
}
.modal-card.session-frame .protocol,
.modal-card.session-frame .exercise,
.modal-card.session-frame .completion-box,
.modal-card.session-frame .session-date-lock,
.modal-card.session-frame .practice-session-stage{
  background:#323336 !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.14) !important;
}
.modal-card.session-frame .practice-session-placeholder{
  background:#3c3d40 !important;
  color:#fff !important;
  border-color:rgba(214,181,91,.38) !important;
}
.modal-card.session-frame .modal-close{
  background:#242528 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
.modal-card.session-frame .detail-back,
.modal-card.session-frame .modal-auto-back{
  background:#fff !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  border-color:#d2d2cc !important;
}

/* Pratiques : un seul choix visible par niveau, direct ouvre une session après désélection du groupe précédent */
body[data-ui-mode="client"] .practice-subtab.practice-direct,
body[data-ui-mode="client"] .practice-child-tab,
body[data-ui-mode="client"] .practice-subtab.has-children{
  transition:background .15s ease,border-color .15s ease,transform .15s ease !important;
}
body[data-ui-mode="client"] .practice-subtab.practice-direct:active,
body[data-ui-mode="client"] .practice-child-tab:active{
  transform:translateY(1px) !important;
}

/* Chrome : garder le texte des cartes sombres blanc */
body[data-ui-mode="client"] :is(.momentum-card,.movement-card,.daycol,.practice-card,.music-album-card,.featured-metric-focus) :is(h1,h2,h3,h4,p,span,small,b,strong){
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
body[data-ui-mode="client"] :is(.momentum-top-label,.movement-top-label,.client-day-label,.practice-category,.metric-category-label,.music-album-head .section-eyebrow){
  color:#d6b55b !important;
  -webkit-text-fill-color:#d6b55b !important;
}


/* V1.97 — premium chrome pass */
:root{
  --li-premium-yellow-gradient:linear-gradient(180deg,#4b4b10 0%,#847e16 18%,#c7bc17 48%,#ece400 78%,#f6ef58 100%);
  --li-premium-yellow-gradient-soft:linear-gradient(180deg,#37380d 0%,#706a14 25%,#c7bc17 62%,#efe700 100%);
  --li-premium-anthracite:linear-gradient(180deg,#303238 0%,#23252a 100%);
}

/* retire définitivement tout caractère parasite au-dessus de l'entête */
body[data-ui-mode="client"] .brandbar{margin-top:0 !important;}
body[data-ui-mode="client"]::before{display:none !important;content:none !important;}

/* Menu bas : labels dorés, icônes noires, devise jaune */
body[data-ui-mode="client"] .mainnav>button:not(.active) .nav-label{
  color:var(--li-gold) !important;
  -webkit-text-fill-color:var(--li-gold) !important;
}
body[data-ui-mode="client"] .mainnav>button:not(.active) .nav-ico{
  color:#0f0f10 !important;
  -webkit-text-fill-color:#0f0f10 !important;
}
body[data-ui-mode="client"] .mainnav>button.active,
body[data-ui-mode="client"] .mainnav>button.li-selected{
  background:var(--li-premium-yellow-gradient) !important;
  background-image:var(--li-premium-yellow-gradient) !important;
  border-color:rgba(214,181,91,.88) !important;
  box-shadow:0 12px 22px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.12) !important;
}
body[data-ui-mode="client"] .mainnav>button.active :is(.nav-label,.nav-ico),
body[data-ui-mode="client"] .mainnav>button.li-selected :is(.nav-label,.nav-ico){
  color:#0a0a0b !important;
  -webkit-text-fill-color:#0a0a0b !important;
}
body[data-ui-mode="client"] .mobile-nav-motto{
  color:#efe700 !important;
  -webkit-text-fill-color:#efe700 !important;
  text-shadow:0 1px 0 rgba(0,0,0,.45) !important;
}

/* Dégradé premium généralisé */
body[data-ui-mode="client"] :is(
  .btn.yellow,
  .featured-metric-tab.active,
  .practice-section-tabs>button.active,
  .practice-subtab.active,
  .practice-child-tab.active,
  .practice-subtab.practice-direct:active,
  .calendar-activity-main:active,
  .external-calendar-trigger.active,
  .content-validate-btn,
  .practice-session-cta,
  .music-album-head .btn.yellow,
  .calendar-tools-secondary .btn.active,
  button.li-selected
){
  background:var(--li-premium-yellow-gradient) !important;
  background-image:var(--li-premium-yellow-gradient) !important;
  color:#0b0b0c !important;
  -webkit-text-fill-color:#0b0b0c !important;
  border-color:rgba(214,181,91,.9) !important;
  box-shadow:0 10px 22px rgba(0,0,0,.15), inset 0 1px 0 rgba(255,255,255,.14) !important;
  text-shadow:none !important;
}

/* Boutons sombres cohérents */
body[data-ui-mode="client"] :is(.calendar-activity-main,#addActivity,#addActivityMobile,.external-calendar-trigger,#enableNotif,#enableNotifMobile){
  background:var(--li-premium-anthracite) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border:1px solid rgba(214,181,91,.6) !important;
}

/* Graphiques : pas de flash agressif, tabs stables */
body[data-ui-mode="client"] .client-metrics-page .featured-metric-tabs,
body[data-ui-mode="client"] .client-metrics-page .featured-metric-focus{
  will-change:transform,opacity;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-tab{
  transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-focus{
  min-height:480px !important;
}
.li-graph-focus-enter-next{animation:liGraphFocusNext .22s cubic-bezier(.22,.75,.28,1) both}
.li-graph-focus-enter-prev{animation:liGraphFocusPrev .22s cubic-bezier(.22,.75,.28,1) both}
@keyframes liGraphFocusNext{from{opacity:.5;transform:translateX(18px)}to{opacity:1;transform:translateX(0)}}
@keyframes liGraphFocusPrev{from{opacity:.5;transform:translateX(-18px)}to{opacity:1;transform:translateX(0)}}

/* Catégories graphiques fermées = texte noir */
body[data-ui-mode="client"] .metric-category-details:not([open]) > .metric-category-summary,
body[data-ui-mode="client"] .metric-category-details:not([open]) > .metric-category-summary *{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  text-shadow:none !important;
}
body[data-ui-mode="client"] .metric-category-details:not([open]) > .metric-category-summary{
  background:#f2f1eb !important;
  border:1px solid rgba(0,0,0,.14) !important;
}
body[data-ui-mode="client"] .metric-category-details[open] > .metric-category-summary{
  background:var(--li-premium-yellow-gradient) !important;
  background-image:var(--li-premium-yellow-gradient) !important;
  border-color:rgba(214,181,91,.9) !important;
}
body[data-ui-mode="client"] .metric-category-details[open] > .metric-category-summary,
body[data-ui-mode="client"] .metric-category-details[open] > .metric-category-summary *{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
}

/* Textes blancs dans toutes les cartes sombres */
body[data-ui-mode="client"] :is(.momentum-card,.featured-metric-focus,.music-album-card,.daycol,.practice-card,.practice-session-stage,.movement-card,.daily-checkin-card,.client-home-hero) :is(h1,h2,h3,h4,p,span,small,b,strong){
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
body[data-ui-mode="client"] :is(.momentum-top-label,.movement-top-label,.client-day-label,.practice-category,.metric-category-label,.music-album-head .section-eyebrow,.section-eyebrow){
  color:#d6b55b !important;
  -webkit-text-fill-color:#d6b55b !important;
}

/* Calendrier : lecture plus groupée */
body[data-ui-mode="client"] .client-calendar-head{margin-bottom:8px !important;gap:10px !important;}
body[data-ui-mode="client"] .calendar-tools-stacked{gap:8px !important;}
body[data-ui-mode="client"] .calendar-inline-tools{margin:-2px 0 6px !important;}
body[data-ui-mode="client"] .daystrip.client-primary-calendar{gap:8px !important;margin-top:0 !important;}
body[data-ui-mode="client"] .client-primary-calendar .daycol{margin-top:0 !important;}

/* Sous-onglets pratiques : léger grandissement vers la droite */
body[data-ui-mode="client"] .practice-subtab.has-children.active,
body[data-ui-mode="client"] .practice-child-tab.active{
  transform:translateX(8px) scaleX(1.03) !important;
  transform-origin:left center !important;
}
body[data-ui-mode="client"] .practice-subtab,
body[data-ui-mode="client"] .practice-child-tab{
  transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease !important;
}
body[data-ui-mode="client"] .practice-subtabs-shell,
body[data-ui-mode="client"] .practice-child-tabs{margin-top:6px !important;}
body[data-ui-mode="client"] .practice-subtabs-row{gap:8px !important;}

/* Capsules / contenus / sessions : meilleure harmonie visuelle */
.modal-card.session-frame .detail-context{
  background:linear-gradient(120deg,#101113 0%,#171818 42%,#40400e 72%,#101113 100%) !important;
  border-radius:18px 18px 0 0 !important;
  border-bottom:1px solid rgba(214,181,91,.42) !important;
}
.modal-card.session-frame .detail-body{
  padding-top:22px !important;
}
.modal-card.session-frame .detail-body .btn.yellow,
.modal-card.session-frame .detail-body .content-validate-btn,
.modal-card.session-frame .detail-body a.btn.yellow{
  background:var(--li-premium-yellow-gradient) !important;
  background-image:var(--li-premium-yellow-gradient) !important;
  color:#0b0b0c !important;
  -webkit-text-fill-color:#0b0b0c !important;
}
.modal-card.session-frame img{box-shadow:0 18px 36px rgba(0,0,0,.18) !important;}

/* Switch / swipe : sensation carte plus premium */
#app{transform-origin:center top;}
#app.app-swipe-dragging,
#app.app-swipe-return{
  box-shadow:0 18px 40px rgba(0,0,0,.10);
  border-radius:18px;
}
#app.app-swipe-dragging{overflow:visible;}
#app.app-swipe-return{transition:transform .22s cubic-bezier(.22,.75,.28,1),opacity .22s ease !important}
#app.app-page-enter-next{animation:liPagePremiumNext .24s cubic-bezier(.22,.75,.28,1) both !important}
#app.app-page-enter-prev{animation:liPagePremiumPrev .24s cubic-bezier(.22,.75,.28,1) both !important}

/* Détail agenda : sous-ligne non grasse */
body[data-ui-mode="client"] .calendar-intro-subline,
body[data-ui-mode="client"] .client-calendar-head .page-intro strong,
body[data-ui-mode="client"] .client-calendar-head .page-intro b{
  font-weight:400 !important;
}

/* Humeur / énergie / motivation : texte blanc dans les boutons qualitatifs */
body[data-ui-mode="client"] .mood-choice,
body[data-ui-mode="client"] .metric-entry-modal .mood-choice,
body[data-ui-mode="client"] .mentor-wellness-values span{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}


/* V1.98 — premium experience pass */
:root{
  --li-premium-shadow:0 16px 38px rgba(0,0,0,.12),0 3px 10px rgba(0,0,0,.045);
  --li-premium-shadow-soft:0 10px 24px rgba(0,0,0,.09),0 2px 6px rgba(0,0,0,.035);
  --li-premium-inset:inset 0 1px 0 rgba(255,255,255,.045),inset 0 -1px 0 rgba(0,0,0,.15);
}

/* profondeur cohérente sur les cartes principales */
body[data-ui-mode="client"] :is(
  .momentum-card,.movement-card,.daycol,.featured-metric-focus,.music-album-card,
  .practice-card,.metric-category-details,.client-home-hero,.daily-checkin-card
){
  box-shadow:var(--li-premium-shadow) !important;
  border-color:rgba(214,181,91,.22) !important;
  backface-visibility:hidden;
}

/* éléments secondaires : relief plus subtil */
body[data-ui-mode="client"] :is(
  .mini-action,.done-item,.upcoming-action,.practice-subtab,.practice-child-tab,
  .featured-metric-tab,.acquired-content-card,.metric-category-summary
){
  box-shadow:var(--li-premium-shadow-soft),var(--li-premium-inset) !important;
}

/* état press : tactile mais discret */
body[data-ui-mode="client"] .li-pressing{
  transform:translateY(1px) scale(.985) !important;
  filter:brightness(.985) !important;
  transition:transform .07s ease,filter .07s ease,box-shadow .07s ease !important;
}

/* micro élévation sans saut de mise en page */
body[data-ui-mode="client"] :is(
  .mainnav button,.btn,.featured-metric-tab,.practice-section-tabs button,
  .practice-subtab,.practice-child-tab,.metric-category-summary,.mini-action,.action-card
){
  transition:transform .16s cubic-bezier(.22,.75,.28,1),box-shadow .16s ease,background .16s ease,border-color .16s ease,color .16s ease !important;
}

/* sélection premium, sans flash */
body[data-ui-mode="client"] :is(
  .mainnav button.active,.featured-metric-tab.active,.practice-section-tabs button.active,
  .practice-subtab.active,.practice-child-tab.active,.pillar-tabs button.active
){
  box-shadow:0 12px 26px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.14) !important;
}

/* navigation basse : volume plus luxueux */
body[data-ui-mode="client"] .mainnav{
  box-shadow:0 -16px 42px rgba(0,0,0,.24),inset 0 1px 0 rgba(232,229,0,.12) !important;
}
body[data-ui-mode="client"] .mainnav button{
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
}

/* sous-onglet actif : focus latéral plus évident */
body[data-ui-mode="client"] .practice-subtab.has-children.active,
body[data-ui-mode="client"] .practice-child-tab.active{
  transform:translateX(7px) scale(1.025) !important;
  box-shadow:0 14px 28px rgba(0,0,0,.17),inset 0 1px 0 rgba(255,255,255,.14) !important;
}

/* cartes calendrier groupées visuellement */
body[data-ui-mode="client"] .client-calendar-head + .daystrip,
body[data-ui-mode="client"] .calendar-inline-tools + .daystrip{
  position:relative;
}
body[data-ui-mode="client"] .calendar-inline-tools{
  border-radius:18px;
  padding:6px !important;
  background:rgba(255,255,255,.16) !important;
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
}

/* modales/session : arrivée plus élégante */
.modal:not(.hidden) .modal-card{
  animation:liPremiumModalIn .20s cubic-bezier(.22,.75,.28,1) both;
}
@keyframes liPremiumModalIn{
  from{opacity:.45;transform:translateY(10px) scale(.992)}
  to{opacity:1;transform:translateY(0) scale(1)}
}

/* graphique : mouvement horizontal uniquement */
.li-graph-focus-enter,
.li-graph-focus-enter-next,
.li-graph-focus-enter-prev{
  will-change:transform,opacity;
}
.li-graph-focus-enter{animation:none !important;}
.li-graph-focus-enter-next{animation:liGraphFocusNextPremium .21s cubic-bezier(.22,.75,.28,1) both !important;}
.li-graph-focus-enter-prev{animation:liGraphFocusPrevPremium .21s cubic-bezier(.22,.75,.28,1) both !important;}
@keyframes liGraphFocusNextPremium{from{opacity:.72;transform:translateX(26px)}to{opacity:1;transform:translateX(0)}}
@keyframes liGraphFocusPrevPremium{from{opacity:.72;transform:translateX(-26px)}to{opacity:1;transform:translateX(0)}}

/* swipe plus fluide, effet de carte */
#app.app-swipe-dragging,
#app.app-swipe-return{
  border-radius:20px !important;
  box-shadow:0 24px 52px rgba(0,0,0,.16) !important;
  background:rgba(255,255,255,.01);
  overflow:visible !important;
}
#app.app-swipe-dragging{
  transition:none !important;
}
#app.app-swipe-return{
  transition:transform .20s cubic-bezier(.22,.75,.28,1),opacity .20s ease !important;
}

/* CTA premium */
body[data-ui-mode="client"] .btn.yellow{
  box-shadow:0 10px 24px rgba(232,229,0,.16),inset 0 1px 0 rgba(255,255,255,.18) !important;
}

/* transitions discrètes au chargement */
body[data-ui-mode="client"] .client-centered-heading,
body[data-ui-mode="client"] .music-page-heading,
body[data-ui-mode="client"] .metrics-page-heading,
body[data-ui-mode="client"] .client-calendar-head{
  animation:liPremiumHeadingIn .20s ease both;
}
@keyframes liPremiumHeadingIn{
  from{opacity:.72;transform:translateY(3px)}
  to{opacity:1;transform:translateY(0)}
}

@media(prefers-reduced-motion:reduce){
  .modal:not(.hidden) .modal-card,
  body[data-ui-mode="client"] .client-centered-heading,
  body[data-ui-mode="client"] .music-page-heading,
  body[data-ui-mode="client"] .metrics-page-heading,
  body[data-ui-mode="client"] .client-calendar-head,
  .li-graph-focus-enter-next,.li-graph-focus-enter-prev{
    animation:none !important;
  }
}

/* V1.99 — texte état humeur/énergie en blanc */
body[data-ui-mode="client"] .daily-checkin-card .daily-checkin-head h2,
body[data-ui-mode="client"] .daily-checkin-card .daily-checkin-head p{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

/* V2.00 — dégradé premium renforcé sur tous les boutons sélectionnés */
body[data-ui-mode="client"] :is(
  .mainnav > button.active,
  .mainnav > button.li-selected,
  .featured-metric-tab.active,
  .practice-section-tabs > button.active,
  .practice-section-tabs button.active,
  .practice-subtab.active,
  .practice-child-tab.active,
  .mood-choice.active,
  .metric-tabs .metric-tab.active,
  .pillar-tabs > button.active,
  button.li-selected,
  .metric-pin.active
){
  background:var(--li-premium-yellow-gradient) !important;
  background-image:var(--li-premium-yellow-gradient) !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  border:1px solid rgba(214,181,91,.95) !important;
  box-shadow:0 12px 24px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.18) !important;
  text-shadow:none !important;
}
body[data-ui-mode="client"] :is(
  .mainnav > button.active,
  .mainnav > button.li-selected,
  .featured-metric-tab.active,
  .practice-section-tabs > button.active,
  .practice-section-tabs button.active,
  .practice-subtab.active,
  .practice-child-tab.active,
  .mood-choice.active,
  .metric-tabs .metric-tab.active,
  .pillar-tabs > button.active,
  button.li-selected,
  .metric-pin.active
) *{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  text-shadow:none !important;
}
body[data-ui-mode="client"] .mainnav > button.active .nav-ico,
body[data-ui-mode="client"] .mainnav > button.active .nav-ico *,
body[data-ui-mode="client"] .mainnav > button.li-selected .nav-ico,
body[data-ui-mode="client"] .mainnav > button.li-selected .nav-ico *{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  stroke:#090909 !important;
  fill:transparent;
}
body[data-ui-mode="client"] .mainnav > button.active .nav-ico polygon,
body[data-ui-mode="client"] .mainnav > button.li-selected .nav-ico polygon{
  fill:#090909 !important;
}


/* V2.01 — menu icônes noires + graphiques favoris sans animation */
/* Texte des onglets non sélectionnés : doré */
body[data-ui-mode="client"] .mainnav > button:not(.active):not(.li-selected) .nav-label{
  color:var(--li-gold) !important;
  -webkit-text-fill-color:var(--li-gold) !important;
}
/* Icônes des onglets non sélectionnés : noir, y compris les SVG */
body[data-ui-mode="client"] .mainnav > button:not(.active):not(.li-selected) .nav-ico,
body[data-ui-mode="client"] .mainnav > button:not(.active):not(.li-selected) .nav-ico *{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
}
body[data-ui-mode="client"] .mainnav > button:not(.active):not(.li-selected) .nav-ico svg,
body[data-ui-mode="client"] .mainnav > button:not(.active):not(.li-selected) .nav-ico svg *,
body[data-ui-mode="client"] .mainnav > button:not(.active):not(.li-selected) .nav-ico path,
body[data-ui-mode="client"] .mainnav > button:not(.active):not(.li-selected) .nav-ico rect,
body[data-ui-mode="client"] .mainnav > button:not(.active):not(.li-selected) .nav-ico circle,
body[data-ui-mode="client"] .mainnav > button:not(.active):not(.li-selected) .nav-ico line,
body[data-ui-mode="client"] .mainnav > button:not(.active):not(.li-selected) .nav-ico polyline{
  stroke:#090909 !important;
  color:#090909 !important;
  fill:none !important;
}
body[data-ui-mode="client"] .mainnav > button:not(.active):not(.li-selected) .nav-ico polygon{
  stroke:#090909 !important;
  fill:#090909 !important;
}

/* Graphiques favoris : aucun mouvement/flash/transition visuelle. La vibration JS reste active. */
body[data-ui-mode="client"] .featured-metric-tabs,
body[data-ui-mode="client"] .featured-metric-tab,
body[data-ui-mode="client"] .featured-metric-tab.active,
body[data-ui-mode="client"] .featured-metric-focus,
body[data-ui-mode="client"] .featured-chart,
body[data-ui-mode="client"] .featured-metric-head,
body[data-ui-mode="client"] .featured-metric-head *,
body[data-ui-mode="client"] .featured-metric-actions{
  animation:none !important;
  transition:none !important;
  transform:none !important;
}
body[data-ui-mode="client"] .featured-metric-tab.li-pressing{
  transform:none !important;
  filter:none !important;
}
body[data-ui-mode="client"] :is(.li-graph-focus-enter,.li-graph-focus-enter-next,.li-graph-focus-enter-prev){
  animation:none !important;
  transition:none !important;
  transform:none !important;
  opacity:1 !important;
}

/* V2.02 — correctifs texte agenda + discipline */
body[data-ui-mode="client"] .calendar-intro-subline,
body[data-ui-mode="client"] .client-calendar-head .calendar-intro-subline,
body[data-ui-mode="client"] .client-calendar-head .page-intro .calendar-intro-subline{
  font-weight:400 !important;
}

body[data-ui-mode="client"] .momentum-head > div:first-child > p,
body[data-ui-mode="client"] .momentum-head p{
  font-size:0.85em !important;
  line-height:1.42 !important;
}

/* V2.03 — catégories graphiques : dégradé gauche->droite dominant jaune (ouvertes + fermées) */
body[data-ui-mode="client"] .metric-category-details{
  background:linear-gradient(90deg,#f0ed00 0%,#eeea00 42%,#d2cc19 58%,#5b5b42 80%,#121212 100%) !important;
  background-image:linear-gradient(90deg,#f0ed00 0%,#eeea00 42%,#d2cc19 58%,#5b5b42 80%,#121212 100%) !important;
  border:1px solid rgba(17,17,17,.9) !important;
}
body[data-ui-mode="client"] .metric-category-summary,
body[data-ui-mode="client"] .metric-category-details:not([open]) > .metric-category-summary,
body[data-ui-mode="client"] .metric-category-details[open] > .metric-category-summary{
  background:linear-gradient(90deg,#f0ed00 0%,#eeea00 42%,#d2cc19 58%,#5b5b42 80%,#121212 100%) !important;
  background-image:linear-gradient(90deg,#f0ed00 0%,#eeea00 42%,#d2cc19 58%,#5b5b42 80%,#121212 100%) !important;
  border:0 !important;
  box-shadow:none !important;
}
body[data-ui-mode="client"] .metric-category-summary :is(b,small,span),
body[data-ui-mode="client"] .metric-category-details:not([open]) > .metric-category-summary *,
body[data-ui-mode="client"] .metric-category-details[open] > .metric-category-summary *{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  text-shadow:none !important;
}
body[data-ui-mode="client"] .metric-category-summary .category-chevron,
body[data-ui-mode="client"] .metric-category-details:not([open]) > .metric-category-summary .category-chevron,
body[data-ui-mode="client"] .metric-category-details[open] > .metric-category-summary .category-chevron{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
}

/* V2.04 — bloc agenda rééquilibré / différenciation visuelle */
body[data-ui-mode="client"] .daystrip.client-primary-calendar{
  gap:10px !important;
  margin-top:2px !important;
  margin-bottom:12px !important;
}

/* zone outils agenda plus équilibrée et visuellement reliée au bloc */
body[data-ui-mode="client"] .calendar-inline-tools,
body[data-ui-mode="client"] .client-calendar-tools.calendar-tools-stacked{
  gap:10px !important;
}
body[data-ui-mode="client"] .calendar-inline-tools{
  margin:0 0 8px !important;
  padding:8px !important;
  border-radius:22px !important;
  background:linear-gradient(180deg,rgba(23,24,27,.78) 0%,rgba(17,18,20,.72) 100%) !important;
  border:1px solid rgba(214,181,91,.22) !important;
  box-shadow:0 12px 26px rgba(0,0,0,.08), inset 0 1px 0 rgba(255,255,255,.05) !important;
}
body[data-ui-mode="client"] .calendar-inline-tools .calendar-tools-secondary,
body[data-ui-mode="client"] .calendar-tools-secondary{
  gap:10px !important;
}
body[data-ui-mode="client"] :is(.calendar-activity-main,#addActivity,#addActivityMobile,.external-calendar-trigger,#enableNotif,#enableNotifMobile){
  min-height:64px !important;
  border-radius:18px !important;
}

/* cartes demain / après-demain : plus compactes, plus lisibles, style propre au bloc agenda */
body[data-ui-mode="client"] .client-primary-calendar .daycol:not(.today){
  padding:18px 18px 20px !important;
  border-radius:24px !important;
  border:1px solid rgba(214,181,91,.28) !important;
  background:linear-gradient(180deg,#101115 0%,#0b0c0f 100%) !important;
  box-shadow:0 10px 22px rgba(0,0,0,.10), inset 0 1px 0 rgba(255,255,255,.035) !important;
  position:relative !important;
}
body[data-ui-mode="client"] .client-primary-calendar .daycol:not(.today)::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  border-radius:24px 0 0 24px;
  background:linear-gradient(180deg,rgba(214,181,91,.82) 0%,rgba(214,181,91,.28) 100%);
}
body[data-ui-mode="client"] .client-primary-calendar .daycol:not(.today) .client-day-label{
  font-size:13px !important;
  line-height:1.05 !important;
  letter-spacing:.16em !important;
  font-weight:900 !important;
  margin-bottom:10px !important;
  color:#d6b55b !important;
  -webkit-text-fill-color:#d6b55b !important;
}
body[data-ui-mode="client"] .client-primary-calendar .daycol:not(.today) h3{
  font-size:17px !important;
  margin-bottom:14px !important;
}
body[data-ui-mode="client"] .client-primary-calendar .daycol:not(.today) .client-empty-inline,
body[data-ui-mode="client"] .client-primary-calendar .daycol:not(.today) .no-action,
body[data-ui-mode="client"] .client-primary-calendar .daycol:not(.today) .muted.micro{
  font-size:12px !important;
  line-height:1.48 !important;
  color:#ecebe6 !important;
  -webkit-text-fill-color:#ecebe6 !important;
  opacity:.92 !important;
  padding-top:2px !important;
}

/* aujourd'hui conserve son statut premium, mais s'intègre mieux au groupe */
body[data-ui-mode="client"] .client-primary-calendar .daycol.today{
  border-radius:24px !important;
}

/* mobile : bloc plus compact et cohérent */
@media(max-width:760px){
  body[data-ui-mode="client"] .daystrip.client-primary-calendar{gap:9px !important;}
  body[data-ui-mode="client"] .calendar-inline-tools{padding:7px !important;margin:0 0 7px !important;}
  body[data-ui-mode="client"] :is(.calendar-activity-main,#addActivity,#addActivityMobile,.external-calendar-trigger,#enableNotif,#enableNotifMobile){
    min-height:58px !important;
    font-size:16px !important;
  }
  body[data-ui-mode="client"] .client-primary-calendar .daycol:not(.today){
    padding:16px 16px 18px !important;
  }
  body[data-ui-mode="client"] .client-primary-calendar .daycol:not(.today) .client-day-label{
    font-size:12px !important;
    margin-bottom:8px !important;
  }
  body[data-ui-mode="client"] .client-primary-calendar .daycol:not(.today) h3{
    font-size:16px !important;
    margin-bottom:12px !important;
  }
  body[data-ui-mode="client"] .client-primary-calendar .daycol:not(.today) .client-empty-inline,
  body[data-ui-mode="client"] .client-primary-calendar .daycol:not(.today) .no-action,
  body[data-ui-mode="client"] .client-primary-calendar .daycol:not(.today) .muted.micro{
    font-size:11px !important;
    line-height:1.42 !important;
  }
}


/* V2.05 — swipe niveau premium / Apple feel */
:root{
  --li-swipe-x:0px;
  --li-swipe-opacity:1;
  --li-swipe-scale:1;
  --li-swipe-tilt:0deg;
  --li-swipe-shadow:.16;
  --li-swipe-peek-opacity:0;
}
#app{
  touch-action:pan-y pinch-zoom;
  overscroll-behavior-x:none;
  -webkit-overflow-scrolling:touch;
  transform:translate3d(0,0,0);
  will-change:transform,opacity;
}
#app::before,
#app::after{
  content:"";
  position:fixed;
  top:10px;
  bottom:88px;
  width:min(86vw,440px);
  border-radius:24px;
  pointer-events:none;
  opacity:0;
  background:linear-gradient(180deg,rgba(20,21,24,.96) 0%,rgba(10,11,13,.98) 100%);
  border:1px solid rgba(214,181,91,.18);
  box-shadow:0 20px 50px rgba(0,0,0,.14), inset 0 1px 0 rgba(255,255,255,.04);
  transition:opacity .18s ease;
  z-index:-1;
}
#app::after{left:calc(100% + 10px); transform:scale(.986);}
#app::before{right:calc(100% + 10px); transform:scale(.986);}
#app.app-swipe-dragging.swipe-peek-next::after,
#app.app-swipe-return.swipe-peek-next::after,
#app.app-swipe-commit.swipe-peek-next::after{
  opacity:var(--li-swipe-peek-opacity,.55);
}
#app.app-swipe-dragging.swipe-peek-prev::before,
#app.app-swipe-return.swipe-peek-prev::before,
#app.app-swipe-commit.swipe-peek-prev::before{
  opacity:var(--li-swipe-peek-opacity,.55);
}
#app.app-swipe-dragging,
#app.app-swipe-return,
#app.app-swipe-commit{
  transform:translate3d(var(--li-swipe-x,0),0,0) scale(var(--li-swipe-scale,1)) rotateZ(var(--li-swipe-tilt,0deg)) !important;
  opacity:var(--li-swipe-opacity,1) !important;
  border-radius:22px !important;
  box-shadow:0 22px 56px rgba(0,0,0,var(--li-swipe-shadow,.16)),0 5px 18px rgba(0,0,0,.08) !important;
  background:rgba(255,255,255,.008);
  overflow:visible !important;
  transform-origin:center center;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}
#app.app-swipe-dragging{transition:none !important;}
#app.app-swipe-return{
  transition:transform .34s cubic-bezier(.22,1,.36,1),opacity .28s ease-out !important;
}
#app.app-swipe-commit{
  transition:transform .11s cubic-bezier(.33,1,.68,1),opacity .11s ease-out !important;
}
#app.app-page-enter-next{animation:liPageEnterAppleNext .30s cubic-bezier(.22,1,.36,1) both !important;}
#app.app-page-enter-prev{animation:liPageEnterApplePrev .30s cubic-bezier(.22,1,.36,1) both !important;}
@keyframes liPageEnterAppleNext{
  from{opacity:.985;transform:translate3d(26px,0,0) scale(.992)}
  to{opacity:1;transform:translate3d(0,0,0) scale(1)}
}
@keyframes liPageEnterApplePrev{
  from{opacity:.985;transform:translate3d(-26px,0,0) scale(.992)}
  to{opacity:1;transform:translate3d(0,0,0) scale(1)}
}
@media(max-width:760px){
  #app::before,
  #app::after{bottom:102px; width:min(88vw,430px); border-radius:22px;}
}
@media(prefers-reduced-motion:reduce){
  #app.app-page-enter-next,
  #app.app-page-enter-prev{animation:none !important;}
  #app.app-swipe-return,
  #app.app-swipe-commit{transition:none !important;}
}


/* V2.06 — swipe encore plus premium, inertie douce, micro-parallaxe */
:root{
  --li-swipe-peek-shift:0px;
  --li-swipe-peek-scale:.985;
}
#app::before,
#app::after{
  transform:translate3d(var(--li-swipe-peek-shift,0px),0,0) scale(var(--li-swipe-peek-scale,.985));
  transition:opacity .18s ease, transform .22s cubic-bezier(.22,1,.36,1);
}
#app.app-swipe-dragging,
#app.app-swipe-return,
#app.app-swipe-commit{
  backdrop-filter:saturate(1.02);
}
#app.app-swipe-return{
  transition:transform .28s cubic-bezier(.22,1,.36,1),opacity .22s ease-out !important;
}
#app.app-swipe-commit{
  transition:transform .095s cubic-bezier(.33,1,.68,1),opacity .095s ease-out !important;
}
#app.app-page-enter-next{animation:liPageEnterAppleNextV206 .26s cubic-bezier(.22,1,.36,1) both !important;}
#app.app-page-enter-prev{animation:liPageEnterApplePrevV206 .26s cubic-bezier(.22,1,.36,1) both !important;}
@keyframes liPageEnterAppleNextV206{
  from{opacity:.992;transform:translate3d(18px,0,0) scale(.995)}
  to{opacity:1;transform:translate3d(0,0,0) scale(1)}
}
@keyframes liPageEnterApplePrevV206{
  from{opacity:.992;transform:translate3d(-18px,0,0) scale(.995)}
  to{opacity:1;transform:translate3d(0,0,0) scale(1)}
}


/* V2.07 — ultra iPhone swipe tuning */
#app.app-swipe-return{
  transition:transform .25s cubic-bezier(.22,1,.36,1),opacity .20s ease-out !important;
}
#app.app-swipe-commit{
  transition:transform .078s cubic-bezier(.25,.8,.25,1),opacity .078s ease-out !important;
}
#app.app-page-enter-next{animation:liPageEnterUltraNext .22s cubic-bezier(.22,1,.36,1) both !important;}
#app.app-page-enter-prev{animation:liPageEnterUltraPrev .22s cubic-bezier(.22,1,.36,1) both !important;}
@keyframes liPageEnterUltraNext{
  from{opacity:.995;transform:translate3d(13px,0,0) scale(.997)}
  to{opacity:1;transform:translate3d(0,0,0) scale(1)}
}
@keyframes liPageEnterUltraPrev{
  from{opacity:.995;transform:translate3d(-13px,0,0) scale(.997)}
  to{opacity:1;transform:translate3d(0,0,0) scale(1)}
}
#app::before,#app::after{
  box-shadow:0 22px 54px rgba(0,0,0,.13),inset 0 1px 0 rgba(255,255,255,.045) !important;
}


/* V2.09 — interactions internes = aucune sensation de changement de page */
body[data-ui-mode="client"] .practice-dynamic-root,
body[data-ui-mode="client"] .practice-dynamic-root *,
body[data-ui-mode="client"] .featured-metric-switcher,
body[data-ui-mode="client"] .featured-metric-switcher *{
  animation:none !important;
}

/* Les favoris graphiques changent sur place : zéro déplacement, zéro fade, zéro flash. */
body[data-ui-mode="client"] .featured-metric-tabs,
body[data-ui-mode="client"] .featured-metric-tab,
body[data-ui-mode="client"] .featured-metric-focus,
body[data-ui-mode="client"] .featured-chart,
body[data-ui-mode="client"] .featured-metric-head,
body[data-ui-mode="client"] .featured-metric-actions{
  transition:none !important;
  transform:none !important;
}

/* Les onglets Pratiques changent uniquement leur état/couleur et leur contenu associé. */
body[data-ui-mode="client"] .practice-dynamic-root :is(
  .practice-section-tabs button,
  .practice-subtab,
  .practice-child-tab,
  .practice-level-arrow,
  .practice-subtabs-shell,
  .practice-child-tabs
){
  transition:none !important;
}

/* Le titre des pages ne rejoue jamais une animation lors d'une interaction interne. */
body[data-ui-mode="client"] .client-practice-page .practice-page-heading,
body[data-ui-mode="client"] .client-metrics-page .metrics-page-heading{
  animation:none !important;
  transform:none !important;
  opacity:1 !important;
}


/* V2.11 — boutons sélectionnés dégradé premium + phrase agenda non grasse */
:root{
  --li-selected-black-yellow:linear-gradient(180deg,#11120f 0%,#55520d 12%,#948e10 24%,#c7c014 38%,#e1db00 54%,#eee800 76%,#fff25c 100%);
}

body[data-ui-mode="client"] :is(
  .mainnav > button.active,
  .mainnav > button.li-selected,
  .featured-metric-tab.active,
  .practice-section-tabs > button.active,
  .practice-section-tabs button.active,
  .practice-subtab.active,
  .practice-child-tab.active,
  .mood-choice.active,
  .metric-tabs .metric-tab.active,
  .pillar-tabs > button.active,
  .quarter-pill.active,
  .metric-pin.active,
  button.li-selected
){
  background:var(--li-selected-black-yellow) !important;
  background-image:var(--li-selected-black-yellow) !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  border:1px solid #090909 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10), 0 10px 20px rgba(0,0,0,.14) !important;
}

/* icônes et textes actifs restent noirs */
body[data-ui-mode="client"] :is(
  .mainnav > button.active,
  .mainnav > button.li-selected,
  .featured-metric-tab.active,
  .practice-section-tabs > button.active,
  .practice-section-tabs button.active,
  .practice-subtab.active,
  .practice-child-tab.active,
  .mood-choice.active,
  .metric-tabs .metric-tab.active,
  .pillar-tabs > button.active,
  .quarter-pill.active,
  .metric-pin.active,
  button.li-selected
) :is(.nav-label,.nav-ico,svg,svg *,span,b,small){
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  stroke:#090909 !important;
}
body[data-ui-mode="client"] :is(
  .mainnav > button.active,
  .mainnav > button.li-selected
) .nav-ico polygon{fill:#090909 !important;stroke:#090909 !important;}

/* phrase sous le compteur agenda : suppression du gras / faux gras */
body[data-ui-mode="client"] .calendar-intro-subline,
body[data-ui-mode="client"] .client-calendar-head .calendar-intro-subline,
body[data-ui-mode="client"] .client-calendar-head .page-intro .calendar-intro-subline{
  font-weight:400 !important;
  font-family:'Montserrat',Arial,Helvetica,sans-serif !important;
  text-shadow:none !important;
  -webkit-text-stroke:0 !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  display:inline-block;
}


/* V2.12 — sélection premium dominante jaune
   Le noir reste uniquement en amorce haute, le jaune domine le bouton. */
body[data-ui-mode="client"] :is(
  .mainnav > button.active,
  .mainnav > button.li-selected,
  .featured-metric-tab.active,
  .practice-section-tabs > button.active,
  .practice-section-tabs button.active,
  .practice-subtab.active,
  .practice-child-tab.active,
  .mood-choice.active,
  .metric-tabs .metric-tab.active,
  .pillar-tabs > button.active,
  .quarter-pill.active,
  .metric-pin.active,
  button.li-selected
){
  background:
    linear-gradient(180deg,rgba(255,255,255,.08) 0%,rgba(255,255,255,0) 22%),
    var(--li-selected-black-yellow) !important;
  background-image:
    linear-gradient(180deg,rgba(255,255,255,.08) 0%,rgba(255,255,255,0) 22%),
    var(--li-selected-black-yellow) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.22),
    0 10px 24px rgba(0,0,0,.15) !important;
}


/* V2.13 — Pratiques : bouton sélectionné plus grand, pousse le voisin,
   animation premium de rotation haut->bas avec changement de couleur. */
body[data-ui-mode="client"] .client-practice-page :is(.practice-section-tabs,.practice-subtabs-row,.practice-child-tabs){
  transition:grid-template-columns .34s cubic-bezier(.22,.82,.24,1), gap .28s ease !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-section-tabs{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:10px !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-section-tabs:has(>button:nth-child(1).active){grid-template-columns:1.3fr .85fr .85fr !important;}
body[data-ui-mode="client"] .client-practice-page .practice-section-tabs:has(>button:nth-child(2).active){grid-template-columns:.85fr 1.3fr .85fr !important;}
body[data-ui-mode="client"] .client-practice-page .practice-section-tabs:has(>button:nth-child(3).active){grid-template-columns:.85fr .85fr 1.3fr !important;}

body[data-ui-mode="client"] .client-practice-page .practice-subtabs-row{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
  align-items:stretch !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-subtabs-row.single{
  grid-template-columns:1fr !important;
  max-width:60% !important;
  margin:0 auto !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-subtabs-row:not(.single):has(>button:nth-child(1).active){grid-template-columns:1.3fr .85fr !important;}
body[data-ui-mode="client"] .client-practice-page .practice-subtabs-row:not(.single):has(>button:nth-child(2).active){grid-template-columns:.85fr 1.3fr !important;}

body[data-ui-mode="client"] .client-practice-page .practice-child-tabs{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
  align-items:stretch !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-child-tabs:has(>button:nth-child(2n-1).active){grid-template-columns:1.3fr .85fr !important;}
body[data-ui-mode="client"] .client-practice-page .practice-child-tabs:has(>button:nth-child(2n).active){grid-template-columns:.85fr 1.3fr !important;}

body[data-ui-mode="client"] .client-practice-page :is(.practice-section-tabs>button,.practice-subtab,.practice-child-tab){
  transition:
    transform .34s cubic-bezier(.22,.82,.24,1),
    box-shadow .34s cubic-bezier(.22,.82,.24,1),
    filter .34s cubic-bezier(.22,.82,.24,1),
    color .28s ease,
    background .28s ease,
    background-image .28s ease !important;
  transform-origin:center top !important;
  backface-visibility:hidden !important;
  will-change:transform, filter !important;
}
body[data-ui-mode="client"] .client-practice-page :is(.practice-section-tabs>button.active,.practice-subtab.active,.practice-child-tab.active){
  background:
    linear-gradient(180deg,rgba(255,255,255,.12) 0%,rgba(255,255,255,0) 22%),
    var(--li-selected-black-yellow) !important;
  background-image:
    linear-gradient(180deg,rgba(255,255,255,.12) 0%,rgba(255,255,255,0) 22%),
    var(--li-selected-black-yellow) !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  transform:perspective(960px) rotateX(0deg) scale(1.03) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.20),
    0 14px 28px rgba(0,0,0,.16),
    0 0 0 1px rgba(0,0,0,.20) !important;
  z-index:2 !important;
  animation:liPracticeSelectFlip .38s cubic-bezier(.22,.85,.22,1) both;
}
body[data-ui-mode="client"] .client-practice-page :is(.practice-section-tabs>button:not(.active),.practice-subtab:not(.active),.practice-child-tab:not(.active)){
  transform:perspective(960px) rotateX(0deg) scale(1) !important;
}
@keyframes liPracticeSelectFlip{
  0%{
    transform:perspective(960px) rotateX(-18deg) translateY(-8px) scale(.9);
    filter:saturate(.72) brightness(.9);
  }
  58%{
    transform:perspective(960px) rotateX(6deg) translateY(0) scale(1.055);
    filter:saturate(1.08) brightness(1.03);
  }
  100%{
    transform:perspective(960px) rotateX(0deg) translateY(0) scale(1.03);
    filter:saturate(1) brightness(1);
  }
}


/* V2.14 — correctifs pratiques, courbes et check-in */
/* Pratiques : garder le décalage/poussée, sans rotation ni dégradé sur les boutons actifs */
body[data-ui-mode="client"] .client-practice-page :is(.practice-section-tabs,.practice-subtabs-row,.practice-child-tabs){
  transition:grid-template-columns .30s cubic-bezier(.22,.82,.24,1), gap .24s ease !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-section-tabs{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:10px !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-section-tabs:has(>button:nth-child(1).active){grid-template-columns:1.18fr .91fr .91fr !important;}
body[data-ui-mode="client"] .client-practice-page .practice-section-tabs:has(>button:nth-child(2).active){grid-template-columns:.91fr 1.18fr .91fr !important;}
body[data-ui-mode="client"] .client-practice-page .practice-section-tabs:has(>button:nth-child(3).active){grid-template-columns:.91fr .91fr 1.18fr !important;}

body[data-ui-mode="client"] .client-practice-page .practice-subtabs-row{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
  align-items:stretch !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-subtabs-row.single{
  grid-template-columns:1fr !important;
  max-width:60% !important;
  margin:0 auto !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-subtabs-row:not(.single):has(>button:nth-child(1).active){grid-template-columns:1.22fr .88fr !important;}
body[data-ui-mode="client"] .client-practice-page .practice-subtabs-row:not(.single):has(>button:nth-child(2).active){grid-template-columns:.88fr 1.22fr !important;}

body[data-ui-mode="client"] .client-practice-page .practice-child-tabs{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
  align-items:stretch !important;
  margin-top:12px !important;
  padding-top:12px !important;
  position:relative !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-child-tabs::before{
  content:"";
  position:absolute;
  top:0; left:50%; transform:translateX(-50%);
  width:68px; height:1px;
  background:linear-gradient(90deg,rgba(214,181,91,0) 0%, rgba(214,181,91,.82) 50%, rgba(214,181,91,0) 100%);
}
body[data-ui-mode="client"] .client-practice-page .practice-level-arrow.sub-level{
  position:relative !important;
  margin:8px auto 0 !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-level-arrow.sub-level::after{
  content:"";
  position:absolute;
  left:50%; transform:translateX(-50%);
  top:100%;
  width:1px; height:14px;
  background:linear-gradient(180deg,rgba(214,181,91,.92) 0%,rgba(214,181,91,.25) 100%);
}
body[data-ui-mode="client"] .client-practice-page .practice-child-tabs:has(>button:nth-child(2n-1).active){grid-template-columns:1.14fr .86fr !important;}
body[data-ui-mode="client"] .client-practice-page .practice-child-tabs:has(>button:nth-child(2n).active){grid-template-columns:.86fr 1.14fr !important;}

body[data-ui-mode="client"] .client-practice-page :is(.practice-section-tabs>button,.practice-subtab,.practice-child-tab){
  transition:transform .20s ease, box-shadow .22s ease, background-color .22s ease, color .22s ease !important;
  transform-origin:center center !important;
  animation:none !important;
}
body[data-ui-mode="client"] .client-practice-page :is(.practice-section-tabs>button.active,.practice-subtab.active,.practice-child-tab.active){
  background:#ece500 !important;
  background-image:none !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  transform:scale(1.01) !important;
  box-shadow:0 10px 18px rgba(0,0,0,.14), inset 0 1px 0 rgba(255,255,255,.16) !important;
}
body[data-ui-mode="client"] .client-practice-page :is(.practice-section-tabs>button.active,.practice-subtab.active,.practice-child-tab.active)::after{
  border-top-color:#d8c257 !important;
}
body[data-ui-mode="client"] .client-practice-page :is(.practice-section-tabs>button:not(.active),.practice-subtab:not(.active),.practice-child-tab:not(.active)){
  animation:none !important;
  transform:none !important;
}

/* Graphiques favoris : plus aucune animation visuelle, uniquement vibration JS */
body[data-ui-mode="client"] .featured-metric-switcher *,
body[data-ui-mode="client"] .featured-metric-focus,
body[data-ui-mode="client"] .featured-metric-tabs,
body[data-ui-mode="client"] .featured-metric-tab{
  animation:none !important;
}
body[data-ui-mode="client"] :is(.li-graph-focus-enter,.li-graph-focus-enter-next,.li-graph-focus-enter-prev,.featured-metric-transition-stage,.metric-transition-panel){
  animation:none !important;
  transition:none !important;
}

/* Merci leader + texte blanc */
body[data-ui-mode="client"] .checkin-complete-card :is(h2,p,.section-eyebrow,span,b,strong,small){
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

/* Menu : décaler légèrement le texte du logo */
body[data-ui-mode="client"] .mobile-nav-motto{
  transform:translateX(7px) !important;
  letter-spacing:.18em !important;
}


/* V2.15 — menu espacé + pratiques avec rotation fonctionnelle et dégradé */
body[data-ui-mode="client"] .mainnav{
  padding-bottom:18px !important;
}
body[data-ui-mode="client"] .mobile-nav-motto{
  margin-top:12px !important;
  transform:translateX(7px) !important;
  letter-spacing:.2em !important;
}

/* Pratiques : réactiver le dégradé premium et la rotation sélectionnée, avec poussée du voisin */
body[data-ui-mode="client"] .client-practice-page :is(.practice-section-tabs,.practice-subtabs-row,.practice-child-tabs){
  transition:grid-template-columns .34s cubic-bezier(.22,.82,.24,1), gap .26s ease !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-section-tabs:has(>button:nth-child(1).active){grid-template-columns:1.28fr .86fr .86fr !important;}
body[data-ui-mode="client"] .client-practice-page .practice-section-tabs:has(>button:nth-child(2).active){grid-template-columns:.86fr 1.28fr .86fr !important;}
body[data-ui-mode="client"] .client-practice-page .practice-section-tabs:has(>button:nth-child(3).active){grid-template-columns:.86fr .86fr 1.28fr !important;}
body[data-ui-mode="client"] .client-practice-page .practice-subtabs-row:not(.single):has(>button:nth-child(1).active){grid-template-columns:1.28fr .86fr !important;}
body[data-ui-mode="client"] .client-practice-page .practice-subtabs-row:not(.single):has(>button:nth-child(2).active){grid-template-columns:.86fr 1.28fr !important;}
body[data-ui-mode="client"] .client-practice-page .practice-child-tabs:has(>button:nth-child(2n-1).active){grid-template-columns:1.18fr .82fr !important;}
body[data-ui-mode="client"] .client-practice-page .practice-child-tabs:has(>button:nth-child(2n).active){grid-template-columns:.82fr 1.18fr !important;}

body[data-ui-mode="client"] .client-practice-page :is(.practice-section-tabs>button,.practice-subtab,.practice-child-tab){
  transition:
    transform .38s cubic-bezier(.22,.82,.24,1),
    box-shadow .32s cubic-bezier(.22,.82,.24,1),
    filter .32s cubic-bezier(.22,.82,.24,1),
    background .28s ease,
    background-image .28s ease,
    color .24s ease !important;
  transform-origin:center top !important;
  backface-visibility:hidden !important;
  will-change:transform, filter !important;
}
body[data-ui-mode="client"] .client-practice-page :is(.practice-section-tabs>button.active,.practice-subtab.active,.practice-child-tab.active){
  background:
    linear-gradient(180deg,rgba(255,255,255,.10) 0%,rgba(255,255,255,0) 24%),
    var(--li-selected-black-yellow) !important;
  background-image:
    linear-gradient(180deg,rgba(255,255,255,.10) 0%,rgba(255,255,255,0) 24%),
    var(--li-selected-black-yellow) !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  transform:perspective(960px) rotateX(0deg) scale(1.035) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.20),
    0 14px 28px rgba(0,0,0,.18),
    0 0 0 1px rgba(0,0,0,.18) !important;
  animation:liPracticeSelectFlipV215 .42s cubic-bezier(.22,.85,.22,1) both !important;
  z-index:2 !important;
}
body[data-ui-mode="client"] .client-practice-page :is(.practice-section-tabs>button.active,.practice-subtab.active,.practice-child-tab.active) :is(span,b,strong,small){
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
}
body[data-ui-mode="client"] .client-practice-page :is(.practice-section-tabs>button:not(.active),.practice-subtab:not(.active),.practice-child-tab:not(.active)){
  animation:none !important;
  transform:perspective(960px) rotateX(0deg) scale(1) !important;
  filter:none !important;
}
@keyframes liPracticeSelectFlipV215{
  0%{
    transform:perspective(960px) rotateX(-16deg) translateY(-7px) scale(.92);
    filter:saturate(.78) brightness(.92);
  }
  55%{
    transform:perspective(960px) rotateX(7deg) translateY(0) scale(1.055);
    filter:saturate(1.08) brightness(1.03);
  }
  100%{
    transform:perspective(960px) rotateX(0deg) translateY(0) scale(1.035);
    filter:saturate(1) brightness(1);
  }
}


/* V2.16 — plus d'espace entre l'icône du menu et le nom */
@media(max-width:760px){
  body[data-ui-mode="client"] .mainnav > button{
    gap:11px !important;
    padding-top:10px !important;
    padding-bottom:12px !important;
  }
  body[data-ui-mode="client"] .mainnav > button .nav-ico{
    margin-bottom:2px !important;
  }
  body[data-ui-mode="client"] .mainnav > button .nav-label{
    margin-top:4px !important;
    line-height:1.02 !important;
  }
}
@media(max-width:390px){
  body[data-ui-mode="client"] .mainnav > button{
    gap:10px !important;
    padding-top:9px !important;
    padding-bottom:11px !important;
  }
  body[data-ui-mode="client"] .mainnav > button .nav-label{
    margin-top:3px !important;
  }
}

/* V2.17 — menu fixe, Mes acquis et Ressources */
@media(max-width:760px){
  body[data-ui-mode="client"]{padding-bottom:calc(178px + env(safe-area-inset-bottom)) !important;}
  body[data-ui-mode="client"] main{padding-bottom:calc(190px + env(safe-area-inset-bottom)) !important;}
  body[data-ui-mode="client"] .mainnav[data-mode="client"]{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    grid-template-rows:auto auto !important;
    column-gap:7px !important;row-gap:9px !important;
    padding:9px 9px calc(9px + env(safe-area-inset-bottom)) !important;
    align-items:center !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button{min-height:61px !important;width:100% !important;padding:7px 3px 8px !important;}
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button[data-page="calendar"]{grid-column:1;grid-row:1;}
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button[data-page="music"]{grid-column:2;grid-row:1;}
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button[data-page="practice"]{grid-column:3;grid-row:1;}
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button[data-page="acquired"]{grid-column:4;grid-row:1;}
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button[data-page="metrics"]{grid-column:1;grid-row:2;}
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button[data-page="resources"]{grid-column:4;grid-row:2;}
  body[data-ui-mode="client"] .mainnav[data-mode="client"] .mobile-nav-motto{
    grid-column:2 / 4 !important;grid-row:2 !important;align-self:center !important;justify-self:center !important;
    position:static !important;margin:0 !important;transform:none !important;padding:0 4px !important;
    white-space:nowrap !important;font-size:10px !important;letter-spacing:.17em !important;
  }
}
@media(max-width:390px){
  body[data-ui-mode="client"] .mainnav[data-mode="client"]{column-gap:5px !important;row-gap:8px !important;padding-left:6px !important;padding-right:6px !important;}
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button{font-size:6.8px !important;min-height:58px !important;}
  body[data-ui-mode="client"] .mainnav[data-mode="client"] .mobile-nav-motto{font-size:8.8px !important;letter-spacing:.14em !important;}
}
body[data-ui-mode="client"] .acquired-empty-state,
body[data-ui-mode="client"] .resource-empty-state{display:grid !important;gap:7px !important;text-align:center !important;padding:28px 18px !important;}
body[data-ui-mode="client"] :is(.acquired-empty-state,.resource-empty-state) b{font-family:'Cinzel',Georgia,serif !important;font-size:18px !important;}
body[data-ui-mode="client"] :is(.acquired-empty-state,.resource-empty-state) span{font-size:12px !important;line-height:1.55 !important;}
body[data-ui-mode="client"] .client-resource-list{display:grid;gap:11px;max-width:820px;margin:0 auto;}
body[data-ui-mode="client"] .client-resource-card{
  appearance:none;width:100%;display:grid;grid-template-columns:52px 1fr 20px;gap:12px;align-items:center;
  padding:13px 14px;border-radius:16px;border:1px solid rgba(214,181,91,.28);
  background:linear-gradient(180deg,#17181c 0%,#0d0f13 100%);color:#fff;text-align:left;
  box-shadow:0 10px 24px rgba(0,0,0,.10);cursor:pointer;
}
body[data-ui-mode="client"] .client-resource-icon{width:48px;height:48px;border-radius:13px;display:grid;place-items:center;background:#ece500;color:#0b0b0b;font:800 12px 'Montserrat',Arial,sans-serif;}
body[data-ui-mode="client"] .client-resource-copy small,
body[data-ui-mode="client"] .client-resource-copy b,
body[data-ui-mode="client"] .client-resource-copy em{display:block;}
body[data-ui-mode="client"] .client-resource-copy small{color:#d6b55b !important;-webkit-text-fill-color:#d6b55b !important;font-size:8px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;}
body[data-ui-mode="client"] .client-resource-copy b{color:#fff !important;-webkit-text-fill-color:#fff !important;font-size:13px;margin-top:3px;}
body[data-ui-mode="client"] .client-resource-copy em{color:#c7c7c2 !important;-webkit-text-fill-color:#c7c7c2 !important;font-style:normal;font-size:9.5px;line-height:1.4;margin-top:4px;}
body[data-ui-mode="client"] .client-resource-card > strong{color:#d6b55b !important;font-size:24px;}
.resource-release-note{margin:8px 0 14px;padding:10px 12px;border-radius:10px;background:#f4f4ef;border-left:3px solid var(--yellow);color:#555;font-size:9px;line-height:1.45;}


/* V2.18 — menu client 5 onglets + contenus fusionnés */
@media(max-width:760px){
  body[data-ui-mode="client"]{padding-bottom:calc(102px + env(safe-area-inset-bottom)) !important;}
  body[data-ui-mode="client"] main{padding-bottom:calc(118px + env(safe-area-inset-bottom)) !important;}
  body[data-ui-mode="client"] .mainnav[data-mode="client"]{
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    grid-template-rows:auto !important;
    gap:7px !important;
    padding:8px 8px calc(9px + env(safe-area-inset-bottom)) !important;
    align-items:stretch !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button{
    min-height:70px !important;
    width:100% !important;
    padding:8px 2px 9px !important;
    gap:2px !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button .nav-ico{
    width:24px !important;height:24px !important;font-size:14px !important;margin-bottom:0 !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button .nav-label{
    font-size:7px !important;line-height:1.05 !important;letter-spacing:0 !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] .mobile-nav-motto{display:none !important;}
}
@media(max-width:390px){
  body[data-ui-mode="client"] .mainnav[data-mode="client"]{gap:5px !important;padding-left:6px !important;padding-right:6px !important;}
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button{min-height:66px !important;padding-left:1px !important;padding-right:1px !important;}
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button .nav-label{font-size:6.4px !important;}
}
body[data-ui-mode="client"] .contents-main-tabs{
  display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:780px;margin:0 auto 14px;
}
body[data-ui-mode="client"] .contents-main-tabs button{
  min-height:50px;border-radius:15px;border:1px solid rgba(214,181,91,.22);
  background:linear-gradient(180deg,#17181c 0%,#0f1114 100%);color:#f3f3ef;font:800 11px 'Montserrat',Arial,sans-serif;
  letter-spacing:.03em;text-transform:none;
}
body[data-ui-mode="client"] .contents-main-tabs button.active,
body[data-ui-mode="client"] .contents-main-tabs button.li-selected{
  background:linear-gradient(180deg,#fdf29a 0%,#e8e500 100%);color:#171815;border-color:#d4bf31;
}
body[data-ui-mode="client"] .client-contents-page .pillar-tabs{margin-top:6px;}
body[data-ui-mode="client"] .client-contents-page .page-intro{max-width:720px;margin-left:auto;margin-right:auto;}


/* V2.19 — démarrage réel du mentorat / écran première connexion */
.li-start-welcome{
  position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:28px;
  background:
    radial-gradient(circle at 50% 18%,rgba(238,232,0,.16),transparent 30%),
    linear-gradient(180deg,#1d1f23 0%,#090a0d 100%);
  color:#fff;text-align:center;opacity:1;transition:opacity .6s ease,transform .6s ease;
}
.li-start-welcome.is-leaving{opacity:0;transform:scale(1.025);pointer-events:none}
.li-start-welcome-inner{max-width:620px;animation:liWelcomeRise .85s cubic-bezier(.2,.75,.25,1) both}
.li-start-welcome img{width:112px;max-height:92px;object-fit:contain;filter:drop-shadow(0 10px 24px rgba(0,0,0,.35));margin-bottom:18px}
.li-start-kicker{font:800 13px 'Montserrat',Arial,sans-serif;letter-spacing:.2em;color:#e7df37;margin-bottom:10px}
.li-start-welcome h1{font:700 clamp(30px,8vw,58px)/1.05 'Cinzel',Georgia,serif;margin:0;color:#fff;letter-spacing:.015em}
.li-start-welcome p{font:600 14px 'Montserrat',Arial,sans-serif;color:#d3d3ce;margin:20px 0 14px}
.li-start-welcome strong{font:900 13px 'Montserrat',Arial,sans-serif;letter-spacing:.24em;color:#efe700}
@keyframes liWelcomeRise{from{opacity:0;transform:translateY(16px) scale(.985)}to{opacity:1;transform:none}}


/* V2.20 — Chrome : dégradé menu forcé + ordre 5 onglets + devise dessous + pratiques sans rotation */
@media(max-width:760px){
  body[data-ui-mode="client"]{
    padding-bottom:calc(120px + env(safe-area-inset-bottom)) !important;
  }
  body[data-ui-mode="client"] main{
    padding-bottom:calc(136px + env(safe-area-inset-bottom)) !important;
  }

  /* Une seule ligne de 5 onglets, ordre verrouillé. */
  body[data-ui-mode="client"] .mainnav[data-mode="client"]{
    display:grid !important;
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    grid-template-rows:minmax(66px,auto) 18px !important;
    column-gap:7px !important;
    row-gap:3px !important;
    padding:7px 8px calc(7px + env(safe-area-inset-bottom)) !important;
    align-items:stretch !important;
    overflow:visible !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button[data-page="calendar"]{grid-column:1 !important;grid-row:1 !important;}
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button[data-page="metrics"]{grid-column:2 !important;grid-row:1 !important;}
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button[data-page="music"]{grid-column:3 !important;grid-row:1 !important;}
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button[data-page="practice"]{grid-column:4 !important;grid-row:1 !important;}
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button[data-page="contents"]{grid-column:5 !important;grid-row:1 !important;}

  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button{
    min-width:0 !important;
    min-height:66px !important;
    padding:7px 2px 8px !important;
    gap:2px !important;
    position:relative !important;
    isolation:isolate !important;
    overflow:hidden !important;
    -webkit-appearance:none !important;
    appearance:none !important;
    background:#151619 !important;
    background-image:none !important;
  }

  /* FORCE le dégradé dans Chrome via un calque indépendant du background du bouton. */
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button::before{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    border-radius:inherit !important;
    background-color:#ece700 !important;
    background-image:linear-gradient(180deg,
      #11120f 0%,
      #3f3d0e 13%,
      #7b7610 24%,
      #b6af12 38%,
      #d7d10c 52%,
      #ece700 73%,
      #fff25c 100%) !important;
    opacity:0 !important;
    pointer-events:none !important;
    z-index:0 !important;
    transform:none !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.active::before,
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.li-selected::before{
    opacity:1 !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.active,
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.li-selected{
    background-color:#ece700 !important;
    background-image:linear-gradient(180deg,#11120f 0%,#59550e 18%,#b1aa12 40%,#e0da05 62%,#fff25c 100%) !important;
    border-color:rgba(214,181,91,.95) !important;
    box-shadow:0 10px 22px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.20) !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button > .nav-ico,
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button > .nav-label{
    position:relative !important;
    z-index:1 !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.active :is(.nav-label,.nav-ico),
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.li-selected :is(.nav-label,.nav-ico){
    color:#090909 !important;
    -webkit-text-fill-color:#090909 !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.active svg *,
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.li-selected svg *{
    stroke:#090909 !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.active svg polygon,
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.li-selected svg polygon{
    fill:#090909 !important;
  }

  /* Devise de nouveau visible sous les 5 onglets. */
  body[data-ui-mode="client"] .mainnav[data-mode="client"] .mobile-nav-motto{
    display:block !important;
    grid-column:1 / -1 !important;
    grid-row:2 !important;
    position:static !important;
    align-self:center !important;
    justify-self:center !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
    white-space:nowrap !important;
    color:#efe700 !important;
    -webkit-text-fill-color:#efe700 !important;
    font-size:9px !important;
    line-height:1 !important;
    font-weight:900 !important;
    letter-spacing:.20em !important;
    text-shadow:0 1px 0 rgba(0,0,0,.55) !important;
  }
}

@media(max-width:390px){
  body[data-ui-mode="client"] .mainnav[data-mode="client"]{
    column-gap:5px !important;
    padding-left:6px !important;
    padding-right:6px !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button{
    min-height:63px !important;
    padding-left:1px !important;
    padding-right:1px !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] .mobile-nav-motto{
    font-size:8.2px !important;
    letter-spacing:.17em !important;
  }
}

/* Pratiques : suppression totale de la rotation/flip. On conserve uniquement le focus + agrandissement/poussée. */
body[data-ui-mode="client"] .client-practice-page :is(
  .practice-section-tabs > button,
  .practice-subtab,
  .practice-child-tab
){
  animation:none !important;
  transform:none !important;
  filter:none !important;
  transform-origin:center center !important;
  transition:background .24s ease,background-image .24s ease,color .20s ease,box-shadow .24s ease,transform .22s ease !important;
}
body[data-ui-mode="client"] .client-practice-page :is(
  .practice-section-tabs > button.active,
  .practice-subtab.active,
  .practice-child-tab.active
){
  animation:none !important;
  transform:scale(1.03) !important;
  filter:none !important;
}
body[data-ui-mode="client"] .client-practice-page :is(
  .practice-section-tabs > button:not(.active),
  .practice-subtab:not(.active),
  .practice-child-tab:not(.active)
){
  animation:none !important;
  transform:none !important;
  filter:none !important;
}


/* V2.21 — Contenus harmonisé avec Pratiques, sans faux changement de page */
body[data-ui-mode="client"] .client-contents-page{
  background:transparent !important;
}
body[data-ui-mode="client"] .client-contents-page .page-title{
  color:#d6b55b !important;
  -webkit-text-fill-color:#d6b55b !important;
  text-shadow:0 1px 0 rgba(0,0,0,.65) !important;
}
body[data-ui-mode="client"] .client-contents-page .page-intro{
  color:#262622 !important;
  -webkit-text-fill-color:#262622 !important;
  text-shadow:0 1px 0 rgba(255,255,255,.55) !important;
  max-width:720px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
body[data-ui-mode="client"] .client-contents-page .contents-page-heading{
  animation:none !important;
  transform:none !important;
  opacity:1 !important;
}
body[data-ui-mode="client"] .contents-dynamic-root{
  overflow:visible !important;
}

/* Deux sous-onglets : même langage que Pratiques */
body[data-ui-mode="client"] .contents-main-tabs{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:10px !important;
  width:100% !important;
  max-width:780px !important;
  margin:14px auto 0 !important;
  align-items:stretch !important;
  transition:grid-template-columns .30s cubic-bezier(.22,.82,.24,1), gap .24s ease !important;
}
body[data-ui-mode="client"] .contents-main-tabs:has(>button:nth-child(1).active){
  grid-template-columns:1.22fr .88fr !important;
}
body[data-ui-mode="client"] .contents-main-tabs:has(>button:nth-child(2).active){
  grid-template-columns:.88fr 1.22fr !important;
}
body[data-ui-mode="client"] .contents-main-tabs > button{
  min-width:0 !important;
  width:100% !important;
  min-height:58px !important;
  padding:9px 10px !important;
  border-radius:14px !important;
  border:1px solid rgba(214,181,91,.34) !important;
  background:linear-gradient(180deg,#17181c 0%,#0c0e11 100%) !important;
  background-image:linear-gradient(180deg,#17181c 0%,#0c0e11 100%) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font:850 12px 'Montserrat',Arial,sans-serif !important;
  text-align:center !important;
  position:relative !important;
  animation:none !important;
  transform:none !important;
  filter:none !important;
  transition:background .24s ease,background-image .24s ease,color .20s ease,box-shadow .24s ease,transform .22s ease !important;
}
body[data-ui-mode="client"] .contents-main-tabs > button.active,
body[data-ui-mode="client"] .contents-main-tabs > button.li-selected{
  background-color:#e8e500 !important;
  background-image:url('/yellow-gradient-v192.png') !important;
  background-size:100% 100% !important;
  background-position:center !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  border:1px solid #090909 !important;
  text-shadow:none !important;
  transform:scale(1.03) !important;
  box-shadow:0 10px 18px rgba(0,0,0,.14), inset 0 1px 0 rgba(255,255,255,.16) !important;
}
body[data-ui-mode="client"] .contents-main-tabs > button:not(.active){
  transform:none !important;
  animation:none !important;
  filter:none !important;
}

/* Flèche / séparation identique à la hiérarchie Pratiques */
body[data-ui-mode="client"] .contents-level-arrow{
  height:20px !important;
  position:relative !important;
  margin:0 auto 3px !important;
}
body[data-ui-mode="client"] .contents-level-arrow::before{
  content:"";
  position:absolute;
  left:50%;
  top:1px;
  transform:translateX(-50%);
  width:0;height:0;
  border-left:8px solid transparent;
  border-right:8px solid transparent;
  border-top:8px solid #d6b55b;
}
body[data-ui-mode="client"] .contents-level-arrow::after{
  content:"";
  position:absolute;
  left:50%;
  top:10px;
  transform:translateX(-50%);
  width:68px;
  height:1px;
  background:linear-gradient(90deg,rgba(214,181,91,0),rgba(214,181,91,.82),rgba(214,181,91,0));
}
body[data-ui-mode="client"] .contents-panel-shell{
  margin-top:5px !important;
  animation:none !important;
  transform:none !important;
  opacity:1 !important;
}

/* Sous-choix M.A.S / F.D.I harmonisés au même système visuel */
body[data-ui-mode="client"] .client-contents-page .pillar-tabs{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:10px !important;
  max-width:780px !important;
  margin:4px auto 14px !important;
  transition:grid-template-columns .28s cubic-bezier(.22,.82,.24,1) !important;
}
body[data-ui-mode="client"] .client-contents-page .pillar-tabs:has(>button:nth-child(1).active){grid-template-columns:1.16fr .84fr !important;}
body[data-ui-mode="client"] .client-contents-page .pillar-tabs:has(>button:nth-child(2).active){grid-template-columns:.84fr 1.16fr !important;}
body[data-ui-mode="client"] .client-contents-page .pillar-tabs > button{
  min-height:50px !important;
  border-radius:13px !important;
  background:linear-gradient(180deg,#17181c 0%,#0c0e11 100%) !important;
  background-image:linear-gradient(180deg,#17181c 0%,#0c0e11 100%) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border:1px solid rgba(214,181,91,.30) !important;
  animation:none !important;
  transform:none !important;
  transition:background .22s ease,background-image .22s ease,color .18s ease,transform .20s ease !important;
}
body[data-ui-mode="client"] .client-contents-page .pillar-tabs > button.active,
body[data-ui-mode="client"] .client-contents-page .pillar-tabs > button.li-selected{
  background-color:#e8e500 !important;
  background-image:url('/yellow-gradient-v192.png') !important;
  background-size:100% 100% !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  border:1px solid #090909 !important;
  transform:scale(1.025) !important;
}

/* Toutes les interactions internes Contenus restent locales : aucun effet d'entrée de page. */
body[data-ui-mode="client"] .client-contents-page :is(
  .contents-dynamic-root,
  .contents-panel-shell,
  .contents-main-tabs,
  .contents-main-tabs > button,
  .pillar-tabs,
  .pillar-tabs > button,
  .acquired-content-list,
  .client-resource-list
){
  animation-name:none !important;
}


/* V2.22 — Contenus : hub puis deux vraies sous-pages internes */
body[data-ui-mode="client"] .contents-dynamic-root{
  width:100% !important;
  min-height:280px !important;
  transform-origin:center center !important;
}
body[data-ui-mode="client"] .contents-hub-page .contents-page-heading,
body[data-ui-mode="client"] .contents-subpage-heading{
  animation:none !important;
  opacity:1 !important;
  transform:none !important;
}

/* Page d'entrée Contenus : deux choix simples, comme les univers de Pratiques */
body[data-ui-mode="client"] .contents-hub-grid{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:12px !important;
  width:100% !important;
  max-width:780px !important;
  margin:18px auto 0 !important;
}
body[data-ui-mode="client"] .contents-hub-card{
  min-width:0 !important;
  min-height:112px !important;
  display:grid !important;
  grid-template-columns:42px 1fr 18px !important;
  gap:10px !important;
  align-items:center !important;
  padding:14px 12px !important;
  border-radius:16px !important;
  border:1px solid rgba(214,181,91,.34) !important;
  background:linear-gradient(180deg,#1b1c20 0%,#0d0f12 100%) !important;
  background-image:linear-gradient(180deg,#1b1c20 0%,#0d0f12 100%) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  text-align:left !important;
  box-shadow:0 10px 24px rgba(0,0,0,.10) !important;
  cursor:pointer !important;
  animation:none !important;
  transform:none !important;
  transition:transform .18s ease,box-shadow .20s ease,border-color .20s ease !important;
}
body[data-ui-mode="client"] .contents-hub-card:active{
  transform:translateY(1px) scale(.99) !important;
  background-color:#e8e500 !important;
  background-image:url('/yellow-gradient-v192.png') !important;
  background-size:100% 100% !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
}
body[data-ui-mode="client"] .contents-hub-icon{
  width:40px !important;height:40px !important;border-radius:12px !important;
  display:grid !important;place-items:center !important;
  background:#d6b55b !important;color:#111 !important;-webkit-text-fill-color:#111 !important;
  font-weight:900 !important;font-size:16px !important;
}
body[data-ui-mode="client"] .contents-hub-copy{display:block !important;min-width:0 !important;}
body[data-ui-mode="client"] .contents-hub-copy b{
  display:block !important;color:#fff !important;-webkit-text-fill-color:#fff !important;
  font:800 13px 'Montserrat',Arial,sans-serif !important;margin-bottom:5px !important;
}
body[data-ui-mode="client"] .contents-hub-copy small{
  display:block !important;color:#c9c9c4 !important;-webkit-text-fill-color:#c9c9c4 !important;
  font:600 9px/1.42 'Montserrat',Arial,sans-serif !important;
}
body[data-ui-mode="client"] .contents-hub-card>strong{
  color:#d6b55b !important;-webkit-text-fill-color:#d6b55b !important;font-size:22px !important;
}
body[data-ui-mode="client"] .contents-hub-card:active :is(.contents-hub-copy b,.contents-hub-copy small,.contents-hub-card>strong){
  color:#090909 !important;-webkit-text-fill-color:#090909 !important;
}

/* Sous-pages Mes acquis / Ressources */
body[data-ui-mode="client"] .contents-subpage{
  position:relative !important;
  padding-top:2px !important;
}
body[data-ui-mode="client"] .contents-back-btn{
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  margin:0 0 10px 0 !important;
  padding:8px 12px !important;
  border-radius:12px !important;
  border:1px solid rgba(214,181,91,.34) !important;
  background:linear-gradient(180deg,#1b1c20 0%,#0d0f12 100%) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font:800 10px 'Montserrat',Arial,sans-serif !important;
  letter-spacing:.025em !important;
  box-shadow:0 7px 16px rgba(0,0,0,.09) !important;
}
body[data-ui-mode="client"] .contents-back-btn span{
  color:#fff !important;-webkit-text-fill-color:#fff !important;font-size:20px !important;line-height:.8 !important;
}
body[data-ui-mode="client"] .contents-subpage-heading{
  margin-top:2px !important;
  margin-bottom:14px !important;
}
body[data-ui-mode="client"] .contents-subpage-heading .page-title{
  color:#d6b55b !important;-webkit-text-fill-color:#d6b55b !important;
  text-shadow:0 1px 0 rgba(0,0,0,.65) !important;
}
body[data-ui-mode="client"] .contents-subpage-heading .page-intro{
  color:#262622 !important;-webkit-text-fill-color:#262622 !important;
}
body[data-ui-mode="client"] .contents-subpage-body{
  margin-top:4px !important;
}

/* Transition interne uniquement : le menu et la page racine ne rejouent jamais */
@keyframes liContentsEnterNext{
  from{opacity:.20;transform:translateX(14px)}
  to{opacity:1;transform:translateX(0)}
}
@keyframes liContentsEnterPrev{
  from{opacity:.20;transform:translateX(-14px)}
  to{opacity:1;transform:translateX(0)}
}
body[data-ui-mode="client"] .contents-local-exit-next{
  opacity:.30 !important;transform:translateX(-10px) !important;transition:opacity .12s ease,transform .12s ease !important;
}
body[data-ui-mode="client"] .contents-local-exit-prev{
  opacity:.30 !important;transform:translateX(10px) !important;transition:opacity .12s ease,transform .12s ease !important;
}
body[data-ui-mode="client"] .contents-local-enter-next{
  animation:liContentsEnterNext .24s cubic-bezier(.22,.75,.28,1) both !important;
}
body[data-ui-mode="client"] .contents-local-enter-prev{
  animation:liContentsEnterPrev .24s cubic-bezier(.22,.75,.28,1) both !important;
}

@media(max-width:520px){
  body[data-ui-mode="client"] .contents-hub-grid{grid-template-columns:1fr !important;gap:10px !important;}
  body[data-ui-mode="client"] .contents-hub-card{min-height:92px !important;}
}


/* V2.23 — finition menu + dégradés actifs forcés pour Chrome */
:root{
  --li-chrome-selected-gradient:linear-gradient(180deg,#11120f 0%,#5d5910 16%,#a49e12 34%,#d2cb0b 52%,#ece600 73%,#fff25c 100%);
}

/* FORCE & HONNEUR parfaitement centré dans la bande située entre les boutons et le bas du menu. */
@media(max-width:760px){
  body[data-ui-mode="client"] .mainnav[data-mode="client"]{
    grid-template-rows:64px 24px !important;
    row-gap:0 !important;
    padding-top:7px !important;
    padding-bottom:calc(env(safe-area-inset-bottom) + 0px) !important;
    align-items:stretch !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button{
    min-height:64px !important;
    height:64px !important;
    align-self:stretch !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] .mobile-nav-motto{
    display:grid !important;
    place-items:center !important;
    align-self:stretch !important;
    justify-self:stretch !important;
    height:24px !important;
    min-height:24px !important;
    margin:0 !important;
    padding:0 !important;
    line-height:24px !important;
    transform:none !important;
  }
}
@media(max-width:390px){
  body[data-ui-mode="client"] .mainnav[data-mode="client"]{
    grid-template-rows:62px 23px !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button{
    min-height:62px !important;
    height:62px !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] .mobile-nav-motto{
    height:23px !important;
    min-height:23px !important;
    line-height:23px !important;
  }
}

/*
  Chrome : double verrouillage du dégradé sélectionné.
  Le background est posé sur le bouton ET sur un calque ::before afin qu'aucune ancienne règle
  background-image:url(...) / background-color ne puisse l'écraser visuellement.
*/
body[data-ui-mode="client"] :is(
  .featured-metric-tab.active,
  .featured-metric-tab.li-selected,
  .client-practice-page .practice-section-tabs > button.active,
  .client-practice-page .practice-section-tabs > button.li-selected,
  .client-practice-page .practice-subtab.active,
  .client-practice-page .practice-subtab.li-selected,
  .client-practice-page .practice-child-tab.active,
  .client-practice-page .practice-child-tab.li-selected,
  .client-contents-page .contents-main-tabs > button.active,
  .client-contents-page .contents-main-tabs > button.li-selected,
  .client-contents-page .pillar-tabs > button.active,
  .client-contents-page .pillar-tabs > button.li-selected,
  .contents-subpage .pillar-tabs > button.active,
  .contents-subpage .pillar-tabs > button.li-selected,
  .contents-hub-card.li-selected
){
  position:relative !important;
  isolation:isolate !important;
  background-color:#e9e400 !important;
  background:var(--li-chrome-selected-gradient) !important;
  background-image:var(--li-chrome-selected-gradient) !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  border-color:rgba(17,17,14,.94) !important;
  text-shadow:none !important;
  box-shadow:0 10px 22px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.24) !important;
}
body[data-ui-mode="client"] :is(
  .featured-metric-tab.active,
  .featured-metric-tab.li-selected,
  .client-practice-page .practice-section-tabs > button.active,
  .client-practice-page .practice-section-tabs > button.li-selected,
  .client-practice-page .practice-subtab.active,
  .client-practice-page .practice-subtab.li-selected,
  .client-practice-page .practice-child-tab.active,
  .client-practice-page .practice-child-tab.li-selected,
  .client-contents-page .contents-main-tabs > button.active,
  .client-contents-page .contents-main-tabs > button.li-selected,
  .client-contents-page .pillar-tabs > button.active,
  .client-contents-page .pillar-tabs > button.li-selected,
  .contents-subpage .pillar-tabs > button.active,
  .contents-subpage .pillar-tabs > button.li-selected,
  .contents-hub-card.li-selected
)::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  border-radius:inherit !important;
  pointer-events:none !important;
  z-index:0 !important;
  opacity:1 !important;
  background:var(--li-chrome-selected-gradient) !important;
  background-image:var(--li-chrome-selected-gradient) !important;
}
body[data-ui-mode="client"] :is(
  .featured-metric-tab.active,
  .featured-metric-tab.li-selected,
  .client-practice-page .practice-section-tabs > button.active,
  .client-practice-page .practice-section-tabs > button.li-selected,
  .client-practice-page .practice-subtab.active,
  .client-practice-page .practice-subtab.li-selected,
  .client-practice-page .practice-child-tab.active,
  .client-practice-page .practice-child-tab.li-selected,
  .client-contents-page .contents-main-tabs > button.active,
  .client-contents-page .contents-main-tabs > button.li-selected,
  .client-contents-page .pillar-tabs > button.active,
  .client-contents-page .pillar-tabs > button.li-selected,
  .contents-subpage .pillar-tabs > button.active,
  .contents-subpage .pillar-tabs > button.li-selected,
  .contents-hub-card.li-selected
) > *{
  position:relative !important;
  z-index:1 !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
}

/* Pour les boutons dont le libellé est un noeud texte direct, le texte reste peint après ::before.
   On force également les icônes/SVG en noir. */
body[data-ui-mode="client"] :is(
  .featured-metric-tab.active,
  .featured-metric-tab.li-selected,
  .client-practice-page .practice-section-tabs > button.active,
  .client-practice-page .practice-subtab.active,
  .client-practice-page .practice-child-tab.active,
  .client-contents-page .contents-main-tabs > button.active,
  .client-contents-page .pillar-tabs > button.active,
  .contents-subpage .pillar-tabs > button.active
) :is(svg,svg *,span,b,strong,small){
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  stroke:#090909 !important;
}


/* V2.24 — contenus plus lisibles + menu légèrement agrandi */
/* Contenus : icônes jaunes et tous les textes de cartes en blanc. */
body[data-ui-mode="client"] .contents-hub-card .contents-hub-icon{
  background:rgba(236,230,0,.08) !important;
  border:1px solid rgba(236,230,0,.62) !important;
  color:#ece600 !important;
  -webkit-text-fill-color:#ece600 !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.03) !important;
}
body[data-ui-mode="client"] .contents-hub-card .contents-hub-copy b,
body[data-ui-mode="client"] .contents-hub-card .contents-hub-copy small,
body[data-ui-mode="client"] .contents-hub-card > strong{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
body[data-ui-mode="client"] .contents-hub-card > strong{
  color:#ece600 !important;
  -webkit-text-fill-color:#ece600 !important;
}

/* Menu mobile : icônes et textes légèrement plus grands sans casser les 5 colonnes. */
@media(max-width:760px){
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button .nav-ico{
    width:27px !important;
    height:27px !important;
    font-size:15px !important;
    border-radius:9px !important;
    border:1px solid rgba(255,255,255,.10) !important;
    background:rgba(255,255,255,.055) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button .nav-ico svg{
    width:18px !important;
    height:18px !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button .nav-label{
    font-size:7.7px !important;
    line-height:1.04 !important;
    font-weight:800 !important;
  }

  /* L'icône sélectionnée conserve exactement la même capsule arrondie que les autres. */
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.active .nav-ico,
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.li-selected .nav-ico{
    width:27px !important;
    height:27px !important;
    border-radius:9px !important;
    border:1px solid rgba(17,17,14,.32) !important;
    background:rgba(255,255,255,.14) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.22) !important;
    color:#090909 !important;
    -webkit-text-fill-color:#090909 !important;
  }
}
@media(max-width:390px){
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button .nav-ico,
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.active .nav-ico,
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.li-selected .nav-ico{
    width:26px !important;
    height:26px !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button .nav-ico svg{
    width:17px !important;
    height:17px !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button .nav-label{
    font-size:7.1px !important;
  }
}


/* V2.25 — correctifs lisibilité boutons sélectionnés + séparateur sous-sous-menu */
/* Les libellés sont enveloppés dans .btn-label pour rester au-dessus du calque de dégradé Chrome. */
body[data-ui-mode="client"] :is(
  .featured-metric-tab,
  .client-practice-page .practice-section-tabs > button,
  .client-practice-page .practice-subtab,
  .client-practice-page .practice-child-tab
) > .btn-label{
  position:relative !important;
  z-index:2 !important;
  display:inline-block !important;
  width:100% !important;
  color:inherit !important;
  -webkit-text-fill-color:inherit !important;
  text-shadow:inherit !important;
}
body[data-ui-mode="client"] :is(
  .featured-metric-tab.active,
  .featured-metric-tab.li-selected,
  .client-practice-page .practice-section-tabs > button.active,
  .client-practice-page .practice-section-tabs > button.li-selected,
  .client-practice-page .practice-subtab.active,
  .client-practice-page .practice-subtab.li-selected,
  .client-practice-page .practice-child-tab.active,
  .client-practice-page .practice-child-tab.li-selected
){
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  -webkit-text-stroke:0 !important;
  text-shadow:none !important;
}
body[data-ui-mode="client"] :is(
  .featured-metric-tab.active,
  .featured-metric-tab.li-selected,
  .client-practice-page .practice-section-tabs > button.active,
  .client-practice-page .practice-section-tabs > button.li-selected,
  .client-practice-page .practice-subtab.active,
  .client-practice-page .practice-subtab.li-selected,
  .client-practice-page .practice-child-tab.active,
  .client-practice-page .practice-child-tab.li-selected
) > .btn-label{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  -webkit-text-stroke:0 !important;
  text-shadow:none !important;
}

/* Sous-sous-menu : supprimer le trait vertical et garder uniquement un trait horizontal centré sous la flèche, au même niveau. */
body[data-ui-mode="client"] .client-practice-page .practice-child-tabs::before{
  content:none !important;
  display:none !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-level-arrow.sub-level{
  position:relative !important;
  height:14px !important;
  margin:8px auto 0 !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-level-arrow.sub-level::after{
  content:none !important;
  display:none !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-level-arrow.sub-level::before{
  content:"" !important;
  position:absolute !important;
  left:50% !important;
  top:6px !important;
  transform:translateX(-50%) !important;
  width:88px !important;
  height:1px !important;
  background:linear-gradient(90deg,rgba(214,181,91,0) 0%, rgba(214,181,91,.82) 50%, rgba(214,181,91,0) 100%) !important;
}


/* V2.26 — consolidation de tous les correctifs visuels demandés */

/* 1) POINT DU LEADER : dégradé forcé sous Chrome sur le choix sélectionné */
body[data-ui-mode="client"] .daily-checkin-card .mood-choice.active{
  position:relative !important;
  isolation:isolate !important;
  background-color:#ece700 !important;
  background:var(--li-chrome-selected-gradient) !important;
  background-image:var(--li-chrome-selected-gradient) !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  border:1px solid #090909 !important;
  box-shadow:0 8px 16px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.22) !important;
  text-shadow:none !important;
}
body[data-ui-mode="client"] .daily-checkin-card .mood-choice.active::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  border-radius:inherit !important;
  pointer-events:none !important;
  z-index:0 !important;
  background:var(--li-chrome-selected-gradient) !important;
  background-image:var(--li-chrome-selected-gradient) !important;
}
body[data-ui-mode="client"] .daily-checkin-card .mood-choice.active > *{
  position:relative !important;
  z-index:1 !important;
}

/* 2) Validation Point du leader */
body[data-ui-mode="client"] .checkin-complete-card h2{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  font-family:'Cinzel',Georgia,serif !important;
  margin:3px 0 3px !important;
}
body[data-ui-mode="client"] .checkin-complete-card .checkin-saved-small{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  font-family:'Montserrat',Arial,Helvetica,sans-serif !important;
  font-size:9px !important;
  font-weight:500 !important;
  letter-spacing:.03em !important;
  margin:0 0 8px !important;
  text-transform:none !important;
}
body[data-ui-mode="client"] .checkin-complete-card p{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
body[data-ui-mode="client"] .checkin-complete-mark{
  background:#b8ff2c !important;
  color:#0b0b0b !important;
  -webkit-text-fill-color:#0b0b0b !important;
  border:1px solid rgba(112,160,0,.72) !important;
  box-shadow:0 0 0 2px rgba(184,255,44,.10), inset 0 1px 0 rgba(255,255,255,.35) !important;
}

/* 3) Menu : icônes NON sélectionnées sur capsule blanche */
@media(max-width:760px){
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button:not(.active):not(.li-selected) .nav-ico{
    background:#f7f7f7 !important;
    background-image:linear-gradient(180deg,#ffffff 0%,#ececec 100%) !important;
    border:1px solid rgba(20,20,20,.18) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.92),0 2px 5px rgba(0,0,0,.15) !important;
    color:#090909 !important;
    -webkit-text-fill-color:#090909 !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button:not(.active):not(.li-selected) .nav-ico svg,
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button:not(.active):not(.li-selected) .nav-ico svg *{
    stroke:#090909 !important;
    color:#090909 !important;
  }
  /* Force & Honneur mieux centré verticalement entre boutons et bas du menu */
  body[data-ui-mode="client"] .mainnav[data-mode="client"]{
    grid-template-rows:64px 28px !important;
    row-gap:0 !important;
    padding-bottom:calc(env(safe-area-inset-bottom) + 0px) !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] .mobile-nav-motto{
    height:28px !important;
    min-height:28px !important;
    line-height:28px !important;
    display:grid !important;
    place-items:center !important;
    transform:translateY(-1px) !important;
    margin:0 !important;
    padding:0 !important;
  }
}
@media(max-width:390px){
  body[data-ui-mode="client"] .mainnav[data-mode="client"]{
    grid-template-rows:62px 27px !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] .mobile-nav-motto{
    height:27px !important;
    min-height:27px !important;
    line-height:27px !important;
    transform:translateY(-1px) !important;
  }
}

/* 4) Texte noir garanti sur TOUS les boutons sélectionnés avec dégradé Chrome */
body[data-ui-mode="client"] :is(
  .featured-metric-tab.active,
  .featured-metric-tab.li-selected,
  .client-practice-page .practice-section-tabs > button.active,
  .client-practice-page .practice-section-tabs > button.li-selected,
  .client-practice-page .practice-subtab.active,
  .client-practice-page .practice-subtab.li-selected,
  .client-practice-page .practice-child-tab.active,
  .client-practice-page .practice-child-tab.li-selected,
  .client-contents-page .contents-main-tabs > button.active,
  .client-contents-page .contents-main-tabs > button.li-selected,
  .client-contents-page .pillar-tabs > button.active,
  .client-contents-page .pillar-tabs > button.li-selected,
  .contents-subpage .pillar-tabs > button.active,
  .contents-subpage .pillar-tabs > button.li-selected,
  .daily-checkin-card .mood-choice.active
),
body[data-ui-mode="client"] :is(
  .featured-metric-tab.active,
  .featured-metric-tab.li-selected,
  .client-practice-page .practice-section-tabs > button.active,
  .client-practice-page .practice-section-tabs > button.li-selected,
  .client-practice-page .practice-subtab.active,
  .client-practice-page .practice-subtab.li-selected,
  .client-practice-page .practice-child-tab.active,
  .client-practice-page .practice-child-tab.li-selected,
  .client-contents-page .contents-main-tabs > button.active,
  .client-contents-page .contents-main-tabs > button.li-selected,
  .client-contents-page .pillar-tabs > button.active,
  .client-contents-page .pillar-tabs > button.li-selected,
  .contents-subpage .pillar-tabs > button.active,
  .contents-subpage .pillar-tabs > button.li-selected,
  .daily-checkin-card .mood-choice.active
) :is(.btn-label,span,b,strong,small){
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  -webkit-text-stroke:0 !important;
  text-shadow:none !important;
}

/* 5) Sous-sous-menu Pratiques : seulement le trait horizontal sous la flèche */
body[data-ui-mode="client"] .client-practice-page .practice-child-tabs::before,
body[data-ui-mode="client"] .client-practice-page .practice-level-arrow.sub-level::after{
  content:none !important;
  display:none !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-level-arrow.sub-level{
  position:relative !important;
  height:14px !important;
  margin:8px auto 0 !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-level-arrow.sub-level::before{
  content:"" !important;
  position:absolute !important;
  left:50% !important;
  top:6px !important;
  transform:translateX(-50%) !important;
  width:88px !important;
  height:1px !important;
  background:linear-gradient(90deg,rgba(214,181,91,0) 0%,rgba(214,181,91,.82) 50%,rgba(214,181,91,0) 100%) !important;
}

/* V2.27 — transparence forcée des libellés et icônes internes sur les boutons sélectionnés */
/* Supprime les carrés/fonds jaunes derrière les textes de boutons et derrière l'icône du menu sélectionné. */
body[data-ui-mode="client"] :is(
  .featured-metric-tab,
  .client-practice-page .practice-section-tabs > button,
  .client-practice-page .practice-subtab,
  .client-practice-page .practice-child-tab,
  .client-contents-page .contents-main-tabs > button,
  .client-contents-page .pillar-tabs > button,
  .contents-subpage .pillar-tabs > button,
  .daily-checkin-card .mood-choice
) :is(.btn-label, span, b, strong, small){
  background:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
}

/* Boutons sélectionnés : le dégradé doit rester uniquement sur le bouton parent, jamais sur le texte. */
body[data-ui-mode="client"] :is(
  .featured-metric-tab.active,
  .featured-metric-tab.li-selected,
  .client-practice-page .practice-section-tabs > button.active,
  .client-practice-page .practice-section-tabs > button.li-selected,
  .client-practice-page .practice-subtab.active,
  .client-practice-page .practice-subtab.li-selected,
  .client-practice-page .practice-child-tab.active,
  .client-practice-page .practice-child-tab.li-selected,
  .client-contents-page .contents-main-tabs > button.active,
  .client-contents-page .contents-main-tabs > button.li-selected,
  .client-contents-page .pillar-tabs > button.active,
  .client-contents-page .pillar-tabs > button.li-selected,
  .contents-subpage .pillar-tabs > button.active,
  .contents-subpage .pillar-tabs > button.li-selected,
  .daily-checkin-card .mood-choice.active
) :is(.btn-label, span, b, strong, small){
  background:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
  border-color:transparent !important;
}

/* Menu : dans l'onglet sélectionné, la capsule de l'icône redevient totalement transparente. */
@media(max-width:760px){
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.active .nav-ico,
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.li-selected .nav-ico,
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.active .nav-label,
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.li-selected .nav-label,
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.active .nav-ico *,
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.li-selected .nav-ico *{
    background:transparent !important;
    background-image:none !important;
    box-shadow:none !important;
  }
}

/* V2.28 — recentrage visuel du score de discipline */
@media(max-width:760px){
  body[data-ui-mode="client"] .momentum-head{
    align-items:center !important;
  }
  body[data-ui-mode="client"] .momentum-score{
    align-self:center !important;
    margin-top:14px !important;
    margin-bottom:2px !important;
  }
}

/* V2.29 — Point du leader : texte noir visible et fond interne transparent */
body[data-ui-mode="client"] .daily-checkin-card .mood-choice.active{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  text-shadow:none !important;
}
body[data-ui-mode="client"] .daily-checkin-card .mood-choice.active::before{
  content:none !important;
  display:none !important;
}

/* V2.30 — Sous-sous-menu Pratiques : trait horizontal centré face à la pointe */
body[data-ui-mode="client"] .practice-level-arrow.sub-level{
  height:12px !important;
  position:relative !important;
  margin:-2px 0 10px !important;
}
body[data-ui-mode="client"] .practice-level-arrow.sub-level::after{
  content:"" !important;
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  transform:translate(-50%,-50%) !important;
  width:112px !important;
  max-width:36vw !important;
  height:2px !important;
  background:rgba(214,181,91,.55) !important;
  border-radius:999px !important;
  margin:0 !important;
}

/* V2.31 — Mes acquis / Ressources : texte noir visible et fond texte transparent sur les boutons */
body[data-ui-mode="client"] .client-contents-page .pillar-tabs > button > .btn-label{
  position:relative !important;
  z-index:2 !important;
  display:inline-block !important;
  width:100% !important;
  background:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
  color:inherit !important;
  -webkit-text-fill-color:inherit !important;
  -webkit-text-stroke:0 !important;
  text-shadow:none !important;
}
body[data-ui-mode="client"] .client-contents-page .pillar-tabs > button.active,
body[data-ui-mode="client"] .client-contents-page .pillar-tabs > button.li-selected,
body[data-ui-mode="client"] .contents-subpage .pillar-tabs > button.active,
body[data-ui-mode="client"] .contents-subpage .pillar-tabs > button.li-selected{
  position:relative !important;
  isolation:isolate !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
}
body[data-ui-mode="client"] .client-contents-page .pillar-tabs > button.active::before,
body[data-ui-mode="client"] .client-contents-page .pillar-tabs > button.li-selected::before,
body[data-ui-mode="client"] .contents-subpage .pillar-tabs > button.active::before,
body[data-ui-mode="client"] .contents-subpage .pillar-tabs > button.li-selected::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  border-radius:inherit !important;
  background:var(--li-chrome-selected-gradient) !important;
  background-image:var(--li-chrome-selected-gradient) !important;
  z-index:0 !important;
  pointer-events:none !important;
}
body[data-ui-mode="client"] .client-contents-page .pillar-tabs > button.active > .btn-label,
body[data-ui-mode="client"] .client-contents-page .pillar-tabs > button.li-selected > .btn-label,
body[data-ui-mode="client"] .contents-subpage .pillar-tabs > button.active > .btn-label,
body[data-ui-mode="client"] .contents-subpage .pillar-tabs > button.li-selected > .btn-label{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  background:transparent !important;
  background-image:none !important;
  -webkit-text-stroke:0 !important;
  text-shadow:none !important;
}

/* V2.32 — finitions premium consolidées */

/* Bloc scoring : détails et rond bien lisibles */
body[data-ui-mode="client"] .momentum-details > summary,
body[data-ui-mode="client"] .momentum-details > summary *,
body[data-ui-mode="client"] .momentum-details[open] > summary,
body[data-ui-mode="client"] .momentum-details[open] > summary *{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  opacity:1 !important;
  text-shadow:none !important;
}
body[data-ui-mode="client"] .momentum-score,
body[data-ui-mode="client"] .momentum-score small,
body[data-ui-mode="client"] .momentum-score *{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  text-shadow:none !important;
}
body[data-ui-mode="client"] .rule-score.negative,
body[data-ui-mode="client"] .rule-score.positive{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  text-shadow:none !important;
}
body[data-ui-mode="client"] .momentum-rule-note{
  text-align:center !important;
}
body[data-ui-mode="client"] .momentum-rules > div{
  align-items:center !important;
}
body[data-ui-mode="client"] .momentum-rules p,
body[data-ui-mode="client"] .momentum-rules p *{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
body[data-ui-mode="client"] .momentum-protection,
body[data-ui-mode="client"] .momentum-protection *,
body[data-ui-mode="client"] .momentum-shield{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

/* Graphiques catégories : même relief premium que les autres boutons/blocs */
body[data-ui-mode="client"] .metric-category-details{
  border:1px solid #101010 !important;
  border-radius:28px !important;
  overflow:hidden !important;
  box-shadow:
    0 10px 24px rgba(0,0,0,.12),
    inset 0 1px 0 rgba(255,255,255,.20),
    inset 0 -12px 18px rgba(0,0,0,.16) !important;
}
body[data-ui-mode="client"] .metric-category-details[open]{
  box-shadow:
    0 12px 26px rgba(0,0,0,.14),
    inset 0 1px 0 rgba(255,255,255,.22),
    inset 0 -12px 18px rgba(0,0,0,.18) !important;
}
body[data-ui-mode="client"] .metric-category-summary{
  border-radius:inherit !important;
}
body[data-ui-mode="client"] .metric-category-summary b,
body[data-ui-mode="client"] .metric-category-summary small{
  text-shadow:0 1px 0 rgba(255,255,255,.12) !important;
}

/* Mes acquis / Ressources : conserver le texte noir sur fond interne transparent des boutons sélectionnés */
body[data-ui-mode="client"] :is(.client-contents-page,.contents-subpage) .pillar-tabs > button.active,
body[data-ui-mode="client"] :is(.client-contents-page,.contents-subpage) .pillar-tabs > button.li-selected{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
}
body[data-ui-mode="client"] :is(.client-contents-page,.contents-subpage) .pillar-tabs > button.active > .btn-label,
body[data-ui-mode="client"] :is(.client-contents-page,.contents-subpage) .pillar-tabs > button.li-selected > .btn-label,
body[data-ui-mode="client"] :is(.client-contents-page,.contents-subpage) .pillar-tabs > button.active > .btn-label *,
body[data-ui-mode="client"] :is(.client-contents-page,.contents-subpage) .pillar-tabs > button.li-selected > .btn-label *{
  background:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  text-shadow:none !important;
}

/* Agenda client : réduire l'espace vide entre le dernier bloc et le menu bas */
body[data-ui-mode="client"] .movement-bottom-zone{
  margin-top:18px !important;
  margin-bottom:0 !important;
}
body[data-ui-mode="client"] .movement-bottom-zone .movement-card{
  margin-bottom:0 !important;
}
@media(max-width:760px){
  body[data-ui-mode="client"] main{
    padding-bottom:calc(96px + env(safe-area-inset-bottom)) !important;
  }
  body[data-ui-mode="client"] .movement-bottom-zone{
    margin-top:14px !important;
    margin-bottom:0 !important;
  }
}


/* V2.33 — verrouillage Chrome + finitions scoring / catégories / pratiques / agenda */

/* SCORING : texte du rond forcé en blanc, y compris /100 */
body[data-ui-mode="client"] .momentum-card .momentum-score,
body[data-ui-mode="client"] .momentum-card .momentum-score > small,
body[data-ui-mode="client"] .momentum-card .momentum-score *{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  -webkit-text-stroke:0 !important;
  text-shadow:none !important;
  opacity:1 !important;
}

/* -15 / +5 : noir absolu, sans héritage blanc */
body[data-ui-mode="client"] .momentum-card .momentum-rules .rule-score,
body[data-ui-mode="client"] .momentum-card .momentum-rules .rule-score.negative,
body[data-ui-mode="client"] .momentum-card .momentum-rules .rule-score.positive,
body[data-ui-mode="client"] .momentum-card .momentum-rules .rule-score *{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  -webkit-text-stroke:0 !important;
  text-shadow:none !important;
  opacity:1 !important;
}

/* Voir les détails : blanc même quand le bloc est fermé */
body[data-ui-mode="client"] .momentum-card .momentum-details > summary,
body[data-ui-mode="client"] .momentum-card .momentum-details:not([open]) > summary,
body[data-ui-mode="client"] .momentum-card .momentum-details[open] > summary,
body[data-ui-mode="client"] .momentum-card .momentum-details > summary > span,
body[data-ui-mode="client"] .momentum-card .momentum-details .momentum-details-chevron{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  -webkit-text-stroke:0 !important;
  text-shadow:none !important;
  opacity:1 !important;
}
body[data-ui-mode="client"] .momentum-card .momentum-rule-note{
  text-align:center !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

/* CATÉGORIES GRAPHIQUES : flèches blanches + relief premium */
body[data-ui-mode="client"] .metric-category-details .metric-category-summary .category-chevron,
body[data-ui-mode="client"] .metric-category-details:not([open]) .metric-category-summary .category-chevron,
body[data-ui-mode="client"] .metric-category-details[open] .metric-category-summary .category-chevron{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  -webkit-text-stroke:0 !important;
  text-shadow:0 1px 2px rgba(0,0,0,.55) !important;
  opacity:1 !important;
}
body[data-ui-mode="client"] .metric-category-details{
  border:1px solid rgba(13,13,13,.92) !important;
  border-radius:18px !important;
  box-shadow:
    0 9px 18px rgba(0,0,0,.14),
    inset 0 2px 0 rgba(255,255,255,.20),
    inset 0 -10px 18px rgba(0,0,0,.20),
    0 0 0 1px rgba(214,181,91,.10) !important;
  overflow:hidden !important;
}
body[data-ui-mode="client"] .metric-category-details[open]{
  box-shadow:
    0 11px 22px rgba(0,0,0,.16),
    inset 0 2px 0 rgba(255,255,255,.22),
    inset 0 -11px 18px rgba(0,0,0,.22),
    0 0 0 1px rgba(214,181,91,.20) !important;
}

/* PRATIQUES : un seul trait horizontal, centré sous la pointe du bouton sélectionné */
body[data-ui-mode="client"] .client-practice-page .practice-level-arrow.sub-level::before{
  content:none !important;
  display:none !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-level-arrow.sub-level{
  --subline-x:50%;
  height:12px !important;
  position:relative !important;
  margin:-2px 0 10px !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-level-arrow.sub-level.align-left{--subline-x:30%;}
body[data-ui-mode="client"] .client-practice-page .practice-level-arrow.sub-level.align-right{--subline-x:70%;}
body[data-ui-mode="client"] .client-practice-page .practice-level-arrow.sub-level.align-center{--subline-x:50%;}
body[data-ui-mode="client"] .client-practice-page .practice-level-arrow.sub-level::after{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  left:var(--subline-x) !important;
  top:50% !important;
  transform:translate(-50%,-50%) !important;
  width:92px !important;
  max-width:26vw !important;
  height:1px !important;
  margin:0 !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,rgba(214,181,91,0) 0%,rgba(214,181,91,.78) 50%,rgba(214,181,91,0) 100%) !important;
}

/* MES ACQUIS / RESSOURCES : texte noir, fond du libellé transparent */
body[data-ui-mode="client"] :is(.client-contents-page,.contents-subpage) .pillar-tabs > button.active,
body[data-ui-mode="client"] :is(.client-contents-page,.contents-subpage) .pillar-tabs > button.li-selected,
body[data-ui-mode="client"] :is(.client-contents-page,.contents-subpage) .pillar-tabs > button.active .btn-label,
body[data-ui-mode="client"] :is(.client-contents-page,.contents-subpage) .pillar-tabs > button.li-selected .btn-label{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  text-shadow:none !important;
}
body[data-ui-mode="client"] :is(.client-contents-page,.contents-subpage) .pillar-tabs > button .btn-label,
body[data-ui-mode="client"] :is(.client-contents-page,.contents-subpage) .pillar-tabs > button .btn-label *{
  background:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
}

/* AGENDA : une seule réserve pour le menu fixe, sans double grand espace */
@media(max-width:760px){
  body[data-ui-mode="client"]{
    padding-bottom:0 !important;
  }
  body[data-ui-mode="client"] main{
    padding-bottom:calc(112px + env(safe-area-inset-bottom)) !important;
  }
  body[data-ui-mode="client"] .movement-bottom-zone{
    margin-top:14px !important;
    margin-bottom:0 !important;
  }
  body[data-ui-mode="client"] .movement-bottom-zone .movement-card{
    margin-bottom:0 !important;
  }
}


/* V2.34 — verrouillage absolu Chrome scoring + chevrons catégories */

/* Cercle du score : blanc forcé, y compris le noeud principal et /100. */
body[data-ui-mode="client"] .momentum-card .momentum-score,
body[data-ui-mode="client"] .momentum-card .momentum-score .momentum-score-main,
body[data-ui-mode="client"] .momentum-card .momentum-score small,
body[data-ui-mode="client"] .momentum-card .momentum-score *{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  -webkit-text-stroke:0 !important;
  text-shadow:none !important;
  opacity:1 !important;
}

/* -15 / +5 : noir forcé sans possibilité d'héritage blanc sous Chrome. */
body[data-ui-mode="client"] .momentum-card .rule-score,
body[data-ui-mode="client"] .momentum-card .rule-score.negative,
body[data-ui-mode="client"] .momentum-card .rule-score.positive{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  -webkit-text-stroke:0 !important;
  text-shadow:none !important;
  opacity:1 !important;
}

/* "Voir les détails" + flèche : même ligne, même centrage vertical, toujours blanc. */
body[data-ui-mode="client"] .momentum-card .momentum-details > summary{
  display:inline-flex !important;
  width:100% !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  line-height:1 !important;
}
body[data-ui-mode="client"] .momentum-card .momentum-details > summary > span{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  line-height:1 !important;
}
body[data-ui-mode="client"] .momentum-card .momentum-details .momentum-details-chevron{
  position:static !important;
  margin:0 !important;
  padding:0 !important;
  transform-origin:center !important;
  line-height:1 !important;
  height:1em !important;
  min-height:1em !important;
}
body[data-ui-mode="client"] .momentum-card .momentum-details[open] .momentum-details-chevron{
  transform:rotate(180deg) !important;
}

/* Flèches des catégories Graphiques : blanc absolu dans tous les états. */
body[data-ui-mode="client"] .metric-category-details .category-chevron,
body[data-ui-mode="client"] .metric-category-details[open] .category-chevron,
body[data-ui-mode="client"] .metric-category-details:not([open]) .category-chevron{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  -webkit-text-stroke:0 !important;
  text-shadow:0 1px 2px rgba(0,0,0,.55) !important;
  opacity:1 !important;
}

/* Phrase finale du scoring centrée. */
body[data-ui-mode="client"] .momentum-card .momentum-rule-note{
  text-align:center !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* V2.35 — Score protégé + phrase finale parfaitement lisibles sous Chrome */
body[data-ui-mode="client"] .momentum-card .momentum-protection,
body[data-ui-mode="client"] .momentum-card .momentum-protection b,
body[data-ui-mode="client"] .momentum-card .momentum-protection small{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  -webkit-text-stroke:0 !important;
  text-shadow:none !important;
  opacity:1 !important;
}
body[data-ui-mode="client"] .momentum-card .momentum-shield,
body[data-ui-mode="client"] .momentum-card .momentum-shield *{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  -webkit-text-stroke:0 !important;
  text-shadow:none !important;
  opacity:1 !important;
}
body[data-ui-mode="client"] .momentum-card .momentum-rule-note{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  margin:14px auto 0 !important;
  padding:0 10px !important;
  text-align:center !important;
  text-align-last:center !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  box-sizing:border-box !important;
}


/* V2.36 — Point du Leader : relief or + aucune présélection + confirmation jaune */

/* Carte Point du Leader : même esprit relief or que la navigation premium. */
body[data-ui-mode="client"] .sequential-checkin-card{
  position:relative !important;
  border:1px solid rgba(214,181,91,.78) !important;
  border-radius:18px !important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.035) 0%,rgba(255,255,255,0) 22%),
    linear-gradient(180deg,#1b1c20 0%,#0d0f12 100%) !important;
  box-shadow:
    0 12px 28px rgba(0,0,0,.16),
    inset 0 1px 0 rgba(255,255,255,.12),
    inset 0 0 0 1px rgba(214,181,91,.08) !important;
}
body[data-ui-mode="client"] .sequential-checkin-card::after{
  content:"" !important;
  position:absolute !important;
  inset:1px !important;
  border-radius:16px !important;
  pointer-events:none !important;
  box-shadow:inset 0 0 20px rgba(214,181,91,.045) !important;
}

/* Au chargement : aucun niveau n'est visuellement sélectionné. */
body[data-ui-mode="client"] .sequential-checkin-card .sequential-quality .mood-choice:not(.active){
  background:linear-gradient(180deg,#202126 0%,#111216 100%) !important;
  background-image:linear-gradient(180deg,#202126 0%,#111216 100%) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  border:1px solid rgba(214,181,91,.45) !important;
  box-shadow:
    0 6px 12px rgba(0,0,0,.13),
    inset 0 1px 0 rgba(255,255,255,.06) !important;
  text-shadow:none !important;
  opacity:1 !important;
}

/* Au clic : vrai bouton jaune premium visible avant le passage à l'étape suivante. */
body[data-ui-mode="client"] .sequential-checkin-card .sequential-quality .mood-choice.active,
body[data-ui-mode="client"] .sequential-checkin-card .sequential-quality .mood-choice.li-choice-confirmed{
  background:var(--li-chrome-selected-gradient) !important;
  background-image:var(--li-chrome-selected-gradient) !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  border:1px solid #090909 !important;
  box-shadow:
    0 10px 20px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,255,255,.24) !important;
  transform:translateY(-1px) scale(1.025) !important;
  transition:
    transform .16s ease,
    background .16s ease,
    box-shadow .16s ease !important;
  opacity:1 !important;
}
body[data-ui-mode="client"] .sequential-checkin-card .sequential-quality .mood-choice:disabled{
  cursor:default !important;
}

/* Confirmation finale : uniquement check + MERCI LEADER + Infos enregistrées. */
body[data-ui-mode="client"] .checkin-complete-card{
  grid-template-columns:52px 1fr !important;
  min-height:108px !important;
  border:1px solid rgba(214,181,91,.62) !important;
  background:linear-gradient(180deg,#1b1c20 0%,#0d0f12 100%) !important;
  box-shadow:
    0 12px 28px rgba(0,0,0,.15),
    inset 0 1px 0 rgba(255,255,255,.09) !important;
}
body[data-ui-mode="client"] .checkin-complete-card .checkin-complete-copy{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:flex-start !important;
}
body[data-ui-mode="client"] .checkin-complete-card h2{
  margin:0 0 4px !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  font-family:'Cinzel',Georgia,serif !important;
  font-size:22px !important;
  line-height:1.05 !important;
  letter-spacing:.03em !important;
}
body[data-ui-mode="client"] .checkin-complete-card .checkin-saved-small{
  margin:0 !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  font-family:'Montserrat',Arial,Helvetica,sans-serif !important;
  font-size:10px !important;
  font-weight:500 !important;
  line-height:1.2 !important;
}
body[data-ui-mode="client"] .checkin-complete-card .checkin-complete-mark{
  width:46px !important;
  height:46px !important;
  border-radius:50% !important;
  background:#b8ff2c !important;
  color:#0b0b0b !important;
  -webkit-text-fill-color:#0b0b0b !important;
  border:1px solid rgba(112,160,0,.78) !important;
  box-shadow:
    0 0 0 2px rgba(184,255,44,.10),
    inset 0 1px 0 rgba(255,255,255,.38) !important;
  font-size:21px !important;
}


/* V2.37 — catégories Graphiques : même relief que le menu bas, dégradé gauche -> droite conservé */
body[data-ui-mode="client"] .metric-category-details,
body[data-ui-mode="client"] .metric-category-details[open]{
  position:relative !important;
  isolation:isolate !important;
  overflow:hidden !important;
  border:1px solid rgba(214,181,91,.95) !important;
  border-radius:18px !important;
  background:
    linear-gradient(90deg,
      #f0ed00 0%,
      #eeea00 38%,
      #d2cc19 56%,
      #5b5b42 79%,
      #121212 100%) !important;
  background-image:
    linear-gradient(90deg,
      #f0ed00 0%,
      #eeea00 38%,
      #d2cc19 56%,
      #5b5b42 79%,
      #121212 100%) !important;
  box-shadow:
    0 10px 22px rgba(0,0,0,.20),
    inset 0 1px 0 rgba(255,255,255,.22),
    inset 0 -1px 0 rgba(0,0,0,.22) !important;
}
body[data-ui-mode="client"] .metric-category-details::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  border-radius:inherit !important;
  pointer-events:none !important;
  z-index:0 !important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.14) 0%,rgba(255,255,255,.035) 22%,rgba(0,0,0,0) 48%,rgba(0,0,0,.11) 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.20),
    inset 0 -8px 15px rgba(0,0,0,.12) !important;
}
body[data-ui-mode="client"] .metric-category-details > *{
  position:relative !important;
  z-index:1 !important;
}
body[data-ui-mode="client"] .metric-category-summary,
body[data-ui-mode="client"] .metric-category-details:not([open]) > .metric-category-summary,
body[data-ui-mode="client"] .metric-category-details[open] > .metric-category-summary{
  background:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
  border:0 !important;
}

/* V2.38 — catégories Graphiques : relief calé exactement sur le menu bas, dégradé horizontal conservé */
body[data-ui-mode="client"] .metric-category-details,
body[data-ui-mode="client"] .metric-category-details[open]{
  border-color:rgba(214,181,91,.95) !important;
  box-shadow:
    0 10px 22px rgba(0,0,0,.20),
    inset 0 1px 0 rgba(255,255,255,.20) !important;
}
body[data-ui-mode="client"] .metric-category-details::before{
  background:linear-gradient(180deg,
    rgba(255,255,255,.16) 0%,
    rgba(255,255,255,.055) 18%,
    rgba(255,255,255,0) 42%,
    rgba(0,0,0,.035) 72%,
    rgba(0,0,0,.10) 100%) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.20) !important;
}

/* V2.39 — Discipline : texte noir sur bandes blanches + flèche détails centrée */
body[data-ui-mode="client"] .momentum-card .momentum-rules > div,
body[data-ui-mode="client"] .momentum-card .momentum-rules > div p,
body[data-ui-mode="client"] .momentum-card .momentum-rules > div p b,
body[data-ui-mode="client"] .momentum-card .momentum-rules > div p small,
body[data-ui-mode="client"] .momentum-card .momentum-rules > div .rule-score,
body[data-ui-mode="client"] .momentum-card .momentum-rules > div .rule-score.negative,
body[data-ui-mode="client"] .momentum-card .momentum-rules > div .rule-score.positive,
body[data-ui-mode="client"] .momentum-card .momentum-rules > div .rule-score *{
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  -webkit-text-stroke:0 !important;
  text-shadow:none !important;
  opacity:1 !important;
}
body[data-ui-mode="client"] .momentum-card .momentum-rules > div p small{
  color:#575757 !important;
  -webkit-text-fill-color:#575757 !important;
}
body[data-ui-mode="client"] .momentum-card .momentum-details > summary{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
}
body[data-ui-mode="client"] .momentum-card .momentum-details > summary > span:first-child{
  display:flex !important;
  align-items:center !important;
  line-height:1.15 !important;
}
body[data-ui-mode="client"] .momentum-card .momentum-details .momentum-details-chevron{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:1em !important;
  height:1em !important;
  line-height:1 !important;
  position:relative !important;
  top:-1px !important;
  margin:0 !important;
  padding:0 !important;
  transform:translateY(0) !important;
}
body[data-ui-mode="client"] .momentum-card .momentum-details[open] .momentum-details-chevron{
  transform:rotate(180deg) !important;
}

/* V2.41 — confirmation compacte avant changement d'un graphique favori */
.modal-card.favorite-confirm-frame{
  width:min(430px,calc(100vw - 32px))!important;
  height:auto!important;
  min-height:0!important;
  max-height:calc(100dvh - 32px)!important;
  padding:24px 22px 22px!important;
  border-radius:20px!important;
  overflow:auto!important;
  align-self:center!important;
  justify-self:center!important;
}
.modal-card.favorite-confirm-frame .modal-close{display:none!important}
.modal-card.favorite-confirm-frame .modal-auto-back{display:none!important}
.favorite-confirm-modal{text-align:center;padding:4px 2px 2px}
.favorite-confirm-star{font-size:34px;line-height:1;color:#e8e500;margin-bottom:8px;text-shadow:0 2px 8px rgba(0,0,0,.22)}
.favorite-confirm-modal h2{font-family:'Cinzel',Georgia,serif;font-size:22px;line-height:1.2;margin:0 0 10px;color:#171715}
.favorite-confirm-modal p{margin:0;color:#555851;line-height:1.55;font-size:13px}
.favorite-confirm-modal p b{color:#181816}
.favorite-confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}
.favorite-confirm-actions .btn{min-height:46px;width:100%}
.favorite-confirm-actions .btn:only-child{grid-column:1/-1}
@media(max-width:560px){
  .modal.favorite-confirm-open{place-items:center!important;padding:16px!important}
  .modal-card.favorite-confirm-frame{width:min(410px,calc(100vw - 28px))!important;padding:22px 18px 18px!important}
}


/* V2.42 — Trigger Point : Haut/Bas côte à côte, Corps complet pleine largeur */
body[data-ui-mode="client"] .client-practice-page .practice-child-tabs.trigger-point-layout{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-child-tabs.trigger-point-layout:has(>button.active){
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-child-tabs.trigger-point-layout > .practice-child-tab:nth-child(3){
  grid-column:1 / -1 !important;
  width:100% !important;
  justify-self:stretch !important;
}

/* V2.43 — Trigger Point : Corps complet garde sa position mais retrouve la taille normale */
body[data-ui-mode="client"] .client-practice-page .practice-child-tabs.trigger-point-layout > .practice-child-tab:nth-child(3){
  grid-column:1 / -1 !important;
  width:calc((100% - 10px)/2) !important;
  justify-self:center !important;
}


/* V2.45 — “Ajouter une autre activité” : écran premium cohérent Leader Impactant */
.modal-card.activity-premium-frame{
  width:min(720px,96vw) !important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.03)),
    url('/mobile-background-v128.png') center top / cover no-repeat !important;
  border:1px solid rgba(214,181,91,.28) !important;
  box-shadow:0 30px 78px rgba(0,0,0,.34) !important;
  overflow:auto !important;
}
.modal-card.activity-premium-frame #modalBody{
  min-height:100%;
}
.activity-premium-modal{
  width:min(100%,650px);
  min-height:100%;
  margin:0 auto;
  padding:2px 2px 30px;
  color:#151515;
}
.activity-premium-back.modal-auto-back{
  position:relative !important;
  top:auto !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  min-width:118px !important;
  min-height:44px !important;
  margin:0 0 28px !important;
  padding:10px 15px !important;
  border-radius:13px !important;
  border:1px solid rgba(214,181,91,.76) !important;
  background:linear-gradient(180deg,#2e3035 0%,#17181c 55%,#0d0f12 100%) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  box-shadow:0 10px 22px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.09) !important;
  font-size:12px !important;
  font-weight:800 !important;
  letter-spacing:.1px !important;
  text-transform:none !important;
}
.activity-premium-back .activity-back-arrow{
  color:var(--li-gold,#d6b55b) !important;
  -webkit-text-fill-color:var(--li-gold,#d6b55b) !important;
  font-size:19px;
  line-height:1;
  transform:translateY(-1px);
}
.activity-premium-heading{
  margin:0 2px 22px;
}
.activity-premium-heading .section-eyebrow{
  margin:0 0 7px !important;
  color:var(--li-gold,#d6b55b) !important;
  -webkit-text-fill-color:var(--li-gold,#d6b55b) !important;
  font-size:9px !important;
  font-weight:900 !important;
  letter-spacing:1.45px !important;
}
.activity-premium-heading h2{
  margin:0 !important;
  color:#151515 !important;
  -webkit-text-fill-color:#151515 !important;
  font-family:'Cinzel',Georgia,serif !important;
  font-size:clamp(28px,5.6vw,38px) !important;
  font-weight:600 !important;
  line-height:1.08 !important;
  letter-spacing:-.35px !important;
}
.activity-title-line{
  width:66px;
  height:3px;
  margin-top:14px;
  border-radius:999px;
  background:linear-gradient(90deg,#8a741b 0%,#e8e500 55%,#f6ef58 100%);
  box-shadow:0 2px 8px rgba(197,174,44,.22);
}
.activity-premium-panel{
  position:relative;
  overflow:hidden;
  padding:18px;
  border:1px solid rgba(214,181,91,.46);
  border-radius:20px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.88) 0%,rgba(247,247,244,.78) 100%);
  box-shadow:
    0 18px 42px rgba(0,0,0,.12),
    inset 0 1px 0 rgba(255,255,255,.86),
    inset 0 0 0 1px rgba(255,255,255,.28);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
}
.activity-premium-panel::before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;
  height:3px;
  background:linear-gradient(90deg,transparent 0%,rgba(214,181,91,.92) 18%,rgba(232,229,0,.92) 50%,rgba(214,181,91,.72) 82%,transparent 100%);
  pointer-events:none;
}
.activity-premium-field.field{
  gap:8px !important;
  margin:0 0 17px !important;
}
.activity-premium-field.field label{
  display:flex;
  align-items:center;
  gap:8px;
  color:#2b2b29 !important;
  -webkit-text-fill-color:#2b2b29 !important;
  font-size:10px !important;
  font-weight:900 !important;
  letter-spacing:.9px !important;
}
.activity-label-mark{
  flex:0 0 auto;
  width:16px;
  height:3px;
  border-radius:99px;
  background:linear-gradient(90deg,#8c751a,#e8e500);
  box-shadow:0 1px 3px rgba(0,0,0,.12);
}
.activity-premium-field.field :is(input,textarea){
  width:100% !important;
  border:1px solid #aeb0ad !important;
  border-radius:14px !important;
  background:linear-gradient(180deg,#fff 0%,#f8f8f6 100%) !important;
  color:#171717 !important;
  -webkit-text-fill-color:#171717 !important;
  caret-color:#171717 !important;
  outline:none !important;
  box-shadow:0 7px 16px rgba(0,0,0,.055),inset 0 1px 0 rgba(255,255,255,.95) !important;
  font-size:15px !important;
  font-weight:500 !important;
  transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease !important;
}
.activity-premium-field.field input{
  min-height:54px !important;
  padding:13px 15px !important;
}
.activity-premium-field.field textarea{
  min-height:132px !important;
  resize:vertical;
  padding:14px 15px !important;
  line-height:1.5 !important;
}
.activity-premium-field.field :is(input,textarea)::placeholder{
  color:#8d8e8b !important;
  -webkit-text-fill-color:#8d8e8b !important;
  opacity:1 !important;
  font-weight:400 !important;
}
.activity-premium-field.field :is(input,textarea):focus{
  border-color:rgba(182,153,46,.98) !important;
  box-shadow:
    0 0 0 3px rgba(214,181,91,.14),
    0 9px 20px rgba(0,0,0,.07),
    inset 0 1px 0 rgba(255,255,255,.95) !important;
}
.activity-premium-comment.field{margin-bottom:20px !important;}
body[data-ui-mode="client"] .activity-premium-submit.btn.yellow,
.activity-premium-submit.btn.yellow{
  position:relative !important;
  isolation:isolate !important;
  width:100% !important;
  min-height:56px !important;
  display:grid !important;
  grid-template-columns:34px 1fr 22px !important;
  align-items:center !important;
  gap:10px !important;
  padding:9px 14px !important;
  border:1px solid #111 !important;
  border-radius:15px !important;
  background:var(--li-chrome-selected-gradient,var(--li-selected-black-yellow)) !important;
  background-image:var(--li-chrome-selected-gradient,var(--li-selected-black-yellow)) !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  box-shadow:
    0 13px 26px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,255,255,.26),
    inset 0 -1px 0 rgba(0,0,0,.17) !important;
  text-shadow:none !important;
  font-size:13px !important;
  font-weight:900 !important;
  letter-spacing:.75px !important;
}
.activity-premium-submit > span{
  position:relative;
  z-index:1;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
}
.activity-submit-plus{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:linear-gradient(180deg,#2b2c2f,#111216);
  color:#f1e900 !important;
  -webkit-text-fill-color:#f1e900 !important;
  font-size:24px;
  font-weight:500;
  line-height:1;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 4px 10px rgba(0,0,0,.18);
}
.activity-submit-arrow{
  justify-self:end;
  font-size:30px;
  font-weight:400;
  line-height:1;
}
.activity-premium-submit:active{
  transform:translateY(1px) scale(.994) !important;
  box-shadow:0 7px 16px rgba(0,0,0,.15),inset 0 1px 0 rgba(255,255,255,.20) !important;
}
@media(max-width:760px){
  .modal-card.activity-premium-frame{
    width:100% !important;
    height:100dvh !important;
    max-height:100dvh !important;
    padding:calc(14px + env(safe-area-inset-top)) 16px calc(26px + env(safe-area-inset-bottom)) !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    background:
      linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.02)),
      url('/mobile-background-v128.png') center top / cover fixed no-repeat !important;
  }
  .activity-premium-modal{padding:0 0 28px;}
  .activity-premium-back.modal-auto-back{
    margin-bottom:26px !important;
  }
  .activity-premium-heading{margin-bottom:20px;}
  .activity-premium-heading h2{
    font-size:30px !important;
    max-width:430px;
  }
  .activity-premium-panel{
    padding:16px 14px 15px;
    border-radius:18px;
  }
  .activity-premium-field.field{margin-bottom:15px !important;}
  .activity-premium-field.field input{min-height:52px !important;}
  .activity-premium-field.field textarea{min-height:142px !important;}
}
@media(max-width:390px){
  .modal-card.activity-premium-frame{padding-left:13px !important;padding-right:13px !important;}
  .activity-premium-heading h2{font-size:27px !important;}
  .activity-premium-panel{padding:15px 12px 14px;}
  .activity-premium-back.modal-auto-back{min-width:110px !important;min-height:42px !important;}
}


/* V2.48 — côté client : suppression de Voir le détail et de la page détail graphique */
body[data-ui-mode="client"] .metric-main-static{
  cursor:default !important;
}
body[data-ui-mode="client"] .featured-metric-actions:has(.btn.yellow:only-child){
  justify-content:flex-start;
}


/* V2.49 — contenus individuels pilotés côté mentor, intégrés sans étiquette côté client */
.client-content-manager h2{font-family:'Cinzel',Georgia,serif;font-weight:500;margin:4px 0 6px}
.client-content-list{display:grid;gap:8px;margin:16px 0}
.client-content-item{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 14px;border-radius:13px;background:linear-gradient(180deg,#fff,#f3f3ef);border:1px solid #ddd9ca;box-shadow:0 8px 18px rgba(0,0,0,.06)}
.client-content-item>div:first-child{min-width:0}.client-content-item small{display:block;color:#9a7a12;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.client-content-item b{display:block;color:#111;margin-top:3px}.client-content-item span{display:block;color:#777;font-size:9px;margin-top:3px}.client-content-item-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.client-content-save{width:100%;margin-top:8px}.client-content-conditional{margin-top:2px}
.practice-client-content-list{display:grid;gap:8px;margin-top:16px}
.practice-client-content-card{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;border:1px solid rgba(200,164,47,.78);background:linear-gradient(90deg,rgba(255,255,255,.98),rgba(239,240,241,.96));box-shadow:0 8px 20px rgba(0,0,0,.10),inset 0 1px 0 rgba(255,255,255,.9);color:#111;font-weight:850;text-align:left;cursor:pointer}
.practice-client-content-card strong{font-size:22px;color:#b38b12}
@media(max-width:760px){.client-content-item{align-items:flex-start;flex-direction:column}.client-content-item-actions{width:100%}.client-content-item-actions .btn{flex:1}}


/* V2.50 — MAS / FDI persistants : zone À terminer + validation différée */
body[data-ui-mode="client"] .calendar-to-finish{
  position:relative;overflow:hidden;margin:4px 0 18px;padding:16px;border:1px solid rgba(216,190,33,.52);border-radius:18px;
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(239,240,238,.95) 55%,rgba(255,247,194,.62));
  box-shadow:0 12px 28px rgba(20,20,18,.10),inset 0 1px 0 rgba(255,255,255,.95);
}
body[data-ui-mode="client"] .calendar-to-finish:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,#f1dc00,#c9a900);}
body[data-ui-mode="client"] .calendar-to-finish-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:5px;}
body[data-ui-mode="client"] .calendar-to-finish-head h2{margin:2px 0 0;font-family:Cinzel,serif;font-size:21px;line-height:1.05;color:#191914;}
body[data-ui-mode="client"] .calendar-to-finish-count{display:grid;place-items:center;min-width:32px;height:32px;padding:0 10px;border-radius:999px;background:#181818;color:#fff;font-weight:900;box-shadow:0 3px 0 #d6bd00,0 6px 14px rgba(0,0,0,.16);}
body[data-ui-mode="client"] .calendar-to-finish-intro{margin:0 0 12px;color:#5a5a54;font-size:12px;line-height:1.5;}
body[data-ui-mode="client"] .calendar-to-finish-list{display:grid;gap:9px;}
body[data-ui-mode="client"] .calendar-to-finish-card{width:100%;display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:11px;text-align:left;padding:12px;border:1px solid rgba(20,20,18,.12);border-radius:13px;background:linear-gradient(90deg,#fff,#f7f7f3);box-shadow:0 5px 14px rgba(25,25,20,.08);color:#171713;}
body[data-ui-mode="client"] .calendar-to-finish-card:active{transform:translateY(1px);}
body[data-ui-mode="client"] .calendar-to-finish-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:linear-gradient(145deg,#f4df00,#c9ad00);color:#171713;font-size:13px;font-weight:900;box-shadow:inset 0 1px 0 rgba(255,255,255,.75),0 3px 8px rgba(0,0,0,.15);}
body[data-ui-mode="client"] .calendar-to-finish-copy{min-width:0;display:flex;flex-direction:column;gap:2px;}
body[data-ui-mode="client"] .calendar-to-finish-copy small{font-size:9px;letter-spacing:.08em;font-weight:850;color:#8a7b00;text-transform:uppercase;}
body[data-ui-mode="client"] .calendar-to-finish-copy b{font-size:13px;color:#151512;white-space:normal;}
body[data-ui-mode="client"] .calendar-to-finish-copy em{font-style:normal;font-size:10px;color:#77756d;}
body[data-ui-mode="client"] .calendar-to-finish-card>strong{font-size:25px;line-height:1;color:#a39a00;}
body[data-ui-mode="client"] .content-overdue-note{display:flex;align-items:center;gap:10px;margin:16px 0 10px;padding:11px 12px;border:1px solid rgba(214,190,0,.45);border-radius:12px;background:linear-gradient(90deg,rgba(255,250,211,.92),rgba(255,255,255,.92));}
body[data-ui-mode="client"] .content-overdue-note>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#1d1d1b;color:#f0d800;font-weight:900;}
body[data-ui-mode="client"] .content-overdue-note div{display:flex;flex-direction:column;gap:2px;}
body[data-ui-mode="client"] .content-overdue-note b{font-size:12px;color:#1c1c18;}
body[data-ui-mode="client"] .content-overdue-note small{font-size:10px;color:#69675e;line-height:1.35;}
@media(max-width:720px){
  body[data-ui-mode="client"] .calendar-to-finish{margin:2px 0 14px;padding:14px 12px 12px 14px;border-radius:15px;}
  body[data-ui-mode="client"] .calendar-to-finish-head h2{font-size:19px;}
  body[data-ui-mode="client"] .calendar-to-finish-intro{font-size:11px;}
  body[data-ui-mode="client"] .calendar-to-finish-card{grid-template-columns:36px 1fr auto;padding:11px 10px;}
  body[data-ui-mode="client"] .calendar-to-finish-mark{width:32px;height:32px;}
}


/* V2.51 — éditeur capsules MAS/FDI + suivi enseignements */
.content-model-editor .field label small{font-weight:600;color:#7a786f;text-transform:none;letter-spacing:0;}
.content-model-editor .field-span-2{grid-column:1/-1;}
.content-acquired-rule{display:flex;align-items:center;gap:12px;margin:14px 0 18px;padding:12px 14px;border:1px solid rgba(205,180,0,.45);border-radius:13px;background:linear-gradient(90deg,#fffef4,#f5f4ea);box-shadow:inset 0 1px 0 rgba(255,255,255,.85);}
.content-acquired-rule>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#171713;color:#f0d700;font-weight:900;box-shadow:0 3px 0 #c8aa00;}
.content-acquired-rule>div{display:flex;flex-direction:column;gap:2px;}
.content-acquired-rule b{font-size:12px;color:#171713;}
.content-acquired-rule small{font-size:10px;color:#68665d;line-height:1.35;}
.digest-teaching{margin:9px 0;padding:9px 10px;border-radius:10px;background:#f5f5f0;border:1px solid rgba(0,0,0,.08);font-size:12px;line-height:1.45;}
.digest-teaching.good{border-color:rgba(76,139,76,.28);}
.digest-teaching.alert{border-color:rgba(190,132,0,.38);background:#fff9df;}
.digest-teaching span{display:block;margin-top:4px;padding-left:10px;color:#5b584e;}
@media(max-width:720px){.content-model-editor .field-span-2{grid-column:auto}.content-acquired-rule{padding:11px 12px}.digest-teaching span{padding-left:0}}


/* V2.52 — Mes acquis : sous-catégories fixes M.A.S / F.D.I + classement par numéro */
body[data-ui-mode="client"] .acquired-subcategory-stack{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:10px !important;
  width:100% !important;
  max-width:780px !important;
  margin:6px auto 14px !important;
}
body[data-ui-mode="client"] .acquired-category-block{
  width:100% !important;
  overflow:hidden !important;
  border:1px solid rgba(191,162,0,.78) !important;
  border-radius:16px !important;
  background:linear-gradient(180deg,#111317 0%,#090a0c 100%) !important;
  box-shadow:0 9px 22px rgba(0,0,0,.12),inset 0 1px 0 rgba(255,255,255,.08) !important;
}
body[data-ui-mode="client"] .acquired-category-summary{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  width:100% !important;
  min-height:72px !important;
  padding:14px 17px !important;
  border:0 !important;
  border-radius:0 !important;
  background:linear-gradient(90deg,#fff30a 0%,#e6e300 47%,#45462f 78%,#181a1b 100%) !important;
  background-image:linear-gradient(90deg,#fff30a 0%,#e6e300 47%,#45462f 78%,#181a1b 100%) !important;
  color:#0d0e0c !important;
  -webkit-text-fill-color:#0d0e0c !important;
  text-align:left !important;
  cursor:pointer !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72),inset 0 -1px 0 rgba(0,0,0,.18) !important;
  transform:none !important;
  animation:none !important;
}
body[data-ui-mode="client"] .acquired-category-summary::before{display:none !important;content:none !important;}
body[data-ui-mode="client"] .acquired-category-copy{display:flex !important;flex-direction:column !important;gap:3px !important;min-width:0 !important;}
body[data-ui-mode="client"] .acquired-category-copy b{
  font-family:'Cinzel',Georgia,serif !important;
  font-size:20px !important;
  line-height:1.05 !important;
  letter-spacing:.01em !important;
  color:#090a09 !important;
  -webkit-text-fill-color:#090a09 !important;
}
body[data-ui-mode="client"] .acquired-category-copy small{
  font-family:'Montserrat',Arial,sans-serif !important;
  font-size:9px !important;
  line-height:1.15 !important;
  font-weight:900 !important;
  letter-spacing:.045em !important;
  text-transform:uppercase !important;
  color:#171811 !important;
  -webkit-text-fill-color:#171811 !important;
}
body[data-ui-mode="client"] .acquired-category-chevron{
  display:grid !important;
  place-items:center !important;
  flex:0 0 34px !important;
  width:34px !important;
  height:34px !important;
  border-radius:50% !important;
  background:rgba(10,11,11,.92) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-size:22px !important;
  line-height:1 !important;
  transition:transform .2s ease !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 3px 8px rgba(0,0,0,.2) !important;
}
body[data-ui-mode="client"] .acquired-category-block.open .acquired-category-chevron{transform:rotate(180deg) !important;}
body[data-ui-mode="client"] .acquired-category-lessons{
  display:grid !important;
  gap:8px !important;
  padding:10px 12px 12px !important;
  background:linear-gradient(180deg,#111317 0%,#090a0c 100%) !important;
}
body[data-ui-mode="client"] .acquired-lesson-row{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:10px !important;
  min-height:52px !important;
  padding:9px 9px 9px 13px !important;
  border:1px solid rgba(255,255,255,.09) !important;
  border-radius:13px !important;
  background:linear-gradient(180deg,#16181c 0%,#0d0f12 100%) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
}
body[data-ui-mode="client"] .acquired-lesson-title{
  display:flex !important;
  align-items:center !important;
  gap:9px !important;
  min-width:0 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
body[data-ui-mode="client"] .acquired-lesson-title i{
  flex:0 0 auto !important;
  font-style:normal !important;
  font-size:15px !important;
  color:#f4eb00 !important;
  -webkit-text-fill-color:#f4eb00 !important;
  text-shadow:0 0 7px rgba(244,235,0,.32) !important;
}
body[data-ui-mode="client"] .acquired-lesson-title b{
  min-width:0 !important;
  font-size:12px !important;
  line-height:1.25 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
body[data-ui-mode="client"] .acquired-lesson-open{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  min-height:34px !important;
  padding:7px 10px !important;
  border-radius:10px !important;
  border:1px solid #070707 !important;
  background-color:#ede900 !important;
  background-image:url('/yellow-gradient-v192.png') !important;
  background-size:100% 100% !important;
  color:#090909 !important;
  -webkit-text-fill-color:#090909 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75),0 3px 0 #9f8a00 !important;
  font-family:'Montserrat',Arial,sans-serif !important;
  font-size:9px !important;
  font-weight:950 !important;
  letter-spacing:.025em !important;
  cursor:pointer !important;
}
body[data-ui-mode="client"] .acquired-lesson-open span,
body[data-ui-mode="client"] .acquired-lesson-open strong{color:#090909 !important;-webkit-text-fill-color:#090909 !important;}
body[data-ui-mode="client"] .acquired-lesson-open strong{font-size:17px !important;line-height:.8 !important;}
body[data-ui-mode="client"] .acquired-category-empty{
  padding:13px !important;
  border:1px dashed rgba(255,255,255,.15) !important;
  border-radius:12px !important;
  color:#b9b9b5 !important;
  font-size:10px !important;
  line-height:1.45 !important;
  text-align:center !important;
}
body[data-ui-mode="client"] .client-acquired-wrap>.acquired-empty-state{max-width:780px !important;margin:10px auto 0 !important;}
@media(max-width:620px){
  body[data-ui-mode="client"] .acquired-category-summary{min-height:66px !important;padding:12px 14px !important;}
  body[data-ui-mode="client"] .acquired-category-copy b{font-size:18px !important;}
  body[data-ui-mode="client"] .acquired-category-lessons{padding:9px 9px 10px !important;}
  body[data-ui-mode="client"] .acquired-lesson-row{grid-template-columns:minmax(0,1fr) auto !important;gap:7px !important;padding-left:10px !important;}
  body[data-ui-mode="client"] .acquired-lesson-open{padding:7px 8px !important;font-size:8px !important;}
}

/* V2.53 — Mes acquis : pages intermédiaires + piles multi-vidéos */
body[data-ui-mode="client"] .acquired-section-row .acquired-lesson-title > span{
  display:flex !important;
  flex-direction:column !important;
  gap:2px !important;
  min-width:0 !important;
}
body[data-ui-mode="client"] .acquired-section-row .acquired-lesson-title small{
  font-size:8px !important;
  line-height:1.2 !important;
  font-weight:750 !important;
  letter-spacing:.045em !important;
  text-transform:uppercase !important;
  color:#aaa99f !important;
  -webkit-text-fill-color:#aaa99f !important;
}
body[data-ui-mode="client"] .acquired-section-view{
  width:100% !important;
  max-width:820px !important;
  margin:0 auto !important;
}
body[data-ui-mode="client"] .acquired-section-back{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  min-height:38px !important;
  margin:0 0 12px !important;
  padding:8px 12px !important;
  border:1px solid rgba(202,174,0,.8) !important;
  border-radius:11px !important;
  background:linear-gradient(180deg,#17191c 0%,#0c0d0f 100%) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 4px 10px rgba(0,0,0,.14) !important;
  font-size:10px !important;
  font-weight:900 !important;
  letter-spacing:.03em !important;
}
body[data-ui-mode="client"] .acquired-section-back span{
  color:#f0df00 !important;
  -webkit-text-fill-color:#f0df00 !important;
  font-size:17px !important;
}
body[data-ui-mode="client"] .acquired-section-head{
  margin-bottom:14px !important;
  padding:16px 17px !important;
  border:1px solid rgba(198,168,0,.72) !important;
  border-radius:16px !important;
  background:linear-gradient(110deg,#fff20a 0%,#e5e100 43%,#646443 72%,#191b1d 100%) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 8px 20px rgba(0,0,0,.12) !important;
}
body[data-ui-mode="client"] .acquired-section-head .section-eyebrow{
  margin:0 0 6px !important;
  color:#222319 !important;
  -webkit-text-fill-color:#222319 !important;
  font-size:8px !important;
  font-weight:950 !important;
  letter-spacing:.09em !important;
}
body[data-ui-mode="client"] .acquired-section-head h2{
  margin:0 !important;
  font-family:'Cinzel',Georgia,serif !important;
  font-size:24px !important;
  line-height:1.1 !important;
  color:#090a09 !important;
  -webkit-text-fill-color:#090a09 !important;
}
body[data-ui-mode="client"] .acquired-section-head p{
  margin:5px 0 0 !important;
  font-size:9px !important;
  font-weight:850 !important;
  text-transform:uppercase !important;
  letter-spacing:.04em !important;
  color:#222319 !important;
  -webkit-text-fill-color:#222319 !important;
}
body[data-ui-mode="client"] .acquired-video-stack{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:13px !important;
}
body[data-ui-mode="client"] .acquired-video-item{
  overflow:hidden !important;
  padding:14px !important;
  border:1px solid rgba(188,160,0,.68) !important;
  border-radius:16px !important;
  background:linear-gradient(180deg,#15171a 0%,#0b0c0e 100%) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 8px 20px rgba(0,0,0,.15) !important;
}
body[data-ui-mode="client"] .acquired-video-title{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  min-width:0 !important;
}
body[data-ui-mode="client"] .acquired-video-title > span{
  display:grid !important;
  place-items:center !important;
  flex:0 0 30px !important;
  width:30px !important;
  height:30px !important;
  border-radius:50% !important;
  background:#eeea00 !important;
  color:#080808 !important;
  -webkit-text-fill-color:#080808 !important;
  font-size:9px !important;
  font-weight:950 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75),0 3px 0 #948100 !important;
}
body[data-ui-mode="client"] .acquired-video-title h3{
  min-width:0 !important;
  margin:0 !important;
  font-family:'Montserrat',Arial,sans-serif !important;
  font-size:14px !important;
  line-height:1.25 !important;
  font-weight:900 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
body[data-ui-mode="client"] .acquired-video-separator{
  height:1px !important;
  margin:11px 0 12px !important;
  background:linear-gradient(90deg,#eee700 0%,rgba(238,231,0,.38) 34%,rgba(255,255,255,.08) 100%) !important;
}
body[data-ui-mode="client"] .acquired-video-description{
  margin:0 0 11px !important;
  font-size:11px !important;
  line-height:1.5 !important;
  color:#d4d4ce !important;
  -webkit-text-fill-color:#d4d4ce !important;
}
body[data-ui-mode="client"] .acquired-video-item .content-main-video{
  margin:0 !important;
}
body[data-ui-mode="client"] .acquired-video-item .content-supports{
  margin-top:12px !important;
}
body[data-ui-mode="client"] .acquired-video-item .content-supports section + section{
  margin-top:10px !important;
}
@media(max-width:620px){
  body[data-ui-mode="client"] .acquired-section-head{padding:13px 14px !important;}
  body[data-ui-mode="client"] .acquired-section-head h2{font-size:21px !important;}
  body[data-ui-mode="client"] .acquired-video-item{padding:11px !important;border-radius:14px !important;}
  body[data-ui-mode="client"] .acquired-video-title h3{font-size:12px !important;}
}


/* V2.54 — Pratiques : niveau Yoga / Méditation > expert > famille > séances */
body[data-ui-mode="client"] .client-practice-page .practice-yoga-meditation-master{
  width:100% !important;
  min-height:62px !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-yoga-meditation-hub{
  display:grid;
  gap:10px;
  margin:2px 0 16px;
}
body[data-ui-mode="client"] .client-practice-page .practice-expert-entry{
  width:100%;
}
body[data-ui-mode="client"] .client-practice-page .practice-expert-entry .practice-subtab{
  width:100% !important;
  min-height:60px !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-family-row{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
  width:100% !important;
}
/* Ne pas déformer les deux choix Yoga / Méditation lorsqu'un choix est actif. */
body[data-ui-mode="client"] .client-practice-page .practice-family-row:has(>button:nth-child(1).active),
body[data-ui-mode="client"] .client-practice-page .practice-family-row:has(>button:nth-child(2).active){
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-family-row > .practice-family-tab{
  width:100% !important;
  min-width:0 !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-level-arrow.family-level{
  --subline-x:30%;
  height:12px !important;
  margin:-2px 0 10px !important;
  position:relative !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-level-arrow.family-level.align-left{--subline-x:30%;}
body[data-ui-mode="client"] .client-practice-page .practice-level-arrow.family-level.align-right{--subline-x:70%;}
body[data-ui-mode="client"] .client-practice-page .practice-level-arrow.family-level.align-center{--subline-x:50%;}
body[data-ui-mode="client"] .client-practice-page .practice-level-arrow.family-level::before{
  content:none !important;
  display:none !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-level-arrow.family-level::after{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  left:var(--subline-x) !important;
  top:50% !important;
  transform:translate(-50%,-50%) !important;
  width:92px !important;
  max-width:26vw !important;
  height:1px !important;
  margin:0 !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,rgba(214,181,91,0) 0%,rgba(214,181,91,.78) 50%,rgba(214,181,91,0) 100%) !important;
}


/* V2.55 — Pratiques : Yoga/Méditation taille normale + présentation expert Trigger Point */
body[data-ui-mode="client"] .client-practice-page .practice-yoga-meditation-entry{
  grid-template-columns:1fr !important;
  max-width:52% !important;
  margin:0 auto !important;
  width:100% !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-yoga-meditation-master{
  width:100% !important;
  min-height:56px !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-trigger-hub{
  display:grid !important;
  gap:10px !important;
  width:100% !important;
  margin:2px 0 16px !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-trigger-hub .practice-expert-entry,
body[data-ui-mode="client"] .client-practice-page .practice-trigger-hub .practice-expert-entry .practice-subtab{
  width:100% !important;
}

/* V2.56 — TABLETTE PREMIUM : même niveau visuel et tactile que la version mobile */
@media (min-width:761px) and (max-width:1280px){
  html,body{max-width:100%;overflow-x:hidden;}
  body[data-ui-mode="client"]{
    --li-tablet-content:min(1120px,calc(100vw - 48px));
    --li-tablet-card-radius:22px;
    --li-tablet-soft-shadow:0 14px 34px rgba(0,0,0,.085),0 2px 8px rgba(0,0,0,.035);
    background:
      linear-gradient(100deg,rgba(255,255,255,.62) 0%,rgba(255,255,255,.03) 8%,rgba(255,255,255,.30) 15%,rgba(255,255,255,.04) 23%,rgba(255,255,255,.20) 32%,rgba(255,255,255,.03) 42%,rgba(255,255,255,.14) 54%,rgba(255,255,255,.02) 66%,rgba(255,255,255,.12) 79%,rgba(255,255,255,.02) 90%),
      linear-gradient(180deg,#fff 0%,#f3f5f6 23%,#e8ebed 55%,#f7f8f8 100%) !important;
    background-attachment:fixed !important;
    padding-bottom:0 !important;
  }

  /* HEADER TABLETTE : compact, métal clair, identité forte */
  body[data-ui-mode="client"] .brandbar{
    position:sticky !important;
    top:0 !important;
    z-index:70 !important;
    min-height:98px !important;
    height:auto !important;
    padding:11px clamp(24px,4vw,48px) !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:18px !important;
    overflow:hidden !important;
    color:#111 !important;
    background:
      linear-gradient(100deg,rgba(255,255,255,.72) 0%,rgba(255,255,255,.06) 10%,rgba(255,255,255,.34) 19%,rgba(255,255,255,.05) 28%,rgba(255,255,255,.22) 40%,rgba(255,255,255,.03) 52%,rgba(255,255,255,.16) 66%,rgba(255,255,255,.02) 80%),
      linear-gradient(180deg,#fff 0%,#f0f3f4 46%,#e3e6e8 100%) !important;
    border-bottom:1px solid rgba(190,166,70,.55) !important;
    box-shadow:0 10px 28px rgba(0,0,0,.075) !important;
  }
  body[data-ui-mode="client"] .brandbar::after{
    height:2px !important;
    opacity:.9 !important;
    background:linear-gradient(90deg,transparent 4%,rgba(214,181,91,.15) 12%,#d6b55b 48%,rgba(214,181,91,.20) 88%,transparent 96%) !important;
  }
  body[data-ui-mode="client"] .admin-access{display:none !important;}
  body[data-ui-mode="client"] .brand-identity,
  body[data-ui-mode="client"] .brand-identity-centered{
    width:min(900px,100%) !important;
    justify-content:center !important;
    gap:16px !important;
  }
  body[data-ui-mode="client"] .brand-logo-wrap{
    width:72px !important;
    height:72px !important;
    filter:drop-shadow(0 8px 16px rgba(0,0,0,.16)) !important;
  }
  body[data-ui-mode="client"] .brandmark-vertical{align-items:flex-start !important;}
  body[data-ui-mode="client"] .brand-title{
    font-size:clamp(25px,3.2vw,34px) !important;
    line-height:1 !important;
    letter-spacing:.055em !important;
    color:#b18d2b !important;
    -webkit-text-fill-color:#b18d2b !important;
    text-shadow:0 1px 0 rgba(255,255,255,.7) !important;
  }
  body[data-ui-mode="client"] .brand-sub{
    margin-top:5px !important;
    font-size:clamp(13px,1.7vw,18px) !important;
    line-height:1.1 !important;
    letter-spacing:.16em !important;
    color:#1a1b19 !important;
    -webkit-text-fill-color:#1a1b19 !important;
    text-align:left !important;
  }
  body[data-ui-mode="client"] .brand-byline,
  body[data-ui-mode="client"] .brand-greeting{display:none !important;}

  /* CONTENEUR : large mais jamais étiré */
  body[data-ui-mode="client"] main{
    width:100% !important;
    max-width:1180px !important;
    margin:0 auto !important;
    padding:28px clamp(24px,4vw,46px) calc(132px + env(safe-area-inset-bottom)) !important;
    overflow:visible !important;
  }
  body[data-ui-mode="client"] #app{width:100% !important;max-width:100% !important;}

  /* NAVIGATION TABLETTE : dock premium, 5 onglets lisibles */
  body[data-ui-mode="client"] .mainnav[data-mode="client"]{
    position:fixed !important;
    left:50% !important;
    right:auto !important;
    top:auto !important;
    bottom:0 !important;
    transform:translateX(-50%) !important;
    z-index:100 !important;
    width:min(920px,calc(100vw - 40px)) !important;
    min-height:92px !important;
    display:grid !important;
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    grid-template-rows:1fr 14px !important;
    column-gap:9px !important;
    row-gap:3px !important;
    padding:9px 12px calc(8px + env(safe-area-inset-bottom)) !important;
    border:1px solid rgba(214,181,91,.40) !important;
    border-bottom:0 !important;
    border-radius:24px 24px 0 0 !important;
    overflow:visible !important;
    background:
      linear-gradient(180deg,rgba(255,255,255,.96) 0%,rgba(239,241,242,.97) 58%,rgba(221,224,226,.98) 100%) !important;
    box-shadow:0 -14px 38px rgba(0,0,0,.13),inset 0 1px 0 rgba(255,255,255,.94) !important;
    backdrop-filter:blur(18px) saturate(1.08) !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button{
    min-width:0 !important;
    min-height:63px !important;
    width:100% !important;
    padding:7px 7px 8px !important;
    border:1px solid rgba(17,17,17,.09) !important;
    border-radius:16px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:6px !important;
    overflow:hidden !important;
    background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(246,247,247,.78)) !important;
    color:#111 !important;
    box-shadow:0 4px 10px rgba(0,0,0,.045),inset 0 1px 0 rgba(255,255,255,.9) !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button::before{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    border-radius:inherit !important;
    pointer-events:none !important;
    opacity:0 !important;
    background:var(--li-premium-yellow-gradient,var(--li-selected-black-yellow)) !important;
    transition:opacity .16s ease !important;
    z-index:0 !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.active::before,
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.li-selected::before{opacity:1 !important;}
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.active,
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.li-selected{
    border-color:rgba(214,181,91,.95) !important;
    background:#ece700 !important;
    box-shadow:0 10px 22px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.32) !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] .nav-ico{
    display:grid !important;
    place-items:center !important;
    width:28px !important;
    height:28px !important;
    margin:0 !important;
    padding:2px !important;
    border-radius:9px !important;
    color:#090909 !important;
    -webkit-text-fill-color:#090909 !important;
    background:transparent !important;
    position:relative !important;
    z-index:1 !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] .nav-ico svg{
    display:block !important;
    width:22px !important;
    height:22px !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] .nav-ico svg *{stroke:#090909 !important;}
  body[data-ui-mode="client"] .mainnav[data-mode="client"] .nav-ico svg polygon{fill:#090909 !important;}
  body[data-ui-mode="client"] .mainnav[data-mode="client"] .nav-label{
    display:block !important;
    position:relative !important;
    z-index:1 !important;
    font-size:9px !important;
    line-height:1 !important;
    font-weight:900 !important;
    letter-spacing:.02em !important;
    text-transform:uppercase !important;
    color:#9b7a18 !important;
    -webkit-text-fill-color:#9b7a18 !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.active :is(.nav-label,.nav-ico),
  body[data-ui-mode="client"] .mainnav[data-mode="client"] > button.li-selected :is(.nav-label,.nav-ico){
    color:#090909 !important;
    -webkit-text-fill-color:#090909 !important;
  }
  body[data-ui-mode="client"] .mainnav[data-mode="client"] .mobile-nav-motto{
    display:block !important;
    grid-column:1/-1 !important;
    grid-row:2 !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
    align-self:center !important;
    justify-self:center !important;
    color:#9c7a17 !important;
    -webkit-text-fill-color:#9c7a17 !important;
    font:900 8px/1 'Montserrat',Arial,sans-serif !important;
    letter-spacing:.22em !important;
    white-space:nowrap !important;
  }

  /* TYPO / TITRES */
  body[data-ui-mode="client"] :is(.client-centered-heading,.music-page-heading,.metrics-page-heading,.client-calendar-head){
    width:100% !important;
    max-width:920px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:center !important;
  }
  body[data-ui-mode="client"] :is(.client-centered-heading,.music-page-heading,.metrics-page-heading,.client-calendar-head) .page-title,
  body[data-ui-mode="client"] .client-calendar-head .page-title{
    font-size:clamp(30px,4vw,42px) !important;
    line-height:1.05 !important;
    letter-spacing:.01em !important;
    margin-bottom:8px !important;
    text-shadow:0 1px 1px rgba(0,0,0,.16) !important;
  }
  body[data-ui-mode="client"] :is(.client-centered-heading,.music-page-heading,.metrics-page-heading,.client-calendar-head) .page-intro{
    max-width:760px !important;
    margin:0 auto 24px !important;
    font-size:13px !important;
    line-height:1.55 !important;
    color:#60625d !important;
  }
  body[data-ui-mode="client"] .client-top-greeting{
    max-width:980px !important;
    margin:0 auto 12px !important;
    font-size:13px !important;
    text-align:center !important;
  }

  /* BLOCS PRINCIPAUX : profondeur mobile adaptée tablette */
  body[data-ui-mode="client"] :is(
    .daily-checkin-card,.momentum-card,.movement-card,.client-home-hero,
    .daycol,.calendar-to-finish,.featured-metric-focus,.metric-category-details,
    .music-album-card,.contents-hub-card,.client-resource-card,.acquired-category-block,
    .acquired-video-item,.practice-session-stage,.practice-choice-hint
  ){
    border-radius:var(--li-tablet-card-radius) !important;
    box-shadow:var(--li-tablet-soft-shadow) !important;
  }

  /* ÉTAT + DISCIPLINE : largeur maîtrisée, lisibilité accrue */
  body[data-ui-mode="client"] .daily-checkin-card,
  body[data-ui-mode="client"] .momentum-card{
    width:100% !important;
    max-width:980px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  body[data-ui-mode="client"] .daily-checkin-card{padding:22px 26px !important;}
  body[data-ui-mode="client"] .sequential-quality{
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    gap:10px !important;
  }
  body[data-ui-mode="client"] .sequential-quality .mood-choice{min-height:54px !important;font-size:11px !important;}
  body[data-ui-mode="client"] .momentum-card{padding:22px 24px !important;}
  body[data-ui-mode="client"] .momentum-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:12px !important;}
  body[data-ui-mode="client"] .momentum-rules{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:12px !important;}

  /* ACCUEIL / AGENDA */
  body[data-ui-mode="client"] .client-home-hero{
    width:100% !important;
    max-width:1040px !important;
    margin:6px auto 24px !important;
    padding:24px 28px !important;
    min-height:124px !important;
    align-items:center !important;
  }
  body[data-ui-mode="client"] .client-home-hero h1{font-size:clamp(30px,4vw,40px) !important;}
  body[data-ui-mode="client"] .client-home-hero p{font-size:13px !important;}
  body[data-ui-mode="client"] .client-home-add{min-height:50px !important;padding:0 20px !important;}
  body[data-ui-mode="client"] .client-home-section,
  body[data-ui-mode="client"] .movement-bottom-zone{
    width:100% !important;
    max-width:1040px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  body[data-ui-mode="client"] .home-heading{margin-bottom:14px !important;}
  body[data-ui-mode="client"] .home-heading h2{font-size:26px !important;}
  body[data-ui-mode="client"] .actions-list{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:12px !important;}
  body[data-ui-mode="client"] .action-card{grid-template-columns:72px 1fr auto !important;min-height:90px !important;}
  body[data-ui-mode="client"] .today-done-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:12px !important;}
  body[data-ui-mode="client"] .upcoming-days{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:14px !important;}
  body[data-ui-mode="client"] .upcoming-day{padding:16px !important;border-radius:18px !important;}

  body[data-ui-mode="client"] .client-calendar-head{
    max-width:1040px !important;
    margin-bottom:20px !important;
  }
  body[data-ui-mode="client"] .client-calendar-tools{display:none !important;}
  body[data-ui-mode="client"] .calendar-to-finish{
    width:100% !important;
    max-width:1040px !important;
    margin:0 auto 18px !important;
    padding:18px !important;
  }
  body[data-ui-mode="client"] .calendar-to-finish-list{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px !important;}
  body[data-ui-mode="client"] .calendar-to-finish-card{min-height:82px !important;}
  body[data-ui-mode="client"] .daystrip.client-primary-calendar{
    width:100% !important;
    max-width:1040px !important;
    margin:0 auto 18px !important;
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:14px !important;
    align-items:stretch !important;
  }
  body[data-ui-mode="client"] .client-primary-calendar .daycol{
    min-width:0 !important;
    min-height:250px !important;
    padding:19px 18px 21px !important;
  }
  body[data-ui-mode="client"] .client-primary-calendar .daycol h3{font-size:18px !important;}
  body[data-ui-mode="client"] .client-primary-calendar .mini-action{min-height:66px !important;padding:12px 12px !important;}
  body[data-ui-mode="client"] .calendar-inline-tools{
    grid-column:1/-1 !important;
    order:4 !important;
    display:grid !important;
    grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) !important;
    gap:10px !important;
    width:100% !important;
    margin:0 !important;
    padding:9px !important;
    border-radius:20px !important;
  }
  body[data-ui-mode="client"] .calendar-inline-tools .calendar-tools-secondary{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:9px !important;
  }
  body[data-ui-mode="client"] :is(.calendar-activity-main,#addActivityMobile,.external-calendar-trigger,#enableNotifMobile){min-height:56px !important;}

  /* MOUVEMENT */
  body[data-ui-mode="client"] .movement-card{padding:20px 22px !important;}
  body[data-ui-mode="client"] .movement-card-body{grid-template-columns:190px minmax(0,1fr) !important;gap:24px !important;align-items:center !important;}

  /* GRAPHIQUES */
  body[data-ui-mode="client"] .client-metrics-page,
  body[data-ui-mode="client"] .metrics-dashboard{width:100% !important;max-width:1040px !important;margin-left:auto !important;margin-right:auto !important;}
  body[data-ui-mode="client"] .featured-metric-tabs{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:10px !important;}
  body[data-ui-mode="client"] .featured-metric-tab{min-height:48px !important;font-size:11px !important;border-radius:13px !important;}
  body[data-ui-mode="client"] .featured-metric-focus{padding:20px !important;}
  body[data-ui-mode="client"] .featured-metric-focus .featured-chart{height:330px !important;}
  body[data-ui-mode="client"] .metric-categories-wrap{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:12px !important;}
  body[data-ui-mode="client"] .metric-category-details{min-width:0 !important;}
  body[data-ui-mode="client"] .metric-category-summary{min-height:64px !important;padding:13px 15px !important;}
  body[data-ui-mode="client"] .metric-category-summary b{font-size:18px !important;}
  body[data-ui-mode="client"] .metric-category-details .metric-category-list{grid-template-columns:1fr !important;padding:0 10px 10px !important;}

  /* MUSIQUES */
  body[data-ui-mode="client"] .client-music-page{width:100% !important;max-width:1040px !important;margin:0 auto !important;}
  body[data-ui-mode="client"] .music-album-card{padding:20px !important;margin-bottom:18px !important;}
  body[data-ui-mode="client"] .music-album-head{align-items:center !important;gap:18px !important;}
  body[data-ui-mode="client"] .music-album-head h2{font-size:26px !important;}
  body[data-ui-mode="client"] .music-track-list{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px !important;}
  body[data-ui-mode="client"] .music-track{min-width:0 !important;min-height:76px !important;border-radius:14px !important;}
  body[data-ui-mode="client"] .global-music-player{
    bottom:105px !important;
    width:min(900px,calc(100vw - 64px)) !important;
    border-radius:18px !important;
  }
  body[data-ui-mode="client"].music-playing-visible main{padding-bottom:210px !important;}

  /* PRATIQUES */
  body[data-ui-mode="client"] .client-practice-page{width:100% !important;max-width:1040px !important;margin:0 auto !important;}
  body[data-ui-mode="client"] .practice-dynamic-root{width:100% !important;max-width:960px !important;margin:0 auto !important;}
  body[data-ui-mode="client"] .practice-section-tabs{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:12px !important;
    width:100% !important;
  }
  body[data-ui-mode="client"] .practice-section-tabs > button{min-height:76px !important;font-size:13px !important;border-radius:18px !important;}
  /* Sur tablette, la hiérarchie reste stable : pas de colonne qui écrase sa voisine. */
  body[data-ui-mode="client"] .client-practice-page .practice-section-tabs:has(>button:nth-child(1).active),
  body[data-ui-mode="client"] .client-practice-page .practice-section-tabs:has(>button:nth-child(2).active),
  body[data-ui-mode="client"] .client-practice-page .practice-section-tabs:has(>button:nth-child(3).active){grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
  body[data-ui-mode="client"] .practice-subtabs-shell,
  body[data-ui-mode="client"] .practice-yoga-meditation-hub,
  body[data-ui-mode="client"] .practice-trigger-hub{max-width:900px !important;margin-left:auto !important;margin-right:auto !important;}
  body[data-ui-mode="client"] .practice-subtabs-row{gap:12px !important;}
  body[data-ui-mode="client"] .practice-subtab,
  body[data-ui-mode="client"] .practice-family-tab,
  body[data-ui-mode="client"] .practice-child-tab{min-height:62px !important;font-size:12px !important;border-radius:16px !important;}
  body[data-ui-mode="client"] .practice-subtabs-row.single{max-width:48% !important;}
  body[data-ui-mode="client"] .practice-yoga-meditation-entry{max-width:48% !important;}
  body[data-ui-mode="client"] .practice-expert-entry .practice-subtab{min-height:66px !important;}
  body[data-ui-mode="client"] .practice-child-tabs{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:12px !important;}
  body[data-ui-mode="client"] .client-practice-page .practice-child-tabs:has(>button:nth-child(2n-1).active),
  body[data-ui-mode="client"] .client-practice-page .practice-child-tabs:has(>button:nth-child(2n).active){grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  body[data-ui-mode="client"] .practice-client-content-list{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px !important;}

  /* CONTENUS / MES ACQUIS / RESSOURCES */
  body[data-ui-mode="client"] .client-contents-page,
  body[data-ui-mode="client"] .client-acquired-page,
  body[data-ui-mode="client"] .client-resources-page{
    width:100% !important;
    max-width:1040px !important;
    margin:0 auto !important;
  }
  body[data-ui-mode="client"] .contents-hub-grid{
    width:100% !important;
    max-width:880px !important;
    margin:0 auto !important;
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:16px !important;
  }
  body[data-ui-mode="client"] .contents-hub-card{min-height:142px !important;padding:22px !important;}
  body[data-ui-mode="client"] .contents-hub-copy b{font-size:20px !important;}
  body[data-ui-mode="client"] .contents-hub-copy small{font-size:11px !important;line-height:1.45 !important;}
  body[data-ui-mode="client"] .contents-back-btn{min-height:44px !important;padding:9px 14px !important;border-radius:12px !important;}
  body[data-ui-mode="client"] .client-acquired-wrap{max-width:920px !important;margin-left:auto !important;margin-right:auto !important;}
  body[data-ui-mode="client"] .pillar-tabs{max-width:700px !important;margin-left:auto !important;margin-right:auto !important;gap:12px !important;}
  body[data-ui-mode="client"] .pillar-tabs > button{min-height:58px !important;font-size:12px !important;border-radius:15px !important;}
  body[data-ui-mode="client"] .acquired-subcategory-stack{gap:12px !important;}
  body[data-ui-mode="client"] .acquired-category-summary{min-height:72px !important;padding:14px 18px !important;}
  body[data-ui-mode="client"] .acquired-category-copy b{font-size:20px !important;}
  body[data-ui-mode="client"] .acquired-category-lessons{padding:10px 12px 13px !important;}
  body[data-ui-mode="client"] .acquired-lesson-row{min-height:62px !important;padding:10px 12px !important;}
  body[data-ui-mode="client"] .acquired-section-view{max-width:940px !important;}
  body[data-ui-mode="client"] .acquired-section-head{padding:20px 22px !important;border-radius:19px !important;}
  body[data-ui-mode="client"] .acquired-section-head h2{font-size:29px !important;}
  body[data-ui-mode="client"] .acquired-video-item{padding:18px !important;}
  body[data-ui-mode="client"] .acquired-video-title h3{font-size:16px !important;}
  body[data-ui-mode="client"] .acquired-video-player,
  body[data-ui-mode="client"] .acquired-video-item .content-main-video{max-width:860px !important;margin-left:auto !important;margin-right:auto !important;}
  body[data-ui-mode="client"] .client-resource-list{
    max-width:940px !important;
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:14px !important;
  }
  body[data-ui-mode="client"] .client-resource-card{min-height:130px !important;padding:18px !important;}

  /* MODALES : confort tablette, jamais énorme ni collé aux bords */
  body[data-ui-mode="client"] .modal{padding:26px !important;place-items:center !important;}
  body[data-ui-mode="client"] .modal-card{
    width:min(920px,calc(100vw - 52px)) !important;
    max-height:calc(100dvh - 52px) !important;
    border-radius:24px !important;
    padding:28px !important;
    box-shadow:0 32px 90px rgba(0,0,0,.30) !important;
  }
  body[data-ui-mode="client"] .modal-card.activity-premium-frame{width:min(780px,calc(100vw - 64px)) !important;}
  body[data-ui-mode="client"] .detail-context{top:-28px !important;border-radius:20px 20px 0 0 !important;}

  /* Cibles tactiles */
  body[data-ui-mode="client"] :is(button,.btn,[role="button"],summary){touch-action:manipulation;}
  body[data-ui-mode="client"] :is(.btn,.metric-pin,.music-track-play,.acquired-lesson-open){min-height:42px;}
}

/* TABLETTE PORTRAIT : garder de l'air et une hiérarchie verticale */
@media (min-width:761px) and (max-width:900px){
  body[data-ui-mode="client"] main{padding-left:24px !important;padding-right:24px !important;}
  body[data-ui-mode="client"] .actions-list{grid-template-columns:1fr !important;}
  body[data-ui-mode="client"] .metric-categories-wrap{grid-template-columns:1fr !important;}
  body[data-ui-mode="client"] .music-track-list{grid-template-columns:1fr !important;}
  body[data-ui-mode="client"] .calendar-to-finish-list{grid-template-columns:1fr !important;}
  body[data-ui-mode="client"] .movement-card-body{grid-template-columns:160px minmax(0,1fr) !important;gap:18px !important;}
  body[data-ui-mode="client"] .mainnav[data-mode="client"]{width:calc(100vw - 28px) !important;column-gap:7px !important;}
  body[data-ui-mode="client"] .mainnav[data-mode="client"] .nav-label{font-size:8.2px !important;}
}

/* TABLETTE PAYSAGE : exploiter la largeur, sans effet desktop */
@media (min-width:901px) and (max-width:1280px) and (orientation:landscape){
  body[data-ui-mode="client"] main{max-width:1220px !important;padding-left:38px !important;padding-right:38px !important;}
  body[data-ui-mode="client"] .music-track-list{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  body[data-ui-mode="client"] .client-resource-list{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  body[data-ui-mode="client"] .contents-hub-grid{max-width:920px !important;}
}

/* ============================================================
   V2.57 — PC PREMIUM ADAPTATIF
   Desktop = vraie interface dédiée, sans modifier mobile/tablette.
   Client : navigation latérale, contenu large, lecture confortable.
   Mentor : cockpit de travail, navigation latérale, densité maîtrisée.
   ============================================================ */
@media (min-width:1281px){
  html,body{max-width:100%;overflow-x:hidden;}
  body{
    --li-desktop-gold:#d6b55b;
    --li-desktop-gold-deep:#9a761d;
    --li-desktop-ink:#141514;
    --li-desktop-line:rgba(26,27,25,.10);
    --li-desktop-soft:0 16px 42px rgba(0,0,0,.085),0 3px 10px rgba(0,0,0,.035);
    --li-desktop-strong:0 24px 70px rgba(0,0,0,.14),0 5px 16px rgba(0,0,0,.055);
    --li-desktop-sidebar:248px;
    min-height:100dvh;
  }

  /* ---------- HEADER COMMUN PC ---------- */
  body .brandbar{
    position:sticky !important;
    top:0 !important;
    z-index:160 !important;
    min-height:104px !important;
    height:104px !important;
    padding:10px 30px 10px 28px !important;
    overflow:visible !important;
    border-bottom:1px solid rgba(214,181,91,.55) !important;
    box-shadow:0 10px 30px rgba(0,0,0,.08) !important;
  }
  body .brand-identity,
  body .brand-identity-centered{
    gap:14px !important;
    min-width:0 !important;
  }
  body .brand-logo-wrap{
    width:70px !important;
    height:70px !important;
    flex:0 0 70px !important;
    filter:drop-shadow(0 8px 17px rgba(0,0,0,.16)) !important;
  }
  body .brand-title{
    font-size:31px !important;
    line-height:1 !important;
    letter-spacing:.065em !important;
  }
  body .brand-sub{
    margin-top:5px !important;
    font-size:16px !important;
    line-height:1.05 !important;
    letter-spacing:.16em !important;
    text-align:left !important;
  }
  body .brand-byline,
  body .brand-greeting{display:none !important;}
  body .build-badge{
    position:absolute !important;
    left:calc(var(--li-desktop-sidebar) + 18px) !important;
    bottom:8px !important;
    z-index:2 !important;
    opacity:.66 !important;
    font-size:7px !important;
    letter-spacing:.08em !important;
    padding:3px 7px !important;
    border-radius:999px !important;
  }

  /* ---------- NAVIGATION LATÉRALE PC COMMUNE ---------- */
  body .mainnav{
    position:fixed !important;
    left:0 !important;
    top:104px !important;
    bottom:0 !important;
    right:auto !important;
    z-index:150 !important;
    width:var(--li-desktop-sidebar) !important;
    height:calc(100dvh - 104px) !important;
    min-height:0 !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    gap:8px !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    padding:20px 14px 70px !important;
    border:0 !important;
    border-right:1px solid rgba(214,181,91,.24) !important;
    border-radius:0 !important;
    background-color:#0d0e0f !important;
    background-image:
      linear-gradient(180deg,rgba(7,7,8,.74),rgba(10,11,12,.88)),
      url('/header-texture-v127.jpg') !important;
    background-position:center !important;
    background-size:cover !important;
    box-shadow:14px 0 36px rgba(0,0,0,.12),inset -1px 0 0 rgba(255,255,255,.025) !important;
    backdrop-filter:none !important;
    transform:none !important;
  }
  body .mainnav::-webkit-scrollbar{width:5px !important;display:block !important;}
  body .mainnav::-webkit-scrollbar-thumb{background:rgba(214,181,91,.28);border-radius:99px;}
  body .mainnav > button{
    position:relative !important;
    flex:0 0 auto !important;
    width:100% !important;
    min-height:62px !important;
    display:grid !important;
    grid-template-columns:42px minmax(0,1fr) !important;
    align-items:center !important;
    justify-items:start !important;
    gap:11px !important;
    margin:0 !important;
    padding:9px 12px !important;
    border:1px solid rgba(255,255,255,.065) !important;
    border-radius:15px !important;
    background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018)) !important;
    color:#e9e9e4 !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
    overflow:hidden !important;
    text-align:left !important;
    transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease !important;
  }
  body .mainnav > button:hover{
    transform:translateX(3px) !important;
    border-color:rgba(214,181,91,.42) !important;
    background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.028)) !important;
    box-shadow:0 9px 24px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.05) !important;
  }
  body .mainnav > button .nav-ico{
    display:grid !important;
    place-items:center !important;
    width:38px !important;
    height:38px !important;
    margin:0 !important;
    border-radius:11px !important;
    background:rgba(255,255,255,.055) !important;
    color:#d6b55b !important;
    -webkit-text-fill-color:#d6b55b !important;
    font-size:17px !important;
    line-height:1 !important;
  }
  body .mainnav > button .nav-ico svg{display:block !important;width:21px !important;height:21px !important;}
  body .mainnav > button .nav-ico svg *{stroke:#d6b55b !important;}
  body .mainnav > button .nav-label{
    display:block !important;
    width:100% !important;
    position:relative !important;
    z-index:2 !important;
    color:#efefe9 !important;
    -webkit-text-fill-color:#efefe9 !important;
    font-size:10.5px !important;
    line-height:1.15 !important;
    font-weight:800 !important;
    letter-spacing:.055em !important;
    text-transform:uppercase !important;
    text-align:left !important;
    white-space:normal !important;
  }
  body .mainnav > button.active,
  body .mainnav > button.li-selected{
    transform:none !important;
    border:1px solid rgba(18,18,16,.72) !important;
    background-color:#e8e500 !important;
    background-image:url('/yellow-gradient-v192.png') !important;
    background-size:100% 100% !important;
    color:#090909 !important;
    box-shadow:0 13px 28px rgba(0,0,0,.23),inset 0 1px 0 rgba(255,255,255,.34) !important;
  }
  body .mainnav > button.active .nav-ico,
  body .mainnav > button.li-selected .nav-ico{
    background:rgba(0,0,0,.075) !important;
    color:#090909 !important;
    -webkit-text-fill-color:#090909 !important;
  }
  body .mainnav > button.active .nav-ico svg *,
  body .mainnav > button.li-selected .nav-ico svg *{stroke:#090909 !important;}
  body .mainnav > button.active .nav-label,
  body .mainnav > button.li-selected .nav-label{
    color:#090909 !important;
    -webkit-text-fill-color:#090909 !important;
  }
  body .mainnav .mobile-nav-motto{
    display:block !important;
    position:absolute !important;
    left:18px !important;
    right:18px !important;
    bottom:24px !important;
    margin:0 !important;
    padding-top:15px !important;
    border-top:1px solid rgba(214,181,91,.18) !important;
    color:#d6b55b !important;
    -webkit-text-fill-color:#d6b55b !important;
    font:800 8px/1 'Montserrat',Arial,sans-serif !important;
    letter-spacing:.23em !important;
    text-align:center !important;
    white-space:nowrap !important;
  }

  /* ---------- ZONE DE TRAVAIL PC COMMUNE ---------- */
  body main{
    width:calc(100% - var(--li-desktop-sidebar)) !important;
    max-width:none !important;
    min-height:calc(100dvh - 104px) !important;
    margin:0 0 0 var(--li-desktop-sidebar) !important;
    padding:36px clamp(30px,3vw,54px) 72px !important;
    overflow:visible !important;
  }
  body #app{
    width:100% !important;
    max-width:1660px !important;
    margin:0 auto !important;
  }
  body .page-title{font-size:clamp(34px,2.25vw,44px) !important;line-height:1.08 !important;}
  body .page-intro{font-size:13px !important;line-height:1.65 !important;max-width:820px;}
  body .btn{min-height:42px;padding:10px 15px;border-radius:11px;}
  body .btn.small{min-height:36px;padding:7px 11px;}
  body .card{border-radius:18px;box-shadow:var(--li-desktop-soft);}
  body .card:hover{box-shadow:var(--li-desktop-strong);}
  body .toolbar{gap:12px;margin-bottom:22px;}

  /* ---------- CLIENT PC ---------- */
  body[data-ui-mode="client"]{
    background:
      linear-gradient(105deg,rgba(255,255,255,.70) 0%,rgba(255,255,255,.04) 12%,rgba(255,255,255,.34) 24%,rgba(255,255,255,.04) 37%,rgba(255,255,255,.22) 54%,rgba(255,255,255,.03) 68%,rgba(255,255,255,.15) 82%,rgba(255,255,255,.03) 94%),
      linear-gradient(180deg,#fbfcfc 0%,#eef1f2 36%,#e6eaec 68%,#f5f6f7 100%) !important;
    background-attachment:fixed !important;
    color:#171815 !important;
  }
  body[data-ui-mode="client"] .brandbar{
    justify-content:flex-start !important;
    background:
      linear-gradient(100deg,rgba(255,255,255,.82) 0%,rgba(255,255,255,.10) 11%,rgba(255,255,255,.42) 22%,rgba(255,255,255,.06) 35%,rgba(255,255,255,.24) 53%,rgba(255,255,255,.04) 70%),
      linear-gradient(180deg,#fff 0%,#f0f3f4 49%,#e3e7e9 100%) !important;
    color:#111 !important;
  }
  body[data-ui-mode="client"] .brandbar::after{
    height:2px !important;
    background:linear-gradient(90deg,transparent 2%,rgba(214,181,91,.22) 14%,#d6b55b 47%,rgba(214,181,91,.28) 86%,transparent 98%) !important;
    opacity:1 !important;
  }
  body[data-ui-mode="client"] .admin-access{display:none !important;}
  body[data-ui-mode="client"] .brand-title{color:#b18d2b !important;-webkit-text-fill-color:#b18d2b !important;text-shadow:0 1px 0 rgba(255,255,255,.72) !important;}
  body[data-ui-mode="client"] .brand-sub{color:#181916 !important;-webkit-text-fill-color:#181916 !important;}
  body[data-ui-mode="client"] .build-badge{display:none !important;}

  body[data-ui-mode="client"] main{background:transparent !important;}
  body[data-ui-mode="client"] #app{max-width:1500px !important;}

  /* Titres client : alignement desktop plus éditorial */
  body[data-ui-mode="client"] :is(.client-centered-heading,.music-page-heading,.metrics-page-heading,.client-calendar-head){
    width:100% !important;
    max-width:none !important;
    margin-left:0 !important;
    margin-right:0 !important;
    text-align:left !important;
  }
  body[data-ui-mode="client"] :is(.client-centered-heading,.music-page-heading,.metrics-page-heading,.client-calendar-head) .page-title{
    font-size:clamp(34px,2.3vw,44px) !important;
    line-height:1.04 !important;
    margin-bottom:8px !important;
  }
  body[data-ui-mode="client"] :is(.client-centered-heading,.music-page-heading,.metrics-page-heading,.client-calendar-head) .page-intro{
    max-width:780px !important;
    margin:0 0 24px !important;
    font-size:13px !important;
    line-height:1.58 !important;
  }
  body[data-ui-mode="client"] .client-top-greeting{
    margin:0 0 14px !important;
    font-size:14px !important;
    letter-spacing:.025em !important;
  }

  /* Agenda : véritable cockpit 2 colonnes en haut, 3 jours très lisibles ensuite */
  body[data-ui-mode="client"][data-ui-page="calendar"] #app{
    display:grid !important;
    grid-template-columns:repeat(12,minmax(0,1fr)) !important;
    gap:18px 20px !important;
    align-items:start !important;
  }
  body[data-ui-mode="client"][data-ui-page="calendar"] #app > .client-top-greeting{grid-column:1/-1 !important;margin-bottom:-2px !important;}
  body[data-ui-mode="client"][data-ui-page="calendar"] #app > .daily-checkin-card{grid-column:1/7 !important;margin:0 !important;height:100% !important;min-height:250px !important;}
  body[data-ui-mode="client"][data-ui-page="calendar"] #app > .momentum-card{grid-column:7/-1 !important;margin:0 !important;height:100% !important;min-height:250px !important;}
  body[data-ui-mode="client"][data-ui-page="calendar"] #app > .client-calendar-head,
  body[data-ui-mode="client"][data-ui-page="calendar"] #app > .calendar-to-finish,
  body[data-ui-mode="client"][data-ui-page="calendar"] #app > .daystrip,
  body[data-ui-mode="client"][data-ui-page="calendar"] #app > .movement-bottom-zone{grid-column:1/-1 !important;}
  body[data-ui-mode="client"] .daily-checkin-card,
  body[data-ui-mode="client"] .momentum-card,
  body[data-ui-mode="client"] .movement-card{
    border-radius:22px !important;
    box-shadow:var(--li-desktop-soft) !important;
  }
  body[data-ui-mode="client"] .client-calendar-head{
    margin:12px 0 0 !important;
    padding:18px 20px !important;
    border:1px solid rgba(214,181,91,.19) !important;
    border-radius:20px !important;
    background:rgba(255,255,255,.58) !important;
    box-shadow:0 12px 32px rgba(0,0,0,.055),inset 0 1px 0 rgba(255,255,255,.9) !important;
    backdrop-filter:blur(10px) !important;
    align-items:center !important;
  }
  body[data-ui-mode="client"] .client-calendar-tools.calendar-tools-stacked{
    width:min(390px,35vw) !important;
    flex:0 0 auto !important;
  }
  body[data-ui-mode="client"] .client-calendar-tools :is(.calendar-activity-main,.external-calendar-trigger,#enableNotif){min-height:48px !important;border-radius:13px !important;}
  body[data-ui-mode="client"] .calendar-to-finish{border-radius:20px !important;padding:20px !important;}
  body[data-ui-mode="client"] .calendar-to-finish-list{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:11px !important;}
  body[data-ui-mode="client"] .calendar-to-finish-card{min-height:82px !important;}
  body[data-ui-mode="client"] .daystrip.client-primary-calendar{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:18px !important;
    margin:0 !important;
  }
  body[data-ui-mode="client"] .client-primary-calendar .daycol{
    min-height:300px !important;
    padding:22px !important;
    border-radius:22px !important;
    box-shadow:var(--li-desktop-soft) !important;
  }
  body[data-ui-mode="client"] .client-primary-calendar .daycol h3{font-size:20px !important;margin-bottom:14px !important;}
  body[data-ui-mode="client"] .client-primary-calendar .client-day-label{font-size:10px !important;letter-spacing:.14em !important;}
  body[data-ui-mode="client"] .client-primary-calendar .mini-action{
    min-height:70px !important;
    padding:14px 15px !important;
    margin:9px 0 !important;
    border-radius:14px !important;
  }
  body[data-ui-mode="client"] .client-primary-calendar .mini-action b{font-size:13px !important;}
  body[data-ui-mode="client"] .movement-card{padding:24px 26px !important;}
  body[data-ui-mode="client"] .movement-card-body{grid-template-columns:220px minmax(0,1fr) !important;gap:32px !important;}

  /* Graphiques : focus large + catégories en 3 colonnes */
  body[data-ui-mode="client"] .client-metrics-page,
  body[data-ui-mode="client"] .metrics-dashboard{max-width:1500px !important;margin:0 !important;}
  body[data-ui-mode="client"] .featured-metric-switcher{max-width:1180px !important;margin-left:auto !important;margin-right:auto !important;}
  body[data-ui-mode="client"] .featured-metric-tabs{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:12px !important;}
  body[data-ui-mode="client"] .featured-metric-tab{min-height:52px !important;border-radius:14px !important;font-size:11px !important;}
  body[data-ui-mode="client"] .featured-metric-focus{padding:26px !important;border-radius:22px !important;}
  body[data-ui-mode="client"] .featured-metric-focus .featured-chart{height:390px !important;}
  body[data-ui-mode="client"] .metric-categories-wrap{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:14px !important;
    align-items:start !important;
  }
  body[data-ui-mode="client"] .metric-category-summary{min-height:70px !important;padding:14px 16px !important;border-radius:17px !important;}
  body[data-ui-mode="client"] .metric-category-summary b{font-size:18px !important;}
  body[data-ui-mode="client"] .metric-category-details .metric-category-list{grid-template-columns:1fr !important;}

  /* Musiques : grande lecture, 3 pistes par rangée */
  body[data-ui-mode="client"] .client-music-page{max-width:1500px !important;margin:0 !important;}
  body[data-ui-mode="client"] .music-album-card{padding:25px !important;margin-bottom:20px !important;border-radius:22px !important;}
  body[data-ui-mode="client"] .music-album-head{align-items:center !important;gap:24px !important;}
  body[data-ui-mode="client"] .music-album-head h2{font-size:30px !important;}
  body[data-ui-mode="client"] .music-track-list{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:11px !important;}
  body[data-ui-mode="client"] .music-track{min-width:0 !important;min-height:82px !important;border-radius:14px !important;}
  body[data-ui-mode="client"] .global-music-player{
    left:calc(var(--li-desktop-sidebar) + 50%) !important;
    transform:translateX(calc(-50% - var(--li-desktop-sidebar)/2)) !important;
    bottom:24px !important;
    width:min(980px,calc(100vw - var(--li-desktop-sidebar) - 100px)) !important;
    border-radius:18px !important;
  }
  body[data-ui-mode="client"].music-playing-visible main{padding-bottom:170px !important;}

  /* Pratiques : navigation hiérarchique large sans boutons géants */
  body[data-ui-mode="client"] .client-practice-page{max-width:1500px !important;margin:0 !important;}
  body[data-ui-mode="client"] .practice-dynamic-root{max-width:1180px !important;margin:0 auto !important;}
  body[data-ui-mode="client"] .practice-section-tabs{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:14px !important;
    max-width:none !important;
  }
  body[data-ui-mode="client"] .practice-section-tabs > button,
  body[data-ui-mode="client"] .client-practice-page .practice-section-tabs > button:nth-child(3):last-child{
    grid-column:auto !important;
    width:100% !important;
    min-height:76px !important;
    border-radius:18px !important;
    justify-self:stretch !important;
    font-size:13px !important;
  }
  body[data-ui-mode="client"] .client-practice-page .practice-section-tabs:has(>button.active){grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
  body[data-ui-mode="client"] .practice-subtabs-shell,
  body[data-ui-mode="client"] .practice-yoga-meditation-hub,
  body[data-ui-mode="client"] .practice-trigger-hub{max-width:1040px !important;margin-left:auto !important;margin-right:auto !important;}
  body[data-ui-mode="client"] .practice-subtabs-row{gap:14px !important;}
  body[data-ui-mode="client"] .practice-subtab,
  body[data-ui-mode="client"] .practice-family-tab,
  body[data-ui-mode="client"] .practice-child-tab{min-height:64px !important;border-radius:16px !important;font-size:12px !important;}
  body[data-ui-mode="client"] .practice-subtabs-row.single,
  body[data-ui-mode="client"] .practice-yoga-meditation-entry{max-width:47% !important;}
  body[data-ui-mode="client"] .practice-child-tabs{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:12px !important;}
  body[data-ui-mode="client"] .client-practice-page .practice-child-tabs:has(>button.active){grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
  body[data-ui-mode="client"] .practice-client-content-list{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:12px !important;}

  /* Contenus / Acquis / Ressources : lecture éditoriale */
  body[data-ui-mode="client"] :is(.client-contents-page,.client-acquired-page,.client-resources-page){max-width:1500px !important;margin:0 !important;}
  body[data-ui-mode="client"] .contents-hub-grid{
    width:100% !important;
    max-width:1050px !important;
    margin:34px auto 0 !important;
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:20px !important;
  }
  body[data-ui-mode="client"] .contents-hub-card{min-height:170px !important;padding:26px !important;border-radius:20px !important;}
  body[data-ui-mode="client"] .contents-hub-copy b{font-size:23px !important;}
  body[data-ui-mode="client"] .contents-hub-copy small{font-size:12px !important;line-height:1.55 !important;}
  body[data-ui-mode="client"] .client-acquired-wrap{max-width:1120px !important;margin:0 auto !important;}
  body[data-ui-mode="client"] .pillar-tabs{max-width:760px !important;margin:0 auto 16px !important;gap:14px !important;}
  body[data-ui-mode="client"] .pillar-tabs > button{min-height:60px !important;border-radius:15px !important;}
  body[data-ui-mode="client"] .acquired-subcategory-stack{gap:13px !important;}
  body[data-ui-mode="client"] .acquired-category-summary{min-height:74px !important;padding:15px 20px !important;border-radius:17px !important;}
  body[data-ui-mode="client"] .acquired-category-copy b{font-size:21px !important;}
  body[data-ui-mode="client"] .acquired-category-lessons{padding:11px 13px 14px !important;}
  body[data-ui-mode="client"] .acquired-lesson-row{min-height:64px !important;padding:10px 14px !important;}
  body[data-ui-mode="client"] .acquired-section-view{max-width:1180px !important;}
  body[data-ui-mode="client"] .acquired-section-head{padding:24px 28px !important;border-radius:20px !important;}
  body[data-ui-mode="client"] .acquired-section-head h2{font-size:32px !important;}
  body[data-ui-mode="client"] .acquired-video-stack{gap:20px !important;}
  body[data-ui-mode="client"] .acquired-video-item{padding:22px !important;border-radius:19px !important;}
  body[data-ui-mode="client"] .acquired-video-title h3{font-size:18px !important;}
  body[data-ui-mode="client"] .acquired-video-player,
  body[data-ui-mode="client"] .acquired-video-item .content-main-video{max-width:980px !important;margin-left:auto !important;margin-right:auto !important;}
  body[data-ui-mode="client"] .client-resource-list{
    max-width:1200px !important;
    margin:0 auto !important;
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:16px !important;
  }
  body[data-ui-mode="client"] .client-resource-card{min-height:150px !important;padding:20px !important;border-radius:18px !important;}

  /* Modales client PC : larges sans devenir plein écran */
  body[data-ui-mode="client"] .modal{padding:34px !important;place-items:center !important;}
  body[data-ui-mode="client"] .modal-card{
    width:min(1040px,calc(100vw - var(--li-desktop-sidebar) - 90px)) !important;
    max-height:calc(100dvh - 68px) !important;
    padding:30px !important;
    border-radius:24px !important;
    box-shadow:0 36px 110px rgba(0,0,0,.34) !important;
  }
  body[data-ui-mode="client"] .modal-card.activity-premium-frame{width:min(820px,calc(100vw - var(--li-desktop-sidebar) - 120px)) !important;}
  body[data-ui-mode="client"] .detail-context{top:-30px !important;border-radius:24px 24px 0 0 !important;}

  /* ---------- MENTOR PC ---------- */
  body[data-ui-mode="coach"]{
    background:
      radial-gradient(circle at 85% -8%,rgba(214,181,91,.10),transparent 28rem),
      linear-gradient(180deg,#f7f8f7 0%,#edf0f0 46%,#e6e9e9 100%) !important;
    color:#171815 !important;
  }
  body[data-ui-mode="coach"] .brandbar{
    background:
      radial-gradient(circle at 12% 50%,rgba(255,255,255,.06),transparent 28%),
      repeating-linear-gradient(102deg,rgba(255,255,255,.018) 0 1px,transparent 1px 5px),
      linear-gradient(96deg,#070707 0%,#141515 56%,#080808 100%) !important;
    justify-content:space-between !important;
  }
  body[data-ui-mode="coach"] .brand-title{color:#d8bd66 !important;-webkit-text-fill-color:#d8bd66 !important;}
  body[data-ui-mode="coach"] .brand-sub{color:#f3f3ee !important;-webkit-text-fill-color:#f3f3ee !important;}
  body[data-ui-mode="coach"] .admin-access{
    display:grid !important;
    grid-template-columns:minmax(240px,1fr) minmax(220px,300px) !important;
    grid-template-rows:auto auto !important;
    gap:4px 18px !important;
    align-items:center !important;
    min-width:620px !important;
    padding:9px 12px 9px 15px !important;
    border:1px solid rgba(214,181,91,.24) !important;
    border-radius:15px !important;
    background:rgba(255,255,255,.045) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
  }
  body[data-ui-mode="coach"] .admin-access-title{grid-column:1 !important;grid-row:1 !important;font-size:9px !important;color:#d6b55b !important;}
  body[data-ui-mode="coach"] .admin-access-sub{grid-column:1 !important;grid-row:2 !important;font-size:8.5px !important;color:#aaa !important;line-height:1.35 !important;}
  body[data-ui-mode="coach"] .admin-access .mode-switch{
    grid-column:2 !important;
    grid-row:1/3 !important;
    min-width:0 !important;
    display:grid !important;
    grid-template-columns:110px minmax(0,1fr) !important;
    gap:7px !important;
  }
  body[data-ui-mode="coach"] .admin-access .mode-switch select{
    grid-column:auto !important;
    width:100% !important;
    min-height:36px !important;
    padding:7px 9px !important;
    font-size:9px !important;
    border-radius:9px !important;
  }
  body[data-ui-mode="coach"] .admin-access .mode-switch #clientSelect{grid-column:2 !important;}
  body[data-ui-mode="coach"] .build-badge{left:14px !important;bottom:-18px !important;background:#111 !important;color:#d6b55b !important;border-color:rgba(214,181,91,.3) !important;}

  body[data-ui-mode="coach"] main{
    background:transparent !important;
    padding-top:34px !important;
  }
  body[data-ui-mode="coach"] #app{max-width:1680px !important;}
  body[data-ui-mode="coach"] .hero{
    padding:30px 34px !important;
    border-radius:20px !important;
    box-shadow:0 24px 70px rgba(0,0,0,.16) !important;
  }
  body[data-ui-mode="coach"] .hero h1{font-size:36px !important;}
  body[data-ui-mode="coach"] .grid{gap:16px !important;}
  body[data-ui-mode="coach"] .grid-4{grid-template-columns:repeat(4,minmax(0,1fr)) !important;}
  body[data-ui-mode="coach"] .grid-3{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
  body[data-ui-mode="coach"] .grid-2{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  body[data-ui-mode="coach"] .stat{font-size:38px !important;}
  body[data-ui-mode="coach"] .coach-today-section{padding:22px !important;border-radius:20px !important;}
  body[data-ui-mode="coach"] .coach-today-list{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:12px !important;}
  body[data-ui-mode="coach"] .coach-today-action{min-height:88px !important;padding:14px !important;border-radius:14px !important;}
  body[data-ui-mode="coach"] .mentor-wellness-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:14px !important;}
  body[data-ui-mode="coach"] .mentor-wellness-card{padding:17px !important;border-radius:16px !important;}
  body[data-ui-mode="coach"] .mentor-push-settings{padding:22px !important;border-radius:18px !important;}

  /* Calendrier mentor : client à gauche, espace calendrier maximal */
  body[data-ui-mode="coach"][data-ui-page="schedule"] #app{max-width:none !important;}
  body[data-ui-mode="coach"] .mentor-calendar-top{
    position:sticky !important;
    top:116px !important;
    z-index:18 !important;
    margin:-4px 0 18px !important;
    padding:14px 16px !important;
    border:1px solid rgba(30,30,28,.09) !important;
    border-radius:17px !important;
    background:rgba(247,249,249,.94) !important;
    box-shadow:0 12px 30px rgba(0,0,0,.07) !important;
    backdrop-filter:blur(14px) !important;
  }
  body[data-ui-mode="coach"] .mentor-schedule-layout{
    display:grid !important;
    grid-template-columns:270px minmax(0,1fr) !important;
    gap:20px !important;
    align-items:start !important;
  }
  body[data-ui-mode="coach"] .mentor-client-sidebar{
    position:sticky !important;
    top:205px !important;
    max-height:calc(100dvh - 225px) !important;
    overflow:auto !important;
    padding:14px !important;
    border-radius:18px !important;
    box-shadow:var(--li-desktop-soft) !important;
  }
  body[data-ui-mode="coach"] .mentor-client-list{gap:8px !important;}
  body[data-ui-mode="coach"] .mentor-client-chip{min-height:64px !important;padding:11px 12px !important;border-radius:12px !important;}
  body[data-ui-mode="coach"] .mentor-focus-banner{padding:18px 20px !important;border-radius:18px !important;}
  body[data-ui-mode="coach"] .mentor-month{min-width:0 !important;}
  body[data-ui-mode="coach"] .mentor-month-title{padding:13px 16px !important;border-radius:15px 15px 0 0 !important;}
  body[data-ui-mode="coach"] .calendar-shell{border-radius:0 0 16px 16px !important;overflow:auto !important;box-shadow:var(--li-desktop-soft) !important;}
  body[data-ui-mode="coach"] .calendar{min-width:720px !important;}
  body[data-ui-mode="coach"] .cal-day{min-height:132px !important;padding:8px !important;}
  body[data-ui-mode="coach"] .cal-item{font-size:9px !important;line-height:1.22 !important;padding:6px 7px !important;}

  /* Modèles / contenus mentor : densité premium mais respirante */
  body[data-ui-mode="coach"] .model-card-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:15px !important;}
  body[data-ui-mode="coach"] .model-card{min-height:220px !important;padding:18px !important;display:flex !important;flex-direction:column !important;}
  body[data-ui-mode="coach"] .model-card h3{font-size:18px !important;}
  body[data-ui-mode="coach"] .model-card .model-card-actions{margin-top:auto !important;padding-top:14px !important;}
  body[data-ui-mode="coach"] .music-admin-list{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:12px !important;}
  body[data-ui-mode="coach"] .music-admin-track{margin:0 !important;min-height:118px !important;}

  /* Clients : tableau de travail large, actions toujours visibles */
  body[data-ui-mode="coach"] .table-wrap{
    border:1px solid rgba(27,27,25,.09) !important;
    border-radius:18px !important;
    overflow:auto !important;
    background:rgba(255,255,255,.82) !important;
    box-shadow:var(--li-desktop-soft) !important;
  }
  body[data-ui-mode="coach"] .mentor-clients-table{min-width:1120px !important;width:100% !important;}
  body[data-ui-mode="coach"] .mentor-clients-table thead th{
    position:sticky !important;
    top:0 !important;
    z-index:3 !important;
    background:#171817 !important;
    color:#e9e9e4 !important;
    border-bottom:1px solid rgba(214,181,91,.35) !important;
  }
  body[data-ui-mode="coach"] .mentor-clients-table td{padding-top:13px !important;padding-bottom:13px !important;}
  body[data-ui-mode="coach"] .mentor-client-row-actions{flex-wrap:nowrap !important;gap:6px !important;}
  body[data-ui-mode="coach"] .mentor-client-integrations{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:16px !important;}

  /* Récap matin : lecture par cartes sur grand écran */
  body[data-ui-mode="coach"][data-ui-page="digest"] #digestContent{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:12px !important;
    align-items:start !important;
  }
  body[data-ui-mode="coach"] .digest-client{margin:0 !important;min-height:150px !important;border-radius:0 14px 14px 0 !important;box-shadow:0 8px 22px rgba(0,0,0,.05) !important;}

  /* Modales mentor : espace de travail central, grand mais lisible */
  body[data-ui-mode="coach"] .modal{padding:32px !important;place-items:center !important;}
  body[data-ui-mode="coach"] .modal-card{
    width:min(1180px,calc(100vw - var(--li-desktop-sidebar) - 80px)) !important;
    max-height:calc(100dvh - 64px) !important;
    padding:30px !important;
    border-radius:24px !important;
    box-shadow:0 38px 120px rgba(0,0,0,.34) !important;
  }
  body[data-ui-mode="coach"] .detail-context{top:-30px !important;border-radius:24px 24px 0 0 !important;}
}

/* PC compact (1281–1599) : garde la logique desktop sans surcharger */
@media (min-width:1281px) and (max-width:1599px){
  body{--li-desktop-sidebar:222px;}
  body .mainnav{padding-left:11px !important;padding-right:11px !important;}
  body .mainnav > button{grid-template-columns:36px minmax(0,1fr) !important;gap:9px !important;min-height:58px !important;padding:8px 10px !important;}
  body .mainnav > button .nav-ico{width:34px !important;height:34px !important;}
  body .mainnav > button .nav-label{font-size:9.5px !important;}
  body main{padding-left:28px !important;padding-right:28px !important;}
  body[data-ui-mode="client"][data-ui-page="calendar"] #app > .daily-checkin-card{grid-column:1/7 !important;}
  body[data-ui-mode="client"][data-ui-page="calendar"] #app > .momentum-card{grid-column:7/-1 !important;}
  body[data-ui-mode="client"] .metric-categories-wrap{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  body[data-ui-mode="client"] .music-track-list{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  body[data-ui-mode="client"] .client-resource-list{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  body[data-ui-mode="client"] .practice-child-tabs,
  body[data-ui-mode="client"] .client-practice-page .practice-child-tabs:has(>button.active),
  body[data-ui-mode="client"] .practice-client-content-list{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  body[data-ui-mode="coach"] .admin-access{min-width:520px !important;grid-template-columns:minmax(200px,1fr) minmax(210px,260px) !important;}
  body[data-ui-mode="coach"] .coach-today-list{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  body[data-ui-mode="coach"] .model-card-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
  body[data-ui-mode="coach"] .mentor-schedule-layout{grid-template-columns:235px minmax(0,1fr) !important;gap:16px !important;}
}

/* Très grand écran : 3 mois mentor réellement côte à côte et contenu client aéré */
@media (min-width:1760px){
  body[data-ui-mode="coach"][data-ui-page="schedule"] .mentor-three-months{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:14px !important;
    align-items:start !important;
  }
  body[data-ui-mode="coach"][data-ui-page="schedule"] .mentor-three-months .calendar{min-width:0 !important;grid-template-columns:repeat(7,minmax(0,1fr)) !important;}
  body[data-ui-mode="coach"][data-ui-page="schedule"] .mentor-three-months .cal-day{min-width:0 !important;min-height:118px !important;padding:6px !important;}
  body[data-ui-mode="coach"][data-ui-page="schedule"] .mentor-three-months .cal-head{font-size:7.5px !important;padding:7px 2px !important;}
  body[data-ui-mode="coach"][data-ui-page="schedule"] .mentor-three-months .cal-item{font-size:7.2px !important;padding:4px 5px !important;white-space:normal !important;overflow-wrap:anywhere !important;}
  body[data-ui-mode="coach"][data-ui-page="schedule"] .mentor-three-months .cal-add{width:25px !important;height:25px !important;min-height:25px !important;padding:0 !important;}
  body[data-ui-mode="client"] .metric-categories-wrap{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
  body[data-ui-mode="client"] .music-track-list{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
  body[data-ui-mode="coach"] .model-card-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important;}
}

/* V2.57 — correctif centrage lecteur PC + focus clavier */
@media (min-width:1281px){
  body[data-ui-mode="client"] .global-music-player{
    left:var(--li-desktop-sidebar) !important;
    right:0 !important;
    margin-left:auto !important;
    margin-right:auto !important;
    transform:none !important;
  }
  body :is(button,.btn,a,input,select,textarea,summary):focus-visible{
    outline:2px solid #d6b55b !important;
    outline-offset:3px !important;
  }
  body[data-ui-mode="coach"] :is(.mentor-client-chip,.coach-today-action,.cal-item):hover,
  body[data-ui-mode="client"] :is(.contents-hub-card,.music-track,.practice-client-content-card,.acquired-lesson-row):hover{
    transform:translateY(-2px);
    box-shadow:0 14px 34px rgba(0,0,0,.10);
  }
}

/* V2.58 — première connexion : onboarding obligatoire avant déverrouillage */
body.li-onboarding-locked{overflow:hidden !important;touch-action:none;}
.li-start-welcome.li-start-onboarding{
  z-index:100000;
  place-items:center;
  overflow:auto;
  overscroll-behavior:contain;
  padding:max(18px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));
  background:
    radial-gradient(circle at 50% 0%,rgba(238,232,0,.17),transparent 32%),
    radial-gradient(circle at 8% 92%,rgba(255,255,255,.055),transparent 26%),
    repeating-linear-gradient(104deg,rgba(255,255,255,.017) 0 1px,transparent 1px 6px),
    linear-gradient(150deg,#27292d 0%,#121418 42%,#07080a 100%);
}
.li-start-onboarding .li-start-onboarding-card{
  width:min(100%,820px);
  max-width:820px;
  margin:auto;
  padding:30px;
  border:1px solid rgba(234,226,0,.50);
  border-radius:28px;
  text-align:left;
  background:
    linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.018) 38%,rgba(0,0,0,.10)),
    linear-gradient(180deg,rgba(25,27,31,.97),rgba(11,12,15,.98));
  box-shadow:0 30px 80px rgba(0,0,0,.52),inset 0 1px 0 rgba(255,255,255,.11),inset 0 -1px 0 rgba(0,0,0,.7);
  position:relative;
  overflow:hidden;
}
.li-start-onboarding .li-start-onboarding-card::before{
  content:"";position:absolute;left:0;right:0;top:0;height:4px;
  background:linear-gradient(90deg,#8a8210 0%,#e7df00 22%,#fff66b 50%,#e7df00 78%,#8a8210 100%);
  box-shadow:0 0 18px rgba(239,231,0,.26);
}
.li-onboarding-brand{display:grid;grid-template-columns:88px 1fr;gap:20px;align-items:center;padding-bottom:22px;border-bottom:1px solid rgba(255,255,255,.09);}
.li-start-onboarding .li-onboarding-brand img{width:88px;height:76px;max-height:none;margin:0;object-fit:contain;filter:drop-shadow(0 13px 24px rgba(0,0,0,.42));}
.li-onboarding-brand-copy{min-width:0;}
.li-start-onboarding .li-start-kicker{margin:0 0 7px;color:#eee600;font-size:11px;letter-spacing:.22em;}
.li-start-onboarding h1{font-size:clamp(28px,4vw,42px);line-height:1.02;letter-spacing:.025em;margin:0;color:#fff;}
.li-start-onboarding .li-onboarding-brand-copy>p{margin:10px 0 0;color:#c9cacc;font:600 13px/1.45 'Montserrat',Arial,sans-serif;}
.li-onboarding-progress{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:22px 0 20px;}
.li-onboarding-progress span{height:3px;border-radius:999px;background:rgba(255,255,255,.10);box-shadow:inset 0 1px 2px rgba(0,0,0,.4);}
.li-onboarding-progress span.active{background:linear-gradient(90deg,#b1aa11,#eee700,#fff36b);box-shadow:0 0 10px rgba(238,231,0,.25);}
.li-onboarding-intro{margin-bottom:19px;}
.li-onboarding-step{font:900 10px 'Montserrat',Arial,sans-serif;letter-spacing:.18em;color:#eee600;margin-bottom:8px;}
.li-onboarding-intro p{margin:0;color:#d5d6d7;font:500 13px/1.55 'Montserrat',Arial,sans-serif;max-width:700px;}
.li-onboarding-form{display:block;}
.li-onboarding-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.li-onboarding-field{display:block;min-width:0;}
.li-onboarding-field>span{display:block;margin:0 0 7px;color:#f7f7f4;font:800 11px 'Montserrat',Arial,sans-serif;letter-spacing:.035em;}
.li-onboarding-field>div{
  display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;
  min-height:58px;border-radius:15px;overflow:hidden;
  border:1px solid rgba(238,231,0,.42);
  background:linear-gradient(180deg,#fcfcfb 0%,#eceeef 100%);
  box-shadow:0 10px 22px rgba(0,0,0,.20),inset 0 1px 0 #fff,inset 0 -1px 0 rgba(0,0,0,.08);
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.li-onboarding-field>div:focus-within{border-color:#fff04b;box-shadow:0 0 0 3px rgba(238,231,0,.11),0 12px 24px rgba(0,0,0,.26),inset 0 1px 0 #fff;transform:translateY(-1px);}
.li-onboarding-field input{
  width:100%;min-width:0;height:56px;padding:0 15px;border:0 !important;outline:0 !important;background:transparent !important;
  color:#121315 !important;-webkit-text-fill-color:#121315 !important;
  font:800 18px 'Montserrat',Arial,sans-serif;box-shadow:none !important;
}
.li-onboarding-field small{padding:0 14px 0 8px;color:#575a5e;font:800 10px 'Montserrat',Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;}
.li-onboarding-note{display:flex;align-items:flex-start;gap:10px;margin:17px 0 0;padding:13px 14px;border-radius:13px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);font:500 11px/1.5 'Montserrat',Arial,sans-serif;color:#c7c8ca;}
.li-onboarding-note b{flex:0 0 auto;color:#efe800;font-weight:800;}
.li-onboarding-error{min-height:20px;margin:10px 2px 0;color:#ffb2a8;font:700 11px/1.45 'Montserrat',Arial,sans-serif;}
.li-onboarding-error.is-success{color:#f3ed66;}
.li-onboarding-submit{
  width:100%;min-height:60px;margin-top:5px;border:1px solid #d5ca19;border-radius:16px;padding:0 20px;
  display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;
  background:linear-gradient(180deg,#fff56c 0%,#eee700 42%,#c7bf00 100%);
  color:#11120f;box-shadow:0 14px 30px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.78),inset 0 -2px 0 rgba(104,99,0,.34);
  font:900 12px 'Montserrat',Arial,sans-serif;letter-spacing:.08em;
  transition:transform .18s ease,filter .18s ease,box-shadow .18s ease;
}
.li-onboarding-submit:hover{transform:translateY(-1px);filter:brightness(1.025);box-shadow:0 17px 34px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.8);}
.li-onboarding-submit:active{transform:translateY(1px);}
.li-onboarding-submit:disabled{cursor:wait;filter:saturate(.65);opacity:.85;}
.li-onboarding-submit b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#171815;color:#eee700;font-size:18px;line-height:1;}
.li-onboarding-submit.is-saving b{animation:liOnboardPulse .8s ease-in-out infinite alternate;}
.li-onboarding-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:17px;padding-top:15px;border-top:1px solid rgba(255,255,255,.075);}
.li-onboarding-footer span{color:#8f9296;font:700 9px 'Montserrat',Arial,sans-serif;letter-spacing:.12em;}
.li-onboarding-footer strong{color:#eee700;font:900 10px 'Montserrat',Arial,sans-serif;letter-spacing:.18em;white-space:nowrap;}
.li-start-onboarding.is-complete .li-start-onboarding-card{border-color:rgba(245,238,67,.78);box-shadow:0 30px 85px rgba(0,0,0,.55),0 0 42px rgba(238,231,0,.10),inset 0 1px 0 rgba(255,255,255,.12);}
@keyframes liOnboardPulse{from{transform:scale(.92);opacity:.72}to{transform:scale(1.05);opacity:1}}

/* Mobile : lecture verticale confortable, aucun champ comprimé. */
@media(max-width:760px){
  .li-start-welcome.li-start-onboarding{padding:12px 10px calc(12px + env(safe-area-inset-bottom));place-items:start center;}
  .li-start-onboarding .li-start-onboarding-card{width:100%;border-radius:22px;padding:21px 17px 18px;margin:auto 0;}
  .li-onboarding-brand{grid-template-columns:64px 1fr;gap:13px;padding-bottom:17px;}
  .li-start-onboarding .li-onboarding-brand img{width:64px;height:58px;}
  .li-start-onboarding .li-start-kicker{font-size:9px;letter-spacing:.17em;margin-bottom:5px;}
  .li-start-onboarding h1{font-size:25px;line-height:1.04;}
  .li-start-onboarding .li-onboarding-brand-copy>p{font-size:11.5px;margin-top:7px;}
  .li-onboarding-progress{margin:17px 0 16px;}
  .li-onboarding-intro{margin-bottom:15px;}
  .li-onboarding-intro p{font-size:12px;line-height:1.48;}
  .li-onboarding-grid{grid-template-columns:1fr;gap:11px;}
  .li-onboarding-field>span{font-size:10px;margin-bottom:5px;}
  .li-onboarding-field>div{min-height:51px;border-radius:13px;}
  .li-onboarding-field input{height:49px;font-size:16px;padding:0 13px;}
  .li-onboarding-field small{font-size:9px;padding-right:12px;}
  .li-onboarding-note{display:block;margin-top:13px;padding:10px 11px;font-size:10px;}
  .li-onboarding-note b{display:block;margin-bottom:3px;}
  .li-onboarding-submit{min-height:54px;border-radius:14px;font-size:10.5px;padding:0 14px;}
  .li-onboarding-submit b{width:27px;height:27px;font-size:16px;}
  .li-onboarding-footer{margin-top:13px;padding-top:12px;gap:8px;}
  .li-onboarding-footer span{font-size:7.3px;letter-spacing:.08em;}
  .li-onboarding-footer strong{font-size:8px;letter-spacing:.12em;}
}

/* Tablette : carte centrale, saisie 2 colonnes et cibles tactiles généreuses. */
@media(min-width:761px) and (max-width:1280px){
  .li-start-onboarding .li-start-onboarding-card{max-width:760px;padding:32px;border-radius:30px;}
  .li-onboarding-grid{gap:16px;}
  .li-onboarding-field>div{min-height:62px;}
  .li-onboarding-field input{height:60px;font-size:19px;}
  .li-onboarding-submit{min-height:64px;font-size:13px;}
}

/* PC : véritable panneau d’activation, lisible sans occuper tout l’écran. */
@media(min-width:1281px){
  .li-start-welcome.li-start-onboarding{padding:38px;}
  .li-start-onboarding .li-start-onboarding-card{max-width:900px;padding:38px 40px 30px;border-radius:30px;}
  .li-onboarding-brand{grid-template-columns:104px 1fr;gap:25px;padding-bottom:25px;}
  .li-start-onboarding .li-onboarding-brand img{width:104px;height:88px;}
  .li-start-onboarding h1{font-size:43px;}
  .li-start-onboarding .li-onboarding-brand-copy>p{font-size:14px;}
  .li-onboarding-intro p{font-size:14px;}
  .li-onboarding-grid{gap:16px 18px;}
  .li-onboarding-field>div{min-height:62px;}
  .li-onboarding-field input{height:60px;font-size:20px;}
  .li-onboarding-submit{min-height:64px;font-size:13px;}
}


/* V2.60 — Yoga/Méditation : même ligne d’ouverture que le parent + scroll fluide vers les séances */
body[data-ui-mode="client"] .client-practice-page .practice-yoga-meditation-hub .practice-child-tabs{
  scroll-margin-top:120px;
}


/* V2.61 — Yoga / Méditation : supprimer la flèche sur la dernière ligne des séances */
body[data-ui-mode="client"] .client-practice-page .practice-yoga-meditation-hub .practice-child-tab.active::after,
body[data-ui-mode="client"] .client-practice-page .practice-yoga-meditation-hub .practice-child-tab.li-selected::after{
  content:none !important;
  display:none !important;
}
body[data-ui-mode="client"] .client-practice-page .practice-yoga-meditation-hub .practice-child-tabs::before{
  display:none !important;
}


/* V2.62 — Ajouter une autre activité : titre sur une ligne, eyebrow visible, panneau anthracite */
.activity-premium-heading .section-eyebrow{
  font-size:16px !important;
  line-height:1.1 !important;
  font-weight:900 !important;
  letter-spacing:2.4px !important;
  color:#c6a437 !important;
  -webkit-text-fill-color:#c6a437 !important;
  text-shadow:0 1px 0 rgba(255,255,255,.45),0 0 8px rgba(214,181,91,.18),0 1px 4px rgba(0,0,0,.12) !important;
}
.activity-premium-heading h2{
  font-size:clamp(24px,4.3vw,34px) !important;
  line-height:1.02 !important;
  letter-spacing:-.45px !important;
  white-space:nowrap !important;
}
.activity-premium-panel{
  border:1px solid rgba(214,181,91,.62) !important;
  background:linear-gradient(180deg,#44474f 0%,#2b2e34 38%,#1f2126 100%) !important;
  box-shadow:0 18px 42px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.10), inset 0 0 0 1px rgba(255,255,255,.03) !important;
}
.activity-premium-panel::before{
  height:2px !important;
  background:linear-gradient(90deg,transparent 0%,rgba(214,181,91,.96) 16%,rgba(232,229,0,.96) 50%,rgba(214,181,91,.78) 84%,transparent 100%) !important;
}
.activity-premium-field.field label{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  text-shadow:0 1px 3px rgba(0,0,0,.22) !important;
}
.activity-label-mark{
  box-shadow:0 0 8px rgba(232,229,0,.18),0 1px 3px rgba(0,0,0,.22) !important;
}
@media(max-width:760px){
  .activity-premium-heading .section-eyebrow{
    font-size:18px !important;
    letter-spacing:2.8px !important;
  }
  .activity-premium-heading h2{
    font-size:22px !important;
    max-width:none !important;
  }
}
@media(max-width:390px){
  .activity-premium-heading .section-eyebrow{
    font-size:17px !important;
  }
  .activity-premium-heading h2{
    font-size:20px !important;
  }
}


/* V2.64 — DESIGN SYSTEM DES ÉCRANS SECONDAIRES
   Reprend la logique validée de « Ajouter une autre activité » sans modifier les pages principales. */
.modal-card.li-premium-unified-frame{
  background:
    linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.03)),
    url('/mobile-background-v128.png') center top / cover no-repeat !important;
  color:#151515 !important;
  border:1px solid rgba(214,181,91,.38) !important;
  box-shadow:0 30px 84px rgba(0,0,0,.34) !important;
  overflow:auto !important;
}
.modal-card.li-premium-unified-frame.session-frame{
  background:
    linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.03)),
    url('/mobile-background-v128.png') center top / cover no-repeat !important;
  color:#151515 !important;
  border:1px solid rgba(214,181,91,.48) !important;
}
.modal-card.li-premium-unified-frame > .modal-close{display:none !important;}
.modal-card.li-premium-unified-frame #modalBody{
  position:relative !important;
  overflow:hidden !important;
  padding:22px !important;
  border:1px solid rgba(214,181,91,.58) !important;
  border-radius:20px !important;
  background:linear-gradient(180deg,#45484f 0%,#2b2e34 38%,#1f2126 100%) !important;
  color:#fff !important;
  box-shadow:
    0 18px 42px rgba(0,0,0,.16),
    inset 0 1px 0 rgba(255,255,255,.10),
    inset 0 0 0 1px rgba(255,255,255,.025) !important;
}
.modal-card.li-premium-unified-frame #modalBody::before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;
  height:2px;
  pointer-events:none;
  background:linear-gradient(90deg,transparent 0%,rgba(214,181,91,.96) 16%,rgba(232,229,0,.96) 50%,rgba(214,181,91,.80) 84%,transparent 100%);
}

/* Bouton Retour : même famille que la page activité */
.modal-card.li-premium-unified-frame :is(.modal-auto-back,.detail-back){
  min-height:44px !important;
  margin-bottom:22px !important;
  padding:10px 16px !important;
  border:1px solid rgba(214,181,91,.76) !important;
  border-radius:13px !important;
  background:linear-gradient(180deg,#25272c 0%,#15171b 58%,#0d0f12 100%) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  box-shadow:0 9px 20px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.08) !important;
  font-weight:800 !important;
  text-decoration:none !important;
}
.modal-card.li-premium-unified-frame :is(.modal-auto-back,.detail-back)::first-letter{
  color:#d6b55b !important;
}

/* Titres / hiérarchie */
.modal-card.li-premium-unified-frame #modalBody > :is(h1,h2,h3),
.modal-card.li-premium-unified-frame #modalBody > div > :is(h1,h2,h3),
.modal-card.li-premium-unified-frame .page-title{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-family:'Cinzel',Georgia,serif !important;
  font-weight:600 !important;
}
.modal-card.li-premium-unified-frame #modalBody h2{font-size:clamp(22px,3.8vw,32px) !important;line-height:1.08 !important;}
.modal-card.li-premium-unified-frame .section-eyebrow{
  color:#d6b55b !important;
  -webkit-text-fill-color:#d6b55b !important;
  font-size:12px !important;
  line-height:1.15 !important;
  font-weight:900 !important;
  letter-spacing:1.8px !important;
  text-shadow:0 1px 4px rgba(0,0,0,.28) !important;
}
.modal-card.li-premium-unified-frame :is(.muted,.page-intro,.external-calendar-lead,.client-notification-modal>p,.micro){
  color:#d6d7d4 !important;
  -webkit-text-fill-color:#d6d7d4 !important;
}
.modal-card.li-premium-unified-frame #modalBody > small,
.modal-card.li-premium-unified-frame .calendar-offline-note{
  color:#bfc1bd !important;
  -webkit-text-fill-color:#bfc1bd !important;
}

/* Champs : blancs sur panneau anthracite */
.modal-card.li-premium-unified-frame .field label,
.modal-card.li-premium-unified-frame .model-checkbox,
.modal-card.li-premium-unified-frame .exercise-builder-title :is(h3,.section-eyebrow){
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
.modal-card.li-premium-unified-frame .field label{
  font-size:10px !important;
  font-weight:900 !important;
  letter-spacing:.75px !important;
}
.modal-card.li-premium-unified-frame .field :is(input,select,textarea),
.modal-card.li-premium-unified-frame :is(input,select,textarea).premium-input{
  border:1px solid #aeb0ad !important;
  border-radius:13px !important;
  background:linear-gradient(180deg,#fff 0%,#f7f7f5 100%) !important;
  color:#171717 !important;
  -webkit-text-fill-color:#171717 !important;
  caret-color:#171717 !important;
  box-shadow:0 7px 16px rgba(0,0,0,.13),inset 0 1px 0 rgba(255,255,255,.96) !important;
}
.modal-card.li-premium-unified-frame .field :is(input,select,textarea):focus{
  outline:none !important;
  border-color:rgba(214,181,91,.98) !important;
  box-shadow:0 0 0 3px rgba(214,181,91,.16),0 9px 22px rgba(0,0,0,.16) !important;
}
.modal-card.li-premium-unified-frame .field :is(input,textarea)::placeholder{
  color:#8b8d89 !important;
  -webkit-text-fill-color:#8b8d89 !important;
  opacity:1 !important;
}
.modal-card.li-premium-unified-frame input[type="checkbox"],
.modal-card.li-premium-unified-frame input[type="radio"]{accent-color:#e8e500 !important;}

/* Boutons secondaires / CTA */
.modal-card.li-premium-unified-frame .btn.yellow,
.modal-card.li-premium-unified-frame a.btn.yellow{
  background:var(--li-chrome-selected-gradient,var(--li-selected-black-yellow)) !important;
  background-image:var(--li-chrome-selected-gradient,var(--li-selected-black-yellow)) !important;
  color:#0a0a0a !important;
  -webkit-text-fill-color:#0a0a0a !important;
  border:1px solid #111 !important;
  box-shadow:0 12px 24px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.24) !important;
}
.modal-card.li-premium-unified-frame .btn:not(.yellow),
.modal-card.li-premium-unified-frame a.btn:not(.yellow){
  border-color:rgba(214,181,91,.48) !important;
  background:linear-gradient(180deg,#292b30,#15171a) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

/* Notifications : cartes blanches lisibles sur anthracite */
.modal-card.li-premium-unified-frame .client-notif-fixed,
.modal-card.li-premium-unified-frame .client-notif-options{gap:10px !important;}
.modal-card.li-premium-unified-frame .client-notif-fixed>div,
.modal-card.li-premium-unified-frame .client-notif-options>label,
.modal-card.li-premium-unified-frame .pwa-install-row{
  border:1px solid rgba(214,181,91,.24) !important;
  background:linear-gradient(180deg,#fff 0%,#f5f5f2 100%) !important;
  color:#151515 !important;
  border-radius:13px !important;
  box-shadow:0 8px 18px rgba(0,0,0,.12) !important;
}
.modal-card.li-premium-unified-frame .client-notif-fixed :is(b,small,p,em,span),
.modal-card.li-premium-unified-frame .client-notif-options :is(b,small,span),
.modal-card.li-premium-unified-frame .pwa-install-row small{
  color:#222 !important;
  -webkit-text-fill-color:#222 !important;
}

/* Mon agenda : synthèse et mois en cartes blanches */
.modal-card.li-premium-unified-frame .calendar-12w-summary>div,
.modal-card.li-premium-unified-frame .calendar-12w-preview details,
.modal-card.li-premium-unified-frame .calendar-compatibility,
.modal-card.li-premium-unified-frame .calendar-behaviour-note{
  background:linear-gradient(180deg,#fff 0%,#f5f5f2 100%) !important;
  color:#151515 !important;
  border:1px solid rgba(214,181,91,.26) !important;
  box-shadow:0 8px 18px rgba(0,0,0,.12) !important;
}
.modal-card.li-premium-unified-frame :is(.calendar-12w-summary,.calendar-12w-preview,.calendar-compatibility,.calendar-behaviour-note) :is(b,small,span,p,summary){
  color:#151515 !important;
  -webkit-text-fill-color:#151515 !important;
}

/* Graphiques : création / saisie / détail */
.modal-card.li-premium-unified-frame :is(.metric-entry-modal,.metric-detail-modal) .chart{
  border:1px solid rgba(214,181,91,.34) !important;
  box-shadow:0 10px 24px rgba(0,0,0,.18) !important;
}
.modal-card.li-premium-unified-frame .metric-entry-modal .qualitative-checkin-field{
  background:#fff !important;
  color:#151515 !important;
}

/* Sessions, tutos, yoga, méditation, Trigger Point */
.modal-card.li-premium-unified-frame.session-frame :is(h1,h2,h3,h4,p,span,small,b,strong,label,.action-type,.page-title,.page-intro){
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
.modal-card.li-premium-unified-frame.session-frame .section-eyebrow{
  color:#d6b55b !important;
  -webkit-text-fill-color:#d6b55b !important;
}
.modal-card.li-premium-unified-frame.session-frame :is(.practice-session-stage,.protocol,.exercise,.completion-box,.session-date-lock,.coach-action-meta>div){
  background:linear-gradient(180deg,#fff 0%,#f4f4f1 100%) !important;
  color:#171717 !important;
  border:1px solid rgba(214,181,91,.30) !important;
  box-shadow:0 8px 18px rgba(0,0,0,.12) !important;
}
.modal-card.li-premium-unified-frame.session-frame :is(.practice-session-stage,.protocol,.exercise,.completion-box,.session-date-lock,.coach-action-meta>div) :is(h1,h2,h3,h4,p,span,small,b,strong,label){
  color:#171717 !important;
  -webkit-text-fill-color:#171717 !important;
}
.modal-card.li-premium-unified-frame.session-frame .practice-session-placeholder{
  background:#fff !important;
  color:#555 !important;
  -webkit-text-fill-color:#555 !important;
  border:1px dashed rgba(214,181,91,.65) !important;
}
.modal-card.li-premium-unified-frame.session-frame .detail-context{
  background:linear-gradient(120deg,#111215 0%,#23252a 45%,#49470a 76%,#111215 100%) !important;
  border:1px solid rgba(214,181,91,.42) !important;
  box-shadow:0 8px 20px rgba(0,0,0,.18) !important;
}

/* Capsules / modèles / formulaires mentor */
.modal-card.li-premium-unified-frame :is(.content-model-editor,.session-model-editor,.model-picker-modal,.client-content-manager,.annual-plan-modal,.mentor-client-metrics-modal) .field,
.modal-card.li-premium-unified-frame :is(.content-model-editor,.session-model-editor,.model-picker-modal,.client-content-manager,.annual-plan-modal,.mentor-client-metrics-modal) .grid{
  min-width:0;
}
.modal-card.li-premium-unified-frame :is(.content-acquired-rule,.model-pick-preview,.music-editor-note,.client-content-item,.content-music-picker label,.exercise-row){
  background:linear-gradient(180deg,#fff 0%,#f5f5f2 100%) !important;
  color:#171717 !important;
  border-color:rgba(214,181,91,.28) !important;
  box-shadow:0 7px 16px rgba(0,0,0,.10) !important;
}
.modal-card.li-premium-unified-frame :is(.content-acquired-rule,.model-pick-preview,.music-editor-note,.client-content-item,.content-music-picker label,.exercise-row) :is(h1,h2,h3,h4,p,span,small,b,strong,label){
  color:#171717 !important;
  -webkit-text-fill-color:#171717 !important;
}

/* Mobile : véritable écran secondaire, respirant */
@media(max-width:760px){
  .modal-card.li-premium-unified-frame{
    width:100% !important;
    height:100dvh !important;
    max-height:100dvh !important;
    padding:calc(14px + env(safe-area-inset-top)) 14px calc(24px + env(safe-area-inset-bottom)) !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    background:
      linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.02)),
      url('/mobile-background-v128.png') center top / cover fixed no-repeat !important;
  }
  .modal-card.li-premium-unified-frame #modalBody{
    padding:16px 14px 18px !important;
    border-radius:18px !important;
  }
  .modal-card.li-premium-unified-frame #modalBody h2{font-size:24px !important;}
  .modal-card.li-premium-unified-frame .section-eyebrow{font-size:12px !important;letter-spacing:1.8px !important;}
  .modal-card.li-premium-unified-frame .grid.grid-2,
  .modal-card.li-premium-unified-frame .grid.grid-3{grid-template-columns:1fr !important;}
}

/* Tablette : panneau centré, largeur confortable */
@media(min-width:761px) and (max-width:1280px){
  body .modal-card.li-premium-unified-frame{padding:22px !important;}
  body .modal-card.li-premium-unified-frame #modalBody{padding:24px !important;border-radius:22px !important;}
}

/* PC : plus d'air sans étirer les champs */
@media(min-width:1281px){
  body .modal-card.li-premium-unified-frame #modalBody{padding:28px !important;border-radius:22px !important;}
  body .modal-card.li-premium-unified-frame .field{max-width:100%;}
}


/* V2.65 — Mes acquis : texte blanc et rond de flèche blanc */
body[data-ui-mode="client"] .acquired-category-copy b{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  text-shadow:0 1px 2px rgba(0,0,0,.28) !important;
}
body[data-ui-mode="client"] .acquired-category-copy small{
  color:rgba(255,255,255,.96) !important;
  -webkit-text-fill-color:rgba(255,255,255,.96) !important;
  text-shadow:0 1px 2px rgba(0,0,0,.24) !important;
}
body[data-ui-mode="client"] .acquired-category-chevron{
  background:#ffffff !important;
  color:#0e1012 !important;
  -webkit-text-fill-color:#0e1012 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 4px 10px rgba(0,0,0,.22) !important;
}


/* V2.66 — Discipline / Mouvement : bilans distincts, cliquables, sans concurrence */
body[data-ui-mode="client"] .momentum-score-button{
  appearance:none !important;-webkit-appearance:none !important;cursor:pointer !important;
  font:inherit !important;padding:0 !important;outline:none !important;
}
body[data-ui-mode="client"] .momentum-score-button:focus-visible,
body[data-ui-mode="client"] .cadence-donut:focus-visible{outline:3px solid rgba(232,229,0,.55) !important;outline-offset:3px !important;}
body[data-ui-mode="client"] .cadence-donut{
  appearance:none !important;-webkit-appearance:none !important;border:0 !important;padding:0 !important;cursor:pointer !important;
  background:conic-gradient(var(--yellow) 0 var(--movement-end),#dedfda var(--movement-end) 360deg) !important;
  box-shadow:0 12px 26px rgba(0,0,0,.10),inset 0 0 0 1px rgba(0,0,0,.06) !important;
}
body[data-ui-mode="client"] .cadence-donut.no-session-data{background:#dedfda !important;}
body[data-ui-mode="client"] .movement-next-session{
  display:inline-flex;margin-top:9px;padding:6px 9px;border-radius:999px;background:#111317;color:#fff !important;-webkit-text-fill-color:#fff !important;
  font-size:9px;font-weight:800;letter-spacing:.02em;border:1px solid rgba(214,181,91,.55);
}
body[data-ui-mode="client"] .leader-report-modal{max-width:820px;margin:0 auto;color:#fff;}
body[data-ui-mode="client"] .leader-report-modal>h2{font-family:'Cinzel',Georgia,serif;margin:5px 0 8px;color:#fff !important;-webkit-text-fill-color:#fff !important;font-weight:600;}
body[data-ui-mode="client"] .leader-report-intro{color:rgba(255,255,255,.78) !important;-webkit-text-fill-color:rgba(255,255,255,.78) !important;line-height:1.55;margin:0 0 14px;font-size:11px;}
body[data-ui-mode="client"] .leader-report-periods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:13px 0 16px;}
body[data-ui-mode="client"] .leader-report-periods button{min-height:38px;border-radius:11px;border:1px solid rgba(214,181,91,.45);background:#111317;color:#fff;font-size:9px;font-weight:900;letter-spacing:.04em;}
body[data-ui-mode="client"] .leader-report-periods button.active{background:var(--li-chrome-selected-gradient,var(--li-selected-black-yellow));color:#0b0b0b;border-color:#111;}
body[data-ui-mode="client"] .leader-report-grid{display:grid;gap:8px;margin:0 0 13px;}
body[data-ui-mode="client"] .leader-report-grid.four{grid-template-columns:repeat(4,minmax(0,1fr));}
body[data-ui-mode="client"] .leader-report-grid>div,
body[data-ui-mode="client"] .leader-report-inline-stats>div{padding:13px 10px;border-radius:14px;background:#fff;border:1px solid rgba(214,181,91,.34);color:#111;box-shadow:0 8px 18px rgba(0,0,0,.13);text-align:center;}
body[data-ui-mode="client"] .leader-report-grid b{display:block;font-family:'Cinzel',Georgia,serif;font-size:24px;line-height:1;color:#111 !important;-webkit-text-fill-color:#111 !important;}
body[data-ui-mode="client"] .leader-report-grid b small{font-size:10px;color:#555 !important;-webkit-text-fill-color:#555 !important;}
body[data-ui-mode="client"] .leader-report-grid span{display:block;margin-top:5px;font-size:8px;font-weight:800;text-transform:uppercase;color:#555 !important;-webkit-text-fill-color:#555 !important;}
body[data-ui-mode="client"] .leader-report-section{margin-top:10px;padding:13px;border-radius:15px;background:linear-gradient(180deg,#3b3e45,#202228);border:1px solid rgba(214,181,91,.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.07);}
body[data-ui-mode="client"] .leader-report-section-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:10px;}
body[data-ui-mode="client"] .leader-report-section-head h3{margin:0;font-family:'Cinzel',Georgia,serif;font-size:15px;color:#fff !important;-webkit-text-fill-color:#fff !important;}
body[data-ui-mode="client"] .leader-report-section-head>span{font-size:8px;font-weight:800;color:#e9d35a !important;-webkit-text-fill-color:#e9d35a !important;text-align:right;}
body[data-ui-mode="client"] .leader-report-inline-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;}
body[data-ui-mode="client"] .leader-report-inline-stats b{display:block;font-family:'Cinzel',Georgia,serif;font-size:19px;color:#111 !important;-webkit-text-fill-color:#111 !important;}
body[data-ui-mode="client"] .leader-report-inline-stats small{display:block;margin-top:3px;font-size:8px;color:#666 !important;-webkit-text-fill-color:#666 !important;}
body[data-ui-mode="client"] .leader-report-list{display:grid;gap:6px;}
body[data-ui-mode="client"] .leader-report-list>div{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:8px;align-items:center;padding:9px 10px;border-radius:10px;background:#fff;color:#111;}
body[data-ui-mode="client"] .leader-report-list b{font-size:10px;color:#111 !important;-webkit-text-fill-color:#111 !important;}
body[data-ui-mode="client"] .leader-report-list small{font-size:8px;color:#666 !important;-webkit-text-fill-color:#666 !important;text-align:right;}
body[data-ui-mode="client"] .report-status-dot{width:8px;height:8px;border-radius:50%;background:#e0a500;}
body[data-ui-mode="client"] .report-status-dot.ok{background:#4cbd6a;}
body[data-ui-mode="client"] .leader-report-ok{padding:10px;border-radius:10px;background:#fff;color:#111 !important;-webkit-text-fill-color:#111 !important;font-size:9px;font-weight:700;}
body[data-ui-mode="client"] .leader-report-next{margin:0 0 12px;padding:9px 11px;border-radius:11px;border:1px solid rgba(214,181,91,.45);background:#111317;color:#fff !important;-webkit-text-fill-color:#fff !important;font-size:9px;font-weight:800;text-align:center;}
body[data-ui-mode="client"] .rounds-trend{height:150px;display:flex;align-items:flex-end;gap:7px;padding:12px 6px 4px;border-radius:12px;background:#0f1115;border:1px solid rgba(255,255,255,.08);overflow-x:auto;}
body[data-ui-mode="client"] .rounds-trend-item{flex:1 0 38px;min-width:38px;display:grid;grid-template-rows:100px auto auto;align-items:end;text-align:center;gap:3px;}
body[data-ui-mode="client"] .rounds-trend-bar{height:100px;display:flex;align-items:flex-end;justify-content:center;}
body[data-ui-mode="client"] .rounds-trend-bar span{display:block;width:12px;min-height:4px;border-radius:999px 999px 3px 3px;background:linear-gradient(180deg,#fff30a,#b79d00);box-shadow:0 0 10px rgba(232,229,0,.16);}
body[data-ui-mode="client"] .rounds-trend-item b{font-size:10px;color:#fff !important;-webkit-text-fill-color:#fff !important;}
body[data-ui-mode="client"] .rounds-trend-item small{font-size:7px;color:rgba(255,255,255,.65) !important;-webkit-text-fill-color:rgba(255,255,255,.65) !important;}
@media(max-width:760px){
  body[data-ui-mode="client"] .leader-report-grid.four{grid-template-columns:repeat(2,minmax(0,1fr));}
  body[data-ui-mode="client"] .leader-report-inline-stats{grid-template-columns:repeat(3,minmax(0,1fr));}
  body[data-ui-mode="client"] .leader-report-list>div{grid-template-columns:10px minmax(0,1fr);}
  body[data-ui-mode="client"] .leader-report-list small{grid-column:2;text-align:left;}
}


/* V2.67 — Bilan Discipline / Mouvement : cartes internes anthracite */
body[data-ui-mode="client"] .leader-report-grid>div,
body[data-ui-mode="client"] .leader-report-inline-stats>div{
  background:linear-gradient(180deg,#464950 0%,#2c2f35 48%,#1f2126 100%) !important;
  border:1px solid rgba(214,181,91,.32) !important;
  color:#ffffff !important;
  box-shadow:0 8px 18px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.06) !important;
}
body[data-ui-mode="client"] .leader-report-grid b,
body[data-ui-mode="client"] .leader-report-inline-stats b{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
body[data-ui-mode="client"] .leader-report-grid b small,
body[data-ui-mode="client"] .leader-report-inline-stats small,
body[data-ui-mode="client"] .leader-report-grid span{
  color:rgba(255,255,255,.86) !important;
  -webkit-text-fill-color:rgba(255,255,255,.86) !important;
}
body[data-ui-mode="client"] .leader-report-list>div,
body[data-ui-mode="client"] .leader-report-ok{
  background:linear-gradient(180deg,#464950 0%,#2c2f35 48%,#1f2126 100%) !important;
  border:1px solid rgba(214,181,91,.26) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  box-shadow:0 6px 16px rgba(0,0,0,.14), inset 0 1px 0 rgba(255,255,255,.05) !important;
}
body[data-ui-mode="client"] .leader-report-list b,
body[data-ui-mode="client"] .leader-report-ok b{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
body[data-ui-mode="client"] .leader-report-list small{
  color:rgba(255,255,255,.82) !important;
  -webkit-text-fill-color:rgba(255,255,255,.82) !important;
}


/* V2.68 — Bilan Mouvement : forcer toutes les cartes en anthracite */
body[data-ui-mode="client"] .movement-report-modal .leader-report-grid>div,
body[data-ui-mode="client"] .movement-report-modal .leader-report-inline-stats>div,
body[data-ui-mode="client"] .movement-report-modal .leader-report-list>div,
body[data-ui-mode="client"] .movement-report-modal .leader-report-ok{
  background:linear-gradient(180deg,#464950 0%,#2c2f35 48%,#1f2126 100%) !important;
  border:1px solid rgba(214,181,91,.28) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
body[data-ui-mode="client"] .movement-report-modal :is(.leader-report-grid b,.leader-report-inline-stats b,.leader-report-list b){
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
body[data-ui-mode="client"] .movement-report-modal :is(.leader-report-grid span,.leader-report-grid b small,.leader-report-inline-stats small,.leader-report-list small){
  color:rgba(255,255,255,.84) !important;
  -webkit-text-fill-color:rgba(255,255,255,.84) !important;
}


/* V2.69 — Mes acquis : contenu interne anthracite + texte blanc */
body[data-ui-mode="client"] .acquired-category-lessons{
  background:linear-gradient(180deg,#464950 0%,#2c2f35 48%,#1f2126 100%) !important;
  border-top:1px solid rgba(255,255,255,.04) !important;
}
body[data-ui-mode="client"] .acquired-category-empty{
  background:linear-gradient(180deg,#3f4249 0%,#25282e 100%) !important;
  border:1px dashed rgba(255,255,255,.14) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04) !important;
}
body[data-ui-mode="client"] .acquired-category-empty *{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
body[data-ui-mode="client"] .acquired-lesson-row{
  background:linear-gradient(180deg,#4b4e55 0%,#2e3137 48%,#21242a 100%) !important;
  border:1px solid rgba(255,255,255,.08) !important;
}


/* V2.80 — Réorganisation premium des catégories Graphiques */
body[data-ui-mode="client"] .metric-category-summary,
body[data-ui-mode="coach"] .metric-category-summary{
  cursor:grab;
  -webkit-user-select:none;
  user-select:none;
}
body.li-metric-category-drag-active{
  user-select:none !important;
  -webkit-user-select:none !important;
  cursor:grabbing !important;
  overscroll-behavior:contain;
}
body.li-metric-category-drag-active *{cursor:grabbing !important;}
.metric-categories-wrap.metric-category-reordering{
  position:relative;
}
.metric-categories-wrap.metric-category-reordering .metric-category-details:not(.metric-category-dragging){
  will-change:transform;
}
.metric-categories-wrap .metric-category-drop-slot{
  width:100%;
  min-height:58px;
  border-radius:14px;
  border:1px dashed rgba(214,181,91,.62);
  background:linear-gradient(180deg,rgba(214,181,91,.11),rgba(30,32,36,.08));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);
  transition:height .12s ease,background .12s ease;
}
.metric-categories-wrap .metric-category-details.metric-category-dragging{
  opacity:1 !important;
  transform:scale(1) !important;
  transform-origin:center center !important;
  box-shadow:0 18px 42px rgba(0,0,0,.24),0 0 0 1px rgba(232,229,0,.24) !important;
  filter:saturate(1.03) brightness(1.01);
  will-change:top,transform,box-shadow;
  transition:transform .12s cubic-bezier(.2,.8,.25,1),box-shadow .12s ease,filter .12s ease !important;
}
.metric-categories-wrap .metric-category-details.metric-category-dragging.metric-category-drag-lifted{
  transform:scale(1.045) !important;
  box-shadow:0 26px 58px rgba(0,0,0,.34),0 0 0 2px rgba(232,229,0,.32) !important;
  filter:saturate(1.09) brightness(1.035);
}
.metric-categories-wrap .metric-category-details.metric-category-dragging > .metric-category-summary{
  cursor:grabbing !important;
}
.metric-categories-wrap .metric-category-details.metric-category-dropping{
  transition:none !important;
}
@media (pointer:coarse){
  .metric-categories-wrap .metric-category-details.metric-category-dragging.metric-category-drag-lifted{
    transform:scale(1.055) !important;
  }
}

/* V2.71 — Graphiques favoris : remonter le contenu et réduire le vide bas */
body[data-ui-mode="client"] .client-metrics-page .featured-metrics-title{
  margin:8px auto 10px !important;
  min-height:auto !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-switcher{
  gap:7px !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-tabs{
  margin:0 0 4px !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-focus{
  min-height:auto !important;
  padding:12px 12px 10px !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-head{
  margin-bottom:5px !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-head h3{
  margin:0 0 2px !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-head span{
  display:block !important;
  margin-top:1px !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-focus .featured-chart{
  height:235px !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metric-actions{
  margin-top:6px !important;
  margin-bottom:0 !important;
}
body[data-ui-mode="client"] .client-metrics-page .featured-metrics-new-action{
  margin-top:10px !important;
}
body[data-ui-mode="client"] .client-metrics-page .metric-categories-wrap{
  margin-top:6px !important;
}
@media(max-width:760px){
  body[data-ui-mode="client"] .client-metrics-page .featured-metrics-title{
    margin:6px auto 8px !important;
  }
  body[data-ui-mode="client"] .client-metrics-page .featured-metric-focus{
    padding:11px 11px 9px !important;
  }
  body[data-ui-mode="client"] .client-metrics-page .featured-metric-focus .featured-chart{
    height:210px !important;
  }
  body[data-ui-mode="client"] .client-metrics-page .featured-metric-tab{
    min-height:34px !important;
    padding:7px 8px !important;
  }
}


/* V2.72 — Catégories graphiques : même effet d’ouverture fluide que Yoga / Méditation */
body[data-ui-mode="client"] .metric-category-details{
  scroll-margin-top:118px;
}
body[data-ui-mode="client"] .metric-category-list{
  scroll-margin-top:118px;
}
body[data-ui-mode="client"] .metric-category-details[open] .metric-category-list{
  animation:liMetricCategoryReveal .20s cubic-bezier(.22,.75,.28,1) both;
}
@keyframes liMetricCategoryReveal{
  from{opacity:.55;transform:translateY(-8px)}
  to{opacity:1;transform:translateY(0)}
}


/* V2.73 — Bilan Discipline : titre sur une ligne + espace sous les blocs enseignements */
body[data-ui-mode="client"] .discipline-report-modal>h2{
  font-size:clamp(21px,5.8vw,32px) !important;
  line-height:1.02 !important;
  white-space:nowrap !important;
  letter-spacing:-.02em !important;
}
body[data-ui-mode="client"] .discipline-report-modal .leader-report-section .leader-report-ok{
  margin-top:12px !important;
}
@media(max-width:390px){
  body[data-ui-mode="client"] .discipline-report-modal>h2{
    font-size:20px !important;
  }
}


/* V2.75 — Accès client exclusivement via l’application installée */
.li-install-only-body{
  margin:0;min-height:100dvh;background:
    linear-gradient(100deg,rgba(255,255,255,.62) 0%,rgba(255,255,255,.03) 8%,rgba(255,255,255,.30) 15%,rgba(255,255,255,.04) 23%,rgba(255,255,255,.20) 32%,rgba(255,255,255,.03) 42%),
    linear-gradient(180deg,#fff 0%,#f0f2f3 38%,#e3e6e8 100%);
  font-family:'Montserrat',Arial,sans-serif;color:#fff;
}
.li-install-only-gate{min-height:100dvh;display:grid;place-items:center;padding:24px;}
.li-install-only-card{
  width:min(520px,100%);padding:32px 26px;border:1px solid rgba(214,181,91,.62);border-radius:24px;
  background:linear-gradient(180deg,#44474f 0%,#2b2e34 42%,#1b1d21 100%);
  box-shadow:0 28px 70px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.08);text-align:center;
}
.li-install-only-logo{width:94px;height:94px;object-fit:contain;margin:0 auto 10px;filter:drop-shadow(0 8px 16px rgba(0,0,0,.2));}
.li-install-only-kicker{font-size:12px;font-weight:900;letter-spacing:2.4px;color:#d6b55b;margin-bottom:8px;}
.li-install-only-card h1{margin:0;font-family:'Cinzel',Georgia,serif;font-size:clamp(30px,8vw,48px);font-weight:500;letter-spacing:.02em;color:#fff;}
.li-install-only-intro{margin:14px auto 22px;max-width:430px;font-size:14px;line-height:1.6;color:rgba(255,255,255,.86);}
.li-install-only-steps{display:grid;gap:10px;text-align:left;margin:0 0 20px;}
.li-install-only-steps>div{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center;padding:12px;border-radius:14px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);}
.li-install-only-steps b{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#111;font-size:13px;}
.li-install-only-steps span{font-size:12px;line-height:1.45;color:#fff;}
.li-install-only-button{
  width:100%;min-height:56px;border-radius:15px;border:1px solid #111;background:var(--li-chrome-selected-gradient,linear-gradient(180deg,#777400 0%,#efea00 58%,#fff20a 100%));
  color:#0a0a0a;font-weight:950;font-size:13px;letter-spacing:.045em;box-shadow:0 12px 26px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.35);
}
.li-install-only-help{min-height:20px;margin-top:14px;font-size:11px;line-height:1.5;color:rgba(255,255,255,.82);}
.li-install-only-note{display:block;margin-top:14px;font-size:10px;line-height:1.5;color:#d6b55b;}
@media(max-width:560px){.li-install-only-gate{padding:16px}.li-install-only-card{padding:26px 18px;border-radius:20px}.li-install-only-logo{width:78px;height:78px}.li-install-only-intro{font-size:13px}}


/* V2.76 — Mode développement local : accès navigateur autorisé pour tester la PWA sur IP privée */
body.li-local-dev-mode{}


/* V2.78 — Installation Android premium : activation en un geste */
.li-install-only-card.li-install-android .li-install-only-button:disabled{
  opacity:.62;
  cursor:wait;
  filter:saturate(.72);
}
.li-install-only-card.li-install-android .li-install-only-button:not(:disabled){
  box-shadow:0 14px 30px rgba(0,0,0,.30),0 0 0 1px rgba(214,181,91,.28),inset 0 1px 0 rgba(255,255,255,.22) !important;
}
.li-install-only-card.li-install-success .li-install-only-button{
  background:linear-gradient(180deg,#d9ca52 0%,#a58a16 100%) !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
}


/* V2.79 — Installation universelle : iOS/iPadOS, Android, Windows, macOS, ChromeOS, Linux */
.li-install-platform{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  margin:10px auto 0;
  padding:5px 10px;
  border-radius:999px;
  border:1px solid rgba(214,181,91,.38);
  background:rgba(255,255,255,.06);
  color:#fff;
  font-size:9px;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.li-install-only-card:is(.li-install-ios,.li-install-macos) .li-install-only-button{
  min-height:54px;
}
.li-install-only-card.li-install-success .li-install-platform{
  border-color:rgba(92,198,115,.55);
  background:rgba(92,198,115,.10);
}


/* V2.82 — préférence locale de vibration */
.modal-card.li-premium-unified-frame .client-notif-options>label.client-haptic-setting{
  margin-top:3px !important;
  border-color:rgba(214,181,91,.58) !important;
}


/* V2.83 — Drag catégories graphiques : alignement sous le doigt et pose propre */
.metric-categories-wrap .metric-category-details.metric-category-dragging{
  left:0;
  top:0;
}
.metric-categories-wrap .metric-category-drop-slot{
  opacity:1;
}
body.li-metric-category-drag-active .metric-categories-wrap{
  isolation:isolate;
}


/* V2.84 — Drag catégories : sécuriser la pose finale sans disparition */
.metric-categories-wrap .metric-category-details.metric-category-dropping{
  opacity:1 !important;
  visibility:visible !important;
}


/* V2.85 — Mes acquis : onglet Accueil pleine largeur + deux sessions fixes */
body[data-ui-mode="client"] .acquired-welcome-tab{
  width:100% !important;min-height:62px !important;margin:0 0 12px !important;padding:12px 17px !important;
  display:flex !important;align-items:center !important;justify-content:space-between !important;gap:12px !important;
  border:1px solid #090909 !important;border-radius:16px !important;
  background:var(--li-chrome-selected-gradient,var(--li-selected-black-yellow)) !important;
  color:#090909 !important;-webkit-text-fill-color:#090909 !important;
  box-shadow:0 10px 22px rgba(0,0,0,.14),inset 0 1px 0 rgba(255,255,255,.35) !important;
  font-family:'Montserrat',Arial,sans-serif !important;font-size:15px !important;font-weight:950 !important;letter-spacing:.04em !important;cursor:pointer !important;
}
body[data-ui-mode="client"] .acquired-welcome-tab span,
body[data-ui-mode="client"] .acquired-welcome-tab strong{color:#090909 !important;-webkit-text-fill-color:#090909 !important;}
body[data-ui-mode="client"] .acquired-welcome-tab strong{font-size:26px !important;font-weight:500 !important;line-height:1 !important;}
body[data-ui-mode="client"] .acquired-welcome-view{width:100% !important;max-width:820px !important;margin:0 auto !important;}
body[data-ui-mode="client"] .acquired-welcome-head{
  margin:0 0 13px !important;padding:15px 16px !important;border:1px solid rgba(198,168,0,.72) !important;border-radius:16px !important;
  background:linear-gradient(110deg,#fff20a 0%,#e5e100 43%,#646443 72%,#191b1d 100%) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 8px 20px rgba(0,0,0,.12) !important;
}
body[data-ui-mode="client"] .acquired-welcome-head .section-eyebrow{color:#202116 !important;-webkit-text-fill-color:#202116 !important;margin:0 0 4px !important;}
body[data-ui-mode="client"] .acquired-welcome-head h2{margin:0 !important;font-family:'Cinzel',Georgia,serif !important;font-size:24px !important;color:#090a09 !important;-webkit-text-fill-color:#090a09 !important;}
body[data-ui-mode="client"] .acquired-welcome-head p{margin:6px 0 0 !important;font-size:10px !important;line-height:1.45 !important;font-weight:750 !important;color:#202116 !important;-webkit-text-fill-color:#202116 !important;}
body[data-ui-mode="client"] .acquired-welcome-session-list{display:grid !important;grid-template-columns:1fr !important;gap:10px !important;}
body[data-ui-mode="client"] .acquired-welcome-session-card{
  min-height:76px !important;padding:13px 14px !important;display:grid !important;grid-template-columns:minmax(0,1fr) auto !important;align-items:center !important;gap:12px !important;
  border:1px solid rgba(214,181,91,.52) !important;border-radius:15px !important;background:linear-gradient(180deg,#464950 0%,#2c2f35 48%,#1f2126 100%) !important;
  box-shadow:0 8px 18px rgba(0,0,0,.14),inset 0 1px 0 rgba(255,255,255,.06) !important;
}
body[data-ui-mode="client"] .acquired-welcome-session-copy .section-eyebrow{margin:0 0 4px !important;color:#e9d35a !important;-webkit-text-fill-color:#e9d35a !important;font-size:8px !important;}
body[data-ui-mode="client"] .acquired-welcome-session-copy h3{margin:0 !important;font-size:13px !important;line-height:1.25 !important;font-weight:900 !important;color:#fff !important;-webkit-text-fill-color:#fff !important;}
body[data-ui-mode="client"] .acquired-welcome-session-copy p{margin:4px 0 0 !important;font-size:8px !important;color:rgba(255,255,255,.72) !important;-webkit-text-fill-color:rgba(255,255,255,.72) !important;}
body[data-ui-mode="client"] .acquired-welcome-session-open{
  min-height:36px !important;padding:8px 10px !important;display:inline-flex !important;align-items:center !important;gap:7px !important;
  border:1px solid #080808 !important;border-radius:10px !important;background:var(--li-chrome-selected-gradient,var(--li-selected-black-yellow)) !important;
  color:#090909 !important;-webkit-text-fill-color:#090909 !important;font-size:9px !important;font-weight:950 !important;
}
body[data-ui-mode="client"] .acquired-welcome-session-open span,
body[data-ui-mode="client"] .acquired-welcome-session-open strong{color:#090909 !important;-webkit-text-fill-color:#090909 !important;}
body[data-ui-mode="client"] .acquired-welcome-session-open strong{font-size:18px !important;line-height:1 !important;}
.program-welcome-video-modal .video-wrap{margin-top:14px !important;}
.program-welcome-admin-grid{margin-bottom:14px !important;}
@media(max-width:620px){
  body[data-ui-mode="client"] .acquired-welcome-tab{min-height:56px !important;border-radius:14px !important;font-size:13px !important;}
  body[data-ui-mode="client"] .acquired-welcome-session-card{padding:11px !important;gap:8px !important;}
  body[data-ui-mode="client"] .acquired-welcome-session-copy h3{font-size:12px !important;}
  body[data-ui-mode="client"] .acquired-welcome-session-open{padding:7px 8px !important;font-size:8px !important;}
}


/* V2.86 — Sauvegarde mentor prête pour migration OVH */
.backup-admin-card{
  max-width:980px;
  margin:0 0 24px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:22px;
  align-items:center;
  padding:20px !important;
  border:1px solid rgba(214,181,91,.44) !important;
  border-radius:18px !important;
  background:linear-gradient(180deg,#3f4249 0%,#272a30 52%,#1d1f24 100%) !important;
  color:#fff !important;
  box-shadow:0 16px 34px rgba(0,0,0,.13),inset 0 1px 0 rgba(255,255,255,.07) !important;
}
.backup-admin-copy{display:grid;gap:6px;min-width:0;}
.backup-admin-copy h3{margin:3px 0 1px;color:#fff !important;-webkit-text-fill-color:#fff !important;font-family:'Cinzel',Georgia,serif;}
.backup-admin-copy p{margin:0;color:rgba(255,255,255,.86) !important;-webkit-text-fill-color:rgba(255,255,255,.86) !important;line-height:1.55;}
.backup-admin-copy small{color:rgba(255,255,255,.66) !important;-webkit-text-fill-color:rgba(255,255,255,.66) !important;line-height:1.45;}
.backup-admin-copy code{color:#f1e900;-webkit-text-fill-color:#f1e900;}
.backup-admin-actions{display:flex;flex-direction:column;gap:9px;min-width:235px;}
.backup-admin-actions .btn{width:100%;min-height:44px;}
@media(max-width:760px){.backup-admin-card{grid-template-columns:1fr;}.backup-admin-actions{min-width:0;}}


/* V2.87 — Connexion Kooneo sécurisée */
.kooneo-login-screen{
  min-height:calc(100dvh - 140px);
  display:grid;
  place-items:center;
  padding:28px 16px 110px;
}
.kooneo-login-card{
  width:min(520px,100%);
  padding:26px;
  border-radius:24px;
  background:linear-gradient(180deg,#45484f 0%,#2b2e34 46%,#1d1f24 100%);
  border:1px solid rgba(214,181,91,.62);
  box-shadow:0 24px 60px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.08);
  color:#fff;
}
.kooneo-login-logo{display:block;width:82px;height:82px;object-fit:contain;margin:0 auto 12px;filter:drop-shadow(0 6px 12px rgba(0,0,0,.22));}
.kooneo-login-card .section-eyebrow{text-align:center;color:#d6b55b!important;-webkit-text-fill-color:#d6b55b!important;font-size:11px!important;letter-spacing:1.5px!important;}
.kooneo-login-card h1{margin:6px 0 7px;text-align:center;font-family:'Cinzel',Georgia,serif;font-weight:600;font-size:34px;color:#fff!important;-webkit-text-fill-color:#fff!important;}
.kooneo-login-card>p{margin:0 auto 20px;text-align:center;color:rgba(255,255,255,.82)!important;-webkit-text-fill-color:rgba(255,255,255,.82)!important;line-height:1.5;}
.kooneo-login-card .field label{color:#fff!important;-webkit-text-fill-color:#fff!important;font-weight:800;}
.kooneo-login-card .field input{background:#fff!important;color:#111!important;-webkit-text-fill-color:#111!important;border:1px solid rgba(214,181,91,.48)!important;min-height:52px;border-radius:14px!important;}
.kooneo-login-submit{width:100%;min-height:54px;margin-top:8px!important;}
.kooneo-login-card>small{display:block;margin-top:14px;text-align:center;color:rgba(255,255,255,.66)!important;-webkit-text-fill-color:rgba(255,255,255,.66)!important;line-height:1.45;}
.kooneo-login-error{margin:0 0 14px;padding:10px 12px;border-radius:12px;background:rgba(150,20,20,.28);border:1px solid rgba(255,135,135,.32);color:#fff;font-size:12px;font-weight:700;text-align:center;}
.auth-logout-btn{position:absolute;right:18px;bottom:10px;z-index:5;border:1px solid rgba(214,181,91,.55);background:#17191d;color:#fff;border-radius:10px;padding:7px 10px;font-size:9px;font-weight:800;cursor:pointer;}
body.li-auth-required .mainnav{display:none!important;}
body.li-auth-required .brandbar .admin-access{display:none!important;}
@media(max-width:760px){
  .kooneo-login-screen{padding:22px 14px 105px;align-items:start;}
  .kooneo-login-card{padding:22px 16px;border-radius:20px;}
  .kooneo-login-card h1{font-size:29px;}
  .auth-logout-btn{right:10px;bottom:7px;font-size:8px;padding:6px 8px;}
}
