.avis-list{--orange:#BE4F33;font-family:Inter,sans-serif!important;color:#2b2b2b;background:transparent;width:100%;max-width:1240px;margin:0 auto}
.avis-list *,.cand-overlay *{box-sizing:border-box;font-family:Inter,sans-serif!important}
.avis-list a,.avis-list a:hover,.avis-list a:focus,.avis-list a:visited{text-decoration:none!important;border-bottom:0!important;box-shadow:none!important}
.avis-card{display:flex;background:#fff;border:1px solid #BAB7B4;border-radius:16px;margin-bottom:10px}
.avis-main{flex:1;padding:22px 30px 20px}
.avis-side{width:291px;padding:0 26px 0 26px;border-left:1.3px solid #BAB7B4;margin:22px 0 20px;display:flex;flex-direction:column}
.avis-ref{font-size:17px;line-height:25px;color:#475569;margin:0 0 22px}
.avis-title{display:flex;align-items:center;flex-wrap:wrap;gap:14px;font-size:19.5px!important;line-height:24px!important;font-weight:700!important;color:#0F172A!important;margin:0 0 22px!important;padding:0!important}
.avis-badge{font-size:13px;font-weight:600;line-height:16px;padding:4px 10px;border-radius:5px}
.avis-badge.active{color:#64D291;background:#F3FBF6}
.avis-badge.closed{color:#595959;background:#F1F5F9}
.avis-org{font-size:17px;line-height:25px;color:#595959;margin:0 0 55px}
.avis-btns{display:flex;flex-wrap:wrap;gap:16px}
.avis-btn,button.avis-btn,.avis-list .avis-btn{display:inline-flex!important;align-items:center;justify-content:center;font-family:Inter,sans-serif!important;font-size:16px!important;font-weight:600!important;line-height:22px!important;padding:6px 10px!important;height:36px!important;min-height:0!important;border-radius:3px!important;margin:0!important;box-shadow:none!important;text-transform:none!important;letter-spacing:0!important;white-space:nowrap;cursor:pointer}
.avis-btn.primary{color:var(--orange)!important;border:1px solid var(--orange)!important;background:#F9EEEB!important}
.avis-btn.primary:hover{background:#f3e2da!important;color:var(--orange)!important}
.avis-btn.disabled{color:#595959!important;border:1px solid #595959!important;background:rgba(89,89,89,.12)!important}
.avis-btn.disabled:hover{background:#e9e9e9!important}
.avis-num{font-size:31px;font-weight:700;line-height:38px;color:#0F172A;margin:0 0 5px}
.avis-label{font-size:14.3px;line-height:17px;color:#595959;letter-spacing:0;margin:0 0 25px}
.avis-date{font-size:17px;line-height:20px;font-weight:700;color:#0F172A;margin:0 0 5px}
.avis-cta{margin-top:auto;display:block;width:100%;text-align:center;font-size:15.6px!important;font-weight:600!important;padding:0 12px!important;height:40px;border-radius:8px!important;cursor:pointer;line-height:40px!important;max-width:211px}
.avis-cta.on{background:var(--orange)!important;color:#fff!important;border:1px solid var(--orange)!important}
.avis-cta.on:hover{background:#9e4630!important}
.avis-cta.off{background:#fff!important;color:#9D9D9D!important;border:1px solid #9D9D9D!important;pointer-events:none}
.avis-pager{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;margin-top:20px;font-size:16.4px;line-height:23px;color:#595959}
/* Relevé Figma : boutons de 40 px, angles 7 ; « Précédent » sable filet gris, « Suivant » orange plein. */
.avis-pager-nav .avis-pg{display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0 17px;border-radius:7px;font-size:16.4px;font-weight:400;line-height:1;text-decoration:none!important}
.avis-pager-nav .avis-pg:first-child{background:#F1EDE8;color:#595959;border:1.17px solid #595959}
.avis-pager-nav .avis-pg:last-child{background:#BE4F33;color:#fff;border:1px solid #BE4F33}
.avis-pager-nav .avis-pg.off{opacity:.45;pointer-events:none}
.avis-pager .avis-pager-nav{display:flex;gap:10px}
.avis-pg{padding:8px 16px;border-radius:5px;font-size:15px}
.avis-pg.off{color:#9a9a9a;background:#f2f2f2;border:1px solid #d9d9d9;pointer-events:none}
.avis-pg.on{color:#fff!important;background:var(--orange);border:1px solid var(--orange)}

/* Popup */
.cand-overlay{--orange:#BE4F33;position:fixed;inset:0;z-index:99999;background:rgba(0,0,0,.55);display:none;align-items:flex-start;justify-content:center;padding:30px 16px;overflow-y:auto}
.cand-overlay.open{display:flex}
.cand{background:#fff;border-radius:16px;width:100%;max-width:828px;padding:34px 32px 30px;position:relative;box-shadow:0 20px 60px rgba(0,0,0,.25);margin:0}
.cand-close{position:absolute;top:16px;right:20px;width:28px;height:28px;border-radius:50%;background:#e8e8e8!important;border:0!important;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0!important}
.cand-close svg{width:14px;height:14px;stroke:#1d1d1d;stroke-width:2.5;fill:none}
.cand h3{font-size:24px!important;font-weight:700!important;color:#0A2D1E!important;margin:0 0 4px!important;padding:0!important}
.cand-sub{font-size:17px;color:#595959;margin:0 0 30px}
.cand-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px 34px}
.cand-f{display:flex;flex-direction:column}
.cand-f label{font-size:15px;font-weight:400;color:#1d1d1d;margin:0 0 12px}
.cand-f.rtl label,.cand-f.rtl input{direction:rtl;text-align:right}
.cand-f input{width:100%;height:60px;font-size:15px;color:#1d1d1d;background:#fff;border:1px solid #E2E4E8;border-radius:8px;padding:0 14px;outline:0;box-shadow:none}
.cand-f input::placeholder{color:#8a8a8a}
.cand-f input:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(181,83,58,.12)}
/* Case de consentement de la maquette, sous la grille. */
.cand-consent{display:flex;gap:12px;align-items:flex-start;margin:34px 0 0;font-size:14px;line-height:1.45;color:#3f3f3f;cursor:pointer}
.cand-consent input{width:18px;height:18px;margin:2px 0 0;accent-color:#BE4F33;flex:0 0 auto}
.cand-actions{display:flex;justify-content:flex-end;gap:14px;margin-top:26px}
.cand-actions button{min-width:210px;height:44px;font-size:15px!important;font-weight:600!important;border-radius:6px!important;cursor:pointer;padding:0 20px!important}
.cand-cancel{background:#fff!important;color:var(--orange)!important;border:1px solid var(--orange)!important}
.cand-submit{background:var(--orange)!important;color:#fff!important;border:1px solid var(--orange)!important}
.cand-submit:hover{background:#9e4630!important}
.cand-submit:disabled{opacity:.6;cursor:wait}
.cand-msg{margin-top:12px;text-align:right;font-size:14px;color:#c0392b}
.cand-msg.ok{color:#2e8b57}


/* Popup info */
.cand-info{max-width:460px;text-align:center;padding:40px 36px 30px}
.info-ico{width:64px;height:64px;margin:0 auto 16px;border-radius:50%;background:#faf1ee;display:flex;align-items:center;justify-content:center}
.info-ico svg{width:34px;height:34px;stroke:var(--orange);stroke-width:2;fill:none}
.cand-info h3{margin-bottom:10px!important}
.cand-info p{font-size:16px;color:#3f3f3f;margin:0}
.cand-info .cand-actions{justify-content:center;margin-top:26px}
.cand-info .cand-actions button{min-width:140px}

/* Popup détail offre */
.cand-detail{max-width:820px}
.det-head .avis-ref{display:block;margin-bottom:8px}
.det-head h3{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:24px!important;color:#1d1d1d!important;margin:0 0 8px!important}
.det-head .avis-org{margin:0 0 22px}
.det-infos{display:flex;gap:16px;margin-bottom:24px}
.det-infos div{flex:1;background:#fbf9f6;border-left:4px solid var(--orange);padding:14px 18px}
.det-infos b{display:block;font-size:22px;font-weight:700;color:#1d1d1d;line-height:1.2;margin-bottom:4px}
.det-infos small{font-size:13px;color:#595959;letter-spacing:.3px;text-transform:uppercase}
.det-body{font-size:15px;line-height:1.65;color:#3f3f3f;max-height:45vh;overflow-y:auto;padding-right:6px}
.det-body h1,.det-body h2,.det-body h3,.det-body h4{color:#1f3d2b!important;font-size:18px!important;margin:18px 0 8px!important}
.det-body p{margin:0 0 12px}
.det-body ul,.det-body ol{margin:0 0 12px 22px}
.det-actions{display:flex;justify-content:flex-end;gap:14px;margin-top:26px;padding-top:20px;border-top:1px solid #eee}
.det-actions a,.det-actions button{display:inline-flex;align-items:center;justify-content:center;min-width:200px;height:44px;font-size:15px!important;font-weight:600!important;border-radius:6px!important;padding:0 20px!important;cursor:pointer;margin:0!important;width:auto!important}
.det-pdf{color:var(--orange)!important}

@media(max-width:820px){
  .det-infos{flex-direction:column}
  .det-actions{flex-direction:column}
  .det-actions a,.det-actions button{width:100%!important}
  .avis-card{flex-direction:column}
  .avis-side{width:auto;border-left:0;border-top:1px solid #d9d9d9;margin:0 30px;padding:20px 0 24px}
  .avis-org{margin-bottom:24px}
  .cand{padding:26px 20px}
  .cand-grid{grid-template-columns:1fr;gap:18px}
  .cand-actions{flex-direction:column}
  .cand-actions button{width:100%}
}
