.jcci-app{max-width:1200px;margin:24px auto;font-family:Arial,sans-serif;color:#162033}.jcci-hero{background:linear-gradient(135deg,#10213f,#1e66d0);color:#fff;border-radius:18px;padding:24px;margin-bottom:16px}.jcci-hero h1{margin:0 0 6px;font-size:28px;color:#fff!important}.jcci-hero p{margin:0;opacity:.9}.jcci-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.jcci-tabs button,.jcci-btn{border:0;border-radius:10px;padding:10px 14px;background:#e9eef8;cursor:pointer;font-weight:700}.jcci-tabs button.active,.jcci-btn.primary{background:#1e66d0;color:#fff}.jcci-btn.danger{background:#ffe1e1;color:#9b1111}.jcci-panel{display:none;background:#fff;border:1px solid #e1e6ef;border-radius:16px;padding:18px;box-shadow:0 8px 28px rgba(20,40,80,.08)}.jcci-panel.active{display:block}.jcci-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.jcci-card{border:1px solid #e3e9f3;border-radius:14px;padding:14px;background:#fbfcff}.jcci-field{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.jcci-field label{font-weight:700}.jcci-field input,.jcci-field select,.jcci-field textarea{border:1px solid #cfd8e6;border-radius:9px;padding:10px;font-size:14px}.jcci-table-wrap{overflow:auto;max-height:520px;border:1px solid #e1e6ef;border-radius:12px}.jcci-table{width:100%;border-collapse:collapse;font-size:13px}.jcci-table th{position:sticky;top:0;background:#f2f6ff;z-index:2}.jcci-table th,.jcci-table td{border:1px solid #e1e6ef;padding:7px;min-width:120px}.jcci-table td[contenteditable=true]{background:#fff}.jcci-warn{background:#fff5d6;border:1px solid #ffd66b;padding:10px;border-radius:10px;margin:10px 0}.jcci-error{background:#ffe7e7;border:1px solid #ff9c9c;padding:10px;border-radius:10px;margin:10px 0}.jcci-ok{background:#e8fff0;border:1px solid #9be1b0;padding:10px;border-radius:10px;margin:10px 0}.jcci-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.jcci-small{font-size:12px;color:#56627a}.jcci-map{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.jcci-list-row{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf1f7;padding:8px 0}.jcci-badge{background:#eef4ff;border-radius:999px;padding:4px 8px;font-size:12px}@media(max-width:800px){.jcci-grid,.jcci-map{grid-template-columns:1fr}.jcci-table th,.jcci-table td{min-width:150px}}
.jcci-pdf-learn{max-height:520px;overflow:auto;margin-top:12px;border:1px solid #e5e7eb;border-radius:12px;background:#fff}.jcci-cell-pick{margin:2px;padding:6px 8px;border:1px solid #d1d5db;border-radius:8px;background:#fff;cursor:pointer}.jcci-cell-pick:hover{background:#eef6ff;border-color:#2563eb}.jcci-cell-pick.jcci-learned{background:#dbeafe;border-color:#1d4ed8;font-weight:700}.jcci-first-row td{background:#fff7ed!important}.jcci-actions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.jcci-pdf-visual-help{background:#eef6ff;border:1px solid #bfdbfe;border-radius:10px;padding:10px;margin:12px 0;color:#1e3a8a}.jcci-pdf-viewer{max-height:720px;overflow:auto;border:1px solid #dbe3ef;border-radius:14px;background:#f8fafc;padding:12px}.jcci-pdf-page{position:relative;margin:0 auto 18px;background:white;box-shadow:0 8px 24px rgba(15,23,42,.18);overflow:hidden}.jcci-pdf-page canvas{position:absolute;left:0;top:0;width:100%;height:100%;z-index:1}.jcci-pdf-hotspot{position:absolute;z-index:2;overflow:hidden;text-indent:-9999px;background:rgba(255,214,107,.28)!important;border:1px solid rgba(245,158,11,.75)!important;border-radius:3px!important;padding:0!important;margin:0!important;cursor:crosshair}.jcci-pdf-hotspot:hover{background:rgba(37,99,235,.22)!important;border-color:#2563eb!important}.jcci-pdf-hotspot.jcci-learned{background:rgba(29,78,216,.32)!important;border:2px solid #1d4ed8!important}.jcci-pdf-details{margin-top:12px}.jcci-pdf-details summary{cursor:pointer;font-weight:700;color:#1e66d0;margin:8px 0}
.jcci-modal-backdrop{position:fixed;inset:0;background:rgba(9,18,35,.72);z-index:999999;display:flex;align-items:center;justify-content:center;padding:18px}.jcci-modal{width:min(96vw,1600px);height:min(94vh,980px);background:#fff;border-radius:18px;box-shadow:0 24px 80px rgba(0,0,0,.38);display:flex;flex-direction:column;overflow:hidden}.jcci-modal-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e5e7eb;background:#f8fbff}.jcci-modal-head h2{margin:0;font-size:22px}.jcci-modal-close{border:0;background:#e9eef8;border-radius:999px;width:40px;height:40px;font-size:28px;line-height:36px;cursor:pointer}.jcci-modal-body{display:grid;grid-template-columns:360px minmax(0,1fr);gap:0;min-height:0;flex:1}.jcci-template-side{border-right:1px solid #e5e7eb;padding:14px;overflow:auto;background:#fbfcff}.jcci-template-pdf{padding:14px;overflow:auto;min-width:0}.jcci-template-pdf .jcci-pdf-viewer{max-height:none;height:auto;overflow:visible}.jcci-template-fields{display:flex;flex-direction:column;gap:4px}.jcci-pick-empty{border:1px dashed #cbd5e1;border-radius:12px;padding:12px;background:#fff;color:#64748b;margin:10px 0}.jcci-pick-box{border:2px solid #1e66d0;border-radius:14px;padding:12px;background:#eef6ff;margin:10px 0}.jcci-picked-text{font-weight:800;background:#fff;border:1px solid #bfdbfe;border-radius:9px;padding:9px;margin:6px 0 10px;word-break:break-word}.jcci-modal .jcci-pdf-page{margin-left:auto;margin-right:auto}.jcci-modal .jcci-pdf-hotspot{outline:1px solid rgba(245,158,11,.65)}@media(max-width:900px){.jcci-modal-body{grid-template-columns:1fr}.jcci-template-side{border-right:0;border-bottom:1px solid #e5e7eb;max-height:42vh}.jcci-modal{height:96vh}.jcci-modal-backdrop{padding:6px}}
.jcci-context-menu{position:fixed;z-index:1000005;background:#fff;border:1px solid #cbd5e1;border-radius:12px;box-shadow:0 18px 50px rgba(15,23,42,.28);padding:6px;min-width:245px}.jcci-context-menu button{display:block;width:100%;text-align:left;border:0;background:#fff;border-radius:8px;padding:9px 10px;cursor:pointer;font-weight:700;color:#162033}.jcci-context-menu button:hover{background:#eef6ff;color:#1e66d0}.jcci-pdf-hotspot.jcci-zone-selected{background:rgba(34,197,94,.28)!important;border:2px solid #16a34a!important}.jcci-pdf-hotspot.jcci-zone-unused{background:rgba(148,163,184,.22)!important;border:1px dashed #64748b!important;opacity:.65}.jcci-pdf-hotspot.jcci-zone-unused:after{content:'NON UTILISÉ';position:absolute;left:2px;top:2px;text-indent:0;font-size:9px;color:#334155;background:rgba(255,255,255,.82);border-radius:4px;padding:1px 3px}
.jcci-draw-toolbar{border:2px dashed #1e66d0;border-radius:14px;background:#eef6ff;padding:10px;margin:12px 0}.jcci-draw-rect{position:absolute;z-index:5;border:2px dashed #dc2626;background:rgba(220,38,38,.12);pointer-events:none}.jcci-manual-zone{position:absolute;z-index:4;border:2px solid #16a34a;background:rgba(34,197,94,.18);color:#14532d;font-size:10px;font-weight:800;border-radius:4px;overflow:hidden;text-align:left;padding:2px;text-indent:0;cursor:pointer}.jcci-manual-zone:hover{background:rgba(34,197,94,.32);border-color:#15803d}.jcci-modal .jcci-pdf-page{cursor:default}.jcci-modal .jcci-pdf-page .jcci-draw-rect{cursor:crosshair}
.jcci-pending-zone{position:absolute;border:2px dashed #f59e0b;background:rgba(245,158,11,.14);color:#92400e;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:6}
.jcci-draw-toolbar .jcci-btn[disabled]{opacity:.5;cursor:not-allowed}
.jcci-excel-modal .jcci-modal{max-width:96vw;width:96vw;height:92vh}.jcci-excel-map-wrap{max-height:75vh;overflow:auto}.jcci-excel-map-table td{min-width:110px;cursor:pointer;position:relative}.jcci-excel-map-table td:hover{outline:2px solid #2271b1}.jcci-excel-map-table td.mapped{background:#e8f6ed}.jcci-excel-map-table td small{display:block;font-size:10px;color:#2271b1;margin-top:4px}.jcci-field-chip{display:block;width:100%;text-align:left;margin:5px 0;padding:8px;border:1px solid #ddd;border-radius:8px;background:#fff;cursor:pointer}.jcci-field-chip.active{border-color:#2271b1;box-shadow:0 0 0 2px rgba(34,113,177,.15)}.jcci-field-chip.locked{background:#f4fbf6}.jcci-field-chip span{display:block;font-size:12px;color:#666}.jcci-field-chip em{display:inline-block;margin-top:3px;font-size:11px;color:#b32d2e;text-decoration:underline;cursor:pointer}
/* V1.0.44 - mapping Excel cellule par cellule */
.jcci-excel-modal{width:min(98vw,1800px)!important;height:min(96vh,1050px)!important;}
.jcci-excel-modal .jcci-template-pdf{overflow:hidden;display:flex;flex-direction:column;min-width:0;}
.jcci-excel-map-wrap{flex:1;max-height:none!important;height:100%;overflow:auto!important;max-width:100%;}
.jcci-excel-map-table{width:max-content!important;min-width:max-content!important;table-layout:auto;}
.jcci-excel-map-table th,.jcci-excel-map-table td{min-width:130px;max-width:340px;white-space:nowrap;}
.jcci-excel-map-table .jcci-sticky-col{position:sticky;left:0;z-index:4;background:#f8fbff;min-width:70px;max-width:70px;}
.jcci-excel-map-table thead .jcci-sticky-col{z-index:6;}
.jcci-excel-cell.mapped{background:#dcfce7!important;box-shadow:inset 0 0 0 2px #22c55e;}
.jcci-excel-scroll-hint{font-size:12px;color:#475569;background:#eef6ff;border:1px solid #bfdbfe;border-radius:10px;padding:8px;margin-bottom:8px;}
#jcci-excel-rule{width:100%;border:1px solid #cfd8e6;border-radius:9px;padding:10px;font-size:14px;margin-bottom:10px;background:#fff;}
.jcci-check{display:flex;gap:8px;align-items:center;margin:10px 0;font-weight:700;color:#162033}.jcci-check input{width:18px;height:18px}
.jcci-ean-confirm span{font-size:1.25rem;font-weight:800;letter-spacing:.08em;display:inline-block;margin:.25rem 0}
.jcci-ean-confirm span{font-size:1.25rem;font-weight:800;letter-spacing:.08em;display:inline-block;margin:.25rem 0}
.jcci-manual-zone.jcci-zone-article{border:3px solid #2563eb!important;background:rgba(37,99,235,.08)!important;color:#0f3f9d!important;z-index:4}.jcci-manual-zone.jcci-zone-article:before{content:"CONTENEUR ARTICLE";font-weight:800}

/* Aide du mapping PDF repliable, fermee par defaut */
.jcci-help-fold{margin-bottom:10px;padding:0;overflow:hidden;}
.jcci-help-fold>summary{cursor:pointer;padding:12px 14px;list-style:none;user-select:none;}
.jcci-help-fold>summary::-webkit-details-marker{display:none;}
.jcci-help-fold>summary:after{content:"+";float:right;font-weight:700;font-size:18px;line-height:1;}
.jcci-help-fold[open]>summary:after{content:"−";}
.jcci-help-fold-body{padding:0 14px 14px 14px;}
.jcci-review-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;margin-left:6px;border-radius:999px;background:#d63638;color:#fff;font-size:12px;font-weight:700;line-height:20px}
