.session-bar{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:20px;padding:12px 4%;background:#eaf1eb;font-size:14px}.session-bar a{margin-right:auto}.session-bar button{padding:8px 14px;border:1px solid #abbcb0;border-radius:8px;background:white;cursor:pointer}.review-dialog{width:min(950px,92vw);max-height:85vh;border:0;border-radius:16px;padding:28px;color:#233e32}.review-dialog::backdrop{background:#102d2580}.review-dialog .table-scroll{max-height:40vh;overflow:auto}.review-table{width:100%;border-collapse:collapse;font-size:14px}.review-table td,.review-table th{padding:12px;border-bottom:1px solid #dce4de;text-align:left}.review-table th{background:#eef3ef;position:sticky;top:0}.review-error{color:#a3322c}.tools-main{max-width:1200px}.tools-main>section{margin:24px 0;padding:24px}.tools-main label{display:block;margin:12px 0}.tools-main input,.tools-main select{max-width:100%;padding:9px}.tools-main button{margin:8px 8px 8px 0;padding:10px 14px;border:1px solid #a6b9ac;border-radius:8px;background:#eef3ef;cursor:pointer}.tools-main h2{margin-bottom:12px}.tools-main p{line-height:1.6}.tools-main .table-scroll{max-height:460px;overflow:auto}.tools-main [role=status]{white-space:pre-wrap}.tools-main .compact-fields{display:flex;flex-wrap:wrap;gap:18px}.tools-main .compact-fields label{flex:1;min-width:180px}body[data-role=agent] [data-admin],body[data-role=agent] #validate-week,body[data-role=agent] #reopen-week,body[data-role=agent] #save-settings,body[data-role=agent] #defaults{display:none!important}.login-main{max-width:480px;margin:70px auto;padding:28px}.login-main label{display:block;margin:20px 0}.login-main input{width:100%;padding:12px}.login-main p{line-height:1.6}.login-main button{margin-top:20px}

/* Le dialogue modal bloque aussi les doubles clics et reste au-dessus des aperçus. */
.loading-overlay{position:fixed;inset:0;width:100vw;height:100vh;max-width:none;max-height:none;margin:0;padding:20px;border:0;background:transparent;box-sizing:border-box;color:#173b35;cursor:progress}
.loading-overlay[open]{display:grid;place-items:center}
.loading-overlay::backdrop{background:rgba(52,61,64,.48)}
.loading-card{display:flex;flex-direction:column;align-items:center;gap:14px;padding:30px 40px;background:#fff;border-radius:16px;box-shadow:0 12px 45px #142a3233;font:14px "Segoe UI",Arial,sans-serif;text-align:center}
.loading-card strong{font-size:17px}.loading-card>span:not(.loading-spinner){color:#60716d}
.loading-spinner{width:38px;height:38px;border:4px solid #dce7e2;border-top-color:#23795e;border-radius:50%;animation:sad-loading-spin .8s linear infinite}
.loading-card button{padding:8px 12px;background:#f0f4f2;border:1px solid #b6c8be;border-radius:7px;color:#173b35;cursor:pointer}
.page-loading,.page-loading body{cursor:progress}
@keyframes sad-loading-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.loading-spinner{animation:none;border-top-color:#23795e}}
@media print{.loading-overlay{display:none!important}.loading-overlay::backdrop{background:transparent}}

/* Aide commune, distincte des formulaires et absente des fiches imprimées. */
.page-guide{box-sizing:border-box;width:100%;margin:20px 0 26px;padding:20px 24px;border:1px solid #ccdcd2;border-left:4px solid #23795e;border-radius:12px;background:#edf4ee;color:#24473b;font-size:13px;line-height:1.65}
.page-guide h2{margin:0 0 8px;font-size:17px;font-weight:650;letter-spacing:0;line-height:1.35}
.page-guide p{margin:0 0 10px;color:#496255}
.page-guide ul{margin:0;padding-left:20px;columns:2;column-gap:36px}
.page-guide li{margin:0 0 7px;break-inside:avoid}
.page-guide li:last-child{margin-bottom:0}
.page-guide strong{font-weight:650}
.login-main .page-guide{padding:16px;margin-bottom:22px}
.login-main .page-guide ul{columns:1}
body>.page-guide{max-width:1100px;margin:24px auto}
@media(max-width:800px){.page-guide{padding:17px 18px;margin:18px 0 22px}.page-guide ul{columns:1}}
@media print{.page-guide{display:none!important}}
