:root{
  --nav:#102846;--nav2:#17365f;--bg:#f5f7fb;--text:#172033;--muted:#718096;--line:#e5eaf1;
  --blue:#1f66c2;--red:#d73a3a;--orange:#d97706;--green:#23865f;--purple:#7547c7;--card:#fff;
}
*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text)}
button,input,select{font:inherit}.shell{display:grid;grid-template-columns:238px 1fr;min-height:100vh}.side{background:linear-gradient(180deg,var(--nav),#0d223d);color:#fff;padding:22px 14px;display:flex;flex-direction:column}.brand{font-weight:800;font-size:21px;padding:6px 10px 24px}.brand span{display:block;font-size:14px;font-weight:500;opacity:.84;margin-top:3px}.nav{display:grid;gap:6px}.nav button{border:0;background:transparent;color:#dce7f5;padding:12px 13px;border-radius:8px;text-align:left;cursor:pointer}.nav button.active{background:#1b5da6;color:#fff;font-weight:700}.nav small{display:block;opacity:.65;margin-top:2px}.profile{margin-top:auto;padding:16px 10px;border-top:1px solid #ffffff22;color:#dce7f5}.main{min-width:0}.top{height:70px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:14px;padding:0 24px;position:sticky;top:0;z-index:10}.search{display:flex;align-items:center;gap:9px;background:#f3f6fa;border:1px solid #e4e9ef;padding:10px 12px;border-radius:9px;flex:1;max-width:720px}.search input{border:0;background:transparent;outline:0;width:100%}.new{margin-left:auto;background:var(--nav);color:#fff;border:0;border-radius:8px;padding:11px 15px;font-weight:700;cursor:pointer}.page{padding:26px}.title{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.title h1{margin:0;font-size:28px}.title p{margin:5px 0 20px;color:var(--muted)}.statusnote{background:#eef5ff;color:#285a98;border:1px solid #d6e6fb;border-radius:9px;padding:9px 12px;font-size:12px;font-weight:700}.kpis{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:16px}.kpi{border:1px solid var(--line);border-radius:12px;background:#fff;padding:15px;text-align:left;cursor:pointer;display:flex;justify-content:space-between;align-items:center}.kpi strong{font-size:26px;display:block}.kpi small{font-size:12px}.kpi.red{background:#fff1f1;color:#bd2f2f}.kpi.orange{background:#fff6e9;color:#b65d09}.kpi.blue{background:#eef5ff;color:#1f5fb7}.kpi.purple{background:#f4efff;color:#6c42bd}.kpi.gray{background:#f3f5f7;color:#566273}.kpi.green{background:#edf9f3;color:#237154}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.grid3{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:16px}.panel{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.phead{padding:14px 15px;border-bottom:1px solid #edf1f5;display:flex;align-items:center;justify-content:space-between;font-weight:800}.phead.red{color:#c93030}.phead.orange{color:#bd650d}.phead a{font-size:12px;font-weight:600;color:var(--blue);cursor:pointer}.rows .row{display:grid;grid-template-columns:1fr 1fr 1.55fr;gap:10px;padding:11px 14px;border-bottom:1px solid #edf1f5;font-size:13px;align-items:center}.rows .row:last-child{border-bottom:0}.rows .row strong{display:block}.rows .row small{display:block;color:var(--muted);margin-top:2px}.tablewrap{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:auto}.filters{display:flex;gap:8px;margin:0 0 12px;flex-wrap:wrap}.filters button,.subtabs button{border:1px solid #dfe5ed;background:#fff;padding:8px 12px;border-radius:8px;cursor:pointer}.filters button.sel,.subtabs button.sel{background:var(--nav);color:#fff;border-color:var(--nav)}table{width:100%;border-collapse:collapse;min-width:1100px}th,td{padding:12px 13px;border-bottom:1px solid #edf1f5;text-align:left;font-size:13px;vertical-align:top}th{background:#f7f9fb;color:#697589;font-size:12px;position:sticky;top:0}.pill{padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800;display:inline-block;white-space:nowrap}.p-urgent{background:#ffe7e7;color:#c83434}.p-rapid{background:#fff0dc;color:#b9600c}.p-routine{background:#edf1f5;color:#607083}.p-watch{background:#eaf4ff;color:#2a64a5}.p-lock{background:#eef1f5;color:#455468}.p-ok{background:#e8f7ef;color:#247253}.p-act{background:#f4efff;color:#6c42bd}.barbox{padding:16px}.barrow{margin-bottom:15px}.barlabel{display:flex;justify-content:space-between;font-size:13px;margin-bottom:6px}.track{height:8px;background:#edf1f5;border-radius:99px;overflow:hidden}.fill{height:100%;background:#2e6bca;border-radius:99px}.hidden{display:none!important}.actionbtn{background:#f1f6fd;border:1px solid #d7e5f6;color:#1f5fae;padding:7px 9px;border-radius:7px;font-weight:700;cursor:pointer;font-size:12px}.actionbtn.primary{background:var(--nav);color:#fff;border-color:var(--nav)}.actionbtn.warn{background:#fff6e9;color:#9b520c;border-color:#f0d3a8}.actionbtn.good{background:#edf9f3;color:#237154;border-color:#ccebdc}.info{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px}.info h3{margin:0 0 8px;font-size:15px}.muted{color:var(--muted)}
/* Settings */
.subtabs{display:flex;gap:8px;margin-bottom:14px}.settingsGrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.settingRow{padding:14px;border-bottom:1px solid #edf1f5}.settingRow:last-child{border-bottom:0}.settingHead{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.settingHead strong{font-size:14px}.settingHead small{display:block;color:var(--muted);margin-top:3px}.thresholds{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:11px}.threshold{background:#f7f9fb;border:1px solid #e6ebf2;border-radius:9px;padding:9px}.threshold label{display:block;font-size:11px;color:var(--muted);margin-bottom:5px}.threshold input{width:100%;border:1px solid #d9e0ea;background:#fff;border-radius:7px;padding:7px}.selectline{display:flex;gap:10px;align-items:center;margin-bottom:14px;flex-wrap:wrap}.selectline select{border:1px solid #dbe2eb;background:#fff;border-radius:8px;padding:8px 10px}.audit{font-size:12px;color:var(--muted);line-height:1.6}.lockcell{min-width:190px}.rule-title{font-weight:800}.rule-meta{font-size:11px;color:var(--muted);margin-top:3px}.rule-source{font-size:11px;color:#52657c;max-width:260px}.rule-filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.rule-filter input,.rule-filter select{border:1px solid #dbe2eb;background:#fff;border-radius:8px;padding:8px 10px}.rule-filter input{min-width:260px}.lockbanner{background:#f5f7fa;border:1px solid #e1e6ed;border-radius:10px;padding:11px 13px;margin-bottom:13px;font-size:12px;color:#586579}.lockbanner strong{color:#26364b}
/* Case detail */
.caseview{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.casehero{padding:20px 22px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.casehero h2{margin:0 0 5px}.casehero .meta{color:var(--muted);font-size:13px}.heroActions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.casecontent{padding:18px 22px}.timeline{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:5px 0 20px}.step{position:relative;text-align:center;font-size:11px;color:var(--muted)}.step:before{content:'';display:block;height:6px;background:#dfe5ed;border-radius:99px;margin-bottom:8px}.step.done{color:#2b6c53;font-weight:700}.step.done:before{background:#48a37e}.step.active{color:#244f84;font-weight:800}.step.active:before{background:#2e6bca}.step.warn{color:#a55a0e;font-weight:800}.step.warn:before{background:#e39a36}.casegrid{display:grid;grid-template-columns:1.1fr .9fr;gap:16px}.priorityBox{border:1px solid #f0d3a8;background:#fff9f0;border-radius:12px;padding:15px}.priorityBox h3{margin:0 0 6px;color:#9b520c}.priorityBox p{margin:5px 0}.deadlineList{display:grid;gap:9px}.deadline{border:1px solid #e3e8ef;border-radius:10px;padding:12px;background:#fff}.deadlineTop{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.deadline strong{display:block}.deadline small{display:block;color:var(--muted);margin-top:4px}.deadline .date{font-weight:850}.deadline.locked{border-left:4px solid #5b6878}.deadline.internal{border-left:4px solid #2e6bca;background:#f8fbff}.infoGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0}.mini{background:#f8fafc;border:1px solid #e5eaf1;border-radius:10px;padding:11px}.mini label{display:block;font-size:11px;color:var(--muted);margin-bottom:4px}.mini strong{font-size:14px}.taskline{display:flex;gap:10px;align-items:flex-start;padding:10px 0;border-bottom:1px solid #edf1f5}.taskline:last-child{border-bottom:0}.check{width:18px;height:18px;border-radius:5px;border:2px solid #c9d3df;margin-top:1px;flex:none}.taskline.done .check{background:#48a37e;border-color:#48a37e}.taskline.done .tasktext{text-decoration:line-through;color:#8794a5}.tasktext{font-size:13px}.tasktext small{display:block;color:var(--muted);margin-top:3px}.caseTabs{display:flex;gap:7px;margin:16px 0 10px;flex-wrap:wrap}.caseTabs button{border:1px solid #dce3ec;background:#fff;border-radius:8px;padding:8px 10px;cursor:pointer}.caseTabs button.sel{background:#eef5ff;color:#245da4;border-color:#cddff5;font-weight:700}.back{border:0;background:transparent;color:var(--blue);font-weight:750;cursor:pointer;padding:0 0 12px}
.toast{position:fixed;right:22px;bottom:22px;background:#102846;color:#fff;padding:12px 15px;border-radius:10px;box-shadow:0 12px 34px #0003;z-index:50;font-size:13px}
@media(max-width:1150px){.kpis{grid-template-columns:repeat(3,1fr)}.grid2,.grid3,.settingsGrid,.casegrid{grid-template-columns:1fr}.infoGrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.shell{grid-template-columns:70px 1fr}.brand{font-size:0}.brand:before{content:'⚖';font-size:28px}.brand span,.profile,.nav button span,.nav small{display:none}.nav button{text-align:center;font-size:0}.nav button:before{font-size:19px}.nav button:nth-child(1):before{content:'⌂'}.nav button:nth-child(2):before{content:'▣'}.nav button:nth-child(3):before{content:'◫'}.nav button:nth-child(4):before{content:'✓'}.nav button:nth-child(5):before{content:'◉'}.nav button:nth-child(6):before{content:'⚙'}.kpis{grid-template-columns:repeat(2,1fr)}.page{padding:14px}.new{display:none}.timeline{grid-template-columns:repeat(3,1fr)}.infoGrid{grid-template-columns:1fr}.casehero{display:block}.heroActions{justify-content:flex-start;margin-top:12px}}

/* Confort lecture renforcé — priorité aux cadrans et zones d'intérêt */
body{font-size:16px;line-height:1.48}
.brand{font-size:23px}.brand span{font-size:15px}.nav button{font-size:16px;line-height:1.3;padding:13px 14px}.nav small{font-size:13px}.profile{font-size:15px}.profile small{font-size:13px}
.search input{font-size:16px}.new{font-size:15px;padding:12px 16px}.title h1{font-size:31px}.title p{font-size:16px;line-height:1.45}.statusnote{font-size:14px;line-height:1.35}
.kpi{padding:17px}.kpi strong{font-size:32px}.kpi small{font-size:15px;line-height:1.25}.phead{font-size:17px;padding:16px 17px}.phead a{font-size:14px}.rows .row{font-size:15px;line-height:1.4;padding:14px 16px}.rows .row small{font-size:13.5px;line-height:1.35}
.filters button,.subtabs button{font-size:15px;padding:9px 13px}table{min-width:1200px}th,td{font-size:15px;line-height:1.4;padding:14px 14px}th{font-size:13.5px}.pill{font-size:13px;padding:6px 10px}.actionbtn{font-size:14px;padding:9px 11px}.info{font-size:15px;padding:16px}.info h3{font-size:18px}
.barlabel{font-size:15px}.settingHead strong{font-size:16px}.settingHead small{font-size:13.5px;line-height:1.4}.threshold label{font-size:13px}.threshold input,.selectline select,.rule-filter input,.rule-filter select{font-size:15px}.audit{font-size:14px}.rule-title{font-size:15px}.rule-meta,.rule-source{font-size:13px}.lockbanner{font-size:14px;line-height:1.45}
.casehero h2{font-size:28px}.casehero .meta{font-size:15px}.step{font-size:13.5px;line-height:1.3}.priorityBox{padding:18px}.priorityBox h3{font-size:19px}.priorityBox p{font-size:16px;line-height:1.45}.deadline{padding:15px}.deadline strong{font-size:16px}.deadline small{font-size:13.5px;line-height:1.4}.deadline .date{font-size:16px}.mini{padding:14px}.mini label{font-size:13px}.mini strong{font-size:18px}.taskline{padding:13px 0}.tasktext{font-size:15.5px;line-height:1.4}.tasktext small{font-size:13.5px;line-height:1.4}.caseTabs button{font-size:15px;padding:10px 12px}.back{font-size:15px}.toast{font-size:14px}
/* Composants ajoutés dynamiquement */
.workflowHead{font-size:17px!important}.workflowBody{font-size:15px!important}.wfField label{font-size:13.5px!important}.wfField input,.wfField select,.wfCompose input,.wfCompose textarea,.wfSchedule input,.wfSchedule select{font-size:15px!important}.wfNotice,.wfMatch,.wfMailCounter{font-size:13.5px!important;line-height:1.45!important}.wfEvent{font-size:12.5px!important}.wfPhone{font-size:14px!important}.folderHint{font-size:13px!important}
.docPrinciple{font-size:15px!important;line-height:1.45!important}.docKpi strong{font-size:25px!important}.docKpi small{font-size:13.5px!important}.docTitle strong{font-size:16px!important}.docTitle small{font-size:13px!important}.docAnalysis{font-size:14px!important;line-height:1.5!important}.docMeta{font-size:12.5px!important}.traceTitle strong{font-size:15px!important}.traceTitle small,.traceWho strong,.traceWho small{font-size:13px!important}
.docViewerHead strong{font-size:17px!important}.docViewerHead small{font-size:13px!important}.fakePage{font-size:16px!important}.fakePage h2{font-size:25px!important}.fakePage p{font-size:16px!important;line-height:1.7!important}.docSide h4{font-size:17px!important}.docSide .metaRow{font-size:14px!important}.docSide .metaRow span{font-size:12px!important}.viewerNote{font-size:13.5px!important;line-height:1.45!important}
@media(max-width:760px){body{font-size:15px}.title h1{font-size:27px}.phead{font-size:16px}.rows .row{font-size:14px}.kpi strong{font-size:29px}.kpi small{font-size:14px}.actionbtn{font-size:13.5px}.mini strong{font-size:17px}}
