
:root{--ja-green:#0E875F;--ja-green-50:#ECF8F3;--ja-green-500:#239F7B;--ja-n25:#FBFCFB;--ja-n50:#F7F8F7;--ja-n100:#F1F3F2;--ja-n200:#E4E8E6;--ja-n300:#D2D8D5;--ja-n500:#7B8580;--ja-n600:#5A645F;--ja-n800:#2C3431;--ja-n900:#171D1A;--ja-font:Poppins,Arial,sans-serif;--ja-num:Inter,Arial,sans-serif}
*{box-sizing:border-box}.jm-admin-body,.jm-admin-auth-body{margin:0;background:var(--ja-n100);font-family:var(--ja-font);color:var(--ja-n900)}
.jm-admin-app{min-height:100vh}.jm-admin-sidebar{position:fixed;left:0;top:0;bottom:0;width:248px;background:#fff;border-right:1px solid var(--ja-n200);padding:18px 14px;display:flex;flex-direction:column;z-index:100}.jm-admin-brand{height:48px;display:flex;align-items:center;padding:0 8px}.jm-admin-brand img{max-width:176px;max-height:30px}.jm-side-label{font:600 11px/16px var(--ja-font);letter-spacing:.08em;color:var(--ja-n500);padding:18px 10px 7px}.jm-admin-sidebar nav{display:grid;gap:2px}.jm-admin-sidebar nav a{display:flex;align-items:center;min-height:40px;padding:0 10px;border-radius:10px;text-decoration:none;color:var(--ja-n600);font-size:13px}.jm-admin-sidebar nav a:hover{background:var(--ja-n50);color:var(--ja-n900)}.jm-admin-sidebar nav a.active{background:var(--ja-green-50);color:#0B6D4E;font-weight:600}.jm-sidebar-foot{margin-top:auto;border-top:1px solid var(--ja-n200);padding:14px 8px 0}.jm-user-mini{display:flex;align-items:center;gap:10px}.jm-user-mini>span{width:34px;height:34px;border-radius:50%;background:var(--ja-green-50);color:#0B6D4E;display:flex;align-items:center;justify-content:center;font-weight:600}.jm-user-mini strong,.jm-user-mini small{display:block}.jm-user-mini strong{font-size:12px}.jm-user-mini small{font-size:10px;color:var(--ja-n500);margin-top:2px}.jm-logout{display:block;margin-top:10px;color:#B6322A;text-decoration:none;font-size:12px}
.jm-admin-main{margin-left:248px;min-height:100vh}.jm-admin-topbar{position:sticky;top:0;z-index:90;height:64px;background:#fff;border-bottom:1px solid var(--ja-n200);display:flex;align-items:center;padding:0 28px;gap:18px}.jm-topbar-search{width:260px;height:34px;border:1px solid var(--ja-n200);border-radius:10px;display:flex;align-items:center;justify-content:space-between;padding:0 10px;color:var(--ja-n500);font-size:12px}.jm-topbar-search kbd{background:var(--ja-n50);border:1px solid var(--ja-n200);border-radius:6px;padding:2px 5px;font:500 10px var(--ja-num)}.jm-topbar-right{margin-left:auto;font-size:12px}.jm-mobile-side-toggle{display:none}
.jm-admin-content{padding:30px;max-width:1500px;margin:0 auto}.jm-admin-pagehead{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.jm-admin-pagehead.compact{margin-bottom:16px}.jm-admin-pagehead h1{font:600 28px/1.2 var(--ja-font);letter-spacing:-.025em;margin:0}.jm-admin-pagehead h2{font:600 20px/1.3 var(--ja-font);margin:0}.jm-admin-pagehead p{font-size:13px;color:var(--ja-n600);margin:7px 0 0}.jm-backlink{display:inline-block;margin-bottom:10px;color:#0B6D4E;text-decoration:none;font-size:12px}
.jm-admin-primary{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 16px;border:1px solid var(--ja-green);border-radius:10px;background:var(--ja-green);color:#fff;text-decoration:none;font:500 13px var(--ja-font);cursor:pointer}.jm-admin-primary:hover{background:#0B6D4E}.jm-admin-alert{padding:12px 14px;border-radius:10px;margin-bottom:18px;font-size:13px}.jm-admin-alert.success{background:#EAF7F0;color:#0B6D4E;border:1px solid #CFEADB}.jm-admin-alert.danger{background:#FFF0EE;color:#A12A24;border:1px solid #FFD8D3}.jm-admin-alert.neutral{background:#fff;border:1px solid var(--ja-n200);color:var(--ja-n600)}
.jm-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.jm-stat-card{background:#fff;border:1px solid var(--ja-n200);border-radius:16px;padding:20px;text-decoration:none;color:var(--ja-n900);box-shadow:0 1px 2px rgba(12,22,17,.03)}.jm-stat-card span,.jm-stat-card small{display:block;color:var(--ja-n500);font-size:12px}.jm-stat-card strong{display:block;font:600 30px var(--ja-num);margin:8px 0 4px}.jm-admin-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}.jm-admin-panel{background:#fff;border:1px solid var(--ja-n200);border-radius:16px;padding:20px}.jm-admin-panel h2{font:600 17px var(--ja-font);margin:0 0 10px}.jm-admin-panel p{font-size:13px;color:var(--ja-n600)}.jm-admin-panel code{display:block;background:var(--ja-n50);border:1px solid var(--ja-n200);border-radius:8px;padding:9px;margin-top:7px;font:12px var(--ja-num)}
.jm-quick-actions{display:grid;gap:8px}.jm-quick-actions a{display:flex;align-items:center;min-height:42px;border:1px solid var(--ja-n200);border-radius:10px;padding:0 12px;text-decoration:none;color:var(--ja-n900);font-size:13px}.jm-quick-actions a:hover{background:var(--ja-n50)}
.jm-admin-table-wrap{background:#fff;border:1px solid var(--ja-n200);border-radius:16px;overflow:auto}.jm-admin-table{width:100%;border-collapse:collapse;min-width:900px}.jm-admin-table th{height:44px;background:var(--ja-n50);color:var(--ja-n500);font:500 11px var(--ja-font);text-align:left;padding:0 16px;border-bottom:1px solid var(--ja-n200)}.jm-admin-table td{height:52px;padding:0 16px;border-bottom:1px solid var(--ja-n200);font-size:12px;color:var(--ja-n600)}.jm-admin-table tr:last-child td{border-bottom:0}.jm-admin-table tbody tr{cursor:pointer}.jm-admin-table tbody tr:hover{background:#FBFCFB}.jm-admin-table td.numeric{font-family:var(--ja-num);font-variant-numeric:tabular-nums;color:var(--ja-n900);font-weight:500}.jm-table-identity{display:flex;align-items:center;gap:10px}.jm-table-identity>span{width:30px;height:30px;border-radius:8px;background:var(--ja-green-50);color:#0B6D4E;display:flex;align-items:center;justify-content:center}.jm-table-identity strong,.jm-table-identity small{display:block}.jm-table-identity strong{font-size:12px;color:var(--ja-n900)}.jm-table-identity small{font-size:10px;color:var(--ja-n500);margin-top:2px}.jm-status-badge{display:inline-flex;align-items:center;padding:3px 8px;border-radius:999px;font-size:10px}.jm-status-badge.success{background:#EAF7F0;color:#0B6D4E}.jm-status-badge.neutral{background:var(--ja-n100);color:var(--ja-n600)}
.jm-editor-form{background:transparent}.jm-editor-tabs{display:flex;gap:14px;overflow:auto;border-bottom:1px solid var(--ja-n200);margin-bottom:18px}.jm-editor-tabs button{flex:none;border:0;background:transparent;padding:0 0 12px;color:var(--ja-n600);font:500 12px var(--ja-font);cursor:pointer;border-bottom:2px solid transparent}.jm-editor-tabs button.active{color:#0B6D4E;border-bottom-color:var(--ja-green)}.jm-editor-panel{display:none}.jm-editor-panel.active{display:block}.jm-editor-panel>.jm-admin-panel,.jm-editor-panel>.jm-form-grid{background:#fff;border:1px solid var(--ja-n200);border-radius:16px;padding:22px}.jm-editor-form.single-panel>.jm-admin-panel{background:#fff;border:1px solid var(--ja-n200);border-radius:16px;padding:22px}.jm-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.jm-form-grid .span-2{grid-column:1/-1}.jm-form-grid label,.jm-admin-panel>label{font:500 12px/16px var(--ja-font);color:var(--ja-n800)}input,textarea,select{font-family:var(--ja-font)}.jm-form-grid input,.jm-form-grid textarea,.jm-form-grid select,.jm-admin-panel input,.jm-admin-panel select{width:100%;border:1px solid var(--ja-n200);border-radius:10px;background:#fff;padding:10px 12px;margin-top:7px;font-size:13px;color:var(--ja-n900);outline:none}.jm-form-grid input:focus,.jm-form-grid textarea:focus,.jm-form-grid select:focus{border-color:var(--ja-green-500);box-shadow:0 0 0 2px rgba(35,159,123,.12)}.jm-form-grid small{display:block;margin-top:5px;color:var(--ja-n500);font-size:10px}.jm-editor-actions{position:sticky;bottom:0;display:flex;justify-content:flex-end;background:rgba(241,243,242,.96);border-top:1px solid var(--ja-n200);padding:12px 0;margin-top:18px}
.jm-config-toggle-card{background:#fff;border:1px solid var(--ja-n200);border-radius:16px;padding:20px;display:grid;grid-template-columns:1fr auto auto;gap:18px;align-items:center;margin-bottom:18px}.jm-config-toggle-card p{margin:5px 0 0;color:var(--ja-n600);font-size:12px}.jm-switch-row{display:flex!important;align-items:center;gap:8px;font-size:12px!important}.jm-switch-row input{width:auto!important;margin:0!important}.jm-check-list{display:grid;gap:8px;max-height:380px;overflow:auto}.jm-check-list label{display:flex;align-items:center;gap:8px;font-size:12px}.jm-check-list input{width:auto;margin:0}.jm-fin-toggle-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.jm-fin-toggle-list label{display:flex;align-items:center;gap:8px;border:1px solid var(--ja-n200);border-radius:10px;padding:12px;font-size:12px}.jm-fin-toggle-list input{width:auto;margin:0}.jm-image-preview{display:block;max-width:480px;width:100%;border-radius:14px;margin:0 0 14px}.jm-pack-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.jm-pack-admin-grid>a{text-decoration:none;color:inherit}.jm-card-admin-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.jm-mini-admin-card{background:#fff;border:1px solid var(--ja-n200);border-radius:14px;padding:16px;text-decoration:none;color:var(--ja-n900);display:flex;flex-direction:column;gap:6px}.jm-mini-admin-card span{font-size:11px;color:var(--ja-n500)}.jm-mini-admin-card b{font:600 16px var(--ja-num)}.jm-pack-builder{display:grid;gap:6px;margin-top:14px}.jm-pack-builder>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--ja-n200);border-radius:10px}.jm-pack-builder strong,.jm-pack-builder small{display:block}.jm-pack-builder strong{font-size:12px}.jm-pack-builder small{font:10px var(--ja-num);color:var(--ja-n500);margin-top:3px}.jm-pack-builder label{display:flex;align-items:center;gap:6px;font-size:11px}.jm-pack-builder input{width:68px;margin:0;padding:7px}.jm-btn-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 13px;border:1px solid var(--ja-n200);border-radius:10px;text-decoration:none;color:var(--ja-n900);background:#fff;font-size:12px}
.jm-auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.jm-auth-card{width:min(480px,100%);background:#fff;border:1px solid var(--ja-n200);border-radius:20px;box-shadow:0 12px 32px rgba(12,22,17,.08);padding:32px}.jm-auth-logo img{height:30px;max-width:210px}.jm-auth-icon{width:44px;height:44px;border-radius:12px;background:var(--ja-green-50);color:#0B6D4E;display:flex;align-items:center;justify-content:center;margin-top:28px;font-weight:700}.jm-auth-card h1{font:600 26px var(--ja-font);margin:16px 0 0}.jm-auth-card>p{font-size:13px;color:var(--ja-n600);margin:8px 0 22px}.jm-auth-form{display:grid;gap:14px}.jm-auth-form label{font-size:12px;font-weight:500}.jm-auth-form input[type=text],.jm-auth-form input[type=password]{width:100%;height:44px;border:1px solid var(--ja-n200);border-radius:10px;padding:0 12px;margin-top:6px}.jm-auth-form .jm-check{display:flex;align-items:center;gap:7px}.jm-auth-form .jm-check input{width:auto;margin:0}.jm-auth-form .jm-admin-primary{width:100%;height:44px}.jm-auth-foot{border-top:1px solid var(--ja-n200);padding-top:16px;margin-top:20px;color:var(--ja-n500);font-size:10px;text-align:center}
@media(max-width:900px){.jm-admin-sidebar{transform:translateX(-100%);transition:.2s ease}.jm-admin-sidebar.open{transform:none}.jm-admin-main{margin-left:0}.jm-mobile-side-toggle{display:block}.jm-stat-grid,.jm-admin-grid-2{grid-template-columns:1fr}.jm-config-toggle-card{grid-template-columns:1fr}.jm-form-grid{grid-template-columns:1fr}.jm-form-grid .span-2{grid-column:auto}.jm-admin-content{padding:20px}.jm-admin-pagehead{align-items:stretch;flex-direction:column}}

/* JEMMY Admin V2 additions */
.jm-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.jm-inline-status{margin:0}.jm-inline-status select{height:30px;border:1px solid var(--ja-n200);border-radius:8px;background:#fff;padding:0 8px;font:500 11px var(--ja-font);color:var(--ja-n800)}
.jm-admin-table small{color:var(--ja-n500);font-size:10px}.jm-admin-panel .jm-hairline{height:1px;background:var(--ja-n200);margin:20px 0}.jm-admin-panel input[type=file]{padding:10px;background:var(--ja-n50)}
@media(max-width:1200px){.jm-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.jm-stat-grid{grid-template-columns:1fr}}


/* V3 — Proforma CRM */
.jm-crm-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.jm-crm-stat-grid>div{background:#fff;border:1px solid var(--ja-n200);border-radius:14px;padding:16px}.jm-crm-stat-grid span,.jm-crm-stat-grid strong{display:block}.jm-crm-stat-grid span{font-size:11px;color:var(--ja-n500)}.jm-crm-stat-grid strong{font:600 25px var(--ja-num);margin-top:6px}.jm-admin-ref{font-weight:600;color:#0B6D4E;text-decoration:none}.jm-table-open{color:#0B6D4E;text-decoration:none;font-size:11px;white-space:nowrap}.jm-crm-status{display:inline-flex;padding:4px 8px;border-radius:999px;background:var(--ja-n100);font-size:10px}.jm-crm-status.ouverte,.jm-crm-status.convertie{background:#EAF7F0;color:#0B6D4E}.jm-crm-status.archivée{background:#ECEFEE;color:#5A645F}.jm-crm-status.en-négociation{background:#FFF6DE;color:#8C6500}.jm-crm-head-actions{display:flex;gap:8px}.jm-crm-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px}.jm-crm-summary-card{display:grid;grid-template-columns:1fr 1fr;gap:20px}.jm-crm-summary-card>div{display:flex;flex-direction:column;gap:5px}.jm-crm-summary-card span{font-size:10px;color:var(--ja-n500);letter-spacing:.06em}.jm-crm-summary-card strong{font-size:14px}.jm-crm-summary-card small{font-size:11px;color:var(--ja-n600)}.jm-crm-lines{margin-top:18px}.jm-crm-lines table{width:100%;border-collapse:collapse}.jm-crm-lines th{font-size:10px;color:var(--ja-n500);font-weight:500;text-align:left;border-bottom:1px solid var(--ja-n200);padding:10px}.jm-crm-lines td{font-size:12px;border-bottom:1px solid var(--ja-n200);padding:12px 10px}.jm-crm-lines th:not(:first-child),.jm-crm-lines td:not(:first-child){text-align:right;font-family:var(--ja-num)}.jm-crm-total{display:flex;justify-content:flex-end;align-items:center;gap:28px;padding-top:18px}.jm-crm-total span{font-size:12px;color:var(--ja-n600)}.jm-crm-total strong{font:600 24px var(--ja-num)}.jm-crm-detail-grid aside{display:grid;gap:18px;align-content:start}.jm-crm-detail-grid aside select{width:100%;height:42px;border:1px solid var(--ja-n200);border-radius:10px;margin-top:8px}.jm-crm-timeline>div{display:flex;gap:12px;position:relative;padding:9px 0}.jm-crm-timeline i{width:11px;height:11px;border-radius:50%;background:#7861D9;margin-top:4px;flex:none}.jm-crm-timeline i.green{background:#0E875F}.jm-crm-timeline i.gold{background:#C88A15}.jm-crm-timeline span{display:flex;flex-direction:column;gap:3px}.jm-crm-timeline strong{font-size:12px}.jm-crm-timeline small{font-size:10px;color:var(--ja-n500)}
@media(max-width:1000px){.jm-crm-stat-grid{grid-template-columns:1fr 1fr}.jm-crm-detail-grid{grid-template-columns:1fr}.jm-crm-head-actions{flex-wrap:wrap}}
@media(max-width:600px){.jm-crm-stat-grid,.jm-crm-summary-card{grid-template-columns:1fr}}

/* V3.4 bilingual editor helpers */
.jm-lang-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.jm-lang-admin-grid>div{border:1px solid #E4E8E6;border-radius:14px;padding:18px;background:#FBFCFB}.jm-lang-admin-grid h3,.jm-ar-panel h2,.jm-ar-panel h3{margin:0 0 14px}.jm-ar-panel{margin-top:18px;border:1px solid #DCEBE5;background:#F8FCFA;border-radius:14px;padding:18px}.jm-small-logo{max-width:150px;max-height:70px;object-fit:contain;display:block;margin:10px 0}
@media(max-width:760px){.jm-lang-admin-grid{grid-template-columns:1fr}}

/* ======================================================================
   JEMMY PLATFORM V3.7 — ADMIN DASHBOARD MOBILE PRO
   ====================================================================== */
@media(max-width:900px){
 .jm-admin-sidebar{width:min(86vw,320px);box-shadow:18px 0 48px rgba(23,29,26,.18);will-change:transform}
 .jm-admin-topbar{min-height:64px;padding-inline:14px;gap:10px}
 .jm-mobile-side-toggle{width:42px;height:42px;border:1px solid var(--ja-n200);border-radius:11px;background:#fff;font-size:18px}
 .jm-admin-content{padding:20px 16px 64px;max-width:100%;overflow:hidden}
 .jm-admin-pagehead{gap:12px;margin-bottom:18px}.jm-admin-pagehead h1{font-size:24px!important}.jm-admin-pagehead .jm-admin-primary{width:100%;min-height:44px}
 .jm-stat-grid,.jm-crm-stat-grid{gap:10px}.jm-stat-grid>div,.jm-crm-stat-grid>div{padding:14px;border-radius:13px}
 .jm-admin-panel,.jm-editor-panel>.jm-admin-panel,.jm-editor-panel>.jm-form-grid,.jm-editor-form.single-panel>.jm-admin-panel{border-radius:14px;padding:16px}
 .jm-editor-tabs{margin-inline:-16px;padding-inline:16px;scroll-padding-inline:16px;scroll-snap-type:x proximity;scrollbar-width:none}.jm-editor-tabs::-webkit-scrollbar{display:none}.jm-editor-tabs button{scroll-snap-align:start;min-height:42px}
 .jm-editor-actions{margin-inline:-16px;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));z-index:20}.jm-editor-actions .jm-admin-primary{width:100%;min-height:44px}
 .jm-admin-table-wrap,.jm-admin-panel:has(.jm-admin-table),.jm-crm-lines{overflow-x:auto;-webkit-overflow-scrolling:touch}
 .jm-admin-table,.jm-crm-lines table{min-width:720px}
 .jm-pack-admin-grid,.jm-card-admin-list{grid-template-columns:1fr}.jm-config-toggle-card{padding:16px}
 .jm-image-preview{max-width:100%}
}
@media(max-width:600px){
 .jm-admin-content{padding:16px 12px 58px}.jm-admin-pagehead h1{font-size:22px!important}
 .jm-stat-grid,.jm-crm-stat-grid{grid-template-columns:1fr!important}.jm-crm-head-actions{display:grid;width:100%}.jm-crm-head-actions>*{width:100%}
 .jm-form-grid{gap:12px}.jm-form-grid input,.jm-form-grid textarea,.jm-form-grid select,.jm-admin-panel input,.jm-admin-panel select{font-size:16px;padding:11px 12px}
 .jm-lang-admin-grid>div,.jm-ar-panel{padding:14px;border-radius:12px}.jm-pack-builder>div{align-items:flex-start;flex-direction:column}.jm-pack-builder label{width:100%;justify-content:space-between}.jm-pack-builder input{width:84px}
 .jm-auth-shell{padding:14px}.jm-auth-card{padding:24px 18px;border-radius:18px}.jm-auth-card h1{font-size:23px}.jm-auth-form input[type=text],.jm-auth-form input[type=password]{height:48px;font-size:16px}
}

/* JEMMY testimonial media previews */
.jm-upload-preview{display:block;margin-top:10px}.jm-upload-preview img{display:block;max-width:220px;max-height:120px;object-fit:cover;border:1px solid #E4E8E6;border-radius:10px;background:#F7F8F7}.jm-avatar-preview img{width:64px;height:64px;border-radius:50%;object-fit:cover}.jm-admin-danger{border:1px solid #E4E8E6;background:#fff;color:#B42318;border-radius:10px;min-height:42px;padding:0 16px;font:600 13px var(--jm-font);cursor:pointer}

/* V3.7.6 - Contact admin */
.jm-contact-admin-grid{align-items:start}.jm-admin-subhead{margin-top:28px}.jm-contact-message-body{font-size:15px;line-height:1.75;color:#39443F;white-space:normal}.jm-contact-status-form{display:flex;flex-direction:column;gap:14px;margin-top:18px}.jm-contact-status-form label{display:flex;flex-direction:column;gap:7px;font-weight:600}.jm-contact-status-form select{min-height:44px;border:1px solid #DDE3E0;border-radius:10px;padding:0 12px;background:#fff}
