@font-face{font-family:Manrope;src:url(/assets/fonts/manrope-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
.legal-links{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:20px;padding-top:15px;border-top:1px solid #dce6e8;font-size:12px}.legal-links a{color:#14778b;text-underline-offset:3px}.legal-links a:focus-visible{outline:2px solid #14778b;outline-offset:4px}.sidebar-legal{justify-content:flex-start;gap:10px;font-size:11px;margin-top:14px;padding-top:12px}
@font-face{font-family:Manrope;src:url(/assets/fonts/manrope-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Manrope;src:url(/assets/fonts/manrope-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Manrope;src:url(/assets/fonts/manrope-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}
:root{
  --bg:#f5f8f8;--surface:#fff;--ink:#15353f;--muted:#687b82;--line:#dce6e8;
  --teal:#2799ae;--teal-d:#14778b;--teal-soft:#e8f5f7;--sand:#d8b78c;--sand-soft:#f7efe4;
  --green:#3b8a70;--green-soft:#eaf6f1;--amber:#ad7427;--amber-soft:#fff4e2;--red:#a64b53;--red-soft:#fbecef;
  --shadow:0 10px 30px rgba(22,53,63,.07);--r:18px;--sidebar:260px
}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.45 Manrope,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}button,input,select,textarea{font:inherit;color:inherit}button{touch-action:manipulation}.hidden{display:none!important}.muted{color:var(--muted)}
.auth-view{min-height:100dvh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 15% 10%,#e6f6f8 0,transparent 35%),var(--bg)}
.auth-card{width:min(460px,100%);background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);padding:30px}.auth-logo{display:block;width:230px;max-width:100%;height:auto;object-fit:contain;margin:0 0 18px}.auth-card h1{margin:14px 0 5px;font-size:34px;letter-spacing:-.04em}.auth-copy{margin:0 0 22px;color:var(--muted)}.auth-form{display:grid;gap:13px}.auth-form label,.sheet label,.drawer label,.coach-controls label{font-weight:600;display:grid;gap:7px}.auth-sep{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:13px;margin:18px 0}.auth-sep:before,.auth-sep:after{content:"";height:1px;background:var(--line);flex:1}.auth-message{min-height:22px;margin:12px 0 0;color:var(--teal-d);font-weight:600}.tiny{font-size:12px;color:var(--muted);margin:14px 0 0}.dev-badge{display:inline-flex;align-items:center;min-height:27px;padding:0 9px;border-radius:999px;background:var(--sand-soft);color:#7a5a32;font-size:11px;font-weight:600;letter-spacing:.05em}.dev-badge.small{min-height:22px;padding:0 7px}
.app{min-height:100dvh;display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr)}.sidebar{height:100dvh;position:sticky;top:0;background:#fff;border-right:1px solid var(--line);padding:16px 14px;display:flex;flex-direction:column;z-index:20}.brand-wrap{height:78px;display:flex;align-items:center;gap:8px;padding:0 7px 14px;margin-bottom:5px;overflow:visible}.brand-wrap img{display:block;width:190px;max-width:calc(100% - 48px);height:auto;object-fit:contain;object-position:left center}.nav{display:grid;gap:3px}.nav button{border:0;background:transparent;border-radius:13px;min-height:47px;padding:0 14px;text-align:left;font-weight:600;color:#526970;cursor:pointer;display:flex;align-items:center;justify-content:space-between}.nav button.active,.nav button:hover{background:var(--teal-soft);color:var(--teal-d)}.nav-badge{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border-radius:999px;background:var(--red);color:#fff;font-size:12px}.sidebar-bottom{margin-top:auto;padding:14px 8px 2px}.user-block{border-top:1px solid var(--line);padding-top:14px;margin-top:14px}.user-block strong{display:block}.user-block span{font-size:13px;color:var(--muted)}.link-btn{border:0;background:transparent;color:var(--teal-d);font-weight:600;padding:12px 0 0;cursor:pointer}.mobile-top,.mobile-nav{display:none}.content{min-width:0;padding:28px 32px 90px}.content-inner{max-width:1480px;margin:auto}.screen{display:none}.screen.active{display:block}
.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px}.page-head h1{margin:0;font-size:clamp(30px,3vw,42px);line-height:1.05;letter-spacing:-.035em}.sub{margin:7px 0 0;color:var(--muted);font-size:16px}.head-tools,.toolbar-right,.agenda-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.06em;color:var(--teal-d);text-transform:uppercase}
.segment,.mode-switch{display:inline-flex;background:#fff;border:1px solid var(--line);padding:4px;border-radius:14px}.segment button,.mode-switch button{border:0;background:transparent;min-height:38px;padding:0 14px;border-radius:10px;font-weight:600;color:#5a7077;cursor:pointer}.segment button.active,.mode-switch button.active{background:var(--teal);color:#fff}.btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;line-height:1.35;gap:6px;border:0;border-radius:13px;min-height:48px;padding:0 17px;font-weight:600;cursor:pointer}.btn.primary{background:var(--teal);color:#fff}.btn.primary:hover{background:var(--teal-d)}.btn.secondary{background:#fff;border:1px solid var(--line)}.btn.danger{background:var(--red-soft);color:var(--red);border:1px solid #f0cbd0}.btn.small{min-height:40px;padding:0 12px;font-size:14px}.btn.wide{width:100%}.input,.select,.textarea{width:100%;border:1px solid var(--line);background:#fff;border-radius:13px;padding:0 13px;outline:none}.input,.select{min-height:48px}.textarea{min-height:112px;padding:12px 13px;resize:vertical}.textarea.small-area{min-height:80px}.input:focus,.select:focus,.textarea:focus{border-color:#9fd5de;box-shadow:0 0 0 3px #e9f7f9}.grow{flex:1 1 320px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow)}.panel{padding:21px}.section{margin-top:18px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.panel-head h2,.card h2{margin:0;font-size:21px}.panel-head p{margin:5px 0 0;color:var(--muted)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.period-bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:15px}.period-bar button{border:1px solid var(--line);background:#fff;min-height:41px;padding:0 14px;border-radius:999px;font-weight:600;cursor:pointer}.period-bar button.active{background:#173b47;color:#fff;border-color:#173b47}.custom-dates{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin:0 0 16px}.custom-dates label{display:grid;gap:5px;font-weight:600;font-size:14px}
.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.kpi{padding:21px;min-height:142px;display:flex;flex-direction:column;justify-content:space-between}.kpi .label{font-weight:600;color:#61767d}.kpi .value{font-size:clamp(31px,3vw,46px);font-weight:600;line-height:1;letter-spacing:-.045em;margin:11px 0}.kpi .meta{color:var(--muted);font-size:14px}.kpi.teal{border-top:4px solid var(--teal)}.kpi.sand{border-top:4px solid var(--sand)}.kpi.green{border-top:4px solid var(--green)}.kpi.dark{border-top:4px solid #173b47}.finance-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}
.switch-line{display:flex;align-items:center;gap:9px;color:var(--muted);font-weight:600}.switch{position:relative;width:52px;height:30px;flex:none}.switch input{opacity:0;width:0;height:0}.switch span{position:absolute;inset:0;border-radius:999px;background:#dce5e7;cursor:pointer;transition:.18s}.switch span:before{content:"";position:absolute;width:24px;height:24px;left:3px;top:3px;background:#fff;border-radius:50%;box-shadow:0 2px 8px rgba(0,0,0,.16);transition:.18s}.switch input:checked+span{background:var(--teal)}.switch input:checked+span:before{transform:translateX(22px)}.fold{display:none;border-top:1px solid var(--line);margin-top:16px;padding-top:16px}.fold.open{display:block}.detail-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.mini-metric{padding:14px;border-radius:13px;background:#f8fbfb}.mini-metric span{display:block;color:var(--muted);font-size:13px}.mini-metric strong{display:block;font-size:22px;margin-top:4px}
.toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}.entity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.entity{padding:20px;cursor:pointer;transition:.15s}.entity:hover{transform:translateY(-1px);border-color:#b8dce2}.entity h3{font-size:21px;margin:9px 0 5px}.entity p{margin:5px 0;color:var(--muted)}.idtag{font-size:14px;font-weight:600;color:#526970}.status{display:inline-flex;align-items:center;min-height:29px;padding:0 9px;border-radius:999px;font-size:12px;font-weight:600;background:var(--teal-soft);color:var(--teal-d)}.status.ok{background:var(--green-soft);color:var(--green)}.status.warn{background:var(--amber-soft);color:#8a621e}.status.off{background:#edf0f1;color:#6d777b}.status.bad{background:var(--red-soft);color:var(--red)}
.journal{display:grid}.journal-item{display:grid;grid-template-columns:120px minmax(240px,1.5fr) 1fr 150px;gap:16px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line);cursor:pointer}.journal-item:last-child{border-bottom:0}.journal-date{font-weight:600}.journal-name{font-weight:600;font-size:17px}.journal-sub{color:var(--muted);font-size:13px;margin-top:3px}.journal-money{font-weight:600}.journal-item:hover .journal-name{color:var(--teal-d)}
.rank-list,.compact-list,.split-list,.alert-list{display:grid}.rank-row,.compact-row,.split-row,.alert-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.rank-row:last-child,.compact-row:last-child,.split-row:last-child,.alert-row:last-child{border-bottom:0}.rank-row .small,.compact-row .small,.alert-row .small{color:var(--muted);font-size:13px;margin-top:3px}.rank-row strong,.split-row strong{font-size:17px}.split-row{align-items:center}.split-row .bar-track{height:8px;background:#edf3f4;border-radius:999px;overflow:hidden;margin-top:7px}.split-row .bar-fill{height:100%;background:var(--teal);border-radius:999px}.alert-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}.alert-row.open{background:#fffaf4;margin:0 -10px;padding:14px 10px;border-radius:12px}
.finance-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px}.chart{height:275px;display:flex;align-items:flex-end;gap:10px;padding:18px 4px 36px;position:relative;border-bottom:1px solid var(--line)}.barcol{flex:1;min-width:24px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:8px;height:100%;position:relative}.bar{width:min(42px,78%);min-height:2px;border-radius:8px 8px 3px 3px;background:linear-gradient(180deg,var(--teal),var(--teal-d));position:relative}.bar:hover:after{content:attr(data-value);position:absolute;bottom:calc(100% + 7px);left:50%;transform:translateX(-50%);background:#173b47;color:#fff;border-radius:7px;padding:4px 7px;font-size:11px;white-space:nowrap}.barlabel{font-size:11px;color:var(--muted);position:absolute;bottom:-26px}
.week-calendar{display:grid;grid-template-columns:repeat(7,minmax(180px,1fr));gap:10px;overflow:auto;padding-bottom:8px}.day-column{min-width:180px;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}.day-column.today{border-color:#9fd5de;box-shadow:0 0 0 2px #e7f6f8}.day-head{padding:12px 13px;background:#fafcfc;border-bottom:1px solid var(--line);font-weight:600}.day-head small{display:block;color:var(--muted);font-weight:650;margin-top:2px}.day-events{padding:10px;display:grid;gap:8px;min-height:360px;align-content:start}.calendar-event{border-radius:11px;padding:10px;background:var(--teal-soft);border-left:4px solid var(--teal);font-size:13px}.calendar-event.pro{background:var(--sand-soft);border-left-color:var(--sand)}.calendar-event strong{display:block}.calendar-event small{display:block;color:#5f757c;margin-top:2px}.calendar-event .time{font-weight:600;color:#173b47}.no-event{color:#9aa8ac;font-size:13px;padding:7px}
.coach-shell{max-width:860px;margin:auto}.coach-page-head{align-items:center}.coach-controls{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end}.today-list{display:grid;gap:12px}.visit{padding:18px}.visit-top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.visit-time{font-size:23px;font-weight:600;letter-spacing:-.03em}.visit-name{font-size:20px;font-weight:600;margin:2px 0}.visit-id{font-size:14px;color:var(--muted);font-weight:600}.visit-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:15px}.quick{flex:1 1 185px;min-height:50px;border-radius:13px;border:0;background:var(--teal);color:#fff;font-weight:600;cursor:pointer}.quick.alt{background:#fff;color:var(--teal-d);border:1px solid #b9dfe5}.visit.done{border-color:#b9dcca;background:#fbfefd}.optional{margin-top:12px;display:flex;gap:8px;flex-wrap:wrap}.optional button{border:1px solid var(--line);background:#fff;min-height:40px;padding:0 12px;border-radius:11px;font-weight:600;cursor:pointer}.coach-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}.coach-summary .card{padding:18px}.coach-summary .n{font-size:32px;font-weight:600;margin-top:7px}
.drawer-backdrop{position:fixed;inset:0;background:rgba(12,31,37,.32);z-index:70}.drawer{position:fixed;right:0;top:0;height:100dvh;width:min(620px,100%);background:#f9fbfb;z-index:80;box-shadow:-18px 0 60px rgba(22,53,63,.18);display:flex;flex-direction:column}.drawer-head{padding:20px 22px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:14px;background:#fff}.drawer-head h2{margin:4px 0 0;font-size:27px}.drawer-body{padding:20px 22px 40px;overflow:auto}.drawer-section{background:#fff;border:1px solid var(--line);border-radius:16px;padding:17px;margin-bottom:13px}.drawer-section h3{margin:0 0 12px;font-size:18px}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.info-item span{display:block;color:var(--muted);font-size:12px}.info-item strong{display:block;margin-top:3px;word-break:break-word}.history-row{display:grid;grid-template-columns:90px 1fr auto;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);align-items:start}.history-row:last-child{border-bottom:0}.drawer-actions{display:flex;gap:8px;flex-wrap:wrap}.edit-form{display:grid;gap:12px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.detail-fields{margin-top:12px}
.modal{position:fixed;inset:0;background:rgba(13,34,41,.46);display:grid;place-items:center;z-index:90;padding:18px}.sheet{width:min(760px,100%);max-height:92dvh;overflow:auto;background:#f9fbfb;border-radius:24px;padding:20px;box-shadow:0 20px 80px rgba(0,0,0,.22)}.small-sheet{width:min(620px,100%)}.sheet-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px}.sheet-head h2{margin:2px 0 0;font-size:25px}.sheet form{display:grid;gap:13px}.icon-btn{width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:#fff;font-size:21px;cursor:pointer}details{border-top:1px solid var(--line);padding-top:12px}summary{cursor:pointer;font-weight:600;min-height:38px;display:flex;align-items:center}
.settings-lines{display:grid;grid-template-columns:1fr auto;gap:10px 16px;margin-top:16px}.settings-lines span{color:var(--muted)}.settings-lines strong{text-align:right}.ok{color:var(--green)}.stack{display:grid;gap:9px;margin-top:15px}/* Barre de chargement masquée pour tous les rôles et tous les écrans. */
.loading-bar{display:none}.loading-bar span{animation:none}.toast{position:fixed;right:20px;bottom:20px;z-index:120;background:#173b47;color:#fff;border-radius:13px;padding:12px 16px;font-weight:600;box-shadow:var(--shadow);opacity:0;pointer-events:none;transform:translateY(8px);transition:.2s;max-width:min(420px,calc(100vw - 40px))}.toast.show{opacity:1;transform:translateY(0)}.toast.error{background:#7b3038}
.empty{padding:28px;text-align:center;color:var(--muted)}
@media(max-width:1120px){.kpis,.finance-kpis{grid-template-columns:repeat(2,1fr)}.entity-grid{grid-template-columns:repeat(2,1fr)}.finance-grid,.two-col,.settings-grid{grid-template-columns:1fr}.detail-metrics{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){:root{--sidebar:0px}.app{display:block}.sidebar{position:fixed;left:-284px;width:272px;transition:.2s;box-shadow:var(--shadow)}.sidebar.open{left:0}.mobile-top{position:sticky;top:0;z-index:50;height:66px;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:8px 14px}.mobile-top img{width:150px;height:auto;object-fit:contain}.content{padding:20px 14px 92px}.page-head{display:grid}.head-tools{justify-content:flex-start}.kpis,.finance-kpis{grid-template-columns:1fr 1fr;gap:10px}.kpi{min-height:124px;padding:16px}.kpi .value{font-size:31px}.entity-grid{grid-template-columns:1fr}.journal-item{grid-template-columns:1fr auto;gap:8px}.journal-item>div:nth-child(3){grid-column:1}.journal-item>div:nth-child(4){grid-column:2;grid-row:1}.two-col,.finance-grid,.settings-grid,.form-grid,.info-grid,.coach-controls{grid-template-columns:1fr}.detail-metrics{grid-template-columns:1fr 1fr}.week-calendar{grid-template-columns:repeat(7,minmax(150px,1fr))}.mobile-nav{display:grid;position:fixed;bottom:0;left:0;right:0;grid-template-columns:repeat(5,1fr);background:#fff;border-top:1px solid var(--line);z-index:55;padding-bottom:env(safe-area-inset-bottom)}.mobile-nav button{border:0;background:#fff;min-height:62px;font-size:11px;font-weight:600;color:#60757b}.mobile-nav button.active{color:var(--teal-d)}.mobile-nav .plus{font-size:25px;color:#fff;background:var(--teal);width:50px;height:50px;min-height:50px;border-radius:50%;justify-self:center;align-self:center}.coach-summary{grid-template-columns:1fr 1fr}.drawer{width:100%}.drawer-head,.drawer-body{padding-left:16px;padding-right:16px}.sheet{border-radius:20px}.toolbar-right{width:100%}.toolbar-right>*{flex:1}.segment{max-width:100%;overflow:auto}.segment button{white-space:nowrap}.chart{height:230px}}
@media(max-width:470px){.kpis,.finance-kpis{grid-template-columns:1fr}.detail-metrics,.coach-summary{grid-template-columns:1fr}.auth-card{padding:22px}.period-bar{overflow:auto;flex-wrap:nowrap;padding-bottom:4px}.period-bar button{white-space:nowrap}.page-head h1{font-size:32px}}

/* Shared brand and coach workspace */
h1,h2,h3{font-weight:600;letter-spacing:-.025em}strong{font-weight:600}
.auth-logo{width:220px;max-height:none;object-fit:contain;margin-bottom:16px}.auth-card h1{font-size:30px;font-weight:600;letter-spacing:-.03em}
.brand-wrap{min-height:92px;height:auto;padding:7px 5px 18px;align-items:center}.brand-wrap img{width:172px;height:auto;max-width:calc(100% - 40px);flex:1;object-fit:contain}.brand-wrap .dev-badge{flex:none}
.mobile-top{height:76px}.mobile-top img{width:136px;max-height:54px;object-fit:contain}
.coach-controls{display:flex;align-items:center;gap:18px;margin-bottom:24px;background:#fafcfc;box-shadow:none}.coach-controls label{flex:1;max-width:360px;font-size:13px}.preview-label{font-size:12px;color:var(--muted)}
.coach-page-head h1{font-size:clamp(28px,3vw,38px);line-height:1.2}.coach-shell{max-width:1000px}
.month-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:28px}.month-heading h2{margin:0;font-size:20px;text-transform:capitalize}
.coach-summary{margin-top:14px}.coach-summary .segment-card{padding:23px}.segment-card.personal{border-top:3px solid var(--teal)}.segment-card.professional{border-top:3px solid var(--sand)}
.segment-label{font-size:13px;font-weight:600;color:var(--teal-d)}.professional .segment-label{color:#82613c}.segment-money{display:grid;gap:4px;margin:20px 0}.segment-money>span{font-size:13px;color:var(--muted)}.segment-money>strong{font-size:34px;letter-spacing:-.035em;line-height:1.25}.segment-footer{display:flex;gap:10px;justify-content:space-between;align-items:center;font-size:13px}.segment-footer>span{color:var(--muted)}
.action-count{font-size:12px;background:var(--teal-soft);padding:5px 10px;border-radius:999px;color:var(--teal-d)}.action-group{padding:16px 0;border-top:1px solid var(--line)}.action-group-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.action-group h3{font-size:16px;margin:5px 0}.action-buttons{display:flex;gap:8px;flex-wrap:wrap}.success-empty{padding:24px 0;color:var(--green)}
.session-checks{display:flex;gap:8px;flex-wrap:wrap;max-height:180px;overflow:auto}.sheet .session-check{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:10px;padding:10px;font-size:14px}.session-check input{accent-color:var(--teal);width:17px;height:17px}.confirm-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid var(--line)}
.accompaniment-tabs{margin-bottom:10px}.accompaniment-section{margin-top:20px}.accompaniment-section>.panel-head{margin-bottom:12px}.accompaniment-section .entity{box-shadow:none;border-top:3px solid var(--teal)}.accompaniment-section.professional .entity{border-top-color:var(--sand)}.accompaniment-section .entity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.pay-month-control{display:flex;align-items:center;gap:12px}.pay-month-control input{max-width:230px}.pay-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pay-segment.personal{border-top:3px solid var(--teal)}.pay-segment.professional{border-top:3px solid var(--sand)}.pay-segment .panel-head strong{white-space:nowrap}.pay-segment .split-row{cursor:pointer}.pay-segment .split-row strong{font-size:14px}.pay-segment .small{font-size:12px}
.drawer-section>.panel-head{align-items:flex-start;margin-bottom:12px}.drawer-section>.panel-head h3{margin:5px 0}.info-item strong{white-space:pre-wrap;font-weight:500;font-size:14px}.entity-history{max-height:380px;overflow:auto;overscroll-behavior:contain}.history-row{cursor:pointer;grid-template-columns:72px 1fr;font-size:13px}.history-row>span{grid-column:2;font-size:12px;color:var(--muted)}.history-row .muted{white-space:pre-wrap}.entity-history .btn{margin-top:12px}
:focus-visible{outline:2px solid var(--teal-d);outline-offset:3px}
.initial-information{display:grid;gap:14px;margin-top:16px}.imported-questionnaire{margin-top:16px}.imported-questionnaire summary{font-size:13px;display:list-item;line-height:1.5;padding-bottom:10px}.imported-questionnaire .info-grid{margin-top:10px}
@media(max-width:760px){.coach-controls{align-items:flex-start;flex-direction:column;gap:8px}.coach-controls label{width:100%;max-width:none}.action-group-head{align-items:flex-start;flex-direction:column}.action-buttons{width:100%}.action-buttons .btn{flex:1}.pay-columns{grid-template-columns:1fr}.accompaniment-section .entity-grid{grid-template-columns:1fr}.month-heading{align-items:flex-start;flex-direction:column;gap:4px}.mobile-nav.no-manual{grid-template-columns:repeat(4,1fr)}.mobile-nav button{font-size:10px}.segment-money>strong{font-size:30px}.drawer-section>.panel-head{gap:8px}.drawer-section>.panel-head h3{font-size:16px}}

/* Coach workflow iteration, October 2026. */
.coach-identity{max-width:1120px;margin:0 auto 18px;padding:10px 14px;border-left:3px solid var(--teal,#327b76);color:#426763;background:#edf4f1;font-size:13px;border-radius:8px}
.coach-identity{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.coach-identity>span{flex:1;min-width:180px}.coach-identity .btn{flex:none}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.inline-check.hidden{display:none!important}
.home-month-control{gap:8px;max-width:100%}.home-month-control label{flex:none}.home-month-control input{width:230px;min-width:0}.month-arrow{min-width:42px;padding:10px;flex:none}
#coachWeekCalendar button.calendar-event{width:100%;border-top:0;border-right:0;border-bottom:0;cursor:pointer;text-align:left;font-family:inherit;color:inherit;line-height:1.5}#coachWeekCalendar button.calendar-event:hover{box-shadow:0 0 0 1px var(--teal-d)}.calendar-event-action{display:block;margin-top:8px;font-size:12px;color:var(--teal-d);text-decoration:underline;text-underline-offset:3px}.calendar-event.pro .calendar-event-action{color:#82613c}.session-management{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.session-management h3{margin:0 0 12px}.session-management-help{margin:18px 0 0}
.calendar-event.upcoming,#coachWeekCalendar button.calendar-event.upcoming{background:transparent;border:1.5px dashed var(--teal)}.calendar-event.pro.upcoming,#coachWeekCalendar button.calendar-event.pro.upcoming{border-color:var(--sand)}.agenda-legend{display:flex;align-items:center;gap:8px;margin:0 0 14px;color:var(--muted);font-size:13px}.agenda-legend-sample{display:inline-block;width:25px;height:17px;flex-shrink:0;border:1.5px dashed var(--teal);border-radius:5px}.agenda-empty-help{margin:0 0 14px;font-size:14px;line-height:1.6}
@media(max-width:760px){.home-month-control{width:100%}.home-month-control input{flex:1;width:0}.month-heading{gap:10px}.coach-identity .btn{width:100%}}
.planning-add{margin:0 0 20px}.section-title.identity-title{color:#327b76}.section-title.profile-title{color:#9a6339}
textarea.textarea{resize:none;overflow-y:hidden;min-height:72px;max-height:none;box-sizing:border-box}
.group-session{padding:12px 0;border-bottom:1px solid #e4e9e5}.session-line{display:flex;justify-content:space-between;align-items:center;gap:16px}.signal-choice{display:flex!important;gap:7px;align-items:center;color:#a54a45;font-size:12px;font-weight:500!important;margin:0!important}.signal-choice input{accent-color:#a54a45}.signal-text{margin-top:10px}.session-alert,.signal-button{color:#a54a45}.session-check{margin:0!important}.participant-profile{margin:18px 0;padding:16px;background:#f6f8f6;border-radius:12px}.participant-profile h4{font-weight:600;margin:0 0 14px}.participant-editor,.check-fields{border:1px solid #e2e7e1;border-radius:12px;padding:16px;margin:20px 0}.participant-editor legend,.check-fields legend{color:#327b76;font-weight:600;padding:0 7px}.check-fields label,.inline-check{display:flex!important;align-items:center;gap:9px;font-weight:400!important}.check-fields input,.inline-check input{width:auto!important}.edit-form .form-grid{align-items:start}.session-checks{max-height:360px;overflow:auto}
@media(max-width:600px){.session-line{align-items:start;flex-direction:column;gap:10px}.coach-identity{margin:0 0 14px}.participant-editor{padding:12px}}

.info-item strong,.session-alert{white-space:pre-wrap}

/* Coach activity: margin amount and percentage on the selected period. */
.coach-activity-head,.rank-row.coach-activity-row{display:grid;grid-template-columns:minmax(0,1fr) 8rem 5rem;gap:12px;align-items:start}
.coach-activity-head{color:var(--muted);font-size:12px;margin-top:12px;padding-bottom:8px;border-bottom:1px solid var(--line)}
.coach-activity-head span:not(:first-child),.coach-margin,.coach-margin-percentage{text-align:right;white-space:nowrap}
.coach-margin-percentage{color:var(--teal-d)}
@media(max-width:520px){.coach-activity-head,.rank-row.coach-activity-row{grid-template-columns:minmax(0,1fr) 6.5rem 4rem;gap:8px}.rank-row.coach-activity-row strong{font-size:14px}.coach-activity-head{font-size:11px}}

/* Listes de gestion admin */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.period-label{margin:0 0 16px}.directory-help{color:var(--muted);font-size:13px;line-height:1.6;margin:0 0 14px}
.entity-table-wrap{overflow-x:auto;overscroll-behavior-x:contain}.entity-table{width:100%;min-width:680px;border-collapse:collapse;text-align:left;font-size:14px}
.entity-table th{background:#f2f7f7;color:var(--muted);font-size:12px;font-weight:600;padding:13px 16px;white-space:nowrap}.entity-table td{padding:14px 16px;border-top:1px solid var(--line);vertical-align:middle}.entity-table tbody tr:hover{background:#f8fbfb}
.entity-table th:nth-last-child(-n+2),.entity-status-cell{text-align:center;width:80px}.entity-status-cell input{width:19px;height:19px;accent-color:var(--teal);cursor:pointer}.entity-status-cell input:disabled{cursor:wait}.entity-name{display:block;text-align:left;border:0;background:transparent;color:var(--teal-d);font:inherit;font-weight:600;padding:5px 0;cursor:pointer}.entity-name:hover{text-decoration:underline}.entity-name:focus-visible,.entity-status-cell input:focus-visible,.entity-table-wrap:focus-visible{outline:2px solid var(--teal);outline-offset:3px}
@media(max-width:760px){.entity-table th,.entity-table td{padding:12px}.directory-help{font-size:12px}}

.workflow-section{border:1px solid var(--line);border-radius:16px;padding:16px;margin:0 0 16px;min-width:0;display:grid;gap:13px}.workflow-section legend{font-size:16px;font-weight:600;color:var(--teal-d);padding:0 6px}.check-line{display:flex;align-items:center;gap:10px;min-height:40px}.check-line input{width:18px;height:18px;accent-color:var(--teal)}.workflow-section details{display:grid;gap:12px}.workflow-section label,#moveDetails label,#manualCompletedFields label{display:grid;gap:6px}.workflow-section .check-line{display:flex}.workflow-section p{margin:0;font-size:13px;line-height:1.6}.admin-action-section+.admin-action-section{border-top:1px solid var(--line);padding-top:14px;margin-top:14px}.admin-action-section h3{font-size:15px;display:flex;justify-content:space-between;align-items:center;gap:12px}.admin-action-row{display:grid;gap:5px;padding:11px 0;width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;color:var(--ink);font:inherit;cursor:pointer}.admin-action-row:hover{color:var(--teal-d)}.admin-action-row span{font-size:12px;color:var(--muted);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.admin-action-section>p{font-size:13px}.change-history-row{display:grid;gap:6px;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.change-history-row p{margin:0;white-space:pre-wrap}.duplicate-warning{padding:12px;border-radius:12px;background:var(--amber-soft);font-size:13px}.duplicate-warning p{margin:0 0 10px}#manualCompletedFields,#moveDetails{display:grid;gap:13px}

/* Fiches clients et structures — octobre 2026. */
.profile-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.type-picker{display:flex;flex-direction:column;align-items:stretch;gap:8px}.type-adder{display:flex;flex-direction:column;gap:8px}
.relation-review-form{display:flex;flex-direction:column;gap:12px}.relation-review-form [data-google-review-content]{display:flex;flex-direction:column;gap:12px}.relation-review-form [data-google-review-content].hidden{display:none}
.relation-review-form button{align-self:flex-start}.relation-gift-head{margin-top:24px}.relation-gift-list{display:flex;flex-direction:column;gap:10px}.gift-row{display:flex;gap:16px;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.gift-row span{display:block;margin-top:4px}
.preserved-structure-notes summary{cursor:pointer;color:var(--muted);padding:8px 0}.preserved-structure-notes .panel-head{margin-top:14px}
.client-tools-sheet{width:min(940px,96vw)}#clientToolsBody form{display:flex;flex-direction:column;gap:16px}textarea.textarea.json-area{font-family:monospace;font-weight:400;min-height:130px;max-height:260px;overflow-y:auto!important}.import-feedback{color:#b42318;white-space:pre-wrap}.import-feedback:empty{display:none}
.import-table-wrap{overflow:auto;margin:14px 0}.import-table{width:100%;border-collapse:collapse;min-width:570px}.import-table caption{text-align:left;font-weight:600;margin-bottom:10px}.import-table th,.import-table td{text-align:left;vertical-align:top;padding:10px;border-bottom:1px solid var(--line);white-space:pre-wrap;word-break:break-word}.import-table th{color:var(--muted);font-size:12px}.import-table td span{display:block;font-size:12px;color:var(--muted);margin-top:4px}.import-table input{width:18px;height:18px}
@media(max-width:600px){.profile-actions{justify-content:flex-start}.drawer-section>.panel-head{align-items:flex-start;flex-wrap:wrap}.gift-row{align-items:flex-start}.gift-row strong{overflow-wrap:anywhere}.client-tools-sheet{padding:20px}}

.import-table th:first-child,.import-table td:first-child{width:70px;white-space:nowrap}
@media(max-width:600px){.import-table,.import-table tbody{display:block;min-width:0}.import-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.import-table tr{display:grid;grid-template-columns:32px minmax(0,1fr);padding:12px 0;border-bottom:1px solid var(--line);gap:4px 8px}.import-table td{padding:4px 0;border:0;grid-column:2;word-break:normal;overflow-wrap:anywhere}.import-table td:first-child{width:auto;grid-column:1;grid-row:1 / 4}.import-table td[data-import-value]::before{content:attr(data-import-value);display:block;font-size:12px;color:var(--muted);margin-bottom:2px}}

/* Coach-owned agenda and explicit duplicate review. */
.assignment-help{padding:14px 16px;border-radius:12px;background:var(--soft,#f3f6f4);color:var(--muted);font-size:.88rem;line-height:1.55}
.planning-review{margin:20px 0;padding:16px;border:1px solid #e0c898;border-radius:14px;background:#fffaf0;font-size:.88rem}
.planning-review h3{font-size:1rem;margin:0 0 8px}.planning-conflict{border:0;border-top:1px solid #e6dac0;padding:12px 0;margin:12px 0 0;min-width:0}.planning-conflict legend{padding-right:10px;font-weight:500}.existing-session{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.planning-conflict .select{width:100%;max-width:100%;font-size:.85rem}.planning-conflict p{line-height:1.5}
@media(max-width:560px){.existing-session{align-items:flex-start}.existing-session span{flex:1}.planning-review{padding:12px}.planning-conflict label{min-width:0}}

/* Programming belongs to the accompaniment, and new attribution stays visible. */
.planning-inputs{border:0;padding:0;margin:0;min-width:0}.planning-inputs:disabled{opacity:.8}.coach-accompaniment{cursor:default}.entity-open{border:0;background:none;padding:0;color:inherit;font:inherit;text-align:left;cursor:pointer}.entity-open:hover{text-decoration:underline;text-underline-offset:4px}.entity-open:focus-visible{outline:2px solid var(--teal);outline-offset:5px}.accompaniment-card-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.accompaniment-card-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.new-assignment-badge{font-size:.76rem;border-radius:999px;padding:5px 10px;background:#e5f4ec;color:#286747;white-space:nowrap}.assignment-notice{margin:22px 0;border-left:4px solid var(--teal)}.assignment-notice h2{font-size:1.2rem;margin-top:0}.new-assignment-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;border-top:1px solid var(--line)}.new-assignment-row>div{display:grid;gap:5px}.new-accompaniment-notice{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 22px;margin:20px 0;border:1px solid var(--line);border-left:4px solid var(--teal);border-radius:14px;background:#f1f8f6}.new-accompaniment-notice p{margin:7px 0 0;color:var(--muted);font-size:.88rem}.mobile-count{border-radius:999px;padding:1px 5px;background:var(--teal);color:#fff;font-size:10px}
@media(max-width:760px){.mobile-nav{grid-template-columns:repeat(4,1fr)}.new-accompaniment-notice,.new-assignment-row{align-items:flex-start;flex-direction:column}.accompaniment-card-actions .btn{flex:1}.assignment-notice{padding:18px}.new-accompaniment-notice{padding:16px}}
.notification-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;align-items:center}
.finance-grid>.card,.two-col>.card,.settings-grid>.card{min-width:0}
@media(max-width:760px){.chart{gap:4px}.barcol{min-width:0}.barlabel{font-size:10px}.alert-row{grid-template-columns:minmax(0,1fr)}.notification-actions{justify-content:flex-start}}

#settings a.btn{color:var(--ink);text-decoration:none}
#settings a.btn:hover{border-color:var(--teal)}

.environment-banner{position:sticky;top:0;z-index:120;background:#fff0d1;color:#725015;border-bottom:1px solid #e5ce9f;padding:10px 16px;text-align:center;font-size:14px;font-weight:600}
.selected-month .bar{background:var(--teal-d);outline:2px solid #9fd5de;outline-offset:3px}.selected-month .barlabel{font-weight:700;color:var(--teal-d)}
#finance .home-month-control{flex-wrap:wrap}#financePeriodLabel{margin:0}

.test-environment{--test-banner-height:42px}.environment-banner{height:var(--test-banner-height,42px);display:flex;align-items:center;justify-content:center}
.test-environment .sidebar{top:var(--test-banner-height);height:calc(100dvh - var(--test-banner-height))}
.test-environment .drawer,.test-environment .drawer-backdrop,.test-environment .modal{top:var(--test-banner-height);height:calc(100dvh - var(--test-banner-height))}
#finance .home-month-control input{min-width:160px}
@media(max-width:760px){.test-environment{--test-banner-height:62px}.test-environment .mobile-top,.test-environment .sidebar{top:var(--test-banner-height)}#finance .home-month-control{display:grid;grid-template-columns:auto 40px minmax(0,1fr) 40px;gap:8px}#finance .home-month-control input{min-width:0;width:100%}#financeCurrentMonth{grid-column:1/-1;justify-self:start}}

.preparation-actions,.guide-actions{display:flex;gap:10px;flex-wrap:wrap}.guide-actions{justify-content:space-between;margin-top:24px}.guide-actions .btn{flex:1}.coach-guide-body{line-height:1.65}.coach-guide-body>.assignment-help{margin:20px 0}.recurring-rule{padding:16px 0;border-top:1px solid var(--line)}.pay-session{width:100%;background:none;border:0;border-bottom:1px solid var(--line);font:inherit;color:inherit;text-align:left;cursor:pointer}.pay-session>span{display:grid;gap:5px}.pay-session:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.pay-session:hover{background:var(--soft)}.pay-exceptions-title{font-size:1rem;margin-top:26px}.coach-guide-body .btn,.guide-actions .btn{text-align:center;justify-content:center}
@media(max-width:760px){.preparation-actions{width:100%}.preparation-actions .btn{flex:1}.pay-session>strong{white-space:nowrap}}
/* Private enrollment material stays in this view until verification or sign-out. */
.mfa-qr{display:block;width:220px;max-width:100%;height:auto;margin:16px auto;background:#fff;padding:8px;border-radius:8px}
.mfa-secret{display:block;overflow-wrap:anywhere;user-select:all;padding:12px;background:#f4f7f8;border-radius:8px;margin:12px 0}
#mfaFlow h2{margin-top:12px}#mfaSetup details{font-size:.85rem;margin-bottom:16px}
.auth-link{display:block;margin:14px auto 0;text-align:center}#passwordRequestView h2,#passwordRecoveryView h2{font-size:24px;line-height:1.25;margin:12px 0}.auth-message{overflow-wrap:anywhere}#passwordRules{margin:0;line-height:1.5}

/* Connexion AKTIVECO — palette officielle, 19 octobre 2026. */
.auth-view{background:radial-gradient(ellipse at top left,#E0F3F8,transparent 60%),#F8F3EA;color:#00121A}
.auth-card{border-radius:20px;border-color:#D1E3E8;box-shadow:0 12px 40px #0024340a}
.auth-card .auth-copy,.auth-card .tiny{color:#465D66}
.auth-card .btn.primary{background:#1C93AE;color:#FFFFFF;border-color:#1C93AE}
.auth-card .btn.primary:hover{background:#007089;color:#FFFFFF;border-color:#007089}
.auth-card .btn.secondary{color:#002434;border-color:#B4CFD8}
.auth-card .link-btn,.auth-card .legal-links a{color:#007089}
.auth-card .input{border-radius:8px}
.auth-card :focus-visible{outline:3px solid #007089;outline-offset:3px}
.auth-card .auth-link{min-height:44px;line-height:1.5}
.auth-card .auth-message:empty{display:none}
.auth-card .auth-message{overflow-wrap:anywhere}

/* Demande du 19/10 : logo toujours sur fond blanc. */
.auth-logo,.brand-wrap img,.mobile-top img{background:#FFFFFF}

/* Revue Admin du 19/10 : badge retiré uniquement dans la vue Admin. */
.app[data-view="admin"] .brand-wrap .dev-badge{display:none}
.app[data-view="admin"] .brand-wrap img{width:190px;max-width:100%;flex:0 1 auto}

/* Revue UX Admin : cartes ouvrables, contexte vide et détail des indicateurs. */
.kpi-link{text-align:left;color:var(--ink);font:inherit;width:100%;cursor:pointer;transition:border-color .15s,box-shadow .15s}
.kpi-link:hover{border-color:var(--teal-d);box-shadow:0 4px 18px rgba(0,64,85,.1)}
.kpi-link:focus-visible,.metric-row:focus-visible,.planning-gap-row:focus-visible{outline:3px solid var(--teal-d);outline-offset:3px}
.kpi-hint{display:block;color:var(--teal-d);font-size:12px;font-weight:600;margin-top:10px}
.admin-empty-state{background:var(--sand-soft);border:1px solid var(--line);border-radius:16px;padding:16px 18px;margin-bottom:16px}
.admin-empty-state p{margin:6px 0 0;color:var(--muted);line-height:1.6}
.empty-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.empty-actions:empty{display:none}
.planning-gap-row{width:100%;text-align:left;overflow-wrap:anywhere}.planning-gap-row .small{display:block}
.metric-summary{font-size:28px;font-weight:600;margin:0 0 8px;letter-spacing:-.025em}
.metric-rows{margin-top:16px}.metric-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px 18px;background:white;border:0;border-bottom:1px solid var(--line);padding:16px 0;width:100%;text-align:left;font:inherit;color:var(--ink);cursor:pointer}
.metric-row>span:first-child>.small{display:block;margin-top:5px}.metric-amount{white-space:nowrap}.metric-open{grid-column:1/-1;font-size:12px;color:var(--teal-d)}
.metric-row:hover{background:var(--teal-soft)}#adminMetricTitle:focus{outline:none}
@media(max-width:560px){.metric-row{grid-template-columns:minmax(0,1fr) auto;gap:10px}.metric-row>.status{grid-column:1;grid-row:2;justify-self:start}.metric-amount{grid-column:2;grid-row:1}.metric-summary{font-size:25px}.empty-actions>.btn{width:100%}}

/* Revue Coach : identité et fermeture manuelle par la croix, tous les rôles. */
.brand-wrap .dev-badge{display:none}.brand-wrap img{width:190px;max-width:100%;flex:0 1 auto}
.app[data-role="coach"] #adminNav,.app[data-role="coach"] .mode-switch,.app[data-role="coach"] [data-mode="admin"],.app[data-role="coach"] #coachPreviewControls,.app[data-role="coach"] [data-coach-identity]{display:none!important}
body.dialog-open{overflow:hidden}
.modal .sheet-head{position:sticky;top:-20px;z-index:3;background:#f9fbfb;margin:-20px -20px 16px;padding:20px}.modal .sheet-head>div{min-width:0}.sheet-head .icon-btn{flex-shrink:0}
.planning-existing,.planning-inspect{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--teal-soft);margin:4px 0 12px;overflow-wrap:anywhere}
.planning-existing h3,.planning-inspect h3{font-size:15px;margin:0 0 8px}.planning-existing p,.planning-inspect p{margin:5px 0;line-height:1.6}
.planning-rule-issue{display:block;color:var(--red);font-size:13px}.planning-extra-confirm{padding:12px;border:1px solid var(--sand);border-radius:12px;background:var(--sand-soft);line-height:1.5}
.planning-safety{margin:0;line-height:1.6;color:var(--teal-d)}.planning-safety.blocking{color:var(--red);font-weight:600}.planning-safety:empty,.planning-saved:empty{display:none}
.planning-saved{padding:12px;background:var(--green-soft);border-radius:12px;line-height:1.6;color:var(--ink)}
#planningAddAnother{white-space:normal;line-height:1.5;padding:10px 14px}#planningModal button:disabled{cursor:not-allowed;opacity:.55}

/* États explicites, couleur du segment conservée pour un déplacement. */
.calendar-event.cancelled,#coachWeekCalendar button.calendar-event.cancelled{background:var(--red-soft);border:1px solid #e3b6bc;border-left:4px solid var(--red);color:var(--ink)}
.calendar-event.moved,#coachWeekCalendar button.calendar-event.moved{border-left:4px solid var(--amber)}
.calendar-event.cancelled small,#coachWeekCalendar button.calendar-event.cancelled small{color:#854149}
.next-appointment{display:grid;gap:5px;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:14px 0}.next-appointment .link-btn{text-align:left;justify-self:start;font-size:13px}.planning-recent-actions{border:1px solid var(--line);padding:12px;border-radius:12px;margin-bottom:14px}.planning-recent-actions p{margin:8px 0 0}.planning-correction-link{margin-top:10px;text-align:left}#planningManagementModal{z-index:180}#managementInputs>label,#managementCancelFields>label{display:block;margin-bottom:14px}#managementReprogramLabel{display:flex}#planningManagementModal .drawer-actions .btn{flex:1;min-width:160px}

.calendar-event.pro.moved.upcoming,#coachWeekCalendar button.calendar-event.pro.moved.upcoming{border-left:4px solid var(--amber)}

/* Cinq cartes visibles ; chaque journée possède son propre défilement. */
.week-calendar{align-items:start;overflow-x:auto;overflow-y:hidden}.day-events{display:flex;flex-direction:column;height:782px;min-height:0;gap:8px;overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable;overscroll-behavior:auto;padding:10px}.week-calendar .calendar-event,#coachWeekCalendar button.calendar-event{box-sizing:border-box;flex:0 0 148px;height:148px;min-height:148px;width:100%;font-family:inherit;text-align:left;cursor:pointer;line-height:1.35;font-size:12px;padding:9px}.calendar-event strong{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:4px 0}.calendar-event small{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:11px}.calendar-event-action{margin-top:5px;font-size:11px}.event-duration{font-size:11px;font-weight:500;white-space:nowrap}.day-count{display:block;font-size:11px;font-weight:500;color:var(--muted);margin-top:4px}.day-scroll-controls:not(.is-scrollable){visibility:hidden}.day-scroll-controls{display:flex;justify-content:space-between;align-items:center;gap:5px;border-top:1px solid var(--line);padding:6px 10px;font-size:12px;color:var(--muted);background:#fff}.day-scroll-button{border:1px solid var(--line);background:white;border-radius:8px;min-width:35px;min-height:35px;color:var(--teal-d);cursor:pointer}.day-scroll-button:disabled{opacity:.35;cursor:default}.day-events:focus-visible{outline:2px solid var(--teal-d);outline-offset:-3px}.calendar-event.completed,#coachWeekCalendar button.calendar-event.completed{background:var(--green-soft);border:1px solid #b7d5c9;border-left:4px solid var(--green);color:var(--ink)}.calendar-event.completed small,#coachWeekCalendar button.calendar-event.completed small{color:#28634f}.planning-date-summary{display:grid;grid-template-columns:95px 1fr;gap:10px;padding:10px 0;border-top:1px solid var(--line);font-size:14px}.planning-other-dates{margin-top:8px}.planning-other-dates summary{cursor:pointer;color:var(--teal-d);padding:8px 0}.planning-confirm-once{margin-top:16px;align-items:flex-start;font-weight:600}.planning-confirm-once input{flex-shrink:0;margin-top:5px}@media(max-width:430px){.planning-date-summary{grid-template-columns:1fr;gap:3px}}

.week-calendar button.calendar-event:not(.cancelled):not(.completed):not(.upcoming){border-top:0;border-right:0;border-bottom:0}

/* Fiches et accompagnements : espace constant entre actions et contenu. */
.drawer-body>.drawer-actions{margin-bottom:18px;row-gap:12px}
.drawer-body>.drawer-actions:empty{display:none}
.drawer-section>.drawer-actions{margin-top:16px;row-gap:12px}
.accompaniment-list{padding:0;overflow:hidden;box-shadow:none;border-top:3px solid var(--teal)}
.professional>.accompaniment-list{border-top-color:var(--sand)}
.coach-accompaniment-table{min-width:0;table-layout:auto}
.coach-accompaniment-table th,.coach-accompaniment-table td{text-align:left;width:auto;padding:16px;vertical-align:middle}
.coach-accompaniment-table th:nth-last-child(-n+2){text-align:left;width:auto}
.coach-accompaniment-table .accompaniment-id{width:70px;white-space:nowrap}
.coach-accompaniment-table .accompaniment-name{min-width:160px}
.coach-accompaniment-table .accompaniment-next{width:180px}
.coach-accompaniment-table .accompaniment-actions{width:290px}
.accompaniment-actions>div{display:flex;flex-wrap:wrap;gap:10px}
.accompaniment-preparation{display:block;color:var(--teal-d);margin-top:5px}
.next-session-link{display:grid;text-align:left;gap:3px;white-space:nowrap}
.next-session-link span{font-size:13px;color:var(--muted)}
.mobile-column-label{display:none}
.client-photo-panel{display:flex;align-items:center;gap:16px;margin:4px 0 20px;padding:0 0 18px;border-bottom:1px solid var(--line)}
.client-avatar{width:84px;height:84px;flex:0 0 84px;border-radius:18px;background:var(--teal-soft);color:var(--teal-d);display:grid;place-items:center;font-size:24px;font-weight:650;overflow:hidden;border:1px solid var(--line)}
.client-avatar img{width:100%;height:100%;object-fit:cover;grid-area:1/1}
.client-avatar>span{grid-area:1/1}
.client-photo-content{min-width:0}.client-photo-content p{margin:5px 0 10px}
.client-photo-content .btn{white-space:normal;text-align:left}
.photo-preview{display:grid;justify-items:center;background:white;border:1px solid var(--line);border-radius:16px;padding:16px}
.photo-preview img{width:min(240px,100%);aspect-ratio:1;object-fit:cover;border-radius:14px}
.photo-error{color:var(--red);margin:0;white-space:pre-wrap}.photo-error:empty{display:none}
#clientPhotoModal{z-index:190}
#clientPhotoFile{padding:12px;max-width:100%;font-size:14px}
#clientPhotoFile::file-selector-button{border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--teal-d);padding:8px 10px;margin-right:10px;font:inherit;cursor:pointer}
@media(max-width:1100px){.coach-accompaniment-table th,.coach-accompaniment-table td{padding:12px}.coach-accompaniment-table .accompaniment-actions{width:200px}}
@media(max-width:600px){
 .coach-accompaniment-table,.coach-accompaniment-table tbody{display:block;width:100%}
 .coach-accompaniment-table thead{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}
 .coach-accompaniment-table tr{display:grid;grid-template-columns:48px minmax(0,1fr);gap:10px 12px;padding:16px;border-bottom:1px solid var(--line)}
 .coach-accompaniment-table tr:last-child{border-bottom:0}
 .coach-accompaniment-table td{display:block;border:0;padding:0!important;width:auto!important;min-width:0!important}
 .coach-accompaniment-table .accompaniment-name{overflow-wrap:anywhere}
 .coach-accompaniment-table .accompaniment-id{padding-top:5px!important}
 .coach-accompaniment-table .accompaniment-next,.coach-accompaniment-table .accompaniment-actions{grid-column:1/-1}
 .mobile-column-label{display:block;font-size:12px;color:var(--muted);margin-bottom:5px}
 .next-session-link{display:flex;gap:10px;align-items:baseline}
 .accompaniment-actions>div{margin-top:2px}.accompaniment-actions .btn{flex:1 1 130px;justify-content:center}
 .client-photo-panel{gap:12px;align-items:flex-start}.client-avatar{width:72px;height:72px;flex-basis:72px}
}

/* L’agenda laisse le défilement se poursuivre dans la page à ses limites. */
.week-calendar{overscroll-behavior:auto}

.private-price-note{margin:16px 0 12px;padding:12px 14px;background:var(--cream,#f8f4eb);border-radius:12px;font-size:14px;line-height:1.6}.private-price-note strong{white-space:nowrap}#slotPriceError:empty{display:none}#slotPriceForm .form-grid{margin:18px 0}#slotPriceFrom[readonly]{background:#f8fafb}

.accompaniment-help{margin:18px 0 0;padding:14px 16px;background:var(--cream,#f8f3ea);border-radius:12px;font-size:14px;line-height:1.7}.accompaniment-slot{display:flex;align-items:center;flex-wrap:wrap;gap:14px;padding:20px 0;border-top:1px solid #d8e4e6}.accompaniment-slot>div{display:grid;gap:5px;flex:1;min-width:150px}.accompaniment-slot-price{max-width:220px}.accompaniment-adjust{font-size:13px}.accompaniment-adjust summary{cursor:pointer;color:#007089}.accompaniment-adjust button{margin-top:10px}.planning-duration-block p{margin:8px 0}.planning-duration-block .link-btn{font-size:14px;text-align:left;padding:4px 0}.planning-duration-block input[readonly]{background:#f2f8f8;color:#173f4a}.planning-duration-block{min-width:0}@media(max-width:600px){.accompaniment-slot{align-items:flex-start}.accompaniment-slot>div{flex-basis:100%;max-width:none}.drawer-section .panel-head{align-items:flex-start;flex-wrap:wrap;gap:12px}}

.accompaniment-slot-price>span{display:block}.accompaniment-slot-price{min-width:210px}.accompaniment-slot{gap:16px}@media(max-width:600px){.accompaniment-slot-price{min-width:0;width:100%}}

/* Reviewed per-occurrence Admin corrections. */
.review-sheet{max-width:860px}.review-context{background:#f4f7f6;border:1px solid #d8e5e9;border-radius:14px;padding:16px;margin:16px 0}.review-context p{margin:8px 0 0}.review-summary{overflow-x:auto;margin:24px 0 12px}.review-summary table{width:100%;border-collapse:collapse;min-width:420px}.review-summary caption{text-align:left;font-weight:700;margin-bottom:12px}.review-summary th,.review-summary td{text-align:left;padding:10px 8px;border-bottom:1px solid #d8e5e9;vertical-align:top}.review-summary thead{background:#e8f5f8}.review-summary th{font-weight:600}.review-sheet form{display:grid;gap:18px}.review-sheet .form-grid{margin-top:18px}.review-sheet #reviewConfirm{margin-top:12px}.review-sheet .error-message{color:#a94b55}.drawer-section .review-summary{font-size:13px}.review-sheet .checkbox-line{align-items:flex-start;white-space:normal}
@media(max-width:600px){.review-summary table{min-width:0;table-layout:fixed;font-size:13px}.review-summary td,.review-summary th{overflow-wrap:anywhere;padding:9px 5px}.review-summary th:first-child{width:29%}}
.partial-total-note{display:block;font-size:14px;font-weight:400;line-height:1.5;margin-top:8px}.accompaniment-slot>div:first-child>.small{display:block;margin-top:6px}.accompaniment-slot .btn{align-self:center}.coach-summary:has(>.card:nth-child(3)){grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:760px){.coach-summary:has(>.card:nth-child(3)){grid-template-columns:1fr}.accompaniment-slot{grid-template-columns:1fr}.accompaniment-slot .btn{justify-self:start}}
#slotRetroFields>.check-line,#accompanimentRetroFields>.check-line,#reviewRetroFields>.check-line{display:flex;align-items:center;gap:10px;margin:14px 0}#slotRetroFields>.check-line input,#accompanimentRetroFields>.check-line input,#reviewRetroFields>.check-line input{width:auto;margin:0;flex:none}
.partial-total-note{letter-spacing:normal}
.action-group-finance{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}
.action-count{white-space:normal;text-align:right}
@media(max-width:760px){.action-group-finance{align-items:flex-start;flex-direction:column}.panel-head:has(>#coachActionCount){align-items:flex-start;flex-wrap:wrap}.action-count{max-width:100%}}

/* Connexion : actions essentielles, charte AKTIVECO conservée. */
.auth-card h1{margin:0 0 22px;font-size:24px;font-weight:700;line-height:1.25;letter-spacing:-.03em}
.auth-card .auth-logo{margin-bottom:26px}
.auth-method-separator{display:flex;align-items:center;gap:12px;margin:16px 0;color:var(--muted);font-size:13px}
.auth-method-separator::before,.auth-method-separator::after{content:"";height:1px;background:var(--line);flex:1}
.auth-card .auth-link{margin:4px auto 0}
.auth-card .legal-links{gap:10px}
.auth-card .legal-admin-link{margin:0;padding:0;border:0;border-radius:0;background:transparent;color:#007089;font:inherit;text-decoration:underline;text-underline-offset:3px;white-space:nowrap;cursor:pointer}
.auth-card:has(#coachLoginView.hidden) .legal-admin-link{display:none}
.auth-card #coachSignupRules{margin:0;line-height:1.5}

/* Informations secondaires disponibles à la demande. */
.inline-help{margin:0 0 14px;color:var(--muted);font-size:13px}
.inline-help summary{cursor:pointer;min-height:32px;line-height:32px;width:fit-content}
.inline-help p{margin:6px 0 0}
.inline-help summary:focus-visible{outline:3px solid #007089;outline-offset:3px}
.panel-head .dashboard-period{margin:0;font-weight:600;color:var(--ink)}
#planningDurationHint:empty,#accompanimentModeHelp:empty,#slotPriceExisting:empty,#drawerSubtitle:empty{display:none}
@media(min-width:761px) and (max-width:1050px){.journal-item{grid-template-columns:minmax(110px,1fr) minmax(0,1fr);gap:10px}.journal-item>div:nth-child(3){grid-column:1}.journal-item>div:nth-child(4){grid-column:2;grid-row:1}.journal-name,.journal-sub{overflow-wrap:anywhere}}
@media(min-width:761px) and (max-width:1050px){.pay-columns{grid-template-columns:1fr}}

/* Google Agenda: existing AKTIVECO typography and palette. */
.calendar-sync-content{display:grid;gap:10px}.calendar-sync-content p{margin:0}.calendar-sync-account{font-weight:700;overflow-wrap:anywhere}#googleCalendarMessage:empty{display:none}#googleCalendarActions{margin-top:18px}#googleCalendarMessage{overflow-wrap:anywhere}
@media(max-width:760px){#coachAgenda .page-head{align-items:flex-start;flex-wrap:wrap}#coachCalendarSync{max-width:100%;white-space:normal}#googleCalendarActions{flex-wrap:wrap}}
.calendar-sync-content a{color:#007089;text-underline-offset:3px}
