@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/font-0.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/font-1.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/font-2.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/font-3.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/font-4.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/font-5.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/font-6.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/font-7.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/fonts/font-8.ttf) format('truetype');
}
:root{font-family:'DM Sans',Segoe UI,system-ui,sans-serif;color:#183448;background:#f0f6f7;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0;border-radius:8px;padding:12px 16px;background:#0b253b;color:white;font-weight:600}button:hover{filter:brightness(.93)}button:focus-visible,a:focus-visible{outline:3px solid #77ead8;outline-offset:3px}input,select,textarea{width:100%;border:1px solid #dce5e9;border-radius:8px;padding:11px;background:white;color:#183448}textarea{min-height:85px;resize:vertical}.tall{min-height:230px}a{color:#0b253b}small{display:block;color:#586b79;font-size:12px;line-height:1.7}h1{font-size:30px;margin:6px 0}h2{font-size:23px;margin:14px 0}h3{font-size:16px}p{line-height:1.65}aside{position:fixed;left:0;top:0;bottom:0;width:245px;background:#0b253b;color:white;padding:35px 22px;display:flex;flex-direction:column}.brand{font-weight:800;font-size:33px;letter-spacing:-1px}.brand span{display:block;font-size:12px;font-weight:400;letter-spacing:2px;color:#b8cbd8}nav{display:grid;gap:7px;margin-top:44px}nav button{background:transparent;text-align:left;color:#c2d2df;font-weight:500;padding:13px 10px}nav span{display:inline-block;width:26px;font-size:19px}nav .active{background:#77ead8;color:#fff}.aside-foot{margin-top:auto}.aside-foot small{color:#b8cbd8}.aside-foot button{background:transparent;padding:15px 0;color:#b8cbd8;font-size:12px}main{margin-left:245px;padding:35px 42px;max-width:1900px}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:35px}header small{letter-spacing:1.5px;font-size:10px}.welcome{background:#0b253b;border-radius:18px;padding:35px;display:flex;justify-content:space-between;align-items:center;border:1px solid #29485e}.welcome h2{font-size:32px;line-height:1.25}.welcome p{color:#c2d2df;font-size:12px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:#287e77}.welcome-number{font-size:60px;font-weight:700;letter-spacing:-3px}.welcome-number small{letter-spacing:0;text-align:right}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:24px 0 35px}.metrics article,.panel{background:#fff;border:1px solid #dce5e9;border-radius:12px;padding:23px}.metrics strong{display:block;font-size:30px;margin-top:12px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:15px}.section-title span{color:#586b79;font-size:12px}.table-wrap{overflow:auto;background:white;border:1px solid #dce5e9;border-radius:12px}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;background:#edf5f7;color:#586b79;font-size:10px;letter-spacing:.6px;text-transform:uppercase;padding:17px}td{padding:16px;border-top:1px solid #e8eff2;min-width:115px}td:first-child{min-width:190px}td:nth-child(2){max-width:240px;overflow-wrap:anywhere}.pill{display:inline-block;background:#e1f8f3;color:#17655e;border-radius:20px;padding:6px 10px;font-size:10px}.light{background:#e1f8f3;color:#0b253b}.overdue{color:#ac4e36}.notice{background:#edf7f6;border-left:3px solid #2da89b;padding:17px 20px;border-radius:5px;margin:24px 0;color:#38646b;font-size:12px}.notice p{margin-bottom:0}.toolbar{display:flex;gap:12px}.toolbar input{flex:2}.toolbar select{flex:1}.muted{color:#586b79;font-size:12px}.pipeline{display:flex;gap:16px;overflow-x:auto;padding-bottom:24px}.pipeline section{min-width:235px;width:235px;background:#e9f1f5;padding:15px;border-radius:12px}.pipeline h3{font-size:12px;display:flex;justify-content:space-between}.deal{display:block;width:100%;background:#fff;color:#183448;text-align:left;margin:12px 0;border:1px solid #dce5e9}.deal span{font-size:11px;font-weight:400;display:block;margin-top:12px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.preview-text{white-space:pre-wrap;max-height:140px;overflow:hidden;font-size:12px;color:#586b79}.panel button{margin-top:12px}.empty{padding:60px;color:#586b79;grid-column:1/-1;text-align:center}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}label{display:block;font-size:12px;font-weight:600;margin:13px 0}label input,label select,label textarea{margin-top:7px;font-weight:400}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.form-actions{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}dialog{border:1px solid #dce5e9;border-radius:18px;width:min(820px,94vw);max-height:90vh;overflow:auto;padding:35px;color:#183448}dialog::backdrop{background:#071d32a0}.close{float:right;background:transparent;color:#183448;font-size:24px;padding:0 10px}.history{border-left:2px solid #dce5e9;padding:8px 15px;font-size:12px;white-space:pre-wrap}.login{margin:10vh auto;max-width:470px;background:white;border-radius:20px;padding:45px;box-shadow:0 15px 60px #0b253b10}.login .brand{color:#0b253b}.login .brand span{color:#586b79}.login h1{margin-top:35px;font-size:27px}.login button{width:100%;margin:15px 0}.login>small{text-align:center;margin-top:25px}#toast{position:fixed;bottom:25px;right:25px;background:#0b253b;color:white;border-radius:10px;padding:18px;max-width:400px;display:none;z-index:100}#toast.show{display:block}@media(max-width:1050px){aside{width:205px;padding:25px 15px}main{margin-left:205px;padding:25px}.metrics{grid-template-columns:1fr 1fr}.cards{grid-template-columns:1fr 1fr}.welcome-number{font-size:40px}.welcome h2{font-size:25px}}@media(max-width:700px){aside{position:static;width:auto;padding:16px}aside .brand{font-size:24px}nav{display:flex;overflow:auto;margin-top:15px;gap:5px}nav button{white-space:nowrap;padding:9px;font-size:11px}nav span,.aside-foot{display:none}main{margin:0;padding:20px}header{gap:15px}h1{font-size:23px}header button{font-size:11px}.welcome{padding:22px;display:block}.welcome-number{margin-top:15px}.welcome-number small{text-align:left}.cards,.settings-grid,.form-grid{grid-template-columns:1fr}.toolbar{flex-wrap:wrap}.toolbar input{flex-basis:100%}dialog{padding:23px}.metrics{gap:10px}.metrics article{padding:18px}.metrics strong{font-size:24px}}

/* Identité LDPB : couleurs et typographies du site vitrine. */
h1,h2,h3,.metrics strong,.welcome-number{font-family:Manrope,Segoe UI,sans-serif}h1,h2{letter-spacing:-1px}.brand{display:block;letter-spacing:0;line-height:1}.brand img{display:block;width:100%;height:auto;max-width:240px}.brand-logo{background:#fff;padding:12px 10px;border-radius:8px}.brand span{margin-top:13px;font:600 10px 'DM Sans',sans-serif;letter-spacing:2px;color:#b8cbd8}nav .active{color:#0b253b}nav .active span{color:#0b253b}.welcome{color:#fff}.welcome .eyebrow{color:#77ead8}.welcome-number{color:#77ead8}.welcome-number small{color:#c2d2df}.login .brand{max-width:270px}.login .brand-logo{padding:0}.login .brand span{color:#586b79}.login h1{letter-spacing:-.8px}header>button{background:#77ead8;color:#0b253b}button:focus-visible,a:focus-visible{outline-color:#2da89b}input:focus,select:focus,textarea:focus{outline:2px solid #2da89b;outline-offset:2px}@media(max-width:700px){aside .brand{max-width:210px}aside .brand span{font-size:9px}}

/* Suivi commercial 0.2 */
.quick-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:16px 0}.action-link{display:inline-flex;align-items:center;justify-content:center;background:#0b253b;color:#fff;border-radius:8px;padding:12px 15px;text-decoration:none;font-weight:600;font-size:12px}.action-link.secondary{background:#e1f8f3;color:#0b253b}.demo-hub{border:1px solid #dce5e9;background:#fff;padding:28px;border-radius:14px;margin-bottom:30px}.demo-hub h2{font-size:28px}.demo-hub p{color:#586b79;font-size:13px}.demo-card .quick-actions{margin-bottom:0}.demo-address{font-size:11px;overflow-wrap:anywhere;background:#f0f6f7;padding:10px;border-radius:5px}.expired{background:#fdece6;color:#a3482c}.pagination{display:flex;gap:18px;align-items:center;justify-content:center;margin:22px 0}.pagination span{font-size:12px;color:#586b79}button:disabled{opacity:.45;cursor:default}#prospect details{border:1px solid #dce5e9;border-radius:10px;margin:18px 0;padding:18px}#prospect summary{cursor:pointer;font-weight:700;font-family:Manrope,sans-serif}.check-label{display:flex;align-items:center;gap:9px}.check-label input{width:auto}.template-banner{background:#edf7f6;padding:18px;border-radius:10px;margin-bottom:20px}.template-banner button,.template-banner a{margin:12px 6px 0 0;font-size:11px}.template-preview{width:100%;height:600px;border:1px solid #dce5e9;border-radius:10px;margin:15px 0;background:#edf3f5}@media(max-width:700px){.demo-hub{padding:20px}.template-preview{height:450px}.quick-actions .action-link{font-size:11px}}

.queue-tabs{display:flex;gap:9px;flex-wrap:wrap;margin:10px 0 20px}.queue-tabs button{background:#e8f0f4;color:#586b79;font-size:12px}.queue-tabs button.selected{background:#77ead8;color:#0b253b}.demo-table-link{display:block;font-weight:600;margin-top:10px;font-size:11px}.welcome{padding:28px 32px}.welcome h2{font-size:29px}.welcome-number{font-size:52px}

.demo-hub+.section-title+.cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}.demo-card .preview-text{max-width:680px}.demo-card .demo-address{max-width:650px}.demo-card>button{margin-top:15px}

.access-status{background:#edf7f6;padding:12px;border-radius:8px;font-size:12px}.danger{color:#9d422d;background:#fdece6}.access-status small{margin-top:4px}

/* Appareils mobiles et tactiles */
.mobile-nav{display:none}main,#content,.panel{min-width:0}button,.action-link{min-height:44px}td,small,.history{overflow-wrap:anywhere}dialog{max-height:calc(100dvh - 24px)}
@media(max-width:900px){.settings-grid{grid-template-columns:1fr}.section-title{flex-wrap:wrap}.cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}}
@media(max-width:700px){body{padding-bottom:env(safe-area-inset-bottom)}aside{padding:14px 16px}aside .brand{max-width:170px}aside .brand span{display:none}nav{display:none}.mobile-nav{display:block;margin:12px 0 0;color:#c2d2df}.mobile-nav select{font-size:16px;margin-top:4px}.aside-foot{display:flex;justify-content:flex-end;margin-top:5px}.aside-foot b,.aside-foot small{display:none}.aside-foot button{padding:8px 0;min-height:32px}main{padding:18px 14px}header{flex-wrap:wrap;margin-bottom:22px}header small{font-size:9px}header>button{font-size:12px}.toolbar{display:grid;grid-template-columns:1fr 1fr}.toolbar input{grid-column:1/-1}.toolbar select{min-width:0}.table-wrap{background:transparent;border:0;overflow:visible}table,tbody{display:block;width:100%}thead{display:none}tbody tr{display:block;background:#fff;border:1px solid #dce5e9;border-radius:12px;padding:15px;margin:12px 0}td,td:first-child,td:nth-child(2){display:block;min-width:0;max-width:none;padding:7px 0;border:0;width:100%}td:first-child b{font-size:16px}td[data-label]::before{content:attr(data-label);display:block;font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:#586b79;margin-bottom:4px}.row-actions{display:flex;align-items:center;gap:15px}.row-actions button{flex:1}.row-actions a{margin:0}.pagination{gap:8px}.pagination button{padding:11px;font-size:12px}.pagination span{white-space:nowrap}.welcome h2{font-size:24px}.welcome-number{font-size:38px}.section-title h2{font-size:21px}.metrics article{padding:15px}.metrics strong{font-size:22px}input,select,textarea{font-size:16px}dialog{width:calc(100vw - 16px);padding:20px 16px;max-height:calc(100dvh - 16px)}.form-actions button,.form-actions a{flex:1;min-width:135px}.quick-actions button,.quick-actions .action-link{flex:1;min-width:125px}.login{margin:25px 12px;padding:28px 22px}.template-preview{height:55dvh}#toast{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));max-width:none}.pipeline{scroll-snap-type:x proximity}.pipeline section{scroll-snap-align:start}}
