
:root{--jc-green:#0E875F;--jc-green50:#ECF8F3;--jc-n25:#FBFCFB;--jc-n50:#F7F8F7;--jc-n100:#F1F3F2;--jc-n200:#E4E8E6;--jc-n300:#D2D8D5;--jc-n500:#7B8580;--jc-n600:#5A645F;--jc-n900:#171D1A;--jc-font:Poppins,Arial,sans-serif;--jc-num:Inter,Arial,sans-serif}
*{box-sizing:border-box}.jm-client-body,.jm-client-login-body{margin:0;background:var(--jc-n100);font-family:var(--jc-font);color:var(--jc-n900)}
.jm-client-app{min-height:100vh}.jm-client-sidebar{position:fixed;inset:0 auto 0 0;width:282px;background:#fff;border-right:1px solid var(--jc-n200);padding:20px 18px;z-index:50;display:flex;flex-direction:column}.jm-client-brand{display:flex;height:48px;align-items:center;padding:0 10px}.jm-client-brand img{width:185px;max-height:34px;object-fit:contain}.jm-client-side-label{font-size:11px;letter-spacing:.06em;color:#95A09B;padding:20px 14px 8px}.jm-client-sidebar nav{display:grid;gap:4px}.jm-client-sidebar nav a{min-height:48px;display:flex;align-items:center;gap:12px;border-radius:12px;padding:0 14px;color:var(--jc-n600);text-decoration:none;font-size:14px}.jm-client-sidebar nav a span{flex:1}.jm-client-sidebar nav a b{font:600 11px var(--jc-num)}.jm-client-sidebar nav a.active{background:#DDF3E9;color:#087956;font-weight:600}.jm-client-user{margin-top:auto;padding:18px 8px 0;border-top:1px solid var(--jc-n200);display:flex;align-items:center;gap:10px}.jm-client-user>span,.jm-client-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--jc-n100);font:600 12px var(--jc-num)}.jm-client-user strong,.jm-client-user small{display:block}.jm-client-user strong{font-size:12px}.jm-client-user small{font-size:10px;color:var(--jc-n500);margin-top:2px}
.jm-client-main{margin-left:282px;min-height:100vh}.jm-client-topbar{height:76px;background:#fff;border-bottom:1px solid var(--jc-n200);display:flex;align-items:center;gap:14px;padding:0 28px;position:sticky;top:0;z-index:40}.jm-client-topbar>div{flex:1}.jm-client-bell{position:relative;width:42px;height:42px;border:1px solid var(--jc-n200);border-radius:12px;display:flex;align-items:center;justify-content:center;text-decoration:none;color:var(--jc-n900)}.jm-client-bell i{position:absolute;right:-3px;top:-5px;background:#E84A40;color:#fff;border-radius:50%;width:18px;height:18px;font:600 10px var(--jc-num);display:flex;align-items:center;justify-content:center}.jm-client-logout{font-size:11px;color:var(--jc-n600);text-decoration:none}.jm-client-menu{display:none;border:0;background:transparent;font-size:20px}.jm-client-content{padding:32px 34px 70px;max-width:1320px;margin:auto}.jm-client-pagehead{margin-bottom:24px}.jm-client-pagehead h1,.jm-client-proforma-head h1{font:600 28px/1.2 var(--jc-font);margin:0;letter-spacing:-.025em}.jm-client-pagehead p,.jm-client-proforma-head p{color:var(--jc-n600);font-size:13px;margin:7px 0 0}.jm-client-notice{padding:12px 14px;border-radius:10px;background:#fff;border:1px solid var(--jc-n200);margin-bottom:18px;font-size:12px}.jm-client-notice.success{background:#EAF7F0;color:#0B6D4E}.jm-client-notice.danger{background:#FFF0EE;color:#A12A24}.jm-client-empty{background:#fff;border:1px solid var(--jc-n200);border-radius:16px;padding:28px;color:var(--jc-n600);font-size:13px}
.jm-client-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.jm-client-stats>div,.jm-client-panel{background:#fff;border:1px solid var(--jc-n200);border-radius:16px;padding:20px}.jm-client-stats span,.jm-client-stats strong{display:block}.jm-client-stats span{font-size:11px;color:var(--jc-n500)}.jm-client-stats strong{font-size:14px;margin-top:8px}.jm-client-stats strong.num{font:600 18px var(--jc-num)}.jm-client-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;margin-top:16px}.jm-client-panel h2{font:600 17px var(--jc-font);margin:0}.jm-client-panel-head{display:flex;justify-content:space-between;align-items:center}.jm-client-panel-head a{font-size:12px;color:#087956;text-decoration:none}.jm-client-doc-row{display:flex;align-items:center;gap:12px;margin-top:18px;border:1px solid var(--jc-n200);border-radius:12px;padding:14px}.jm-client-doc-row>span{width:34px;height:34px;border-radius:9px;background:#FFF0EE;color:#E84A40;display:flex;align-items:center;justify-content:center}.jm-client-doc-row>div{flex:1}.jm-client-doc-row strong,.jm-client-doc-row small{display:block}.jm-client-doc-row small{color:var(--jc-n500);font-size:10px;margin-top:3px}.jm-client-doc-row>b{font:600 13px var(--jc-num)}.jm-client-progress{display:grid;gap:10px;margin-top:16px}.jm-client-progress span{font-size:12px;color:var(--jc-n500)}.jm-client-progress .done{color:#087956}.jm-client-progress .active{font-weight:600;color:var(--jc-n900)}
.jm-client-project-card{display:grid;grid-template-columns:360px 1fr;gap:22px}.jm-client-project-card img{width:100%;aspect-ratio:16/10;object-fit:contain;background:var(--jc-n50);border-radius:12px}.jm-client-project-card small{color:var(--jc-n500)}.jm-client-project-card h2{font-size:24px;margin:8px 0}.jm-client-project-card p{font-size:14px;line-height:1.6;color:var(--jc-n600)}.jm-client-project-card a{color:#087956;text-decoration:none;font-size:13px}.jm-client-request-head{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--jc-n200);padding-bottom:14px;margin-bottom:4px}.jm-client-request-head span{color:var(--jc-n500);font-size:12px}.jm-client-line-list>div{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--jc-n200);padding:14px 0}.jm-client-line-list>div:last-child{border-bottom:0}.jm-client-line-list strong,.jm-client-line-list small{display:block}.jm-client-line-list small{font-size:10px;color:var(--jc-n500);margin-top:3px}.jm-client-line-list b{font:600 13px var(--jc-num)}.jm-client-finance small{color:var(--jc-n500)}.jm-client-finance h2{font-size:26px;margin:8px 0}.jm-client-finance p{font-size:13px;color:var(--jc-n600);max-width:650px}
.jm-client-proforma-list{display:grid;gap:8px}.jm-client-proforma-list a{display:grid;grid-template-columns:38px 1fr auto auto;align-items:center;gap:12px;border:1px solid var(--jc-n200);border-radius:12px;padding:13px;text-decoration:none;color:var(--jc-n900)}.jm-client-proforma-list>a>span{width:34px;height:34px;border-radius:9px;background:#FFF0EE;color:#E84A40;display:flex;align-items:center;justify-content:center}.jm-client-proforma-list strong,.jm-client-proforma-list small{display:block}.jm-client-proforma-list small{font-size:10px;color:var(--jc-n500);margin-top:3px}.jm-client-proforma-list b{font:600 13px var(--jc-num)}.jm-client-proforma-list em{font-style:normal;font-size:10px;padding:4px 8px;border-radius:999px;background:var(--jc-green50);color:#087956}.jm-client-proforma-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.jm-client-dark-btn{background:#0E875F;color:#fff;text-decoration:none;border-radius:10px;min-height:40px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;transition:.16s ease}.jm-client-dark-btn:hover{background:#0B6D4E;color:#fff}.jm-client-ready{display:flex;gap:12px;background:#EAF7F0;border:1px solid #BCE4D2;color:#087956;border-radius:14px;padding:16px 18px;margin-bottom:20px}.jm-client-ready strong,.jm-client-ready span{display:block}.jm-client-ready strong{font-size:13px}.jm-client-ready span{font-size:12px;color:var(--jc-n600);margin-top:3px}
.jm-client-proforma-doc{background:#fff;border:1px solid var(--jc-n200);border-radius:18px;padding:38px;box-shadow:0 12px 30px rgba(12,22,17,.05)}.jm-client-proforma-doc header{display:flex;justify-content:space-between;gap:30px;padding-bottom:25px;border-bottom:1px solid var(--jc-n200)}.jm-client-proforma-doc header img{display:block;height:34px;margin-bottom:20px}.jm-client-proforma-doc header strong{font-size:13px}.jm-client-proforma-doc header p,.jm-client-proforma-doc header small{font-size:11px;line-height:1.65;color:var(--jc-n600)}.jm-client-proforma-doc header>div:last-child{text-align:right}.jm-client-proforma-doc header>div:last-child>small{letter-spacing:.08em}.jm-client-proforma-doc header h2{font:600 22px var(--jc-num);margin:7px 0}.jm-client-parties{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:28px 0}.jm-client-parties>div{display:flex;flex-direction:column;gap:5px}.jm-client-parties small{font-size:10px;letter-spacing:.06em;color:var(--jc-n500)}.jm-client-parties strong{font-size:13px}.jm-client-parties span{font-size:11px;color:var(--jc-n600)}.jm-client-proforma-doc table{width:100%;border:1px solid var(--jc-n200);border-collapse:separate;border-spacing:0;border-radius:12px;overflow:hidden}.jm-client-proforma-doc th{background:var(--jc-n50);color:var(--jc-n500);font-size:10px;font-weight:500;text-align:left;padding:12px 14px}.jm-client-proforma-doc td{padding:13px 14px;border-top:1px solid var(--jc-n200);font-size:12px}.jm-client-proforma-doc th:not(:first-child),.jm-client-proforma-doc td:not(:first-child){text-align:right;font-family:var(--jc-num)}.jm-client-pf-total{width:min(430px,100%);margin:24px 0 0 auto;display:grid;grid-template-columns:1fr auto;gap:9px 20px;align-items:center}.jm-client-pf-total span{font-size:12px;color:var(--jc-n600)}.jm-client-pf-total b{font:500 12px var(--jc-num)}.jm-client-pf-total hr{grid-column:1/-1;border:0;border-top:1px solid var(--jc-n200);width:100%}.jm-client-pf-total strong{font:600 23px var(--jc-num)}.jm-client-support{margin-top:28px}.jm-client-support h2{font-size:18px}.jm-client-support>p{font-size:13px;color:var(--jc-n600)}.jm-client-support>div{display:grid;grid-template-columns:1fr 1fr;gap:16px}.jm-client-support article{background:#fff;border:1px solid var(--jc-n200);border-radius:16px;padding:22px}.jm-client-support h3{font-size:16px}.jm-client-support article>strong{color:#087956;font-size:13px}.jm-client-support article p{font-size:12px;color:var(--jc-n600);line-height:1.55}
.jm-client-form{display:grid;gap:16px;max-width:760px}.jm-client-form label{font-size:12px;font-weight:500}.jm-client-form input{display:block;width:100%;height:46px;border:1px solid var(--jc-n200);border-radius:10px;margin-top:7px;padding:0 12px}.jm-client-form button{justify-self:start;min-height:42px;border:0;border-radius:10px;background:var(--jc-green);color:#fff;padding:0 18px;font-weight:600}.jm-client-login-body{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.jm-client-login{width:min(460px,100%);background:#fff;border:1px solid var(--jc-n200);border-radius:20px;padding:30px;box-shadow:0 12px 32px rgba(12,22,17,.08)}.jm-client-login>img{height:32px}.jm-client-login h1{font-size:25px;margin:24px 0 0}.jm-client-login>p{font-size:13px;color:var(--jc-n600)}.jm-client-login label{display:block;font-size:12px;margin-top:14px}.jm-client-login input[type=text],.jm-client-login input[type=password]{width:100%;height:44px;border:1px solid var(--jc-n200);border-radius:10px;margin-top:6px;padding:0 12px}.jm-client-login input[type=submit]{width:100%;height:44px;border:0;border-radius:10px;background:var(--jc-green);color:#fff;font-weight:600;margin-top:18px}.jm-client-reset{display:block;text-align:center;margin-top:15px;font-size:11px;color:#087956;text-decoration:none}
@media(max-width:1000px){.jm-client-sidebar{transform:translateX(-100%);transition:.2s ease}.jm-client-sidebar.open{transform:none}.jm-client-main{margin-left:0}.jm-client-menu{display:block}.jm-client-stats{grid-template-columns:1fr 1fr}.jm-client-grid{grid-template-columns:1fr}.jm-client-project-card{grid-template-columns:1fr}.jm-client-content{padding:24px 20px 60px}}
@media(max-width:650px){.jm-client-stats{grid-template-columns:1fr}.jm-client-proforma-list a{grid-template-columns:38px 1fr}.jm-client-proforma-list b,.jm-client-proforma-list em{grid-column:2}.jm-client-proforma-doc{padding:20px 14px;overflow-x:auto}.jm-client-proforma-doc header{flex-direction:column}.jm-client-proforma-doc header>div:last-child{text-align:left}.jm-client-parties,.jm-client-support>div{grid-template-columns:1fr}.jm-client-proforma-head{flex-direction:column}.jm-client-dark-btn{align-self:flex-start}.jm-client-topbar{padding-inline:14px}.jm-client-logout{display:none}}

.jm-client-login-button{display:flex;align-items:center;justify-content:center;min-height:44px;margin-top:14px;padding:0 16px;border-radius:10px;background:#0E875F;color:#fff!important;text-decoration:none;font:500 14px Poppins,Arial,sans-serif}.jm-client-login-button:hover{background:#0B6D4E}

/* V3.4 language selector + RTL */
.jm-client-lang{display:flex;align-items:center;border:1px solid #E4E8E6;border-radius:999px;padding:3px;background:#fff}.jm-client-lang a{min-width:38px;height:30px;padding:0 9px;border-radius:999px;display:flex;align-items:center;justify-content:center;text-decoration:none;color:#5A645F;font-size:12px;font-weight:600}.jm-client-lang a.active{background:#ECF8F3;color:#0E875F}
[dir="rtl"] .jm-client-app,[dir="rtl"] .jm-client-content,[dir="rtl"] .jm-client-sidebar{font-family:"IBM Plex Sans Arabic",Tahoma,Arial,sans-serif}[dir="rtl"] .jm-client-sidebar{right:0;left:auto}[dir="rtl"] .jm-client-main{margin-left:0;margin-right:240px}[dir="rtl"] .jm-client-panel-head,[dir="rtl"] .jm-client-request-head,[dir="rtl"] .jm-client-proforma-head,[dir="rtl"] .jm-client-topbar{direction:rtl}
@media(max-width:900px){[dir="rtl"] .jm-client-main{margin-right:0}[dir="rtl"] .jm-client-sidebar{transform:translateX(105%)}[dir="rtl"] .jm-client-sidebar.open{transform:translateX(0)}}

/* ======================================================================
   JEMMY PLATFORM V3.7 — CLIENT DASHBOARD MOBILE PRO
   ====================================================================== */
.jm-client-sidebar{will-change:transform}
@media(max-width:1000px){
 .jm-client-sidebar{width:min(84vw,320px);box-shadow:18px 0 50px rgba(23,29,26,.16);padding-top:max(18px,env(safe-area-inset-top,0px))}
 .jm-client-main{width:100%;min-width:0}.jm-client-content{max-width:100%;padding:22px 18px 70px}
 .jm-client-topbar{height:64px;padding:0 16px;gap:10px}.jm-client-menu{width:42px;height:42px;border:1px solid var(--jc-n200);border-radius:11px;display:flex;align-items:center;justify-content:center;background:#fff;font-size:18px}
 .jm-client-lang{display:flex;align-items:center;border:1px solid var(--jc-n200);border-radius:10px;padding:2px}.jm-client-lang a{min-width:36px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:8px;text-decoration:none;color:var(--jc-n600);font-size:11px}.jm-client-lang a.active{background:var(--jc-green50);color:#087956;font-weight:600}
 .jm-client-pagehead h1,.jm-client-proforma-head h1{font-size:25px}.jm-client-pagehead{margin-bottom:18px}
 .jm-client-stats{gap:12px}.jm-client-stats>div,.jm-client-panel{padding:17px;border-radius:14px}
 .jm-client-grid{gap:12px;margin-top:12px}.jm-client-project-card{gap:14px}.jm-client-project-card img{max-height:300px}
 .jm-client-proforma-list a{min-height:64px}
}
@media(max-width:650px){
 .jm-client-content{padding:18px 14px calc(56px + env(safe-area-inset-bottom,0px))}
 .jm-client-topbar{padding-inline:12px}.jm-client-topbar>div{display:none}.jm-client-bell{width:40px;height:40px}.jm-client-avatar{width:36px;height:36px;flex:none}
 .jm-client-pagehead h1,.jm-client-proforma-head h1{font-size:23px;line-height:1.25}.jm-client-pagehead p,.jm-client-proforma-head p{font-size:12px;line-height:1.55}
 .jm-client-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}.jm-client-stats>div{padding:14px}.jm-client-stats strong.num{font-size:17px}
 .jm-client-grid{display:block}.jm-client-grid>.jm-client-panel+.jm-client-panel{margin-top:12px}
 .jm-client-project-card{display:block}.jm-client-project-card img{margin-bottom:16px}.jm-client-project-card h2{font-size:21px}.jm-client-project-card p{font-size:13px}
 .jm-client-request-head{flex-direction:column;gap:6px}.jm-client-line-list>div{gap:10px}.jm-client-line-list b{white-space:nowrap}
 .jm-client-proforma-list a{grid-template-columns:36px minmax(0,1fr)!important;gap:10px;padding:12px}.jm-client-proforma-list b,.jm-client-proforma-list em{grid-column:2!important;justify-self:start}.jm-client-proforma-list b{font-size:12px}.jm-client-proforma-list em{margin-top:-4px}
 .jm-client-proforma-head{gap:12px}.jm-client-dark-btn{width:100%;justify-content:center;min-height:44px}
 .jm-client-ready{padding:14px;border-radius:12px}.jm-client-proforma-doc{padding:16px 12px;border-radius:14px;box-shadow:none}.jm-client-proforma-doc header{gap:14px;padding-bottom:18px}.jm-client-proforma-doc table{min-width:620px}.jm-client-parties{gap:12px;padding:18px 0}.jm-client-parties>div{padding:12px;border-radius:10px;background:var(--jc-n50)}
 .jm-client-support{gap:12px}.jm-client-support>div{gap:12px}.jm-client-panel-head{align-items:flex-start;gap:10px}.jm-client-doc-row{padding:12px}
}
@media(max-width:390px){
 .jm-client-stats{grid-template-columns:1fr}.jm-client-content{padding-inline:12px}.jm-client-topbar{gap:7px;padding-inline:9px}.jm-client-lang a{min-width:32px}.jm-client-bell{width:38px;height:38px}.jm-client-menu{width:38px;height:38px}
}
[dir="rtl"] .jm-client-sidebar{inset:0 0 0 auto;border-right:0;border-left:1px solid var(--jc-n200)}
@media(max-width:1000px){[dir="rtl"] .jm-client-sidebar{box-shadow:-18px 0 50px rgba(23,29,26,.16)}}

/* =========================================================
   JEMMY 3.7.16 — CONNEXION CLIENT PAR TELEPHONE
   Le téléphone identifie le dossier; un code e-mail protège l'accès.
   ========================================================= */
.jm-client-login-brand{display:inline-flex;align-items:center;text-decoration:none}
.jm-client-login-brand img{display:block;height:30px;width:auto}
.jm-client-login-form{display:grid;gap:14px;margin-top:20px}
.jm-client-login-form label{display:block;font-size:12px;font-weight:500;color:var(--jc-n900)}
.jm-client-login-form input[type=tel],
.jm-client-login-form input[type=text]{width:100%;height:46px;border:1px solid var(--jc-n200);border-radius:10px;background:#fff;padding:0 12px;font:400 14px var(--jc-font);outline:none}
.jm-client-login-form input:focus{border-color:#0E875F;box-shadow:0 0 0 3px rgba(14,135,95,.09)}
.jm-client-phone-login{display:grid;grid-template-columns:62px minmax(0,1fr);margin-top:7px;border:1px solid var(--jc-n200);border-radius:10px;overflow:hidden;background:#fff}
.jm-client-phone-login:focus-within{border-color:#0E875F;box-shadow:0 0 0 3px rgba(14,135,95,.09)}
.jm-client-phone-login span{display:flex;align-items:center;justify-content:center;border-right:1px solid var(--jc-n200);font:500 13px var(--jc-num);color:var(--jc-n600);background:var(--jc-n50)}
.jm-client-phone-login input[type=tel]{border:0!important;border-radius:0!important;box-shadow:none!important;margin:0!important}
.jm-client-login-form button{width:100%;height:46px;border:0;border-radius:10px;background:#0E875F;color:#fff;font:600 13px var(--jc-font);cursor:pointer}
.jm-client-login-form button:hover{background:#0B6D4E}
.jm-client-code-input{text-align:center;font:600 22px/1 var(--jc-num)!important;letter-spacing:.22em!important}
.jm-client-login-help{display:block;margin-top:14px;color:var(--jc-n500);font-size:10.5px;line-height:1.55}
[dir="rtl"] .jm-client-phone-login span{border-right:0;border-left:1px solid var(--jc-n200)}

@media(max-width:650px){
  .jm-client-login-body{padding:16px}
  .jm-client-login{padding:24px 18px;border-radius:18px}
  .jm-client-login h1{font-size:23px}
  .jm-client-login-brand img{height:27px}
}
