/* Interface institutionnelle et personnalisable — version 1.5 */
:root[data-theme="violet"]{--blue:#7147d9;--cyan:#a15ee8;--nav:#21123f;--nav2:#482477}
:root[data-theme="green"]{--blue:#078d70;--cyan:#20ad8e;--nav:#07352d;--nav2:#08614f}
:root[data-theme="orange"]{--blue:#d86d19;--cyan:#ef9b2f;--nav:#3f1d09;--nav2:#743b12}
:root[data-theme="black"]{--blue:#39475d;--cyan:#78879d;--nav:#0c1119;--nav2:#202733}
:root[data-theme="multicolor"]{--blue:#5d4cdb;--cyan:#16a6a0;--nav:#182052;--nav2:#5a2279}
:root[data-theme="multicolor"] .hero,:root[data-theme="multicolor"] .btn.primary{background:linear-gradient(120deg,#4158d0,#8e44ad 42%,#e36d3b 72%,#13a985)}
:root[data-mode="dark"]{--bg:#0c1320;--ink:#eaf1fb;--muted:#93a4ba;--line:#29364a;--white:#151f2e;--shadow:0 14px 38px rgba(0,0,0,.28)}
:root[data-mode="dark"] body,:root[data-mode="dark"] .main{background:var(--bg);color:var(--ink)}
:root[data-mode="dark"] .panel,:root[data-mode="dark"] .kpis article,:root[data-mode="dark"] input,:root[data-mode="dark"] select,:root[data-mode="dark"] textarea,:root[data-mode="dark"] .module-guide,:root[data-mode="dark"] .modal-card,:root[data-mode="dark"] .theme-drawer,:root[data-mode="dark"] .column-popover{background:#151f2e;color:var(--ink);border-color:var(--line)}
:root[data-mode="dark"] th{background:#1b2738;color:#b3c1d2}:root[data-mode="dark"] td{border-color:#263449}:root[data-mode="dark"] .check{background:#1b2738}:root[data-mode="dark"] .btn.ghost{background:#23344c;color:#dceaff}
.page-heading{max-width:690px}.page-heading p{max-width:680px;line-height:1.45}.topbar{min-height:96px;height:auto;padding:14px 0}.institution-note{padding:14px 10px;margin-top:auto;border-top:1px solid rgba(255,255,255,.12);display:flex;flex-direction:column;gap:5px}.institution-note b{font-size:10px;line-height:1.4}.institution-note span{font-size:9px;line-height:1.45;color:#95abc5}.sidebar-foot{margin-top:0}
.module-guide{display:grid;grid-template-columns:42px 1fr 30px;align-items:center;gap:13px;padding:13px 16px;margin:0 0 17px;background:linear-gradient(90deg,#fff,var(--bg));border:1px solid var(--line);border-radius:13px;box-shadow:0 5px 18px rgba(17,40,75,.04)}.module-guide img{width:40px;height:40px;object-fit:contain;background:#fff;border-radius:10px;padding:3px}.module-guide b,.module-guide span{display:block}.module-guide b{font-size:13px}.module-guide span{font-size:11px;color:var(--muted);line-height:1.5;margin-top:3px}.module-guide button,.drawer-head button{border:0;background:transparent;color:var(--muted);font-size:24px;cursor:pointer;border-radius:8px}.module-guide button:hover,.drawer-head button:hover{background:rgba(120,130,150,.12)}
.hero-mark{display:flex;flex-direction:column;align-items:center;min-width:160px}.hero-mark img{width:72px;height:72px;object-fit:contain;background:#fff;border-radius:18px;padding:6px;margin-bottom:8px}.hero-mark strong{font-size:20px}.hero-mark small{margin-top:4px}.theme-trigger{background:var(--white);color:var(--blue);border:1px solid var(--line)}
.table-tools{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 9px;padding:7px 9px;background:rgba(100,120,150,.06);border-radius:9px}.table-tools span{font-size:10px;color:var(--muted)}.table-tools .btn{padding:7px 10px}tbody tr{cursor:pointer;transition:background .16s,transform .16s}tbody tr:hover{background:rgba(18,101,214,.07)}tbody tr:focus{outline:2px solid var(--blue);outline-offset:-2px;background:rgba(18,101,214,.09)}th,td{transition:background .15s}
.ui-backdrop{position:fixed;inset:0;background:rgba(5,13,25,.48);backdrop-filter:blur(2px);z-index:80}.theme-drawer{position:fixed;right:0;top:0;height:100vh;width:min(390px,92vw);background:#fff;border-left:1px solid var(--line);padding:22px;z-index:90;transform:translateX(102%);transition:.25s;box-shadow:-20px 0 55px rgba(0,0,0,.18)}.theme-drawer.open{transform:translateX(0)}.drawer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px}.drawer-head b,.drawer-head span{display:block}.drawer-head b{font-size:16px}.drawer-head span{font-size:11px;color:var(--muted);margin-top:4px}.theme-options{display:grid;grid-template-columns:1fr 1fr;gap:9px}.theme-options button{display:flex;align-items:center;gap:9px;border:1px solid var(--line);background:var(--white);color:var(--ink);padding:11px;border-radius:10px;cursor:pointer;text-align:left}.theme-options button:hover{border-color:var(--blue)}.theme-options i{width:22px;height:22px;border-radius:7px;background:var(--swatch);box-shadow:inset 0 0 0 2px rgba(255,255,255,.35)}.theme-options i.multi{background:linear-gradient(135deg,#4158d0,#8e44ad,#e36d3b,#13a985)}.dark-switch{display:flex;flex-direction:row!important;align-items:center;gap:10px;margin:18px 0;padding:13px;border:1px solid var(--line);border-radius:10px}.dark-switch input{width:auto}
.detail-modal{position:fixed;inset:0;background:rgba(5,13,25,.58);backdrop-filter:blur(3px);z-index:100;display:none;place-items:center;padding:20px}.detail-modal.open{display:grid}.modal-card{width:min(780px,96vw);max-height:88vh;overflow:auto;background:#fff;border-radius:18px;padding:22px;box-shadow:0 30px 80px rgba(0,0,0,.3)}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.detail-grid>div{padding:12px;border:1px solid var(--line);border-radius:10px;background:rgba(110,130,155,.04)}.detail-grid span,.detail-grid b{display:block}.detail-grid span{font-size:9px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);margin-bottom:5px}.detail-grid b{font-size:12px;line-height:1.45;white-space:pre-wrap}
.column-popover{position:fixed;width:min(360px,calc(100vw - 24px));max-height:430px;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:15px;padding:16px;z-index:110;box-shadow:0 20px 60px rgba(0,0,0,.22)}.column-option{display:grid;grid-template-columns:35px 1fr auto;align-items:center;gap:8px;padding:9px 3px;border-bottom:1px solid var(--line)}.column-option label{font-size:9px;color:var(--muted)}.column-option label input{width:auto}.column-option label span{display:none}.column-option b{font-size:11px}.column-option div{display:flex;gap:4px}.column-option button{border:1px solid var(--line);background:var(--white);color:var(--ink);border-radius:6px;padding:5px 8px;cursor:pointer}.column-option button:disabled{opacity:.25;cursor:default}.column-popover>.btn{width:100%;margin-top:12px}
footer{display:flex;align-items:center;justify-content:center;gap:10px;padding:22px 0 8px}footer img{width:34px;height:34px;object-fit:contain}footer div{text-align:left}footer b,footer span{display:block}footer b{font-size:11px;color:var(--ink)}footer span{font-size:10px;margin-top:3px}
@media(max-width:900px){.page-heading p{display:none}.institution-note{display:none}.theme-trigger{padding:9px}.detail-grid{grid-template-columns:1fr}.module-guide{grid-template-columns:34px 1fr 28px}.module-guide img{width:34px;height:34px}.module-guide span{font-size:10px}}
@media print{.module-guide,.table-tools,.theme-drawer,.detail-modal,.column-popover,.ui-backdrop{display:none!important}}
