body{padding:0}body>nav{position:relative;top:auto;display:flex;gap:3px;padding:0 4px;height:46px;min-height:46px;max-height:46px;z-index:20}body>nav>button{width:44px;min-width:44px;height:44px;min-height:44px;border:1px solid #ccc;border-radius:5px;background:white;color:#010065;padding:0;font-size:24px}body>nav .nav-brand{margin-left:auto}#menu{position:absolute;top:100%;left:4px;width:min(370px,calc(100vw - 8px));max-height:calc(100dvh - 54px);overflow:auto;background:white;border:1px solid #bbb;padding:16px;box-shadow:0 4px 20px #0003;z-index:40}#menu>button{display:block;width:100%;margin:8px 0;text-align:left;min-height:44px}.menu-row{display:flex;gap:8px}main{padding:4px 8px 8px;max-width:1680px}#syncStatus{font-size:12px;margin:2px 0;color:#555}#login{max-width:430px;margin:6vh auto}#login input{display:block;width:100%;min-height:44px}button{min-height:44px}input,textarea,select{font-size:16px;max-width:100%}#planning table{margin:0}.calendar-shell{overflow:hidden;max-height:none}#weekCalendar .fc-scroller-harness{overflow:hidden!important}#weekCalendar .fc-scroller{overflow:hidden!important}#weekCalendar .fc-scroller-liquid-absolute{overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;touch-action:pan-y}#weekCalendar .fc-scrollgrid-section-header{position:static}#weekCalendar .fc-timegrid-event{touch-action:pan-y}#dayToolbar{margin:4px 0}#reportForm textarea{width:100%}#reportStatus,#signStatus,#loginStatus,#teamStatus{white-space:pre-wrap;line-height:1.5}#conflict{border:2px solid #ff6500;padding:12px}#serverVersion{white-space:pre-wrap;max-height:250px;overflow:auto}#files>div{border-bottom:1px solid #ddd;padding:10px 0}#files img{display:block;max-width:100%;max-height:200px}#files a{overflow-wrap:anywhere}#signedVersions article{border-top:1px solid #ddd;padding:12px 0}#signedVersions img{display:block;max-width:100%;max-height:160px}#signedVersions pre{white-space:pre-wrap;font-family:inherit}#managerFields{margin:20px 0;padding:14px}#managerFields input:not([type=checkbox]),#managerFields select{width:100%}#readOnly{background:#eee;padding:12px}#editor.signing{width:min(1000px,calc(100vw - 16px));height:calc(100dvh - 16px);max-height:calc(100dvh - 16px);padding:0;overflow:hidden}#editor.signing>#reportForm{display:none}#signSurface{padding:12px;height:100%;overflow-y:auto;touch-action:pan-y;overscroll-behavior:contain}#signSurface>label{font-size:16px}#signName{display:block;width:100%;min-height:44px}#signPad{width:100%;height:clamp(220px,42dvh,420px);border:2px solid #010065;overflow:hidden;background:white}#signCanvas{width:100%;height:100%;display:block;touch-action:none}#signStatus{background:#fff1e7;color:#713000;padding:10px}#signStatus:empty{display:none}#signComment{white-space:pre-wrap}#teamList article{padding:14px 0;border-bottom:1px solid #ccc}#teamList button{margin:5px}#teamForm input{display:block;width:100%}#teamPhase{background:#fff1e7;padding:12px}#signSurface[hidden],#menu[hidden]{display:none!important}@media(max-height:500px){#signPad{height:220px}}@media(min-width:1051px){body>nav .brand-logo{width:124px;height:44px;aspect-ratio:590/210}body>nav .brand-logo img{width:229.22px;height:145.41px;left:-49.45px;top:-49.03px}}@media(max-width:500px){.actions{display:flex;flex-wrap:wrap}.actions>button{flex:1;min-width:115px}#signConfirm{flex-basis:100%}}

#teamList input[role=switch]{appearance:none;position:relative;width:44px;height:26px;border-radius:20px;background:#888;vertical-align:middle;cursor:pointer;flex:none;margin-right:8px}#teamList input[role=switch]:before{content:"";position:absolute;width:20px;height:20px;left:3px;top:3px;border-radius:50%;background:white;transition:transform .12s}#teamList input[role=switch]:checked{background:#006500}#teamList input[role=switch]:checked:before{transform:translateX(18px)}#teamList input[role=switch]:disabled{opacity:.5;cursor:default}#teamList article>label{display:flex;align-items:center;min-height:44px}
#responsableToggle{width:auto;font-size:14px;line-height:18px}
.calendar-mobile-help{display:none}
@media(max-width:650px),(max-width:1050px) and (max-height:500px){
 .calendar-mobile-help{display:block;margin:3px 0 6px;font-size:12px;color:#555}
 #planning .calendar-shell{width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;touch-action:pan-x pan-y;border:1px solid #ddd}
 #planning #weekCalendar{min-width:calc(var(--calendar-days,7) * max(130px,(100vw - 52px)/2) + 44px)!important;width:100%!important}
 #weekCalendar .fc-scroller-liquid-absolute{touch-action:pan-x pan-y}
 #weekCalendar .fc-timegrid-event{touch-action:pan-x pan-y}
 #weekCalendar .calendar-event-body{min-width:0;overflow:hidden;padding:3px}
 #weekCalendar .calendar-event-body strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px;line-height:1.3}
 #weekCalendar .calendar-event-body span{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:normal;word-break:normal;overflow-wrap:normal;font-size:13px;line-height:1.25}
}
@media(max-width:1050px) and (orientation:landscape){
 #planning #weekCalendar{min-width:0!important;width:100%!important}
 .calendar-mobile-help{display:none}
}

.responsable-short-label{display:none}.responsable-toggle{position:relative;min-width:44px;min-height:44px;border:1px solid #888!important;border-radius:5px!important;background:#fff!important;color:#010065!important;padding:8px 12px!important;font-weight:650}.responsable-toggle[aria-pressed=true]{background:#010065!important;color:white!important;border:2px solid #010065!important;box-shadow:inset 0 2px 4px #0006}.responsable-toggle[aria-pressed=true]::after{content:'✓';position:absolute;right:2px;top:0;font-size:10px;line-height:11px}.responsable-toggle:focus-visible{outline:3px solid #ff6500;outline-offset:2px}

@media(max-width:650px),(max-width:1050px) and (max-height:500px){#responsableToggle{width:44px;min-width:44px;max-width:44px;height:44px;padding:4px 2px!important;font-size:12px!important}.responsable-full-label{display:none}.responsable-short-label{display:inline}body[data-role=manager] .nav-brand .brand-logo{--toggle-logo-width:min(123.61px,calc(100vw - 243px));width:var(--toggle-logo-width);height:calc(var(--toggle-logo-width) * 210 / 590);margin-top:calc((44px - var(--toggle-logo-width) * 210 / 590) / 2)}body[data-role=manager] .nav-brand .brand-logo img{width:calc(var(--toggle-logo-width) * 1094 / 590);height:calc(var(--toggle-logo-width) * 694 / 590);left:calc(var(--toggle-logo-width) * -236 / 590);top:calc(var(--toggle-logo-width) * -234 / 590)}}

/* Historique lisible : conserver les couleurs des intervenants. */
#weekCalendar .fc-timegrid-event.fc-event-past,#weekCalendar .fc-timegrid-event.calendar-past-event{background:var(--event-person-color,#4986e7)!important;border-left:3px solid var(--event-person-color,#4986e7)!important;opacity:1}
#weekCalendar .fc-timegrid-col.fc-day-past{background:#fafafa}

/* Vue journée : même couleur que la semaine pour chaque intervenant. */
#planning .day-person-card{border-left:8px solid var(--assignee-color);background:#fff;background:color-mix(in srgb,var(--assignee-color) 10%,white)}
#planning .day-person-name{display:flex;align-items:center;gap:8px;font-weight:650;color:#292929}
.day-person-dot{display:inline-block;width:14px;height:14px;min-width:14px;border-radius:50%;background:var(--assignee-color);border:1px solid #0003}

#mainNav{overflow:visible}#managerCommands[hidden]{display:none!important}#managerCommands{display:flex;align-items:center;gap:4px;min-width:0;overflow-x:auto;flex:1;scrollbar-width:thin;-webkit-overflow-scrolling:touch}#managerCommands button{flex:none;white-space:nowrap;min-height:42px;padding:6px 10px;background:#fff;color:#010065;border:1px solid #ccc;border-radius:5px}#managerCommands button[aria-pressed="true"]{background:#010065;color:#fff}body[data-role="manager"] #mainNav .nav-brand{display:block;flex:none}
body[data-role="manager"] #home{display:none!important}

.client-history-button{margin:4px 0 12px;font-size:14px;background:white;color:#010065;border:1px solid #aaa;border-radius:5px}.history-record{padding:12px 0;border-top:1px solid #ddd}.history-comment{white-space:pre-wrap}#clientHistoryDialog{width:min(680px,calc(100vw - 24px));max-height:85dvh;overflow:auto}

body[data-role="manager"] .calendar-mobile-help{display:none!important}#menu #syncStatus{font-size:11px;color:#666;border-top:1px solid #ddd;padding-top:8px}#syncWarning{font-size:13px;color:#8c3400;background:#fff1e7;padding:8px;margin:4px 0}#syncWarning[hidden]{display:none!important}
