/* ACML4 - couche "tableur" (apparence Excel + charte ACML4). Installe par install_excel_global.php. Retour arriere : bouton ▦ en bas a gauche. */
:root{--acx-vert:#0F5132;--acx-vf:#0A3A24;--acx-or:#C9A24B;--acx-creme:#FAF8F3;--acx-pale:#EEF4EF;--acx-bd:#D8CFB4;--acx-gr:#E4DCC6;--acx-sel:#fff3c9}
/* ---- barre d'outils des tableaux (toujours masquee en mode classique et a l'impression) */
.acx-bar,.acx-status,#acx-toggle{font-family:Arial,Helvetica,sans-serif}
body:not(.acx-on) .acx-bar,body:not(.acx-on) .acx-status{display:none!important}
.acx-bar{display:flex;gap:6px;align-items:center;margin:6px 0 4px;font-size:12px;color:#4a6b5a;flex-wrap:wrap}
.acx-bar button{background:#fff;color:var(--acx-vert);border:1px solid var(--acx-vert);border-radius:4px;padding:3px 9px;font-size:12px;cursor:pointer}
.acx-bar button:hover,.acx-bar button.on{background:var(--acx-vert);color:#fff}
.acx-bar .n{margin-left:auto;font-weight:bold}
.acx-status{position:fixed;right:14px;bottom:14px;background:var(--acx-vf);color:#fff;padding:6px 12px;border-radius:6px;font-size:12px;border:1px solid var(--acx-or);z-index:99998;display:none}
#acx-toggle{position:fixed;left:10px;bottom:10px;z-index:99999;background:var(--acx-vf);color:var(--acx-or);border:1px solid var(--acx-or);border-radius:6px;padding:4px 9px;font-size:12px;cursor:pointer;opacity:.85}
#acx-toggle:hover{opacity:1}
/* ---- tableaux = grilles */
body.acx-on .acx-wrap{overflow:auto;border:1px solid var(--acx-bd);border-radius:4px;background:#fff;max-width:100%}
body.acx-on .acx-wrap.acx-tall{max-height:calc(100vh - 210px)}
body.acx-on table.acx{border-collapse:separate!important;border-spacing:0!important;font-size:13px;width:100%;background:#fff}
body.acx-on table.acx th,body.acx-on table.acx td{border-right:1px solid var(--acx-gr)!important;border-bottom:1px solid var(--acx-gr)!important;border-left:0!important;border-top:0!important;padding:5px 8px!important;vertical-align:middle;font-variant-numeric:tabular-nums}
body.acx-on table.acx thead th{background:var(--acx-pale)!important;color:var(--acx-vf)!important;position:sticky;top:0;z-index:2;font-size:12px;font-weight:bold;text-align:left;white-space:nowrap;user-select:none;box-shadow:inset 0 -2px 0 var(--acx-vert)}
body.acx-on table.acx thead th.acx-sortable{cursor:pointer}
body.acx-on table.acx thead th.acx-sortable:hover{background:#dfeae2!important}
body.acx-on table.acx thead th .acx-ind{color:var(--acx-or);margin-left:4px}
body.acx-on table.acx thead tr.acx-filter th{top:29px;background:#f7faf8!important;padding:2px 3px!important;box-shadow:none}
body.acx-on table.acx thead tr.acx-filter input{width:100%;min-width:50px;font-size:12px;padding:3px 5px;border:1px solid var(--acx-gr);border-radius:3px;box-sizing:border-box;background:#fff}
body.acx-on table.acx tbody tr:nth-child(even) td{background:#FCFBF7}
body.acx-on table.acx tbody tr:hover td{background:#F3F8F4!important}
body.acx-on table.acx tbody tr.acx-hide{display:none}
body.acx-on table.acx td.acx-sel{background:var(--acx-sel)!important;outline:1px solid var(--acx-or);outline-offset:-1px}
body.acx-on table.acx td.acx-num{text-align:right}
body.acx-on table.acx tfoot td,body.acx-on table.acx tfoot th{background:var(--acx-pale)!important;font-weight:bold}
.acx-rs{position:absolute;right:0;top:0;width:6px;height:100%;cursor:col-resize}
body.acx-on table.acx thead th{position:sticky}
body.acx-on table.acx thead th .acx-rs:hover{background:var(--acx-or)}
/* ---- charte ACML4 sur l'interface (non intrusif : couleurs de marque uniquement) */
body.acx-on{background:var(--acx-creme)}
body.acx-on a{color:var(--acx-vert)}
body.acx-on ::selection{background:#f0e2b6}
body.acx-on input:focus,body.acx-on select:focus,body.acx-on textarea:focus{outline:2px solid var(--acx-or)!important;outline-offset:-1px;border-color:var(--acx-or)!important}
body.acx-on header,body.acx-on .header,body.acx-on .topbar,body.acx-on #header,body.acx-on .top-bar{background:linear-gradient(135deg,var(--acx-vf),var(--acx-vert))!important;color:#fff;border-bottom:3px solid var(--acx-or)}
body.acx-on aside,body.acx-on .sidebar,body.acx-on #sidebar,body.acx-on nav.sidebar{background:var(--acx-vf)!important;color:#EEF4EF}
body.acx-on aside a,body.acx-on .sidebar a,body.acx-on #sidebar a{color:#EEF4EF}
body.acx-on .nav-item:hover,body.acx-on .nav-link:hover,body.acx-on .menu-item:hover,body.acx-on [data-page]:hover{background:rgba(201,162,75,.18)!important}
body.acx-on .nav-item.active,body.acx-on .nav-link.active,body.acx-on .menu-item.active,body.acx-on [data-page].active{background:rgba(201,162,75,.30)!important;border-left:3px solid var(--acx-or)}
body.acx-on .btn-primary,body.acx-on button.primary,body.acx-on .btn.primary,body.acx-on .btn-main{background:var(--acx-vert)!important;border-color:var(--acx-vert)!important;color:#fff!important}
body.acx-on .btn-primary:hover,body.acx-on button.primary:hover,body.acx-on .btn.primary:hover{background:var(--acx-vf)!important}
body.acx-on .card,body.acx-on .panel,body.acx-on .box,body.acx-on .stat-card{border-color:var(--acx-bd)!important}
body.acx-on h1,body.acx-on h2{color:var(--acx-vf)}
body.acx-on .modal-header,body.acx-on .modal-title{color:var(--acx-vf)}
body.acx-on ::-webkit-scrollbar{width:11px;height:11px}body.acx-on ::-webkit-scrollbar-thumb{background:#b9c8bd;border-radius:6px;border:2px solid #fff}body.acx-on ::-webkit-scrollbar-track{background:#f1f5f2}
@media print{.acx-bar,.acx-status,#acx-toggle,.acx-rs,tr.acx-filter{display:none!important}body.acx-on .acx-wrap{max-height:none!important;overflow:visible!important;border:0}body.acx-on table.acx thead th{position:static;box-shadow:none}}
body.acx-on table.acx tbody td:not(:has(input,select,textarea)){user-select:none}