@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@500;600;700&family=Inter:wght@400;500;600;700&display=swap");:root{--lp-blue:#00199b;--lp-blue-bar:#2743c8;--lp-red:#e42110;--lp-blue-50:#eef2ff;--lp-blue-100:#e0e7ff;--ok:#15803d;--ok-bg:#dcfce7;--warn:#b45309;--warn-bg:#fef3c7;--crit:#b91c1c;--crit-bg:#fee2e2;--s50:#f8fafc;--s100:#f1f5f9;--s200:#e2e8f0;--s300:#cbd5e1;--s400:#94a3b8;--s500:#64748b;--s600:#475569;--s700:#334155;--s900:#0f172a;--r-card:16px;--r-sm:10px;--r-btn:14px;--r-pill:999px;--sh-subtle:0 2px 12px rgba(15,23,42,.05);--sh-card:0 4px 16px rgba(15,23,42,.08);--f-head:"Poppins",system-ui,sans-serif;--f-body:"Inter",system-ui,sans-serif}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:#fff;color:var(--s900);font-family:var(--f-body);font-size:14px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:var(--f-head);margin:0}.shell{display:grid;grid-template-columns:232px 1fr;min-height:100vh}.side{border-right:1px solid var(--s200);padding:22px 16px;background:var(--s50);display:flex;flex-direction:column;gap:22px}.brand{display:flex;align-items:center;gap:8px;font-family:var(--f-head);font-weight:700;font-size:17px;color:var(--lp-blue)}.brand small{display:block;font-family:var(--f-body);font-weight:500;font-size:11px;color:var(--s500);letter-spacing:.04em}.nav{display:flex;flex-direction:column;gap:2px}.nav a{padding:9px 12px;border-radius:var(--r-sm);color:var(--s600);font-weight:500}.nav a:hover{background:var(--s100);color:var(--s900)}.nav a.on{background:var(--lp-blue-50);color:var(--lp-blue);font-weight:600}.side-foot{margin-top:auto;font-size:11px;color:var(--s400);line-height:1.5}.main{padding:28px 32px 56px;max-width:1280px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap}.page-head h1{font-size:24px;font-weight:600;letter-spacing:-.01em}.page-head p{margin:6px 0 0;color:var(--s500)}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));grid-gap:14px;gap:14px;margin-bottom:26px}.tile{border:1px solid var(--s200);border-radius:var(--r-card);padding:16px 18px;background:#fff;box-shadow:var(--sh-subtle)}.tile .lab{font-size:12px;color:var(--s500);font-weight:500;margin-bottom:6px}.tile .val{font-family:var(--f-head);font-size:28px;font-weight:600;letter-spacing:-.02em;line-height:1.1}.tile .sub{font-size:12px;color:var(--s400);margin-top:5px}.tile .sub strong{color:var(--s600);font-weight:600}.card{border:1px solid var(--s200);border-radius:var(--r-card);background:#fff;box-shadow:var(--sh-subtle);margin-bottom:22px;overflow:hidden}.card-h{padding:15px 18px;border-bottom:1px solid var(--s200);display:flex;align-items:center;justify-content:space-between;gap:12px}.card-h h2{font-size:15px;font-weight:600}.card-h .hint{font-size:12px;color:var(--s500)}.card-b{padding:18px}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--s500);font-weight:600;padding:10px 18px;border-bottom:1px solid var(--s200)}td{padding:12px 18px;border-bottom:1px solid var(--s100);vertical-align:middle}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--s50)}td.n,th.n{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.t-main{font-weight:600}.t-sub{color:var(--s500);margin-top:2px}.pill,.t-sub{font-size:12px}.pill{display:inline-flex;align-items:center;gap:6px;border-radius:var(--r-pill);padding:3px 10px 3px 8px;font-weight:600;white-space:nowrap}.pill i{width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}.pill.ok{color:var(--ok);background:var(--ok-bg)}.pill.warn{color:var(--warn);background:var(--warn-bg)}.pill.crit{color:var(--crit);background:var(--crit-bg)}.pill.neutre{color:var(--s600);background:var(--s100)}.pill.info{color:var(--lp-blue);background:var(--lp-blue-50)}.bars{display:flex;flex-direction:column;gap:2px}.bar-row{display:grid;grid-template-columns:150px 1fr 62px;align-items:center;grid-gap:12px;gap:12px;padding:5px 0}.bar-row .name{font-size:13px;color:var(--s700);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-track{height:100%;position:relative}.bar{height:16px;background:var(--lp-blue-bar);border-radius:0 4px 4px 0;min-width:2px}.bar-row .val{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600;font-size:13px}.bar-row:hover .name{color:var(--s900)}.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));grid-gap:22px;gap:22px}.btn{display:inline-flex;align-items:center;gap:7px;border:none;cursor:pointer;background:var(--lp-blue);color:#fff;font-family:var(--f-body);font-weight:600;font-size:13px;padding:9px 16px;border-radius:var(--r-btn)}.btn:hover{background:#001279}.btn.ghost{background:#fff;color:var(--s700);border:1px solid var(--s300)}.btn.ghost:hover{background:var(--s50)}.vide{padding:34px 18px;text-align:center;color:var(--s500)}.vide strong{display:block;color:var(--s700);font-weight:600;margin-bottom:5px;font-family:var(--f-head)}.code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;background:var(--s100);padding:2px 6px;border-radius:6px;color:var(--s700)}.alerte{border:1px solid #fde68a;background:#fffbeb;color:#92400e;border-radius:var(--r-card);padding:14px 18px;margin-bottom:20px;font-size:13px;line-height:1.6}.alerte b{font-weight:700}.login{min-height:100vh;display:grid;place-items:center;padding:24px}.login form{width:100%;max-width:360px;border:1px solid var(--s200);border-radius:var(--r-card);padding:26px;box-shadow:var(--sh-card)}.login h1{font-size:20px;font-weight:600;margin-bottom:5px;color:var(--lp-blue)}.login p{color:var(--s500);margin:0 0 20px}.login input{width:100%;padding:11px 13px;border:1px solid var(--s300);border-radius:var(--r-btn);font-family:var(--f-body);font-size:14px;margin-bottom:13px}.login input:focus{outline:2px solid var(--lp-blue-100);border-color:var(--lp-blue)}.login .err{color:var(--crit);font-size:13px;margin-bottom:12px}@media (max-width:860px){.shell{grid-template-columns:1fr}.side{align-items:center;gap:14px;overflow-x:auto;padding:12px 16px}.nav,.side{flex-direction:row}.side-foot{display:none}.main{padding:20px 16px 40px}.bar-row{grid-template-columns:110px 1fr 54px}}