/* Immotem V9.5 — tableau de bord client.
   Palette reprise du site public : vert #1F4E3D, or #c9a227, fond #f5f6f4. */
:root{--im-green:#1F4E3D;--im-gold:#c9a227;--im-background:#f5f6f4;--im-ink:#2a2e2b;--im-border:#e1e6e0;--im-muted:#5b675f}
html{scroll-behavior:smooth;scroll-padding-top:18px}
body{background:var(--im-background);color:var(--im-ink);font-family:'Segoe UI',Arial,Helvetica,sans-serif}
body>header{background:var(--im-green)}
main{max-width:1020px}
body a{color:var(--im-green)}
.card{border-color:var(--im-border);box-shadow:0 8px 23px rgba(31,78,61,.05)}
body button,.buttonlink{background:var(--im-green)}
body button:hover,.buttonlink:hover{background:#163B2E;color:#fff}
body button:focus-visible,body a:focus-visible,body summary:focus-visible,body input:focus-visible,body textarea:focus-visible{outline:3px solid var(--im-gold);outline-offset:3px}
body progress{accent-color:var(--im-green)}
.im-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.im-dashboard{margin-bottom:18px}
.im-dashboard-top{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin:0 0 18px}
.im-dashboard-top h1{margin:4px 0 6px;font-size:clamp(26px,5.2vw,34px);color:var(--im-green)}
.im-eyebrow{margin:0;color:var(--im-green);text-transform:uppercase;font-size:12px;letter-spacing:.12em;font-weight:750}
.im-welcome{margin:0;color:var(--im-muted)}
.im-profile-link{flex-shrink:0;display:inline-block;text-decoration:none;border:1px solid #cbd7cd;border-radius:8px;padding:9px 14px;font-weight:700;background:#fff}
.im-profile-link:hover{border-color:var(--im-green)}
.im-dashboard-feature{background:var(--im-green);color:#fff;padding:clamp(20px,4.8vw,30px);border-radius:15px;position:relative;overflow:hidden}
.im-dashboard-feature:before{content:'';position:absolute;top:0;left:0;width:100%;height:5px;background:var(--im-gold)}
.im-feature-top{display:flex;justify-content:space-between;align-items:center;gap:20px}
.im-feature-caption{margin:0 0 5px;text-transform:uppercase;letter-spacing:.1em;font-size:12px;color:#d3e2d7;font-weight:700}
.im-feature-top h2{color:#fff;font-size:clamp(21px,4vw,28px);line-height:1.25;margin:0 0 5px;overflow-wrap:anywhere}
.im-feature-status{margin:0;color:#e2ece6;font-size:14px}
.im-feature-percent{font-size:clamp(34px,6vw,49px);line-height:1.1;white-space:nowrap;font-variant-numeric:tabular-nums}
.im-feature-percent span{font-size:20px}
.im-dashboard-feature progress{display:block;width:100%;height:12px;margin:23px 0 12px;border:0;border-radius:15px;overflow:hidden;accent-color:var(--im-gold)}
.im-dashboard-feature progress::-webkit-progress-bar{background:rgba(255,255,255,.2);border-radius:15px}
.im-dashboard-feature progress::-webkit-progress-value{background:var(--im-gold);border-radius:15px}
.im-dashboard-feature progress::-moz-progress-bar{background:var(--im-gold);border-radius:15px}
.im-feature-foot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px;color:#d8e4dc}
.im-feature-foot a{color:#fff;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.im-dashboard-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:14px 0}
.im-stat{display:flex;flex-direction:column;min-width:0;background:white;border:1px solid var(--im-border);border-radius:12px;padding:17px;gap:7px;text-decoration:none;color:var(--im-green);min-height:135px}
.im-stat:hover{border-color:var(--im-green);box-shadow:0 8px 22px rgba(31,78,61,.08)}
.im-stat-label{color:var(--im-muted);font-size:13px;font-weight:600;line-height:1.3}
.im-stat strong{font-size:32px;line-height:1;font-variant-numeric:tabular-nums}
.im-stat-link{margin-top:auto;font-size:12px;line-height:1.4;font-weight:700;overflow-wrap:anywhere}
.im-dashboard-nav{display:flex;gap:8px;overflow-x:auto;scrollbar-width:thin;padding:5px 0 12px}
.im-dashboard-nav a{flex:0 0 auto;display:flex;align-items:center;gap:6px;color:var(--im-green);text-decoration:none;border:1px solid #d2dad3;background:#fff;border-radius:40px;padding:9px 15px;font-weight:700;font-size:13px}
.im-dashboard-nav a:hover{background:#edf1ec}
.im-nav-count{background:var(--im-gold);color:#243122;display:inline-block;min-width:20px;border-radius:20px;text-align:center;padding:0 5px}
.im-activity{padding:20px!important}
.im-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:0 0 12px}
.im-section-heading h2{margin:0;color:var(--im-green)}
.im-section-heading .kicker{margin:0 0 2px}
.im-section-heading>a{font-size:13px;font-weight:700;white-space:nowrap}
.im-activity-list{border-top:1px solid var(--im-border)}
.im-activity-row{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--im-border);padding:13px 0;text-decoration:none}
.im-activity-row:last-child{border-bottom:0}
.im-activity-row>span:nth-child(2){min-width:0;flex:1}
.im-activity-row strong{display:block;color:var(--im-ink);font-size:15px;overflow-wrap:anywhere}
.im-activity-row small{display:block;color:var(--im-muted);font-size:12px}
.im-activity-icon{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:10px;background:#eaf0ea;color:var(--im-green);font-size:22px;font-weight:700}
.im-activity-arrow{color:var(--im-green);font-weight:700}
.im-empty{color:var(--im-muted)}
.im-disclosure{scroll-margin-top:18px;padding:0!important;overflow:hidden}
.im-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;padding:20px 25px;font-size:19px;font-weight:750;color:var(--im-green);list-style:none}
.im-disclosure>summary::-webkit-details-marker{display:none}
.im-disclosure>summary:after{content:'+';display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:50%;background:#edf1ec;color:var(--im-green);font-size:24px;line-height:1}
.im-disclosure[open]>summary:after{content:'−'}
.im-disclosure>summary span{font-size:12px;line-height:1.4;font-weight:500;color:var(--im-muted);margin-left:auto;text-align:right}
.im-disclosure[open]{padding:0 25px 22px!important}
.im-disclosure[open]>summary{margin:0 -25px 18px;border-bottom:1px solid var(--im-border)}
.im-disclosure h2{font-size:20px;color:var(--im-green)}
.im-disclosure .project-shortcuts{margin-bottom:8px}
.im-logout{padding:14px!important;text-align:right;box-shadow:none}
.im-logout form{margin:0}
.im-logout button{background:transparent;color:var(--im-green);border:1px solid #c8d6cb;padding:9px 16px;font-size:14px}
.im-logout button:hover{background:var(--im-green);color:#fff}
@media(max-width:650px){
  main{padding:0 14px;margin:20px auto 70px}
  body>header{padding:15px 16px}
  .im-dashboard-top{align-items:flex-start;flex-wrap:wrap}
  .im-profile-link{padding:7px 12px;font-size:13px}
  .im-dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .im-stat{min-height:118px;padding:15px}
  .im-stat:first-child{grid-column:1 / -1;min-height:auto}
  .im-stat:first-child strong{font-size:35px}
  .im-section-heading{align-items:flex-start}
  .im-section-heading>a{max-width:90px;white-space:normal;text-align:right}
  .im-disclosure>summary{padding:16px 18px;font-size:17px}
  .im-disclosure[open]{padding:0 18px 18px!important}
  .im-disclosure[open]>summary{margin:0 -18px 17px}
}
@media(max-width:390px){
 .im-feature-top{align-items:flex-start}
 .im-feature-percent{font-size:30px}
 .im-dashboard-feature{padding:19px}
 .im-stat{padding:12px}
 .im-disclosure>summary span{font-size:11px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
