@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap";:root{--navy:#102a43;--navy-deep:#0b2239;--teal:#138c82;--teal-dark:#0e756d;--teal-soft:#e8f5f3;--ink:#1c2b38;--muted:#667987;--line:#dce5e9;--surface:#fff;--bg:#f4f7f7;--red:#c7463a;--red-soft:#fcecea;--amber:#d28b28;--amber-soft:#fff4df;--green:#2d8a62;--green-soft:#e8f5ed;--shadow:0 12px 32px #152f3e12}*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}body{color:var(--ink);background:var(--bg);margin:0;font-family:DM Sans,Arial,sans-serif;font-size:14px}button,input,select,textarea{font:inherit}button{color:inherit}.app-shell{min-height:100vh}.sidebar{z-index:30;background:var(--navy-deep);color:#fff;flex-direction:column;width:256px;padding:30px 20px 22px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:12px;padding:0 8px 34px;display:flex}.brand-mark{background:var(--teal);border-radius:13px;place-items:center;width:43px;height:43px;display:grid;box-shadow:0 8px 20px #138c8247}.brand>span:last-child{flex-direction:column;font-family:Manrope,sans-serif;font-size:17px;line-height:1.05;display:flex}.brand strong{font-weight:800}.brand em{color:#80d2ca;font-style:normal;font-weight:600}.nav-eyebrow{color:#7892a6;letter-spacing:.14em;margin:0 12px 10px;font-size:10px;font-weight:700}nav{gap:6px;display:grid}nav button{color:#9fb3c3;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;width:100%;padding:12px 13px;font-weight:600;transition:all .2s;display:flex;position:relative}nav button:hover{color:#fff;background:#ffffff0f}nav button.active{color:#fff;background:#199f9326}nav button.active svg{color:#5fc6bb}.nav-dot{background:#5fc6bb;border-radius:50%;width:5px;height:5px;margin-left:auto}.privacy-card{background:#138c8214;border:1px solid #7cd3ca2b;border-radius:12px;gap:11px;margin-top:auto;padding:14px;display:flex}.privacy-icon{color:#70d0c7;background:#5fc6bb1c;border-radius:8px;flex:0 0 30px;place-items:center;width:30px;height:30px;display:grid}.privacy-card strong{font-size:12px}.privacy-card p{color:#8ca5b6;margin:5px 0 0;font-size:10px;line-height:1.4}.storage-note{color:#607b8e;margin:13px 8px 0;font-size:9.5px;line-height:1.4}main{min-height:100vh;margin-left:256px}.topbar{border-bottom:1px solid var(--line);z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffe8;justify-content:space-between;align-items:center;height:86px;padding:0 42px;display:flex;position:sticky;top:0}.topbar h1{margin:4px 0 0;font:700 20px/1.1 Manrope,sans-serif}.breadcrumb,.section-kicker{color:var(--teal);letter-spacing:.13em;margin:0;font-size:9.5px;font-weight:800}.topbar-actions{align-items:center;gap:14px;display:flex}.private-pill{color:var(--teal-dark);background:var(--teal-soft);border:1px solid #cde9e5;border-radius:999px;align-items:center;gap:6px;padding:7px 11px;font-size:11px;font-weight:700;display:inline-flex}.avatar{color:#fff;background:var(--navy);border:0;border-radius:50%;width:36px;height:36px;font-size:11px;font-weight:700}.menu-button{display:none}.page{max-width:1460px;margin:0 auto;padding:40px 42px 56px}.welcome-row,.registry-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;display:flex}.welcome-row h2,.registry-heading h2,.form-heading h2{color:var(--navy);letter-spacing:-.025em;margin:7px 0;font:800 29px/1.15 Manrope,sans-serif}.welcome-row>div>p:last-child,.registry-heading>div>p:last-child,.form-heading>div>p:last-child{color:var(--muted);margin:0}.primary-button,.secondary-button{cursor:pointer;white-space:nowrap;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 16px;font-size:12px;font-weight:700;transition:all .2s;display:inline-flex}.primary-button{border:1px solid var(--teal);color:#fff;background:var(--teal);box-shadow:0 6px 14px #138c8229}.primary-button:hover{background:var(--teal-dark);transform:translateY(-1px)}.secondary-button{color:var(--navy);background:#fff;border:1px solid #cfdce1}.secondary-button:hover{background:#f9fbfb;border-color:#9fb5be}.text-button{color:var(--teal-dark);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:6px 0;font-size:11px;font-weight:700;display:inline-flex}.metrics-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:18px;display:grid}.metric-card{background:#fff;border:1px solid #e1e9ec;border-radius:13px;align-items:center;gap:16px;min-height:121px;padding:21px;display:flex;box-shadow:0 5px 18px #152f3e09}.metric-icon{border-radius:11px;flex:0 0 43px;place-items:center;width:43px;height:43px;display:grid}.metric-icon.navy{color:var(--navy);background:#eaf0f5}.metric-icon.red{color:var(--red);background:var(--red-soft)}.metric-icon.green{color:var(--green);background:var(--green-soft)}.metric-icon.amber{color:var(--amber);background:var(--amber-soft)}.metric-card p{color:var(--muted);margin:0 0 3px;font-size:11px;font-weight:600}.metric-card strong{color:var(--navy);margin-right:7px;font:800 27px/1.2 Manrope,sans-serif;display:inline-block}.metric-card small{color:#8a9aa5;font-size:10px}.dashboard-grid{grid-template-columns:minmax(0,1.7fr) minmax(280px,.75fr);gap:18px;display:grid}.panel{background:#fff;border:1px solid #e1e9ec;border-radius:13px;overflow:hidden;box-shadow:0 5px 18px #152f3e09}.panel-header{border-bottom:1px solid #e7edef;justify-content:space-between;align-items:center;gap:14px;min-height:77px;padding:20px 22px;display:flex}.panel h3{color:var(--navy);margin:5px 0 0;font:700 16px/1.2 Manrope,sans-serif}.priority-list{display:grid}.priority-row{text-align:left;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #edf1f2;grid-template-columns:4px minmax(0,1fr) auto 18px;align-items:center;gap:17px;width:100%;min-height:71px;padding:10px 18px 10px 0;display:grid}.priority-row:last-child{border-bottom:0}.priority-row:hover{background:#fbfdfd}.priority-bar{background:var(--amber);border-radius:0 3px 3px 0;align-self:stretch;width:4px}.priority-bar.critique{background:var(--red)}.priority-bar.mineure{background:#5c86a2}.priority-main{flex-direction:column;gap:5px;min-width:0;display:flex}.priority-main strong{text-overflow:ellipsis;white-space:nowrap;color:var(--navy);font-size:12px;overflow:hidden}.priority-main em{color:#83939e;font-size:10px;font-style:normal}.priority-date{flex-direction:column;gap:4px;min-width:105px;display:flex}.priority-date small{color:#8a9ba5;font-size:9px}.priority-date strong{font-size:10.5px}.late,.due-late{color:var(--red)!important}.severity-panel{padding-bottom:20px}.severity-row{padding:19px 22px 0}.severity-row>div:first-child{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.severity-row span{color:var(--muted);font-size:11px}.severity-row strong{color:var(--navy);font-size:12px}.bar-track{background:#eef2f3;border-radius:999px;height:7px;overflow:hidden}.bar-track span{border-radius:inherit;height:100%;display:block}.bar-track .critical{background:var(--red)}.bar-track .major{background:var(--amber)}.bar-track .minor{background:#5c86a2}.legend-note{background:#f7f9fa;border-radius:9px;gap:10px;margin:23px 22px 0;padding:13px;display:flex}.legend-note span{background:var(--teal);border-radius:50%;flex:0 0 6px;width:6px;height:6px;margin-top:4px}.legend-note p{color:#768995;margin:0;font-size:9.5px;line-height:1.5}.button-row{gap:10px;display:flex}.filter-panel{background:#fff;border:1px solid #e0e8eb;border-radius:12px;grid-template-columns:minmax(260px,1.8fr) repeat(4,minmax(130px,1fr));gap:10px;margin-bottom:14px;padding:14px;display:grid}.search-field{color:#81929c;background:#fbfcfc;border:1px solid #d6e0e4;border-radius:8px;align-items:center;gap:9px;height:47px;padding:0 13px;display:flex}.search-field input{width:100%;color:var(--ink);background:0 0;border:0;outline:0;font-size:11px}.select-filter{background:#fbfcfc;border:1px solid #d6e0e4;border-radius:8px;flex-direction:column;justify-content:center;height:47px;padding:6px 10px;display:flex}.select-filter span{color:#8a9aa4;text-transform:uppercase;letter-spacing:.05em;font-size:8px;font-weight:700}.select-filter select{width:100%;color:var(--navy);background:0 0;border:0;outline:0;padding:0;font-size:10.5px;font-weight:600}.registry-table-wrap{background:#fff;border:1px solid #e0e8eb;border-radius:12px;overflow:hidden;box-shadow:0 5px 18px #152f3e06}.registry-table{border-collapse:collapse;width:100%}.registry-table th{color:#80919d;letter-spacing:.05em;text-align:left;text-transform:uppercase;white-space:nowrap;background:#f8fafb;border-bottom:1px solid #dfe7ea;padding:13px 14px;font-size:8.5px;font-weight:800}.registry-table td{color:#4d616e;vertical-align:middle;border-bottom:1px solid #e8edef;padding:15px 14px;font-size:10.5px}.registry-table tbody tr{cursor:pointer;transition:all .15s}.registry-table tbody tr:hover{background:#fbfdfd}.registry-table tbody tr:last-child td{border-bottom:0}.registry-table td>strong{max-width:240px;color:var(--navy);margin-bottom:4px;font-size:11px;display:block}.registry-table small{color:#8b9ca6;font-size:9px;display:block}.record-id{font-family:Manrope,sans-serif;font-weight:800;color:var(--teal-dark)!important}.severity,.status{white-space:nowrap;align-items:center;gap:6px;font-size:9.5px;font-weight:700;display:inline-flex}.severity i{border-radius:50%;width:6px;height:6px}.severity-critique{color:#a83129}.severity-critique i{background:var(--red)}.severity-majeure{color:#9b681c}.severity-majeure i{background:var(--amber)}.severity-mineure{color:#486e88}.severity-mineure i{background:#5c86a2}.status{border-radius:999px;padding:5px 8px}.status-a-traiter{color:#a83129;background:var(--red-soft)}.status-en-cours{color:#966216;background:var(--amber-soft)}.status-verifiee,.status-cloturee{color:#27734f;background:var(--green-soft)}.late-label{margin-top:3px;font-weight:700;color:var(--red)!important}.row-arrow{color:#7f939e;cursor:pointer;background:#f4f7f8;border:0;border-radius:7px;place-items:center;width:26px;height:26px;padding:0;display:grid}.print-header,.mobile-records{display:none}.empty-state{color:#80939e;align-content:center;place-items:center;gap:8px;min-height:150px;display:grid}.empty-state p,.empty-state h3{margin:0}.empty-state.large{min-height:260px}.form-page{max-width:1120px}.form-heading{margin-bottom:25px}.form-page form{gap:15px;display:grid}.form-section{background:#fff;border:1px solid #e0e8eb;border-radius:13px;padding:25px;box-shadow:0 5px 18px #152f3e06}.form-section-heading{border-bottom:1px solid #e8edef;gap:14px;margin-bottom:23px;padding-bottom:18px;display:flex}.form-section-heading>span{width:31px;height:31px;color:var(--teal-dark);background:var(--teal-soft);border-radius:8px;place-items:center;font:800 10px/1 Manrope,sans-serif;display:grid}.form-section-heading h3{color:var(--navy);margin:0 0 4px;font:700 15px/1.2 Manrope,sans-serif}.form-section-heading p{color:#81929d;margin:0;font-size:10px}.form-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.field{color:var(--navy);flex-direction:column;gap:7px;font-size:10.5px;font-weight:700;display:flex}.field.wide{grid-column:1/-1}.field input,.field select,.field textarea,.drawer-block textarea{width:100%;color:var(--ink);background:#fbfcfc;border:1px solid #d4dfe3;border-radius:8px;outline:0;font-size:11px;font-weight:400;transition:all .15s}.field input,.field select{height:42px;padding:0 12px}.field textarea,.drawer-block textarea{resize:vertical;padding:11px 12px;line-height:1.5}.field input:focus,.field select:focus,.field textarea:focus,.drawer-block textarea:focus{border-color:var(--teal);background:#fff;box-shadow:0 0 0 3px #138c8217}.severity-choice{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.severity-choice>label{cursor:pointer;background:#fbfcfc;border:1px solid #d8e2e5;border-radius:9px;align-items:center;gap:9px;min-height:68px;padding:12px;display:flex}.severity-choice input{width:15px;height:15px;accent-color:var(--teal);margin:0}.severity-choice label>span{flex-direction:column;gap:5px;display:flex}.severity-choice b{align-items:center;gap:6px;font-size:10.5px;display:flex}.severity-choice b i{background:#5c86a2;border-radius:50%;width:6px;height:6px}.severity-choice small{color:#7d909a;font-size:8.5px;font-weight:400}.severity-choice .selected{background:#f1f6f9;border-color:#5c86a2}.severity-choice .selected.majeure{border-color:var(--amber);background:var(--amber-soft)}.severity-choice .selected.majeure b i{background:var(--amber)}.severity-choice .selected.critique{border-color:var(--red);background:var(--red-soft)}.severity-choice .selected.critique b i{background:var(--red)}.form-actions{justify-content:flex-end;gap:10px;padding:8px 0 0;display:flex}.drawer-layer{z-index:100;position:fixed;inset:0}.drawer-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0516247a;border:0;width:100%;position:absolute;inset:0}.drawer{background:#f6f8f8;flex-direction:column;width:min(550px,94vw);animation:.25s ease-out slide;display:flex;position:absolute;inset:0 0 0 auto;box-shadow:-20px 0 45px #091d2c33}@keyframes slide{0%{opacity:0;transform:translate(30px)}}.drawer-header{background:#fff;border-bottom:1px solid #e1e8eb;justify-content:space-between;gap:20px;padding:24px 25px 18px;display:flex}.drawer-header h2{color:var(--navy);margin:7px 0 5px;font:800 21px/1.25 Manrope,sans-serif}.drawer-header p{color:var(--muted);margin:0;font-size:11px}.icon-button{cursor:pointer;background:#fff;border:1px solid #dce5e8;border-radius:8px;flex:0 0 34px;place-items:center;width:34px;height:34px;display:grid}.drawer-badges{background:#fff;border-bottom:1px solid #e1e8eb;align-items:center;gap:8px;padding:12px 25px;display:flex}.overdue-chip{color:var(--red);background:var(--red-soft);border-radius:999px;align-items:center;gap:5px;padding:5px 8px;font-size:9px;font-weight:700;display:inline-flex}.drawer-content{gap:11px;padding:15px 18px 100px;display:grid;overflow:auto}.drawer-block{background:#fff;border:1px solid #e0e8eb;border-radius:11px;padding:18px}.drawer-block h3{color:var(--navy);margin:0 0 12px;font:700 12px/1.2 Manrope,sans-serif}.drawer-block>p{color:#506571;margin:0;font-size:11px;line-height:1.6}.drawer-block dl{border-top:1px solid #e7edef;grid-template-columns:repeat(3,1fr);gap:10px;margin:15px 0 0;padding-top:13px;display:grid}.drawer-block dt{color:#8999a3;font-size:8.5px}.drawer-block dd{color:var(--navy);margin:4px 0 0;font-size:10px;font-weight:700}.drawer-fields{grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;display:grid}.drawer-block>.field+.field{margin-top:12px}.drawer-footer{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-top:1px solid #dfe7ea;justify-content:flex-end;gap:9px;min-height:74px;padding:15px 24px;display:flex;position:absolute;inset:auto 0 0}.toast{z-index:200;color:#fff;background:var(--navy);border-radius:10px;align-items:center;gap:10px;min-width:260px;padding:13px 17px;font-size:11px;font-weight:600;animation:.25s ease-out toast;display:flex;position:fixed;bottom:26px;right:28px;box-shadow:0 15px 35px #041a2a40}.toast span{color:#fff;background:var(--teal);border-radius:50%;place-items:center;width:25px;height:25px;display:grid}@keyframes toast{0%{opacity:0;transform:translateY(8px)}}.pin-login-page{background:radial-gradient(circle at 15% 5%,#138c8226,#0000 32%),linear-gradient(145deg,#0b2239 0%,#102f47 100%);place-items:center;min-height:100vh;margin:0;padding:32px 20px;display:grid}.pin-login-card{background:#fffffffa;border:1px solid #ffffff80;border-radius:18px;width:min(430px,100%);padding:34px;box-shadow:0 28px 70px #02101c52}.pin-brand{align-items:center;gap:12px;margin-bottom:34px;display:flex}.pin-brand-mark{color:#fff;background:var(--teal);border-radius:13px;place-items:center;width:46px;height:46px;display:grid;box-shadow:0 8px 20px #138c8240}.pin-brand>span:last-child{color:var(--navy);flex-direction:column;font:800 17px/1.05 Manrope,sans-serif;display:flex}.pin-brand em{color:var(--teal);font-style:normal;font-weight:600}.pin-login-heading h1{color:var(--navy);letter-spacing:-.025em;margin:7px 0 8px;font:800 28px/1.15 Manrope,sans-serif}.pin-login-heading>p:last-child{color:var(--muted);margin:0;font-size:12px;line-height:1.55}.pin-login-card form{margin-top:27px}.pin-login-card form label{color:var(--navy);margin-bottom:8px;font-size:11px;font-weight:700;display:block}.pin-login-card form input{width:100%;height:52px;color:var(--navy);letter-spacing:.28em;text-align:center;background:#f9fbfb;border:1px solid #cfdce1;border-radius:10px;outline:0;padding:0 15px;font:800 23px/1 Manrope,sans-serif;transition:all .15s}.pin-login-card form input:focus{border-color:var(--teal);background:#fff;box-shadow:0 0 0 4px #138c821a}.pin-login-card form input::placeholder{color:#9eb0b8;letter-spacing:.18em}.pin-error{min-height:18px;color:var(--red);margin:7px 0 3px;font-size:10px;line-height:1.4}.pin-submit{width:100%;height:46px}.pin-submit:disabled{opacity:.5;cursor:not-allowed;transform:none}.pin-security-note{color:#7e929d;border-top:1px solid #e4eaec;align-items:flex-start;gap:10px;margin-top:23px;padding-top:18px;display:flex}.pin-security-note svg{width:17px;height:17px;color:var(--teal);flex:0 0 17px}.pin-security-note p{margin:0;font-size:9.5px;line-height:1.5}.access-check-page{color:#d3e5e7;background:var(--navy-deep);align-content:center;place-items:center;gap:14px;min-height:100vh;margin:0;display:grid}.access-check-page p{margin:0;font-size:11px}.access-check-spinner{border:3px solid #ffffff29;border-top-color:#65c9bf;border-radius:50%;width:30px;height:30px;animation:.8s linear infinite access-spin}@keyframes access-spin{to{transform:rotate(360deg)}}@media (max-width:1160px){.metrics-grid{grid-template-columns:1fr 1fr}.filter-panel{grid-template-columns:1fr 1fr 1fr}.search-field{grid-column:1/-1}.registry-table th:nth-child(6),.registry-table td:nth-child(6){display:none}}@media (max-width:820px){.sidebar{transition:all .25s;transform:translate(-100%)}.sidebar.is-open{transform:translate(0)}.nav-overlay{z-index:25;background:#081b2973;border:0;position:fixed;inset:0}main{margin-left:0}.topbar{height:74px;padding:0 20px}.menu-button{background:#fff;border:1px solid #dce5e8;border-radius:8px;place-items:center;width:36px;height:36px;margin-right:13px;padding:0;display:grid}.topbar>div:nth-child(2){margin-right:auto}.breadcrumb{display:none}.topbar h1{margin:0;font-size:17px}.page{padding:29px 20px 45px}.welcome-row,.registry-heading{flex-direction:column;align-items:flex-start}.metrics-grid{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.filter-panel{grid-template-columns:1fr 1fr}.search-field{grid-column:1/-1}.registry-table{display:none}.mobile-records{display:grid}.mobile-record{text-align:left;background:#fff;border:0;border-bottom:1px solid #e6ecee;flex-direction:column;gap:7px;padding:16px;display:flex}.mobile-record-top,.mobile-record-bottom{justify-content:space-between;align-items:center;display:flex}.mobile-record b{color:var(--navy);font-size:12px}.mobile-record em{color:var(--muted);font-size:10px;font-style:normal}.mobile-record-bottom{margin-top:5px}}@media (max-width:560px){.topbar-actions .private-pill{display:none}.welcome-row h2,.registry-heading h2,.form-heading h2{font-size:24px}.metrics-grid{grid-template-columns:1fr}.metric-card{min-height:96px}.button-row{width:100%}.button-row button{flex:1}.filter-panel{grid-template-columns:1fr}.search-field{grid-column:auto}.form-section{padding:19px}.form-grid{grid-template-columns:1fr}.field.wide{grid-column:auto}.severity-choice{grid-template-columns:1fr}.form-actions{justify-content:stretch}.form-actions button{flex:1}.priority-date{display:none}.priority-row{grid-template-columns:4px minmax(0,1fr) 18px}.drawer-block dl,.drawer-fields{grid-template-columns:1fr}}@media print{@page{size:A4 landscape;margin:13mm}body{background:#fff;font-size:9pt}.sidebar,.topbar,.registry-heading,.filter-panel,.mobile-records,.drawer-layer,.toast{display:none!important}main{margin:0}.page{max-width:none;padding:0}.registry-table-wrap{box-shadow:none;border:0;overflow:visible}.print-header{border-bottom:2px solid var(--teal);margin-bottom:20px;padding-bottom:13px;display:block}.print-brand{color:var(--teal-dark);align-items:center;gap:7px;font-weight:800;display:flex}.print-header h2{color:var(--navy);margin:12px 0 4px;font-family:Manrope,sans-serif}.print-header p{color:#6c7f8b;margin:0}.print-header p:after{content:" — " attr(data-print-date)}.registry-table{display:table!important}.registry-table th{-webkit-print-color-adjust:exact;print-color-adjust:exact;padding:8px;background:#eef4f4!important}.registry-table td{padding:9px 8px;font-size:8pt}.registry-table th:last-child,.registry-table td:last-child{display:none}.status,.severity i{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
