/* WORLDPARTS Manager V3.10.3 — Pilotage, Sourcing, Réponses fournisseurs & Pays/Villes logistique */
.v3-cockpit-head{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px}.v3-cockpit-head>div,.v3-buckets>div{background:#f7f3ec;border:1px solid #ddd5ca;padding:12px}.v3-cockpit-head span,.v3-buckets span{display:block;font-size:9px;font-weight:900;letter-spacing:.08em;color:#777;text-transform:uppercase}.v3-cockpit-head b{display:block;margin-top:5px;font-size:13px}.v3-next{border-left:4px solid #ff6238;background:#fff0ea;padding:12px 14px;margin:12px 0}.v3-next span{display:block;font-size:9px;font-weight:900;color:#b34425;letter-spacing:.08em}.v3-next b{display:block;margin-top:4px}.v3-workflow{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.v3-stage{display:grid;grid-template-columns:30px 1fr 24px;align-items:center;gap:9px;border:1px solid #d9d3ca;background:#fff;padding:10px}.v3-stage.done{background:#f2f8f4;border-color:#c6dfcf}.v3-stage.pending{background:#faf8f4}.v3-step{width:26px;height:26px;border-radius:50%;background:#252523;color:#fff;display:grid;place-items:center;font-weight:900;font-size:11px}.v3-stage.done .v3-step{background:#2d7650}.v3-stage small{display:block;color:#777;margin-top:2px}.v3-check{font-size:19px;color:#2d7650;font-weight:900}.v3-margin-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.v3-margin-card{border:1px solid #d8d1c6;padding:15px;background:#fff}.v3-margin-card span{display:block;font-size:9px;font-weight:900;letter-spacing:.1em}.v3-margin-card strong{display:block;font-size:27px;margin:5px 0}.v3-margin-card b{font-size:15px}.v3-margin-card small{display:block;color:#777;margin-top:5px}.v3-margin-card.forecast{border-top:4px solid #17324d}.v3-margin-card.actual{border-top:4px solid #ff6238}.v3-actions{flex-wrap:wrap}.v3-ref-block{margin-bottom:18px;border:1px solid #ded8cf;background:#fff}.v3-ref-title{display:flex;justify-content:space-between;align-items:center;padding:11px 13px;background:#f5f1eb}.v3-ref-title small{display:block;color:#777;margin-top:2px}.v3-selected-offer{background:#fff0ea!important}.v3-chip{display:inline-block;padding:3px 6px;margin:2px;font-size:8px;font-weight:900;border-radius:2px}.v3-chip.green{background:#e3f3e9;color:#21603f}.v3-chip.blue{background:#e6eff9;color:#245276}.v3-calc-cards{margin-top:16px}.v3-buckets{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0}.v3-buckets b{display:block;font-size:20px;margin:5px 0}.v3-buckets small{color:#777}.v3-neg{color:#a32929!important}.v3-linkbox{display:grid;grid-template-columns:1fr auto auto;gap:8px;margin:14px 0}.v3-linkbox input{min-width:0}.v3-copilot{background:#f5f1eb;border:1px solid #d7d0c6;padding:16px}.v3-chat{height:430px;overflow:auto;background:#fff;border:1px solid #ddd6cd;padding:15px;display:flex;flex-direction:column;gap:10px}.v3-bot,.v3-user{max-width:78%;padding:11px 13px;line-height:1.45}.v3-bot{background:#f0f0ed;border-left:3px solid #ff6238;align-self:flex-start}.v3-user{background:#17324d;color:#fff;align-self:flex-end}.v3-copilot form{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px}.v3-copilot form input{height:42px}.v3-suggestions{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.v3-suggestions button{border:1px solid #c9c2b8;background:#fff;padding:7px 9px;cursor:pointer;font-size:10px}.v3-path{font-size:10px!important;word-break:break-all}
@media(max-width:900px){.v3-cockpit-head{grid-template-columns:1fr 1fr}.v3-workflow{grid-template-columns:1fr 1fr}.v3-buckets{grid-template-columns:1fr}.v3-margin-grid{grid-template-columns:1fr}.v3-linkbox{grid-template-columns:1fr}.v3-copilot form{grid-template-columns:1fr}}
@media(max-width:600px){.v3-cockpit-head,.v3-workflow{grid-template-columns:1fr}.v3-bot,.v3-user{max-width:94%}}


/* V3.3 - Sourcing fournisseurs */
.v31-source-panel{margin-bottom:14px}
.v31-sourcing-table td{vertical-align:top}
.v31-source-actions{min-width:245px}
.v31-source-actions .btn{display:block;width:100%;margin:0 0 6px}
@media (max-width:900px){.v31-source-actions{min-width:180px}}

/* V3.3 - Sourcing complet / Affaire 360 */
.v32-affair-panel{margin-bottom:14px}.v32-affair-panel .toolbar{padding:14px 18px}.v32-search-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}.v32-search-options>div{border:1px solid #d8d1c6;background:#faf8f4;padding:12px}.v32-search-options b{display:block;margin-bottom:8px}.v32-search-options label{display:inline-flex;align-items:center;gap:6px;margin:4px 14px 4px 0;font-size:11px}.v32-search-options input[type=checkbox]{width:auto}.v32-recommend{border-left:4px solid #ff6238;background:#fff0ea;padding:12px 14px;margin:12px 0}.v32-recommend span{display:block;font-size:9px;font-weight:900;color:#b34425;letter-spacing:.08em}.v32-recommend b{display:block;margin-top:4px}.v32-analysis-cards{margin:12px 0}.v32-scenario{border:1px solid #d8d1c6;background:#fff;margin:12px 0 18px}.v32-scenario .panel-head small{max-width:620px;color:#777}.v32-best-row{background:#f2f8f4!important}.v32-mixed{margin:12px;padding:12px;background:#f7f3ec;border:1px solid #ddd5ca;line-height:1.5}.v32-score{display:inline-block;min-width:48px;text-align:center;padding:4px 7px;border-radius:3px;font-size:10px;font-weight:900;background:#eee;color:#333}.v32-score.good{background:#e3f3e9;color:#21603f}.v32-score.mid{background:#fff1cf;color:#835c00}.v32-score.low{background:#f8dfdf;color:#8a2d2d}.v32-ref-link{border:0;background:transparent;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.v31-sourcing-table td{vertical-align:top}.v31-source-actions{min-width:220px}.v31-source-actions .btn{display:block;width:100%;margin:0 0 6px}
@media(max-width:900px){.v32-search-options{grid-template-columns:1fr}.v31-source-actions{min-width:170px}}


/* V3.6 - Fiche détail article issue du sourcing */
.v34-product-link{border:0;background:transparent;padding:0;color:inherit;text-align:left;cursor:pointer;font:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.v34-product-link:hover{color:#b34425}.v34-detail-btn{margin:7px 0 5px!important;width:auto!important}.v34-main-detail{border-color:#17324d!important}.v34-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid #ddd5ca}.v34-detail-head h3{margin:4px 0 2px;font-size:20px}.v34-detail-head p{margin:0;color:#666}.v34-kicker{display:block;font-size:9px;font-weight:900;letter-spacing:.11em;color:#777;text-transform:uppercase}.v34-detail-score{min-width:100px;background:#17324d;color:#fff;padding:11px 14px;text-align:center}.v34-detail-score span{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.08em}.v34-detail-score b{font-size:22px}.v34-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.v34-detail-card{border:1px solid #d8d1c6;background:#fff;padding:14px;min-width:0}.v34-product-card{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start}.v34-product-card h3{margin:5px 0 7px;font-size:18px}.v34-product-card p,.v34-excerpt p{line-height:1.55;margin:6px 0;color:#444}.v34-product-image{width:180px;height:145px;border:1px solid #e2ddd5;background:#faf8f4;display:grid;place-items:center;overflow:hidden}.v34-product-image img{max-width:100%;max-height:100%;object-fit:contain}.v34-tags{margin-top:9px}.v34-detail-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}.v34-detail-facts>div{background:#f7f3ec;border:1px solid #e3ddd4;padding:9px}.v34-detail-facts span{display:block;font-size:9px;color:#777;text-transform:uppercase}.v34-detail-facts b{display:block;margin-top:4px;overflow-wrap:anywhere}.v34-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:8px}.v34-contact-grid b{display:block;margin-bottom:5px}.v34-contact-grid div div{overflow-wrap:anywhere;margin:3px 0}.v34-excerpt{grid-column:1/-1}.v34-reasons{display:flex;flex-direction:column;gap:5px;margin-top:8px}.v34-reasons span{font-size:11px}.v34-detail-actions{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.v34-detail-actions .btn{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.muted{color:#777}
@media(max-width:800px){.v34-detail-grid{grid-template-columns:1fr}.v34-product-card,.v34-excerpt{grid-column:auto}.v34-product-card{grid-template-columns:1fr}.v34-product-image{width:100%;height:180px}.v34-detail-head{flex-direction:column}.v34-detail-facts,.v34-contact-grid{grid-template-columns:1fr}}

/* V3.6 - diagnostic sourcing Web */
.v36-diagnostic{margin-top:14px}.v36-debug{margin-top:14px;border:1px solid var(--line,#ddd);border-radius:10px;background:#fff}.v36-debug summary{cursor:pointer;padding:12px 14px;font-weight:800}.v36-debug-body{padding:0 14px 14px}.v36-debug .mini-card b{font-size:16px}

/* V3.9 - Achat optimal multi-references */
.v38-optimal{border:2px solid #d6c7b7;background:linear-gradient(180deg,#fffdf9,#fff)}
.v38-optimal-row{background:#eef8f1!important}
.v38-optimal-row td:first-child{border-left:4px solid #2f7d4d}
.v38-allocation{margin:12px 14px 16px;padding:14px;background:#f7f3ec;border:1px solid #ddd5ca;line-height:1.55}
.v38-allocation>div{padding:6px 0;border-bottom:1px dashed #d8d1c6}.v38-allocation>div:last-child{border-bottom:0}

/* V3.9 — Intelligence fournisseur / historique / photo */
.v39-qual{display:inline-flex;align-items:center;gap:4px;margin-top:5px;font-weight:800;font-size:11px;padding:3px 7px;border-radius:999px;background:#eef2f7}.v39-qual.good{background:#e8f7ee}.v39-qual.mid{background:#fff4d8}.v39-qual.low{background:#fdecec}
.v39-qual-head{display:flex;align-items:center;gap:18px;margin-bottom:18px}.v39-qual-ring{width:92px;height:92px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;background:#eef2f7;border:7px solid #94a3b8;flex:0 0 auto}.v39-qual-ring.good{border-color:#22c55e}.v39-qual-ring.mid{border-color:#f59e0b}.v39-qual-ring.low{border-color:#ef4444}.v39-qual-ring b{font-size:28px;line-height:1}.v39-qual-ring span{font-size:11px}.v39-warnings{display:flex;flex-direction:column;gap:7px}.v39-qual-big{display:flex;align-items:baseline;gap:12px}.v39-qual-big b{font-size:30px}.v39-qual-big span{font-weight:700}
.v39-photo-drop{border:2px dashed #aab4c3;border-radius:14px;padding:24px;text-align:center;margin:14px 0;display:flex;flex-direction:column;gap:7px;background:rgba(148,163,184,.06)}.v39-photo-drop input{margin:auto;max-width:100%}.v39-photo-drop b{font-size:16px}.v39-photo-drop small{opacity:.75}
@media(max-width:760px){.v39-qual-head{align-items:flex-start}.v39-qual-ring{width:76px;height:76px}.v39-qual-ring b{font-size:23px}}


/* V3.10.3 — Réponses fournisseurs / comparaison historique */
.v310-reply-panel textarea{resize:vertical}.v310-meta,.v310-lines{margin-top:16px;border-top:1px solid #ddd6cd;padding-top:10px}.v310-edit-table input,.v310-edit-table textarea{min-width:90px;width:100%;font-size:10px;padding:6px}.v310-edit-table td:nth-child(1){min-width:135px}.v310-edit-table td:nth-child(2){min-width:210px}.v310-edit-table td:nth-child(4){min-width:105px}.v310-price-up{background:#fff1ee!important}.v310-price-down{background:#eef8f1!important}.success-notice{border-left-color:#2d7650!important;background:#eff8f2!important}.v310-reply-panel .form-actions{flex-wrap:wrap}

/* V3.11 — Boîte intelligente demandes clients */
.v311-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0}.v311-summary .mini-card{min-height:92px}.v311-lines input,.v311-lines textarea{min-width:120px}.v311-lines textarea{min-width:280px}.v311-duplicates{margin-top:18px;padding:14px;border:1px solid var(--line,#d8dee8);border-radius:14px}.v311-dup{display:flex;gap:10px;align-items:flex-start;padding:10px;border-radius:10px;cursor:pointer}.v311-dup:hover{background:rgba(0,0,0,.035)}.v311-dup span{display:flex;flex-direction:column;gap:3px}.v311-urgent-row{box-shadow:inset 4px 0 0 #d84b4b}.v311-edit{margin-top:15px}@media(max-width:900px){.v311-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.v311-summary{grid-template-columns:1fr}.v311-lines textarea{min-width:180px}}


/* V3.12 — Centre de notifications */
.v312-top-bell{position:relative;min-width:58px;border:1px solid rgba(255,255,255,.18);background:transparent;color:inherit;border-radius:9px;padding:8px 10px;cursor:pointer;font-weight:800}.v312-top-bell span{display:inline-flex;min-width:20px;height:20px;align-items:center;justify-content:center;border-radius:20px;background:#5c6670;color:#fff;font-size:11px;margin-left:3px}.v312-top-bell.has-new{border-color:#e45d42;box-shadow:0 0 0 2px rgba(228,93,66,.15)}.v312-top-bell.has-new span{background:#d34832}.v312-table tr.v312-new{background:rgba(228,93,66,.06)}.v312-dot{color:#d34832;font-size:13px}.v312-mail-meta{display:grid;grid-template-columns:2fr 1fr 2fr;gap:10px;margin-bottom:12px}.v312-mail-meta>div{padding:11px;border:1px solid var(--line,#ddd);border-radius:10px}.v312-mail-meta span,.v312-mail-meta small{display:block;font-size:11px;opacity:.72}.v312-mail-meta b{display:block;margin:3px 0}.v312-last-sync{align-self:center;font-size:12px;opacity:.72}.v312-imap .v3-chip.green{background:#e8f6ee;color:#287048}.v312-imap .v3-chip.orange{background:#fff0df;color:#9a581b}@media(max-width:760px){.v312-mail-meta{grid-template-columns:1fr}.v312-top-bell{min-width:auto}}

/* V3.13 — Tour de contrôle commandes & expéditions */
.v313-cards{grid-template-columns:repeat(5,minmax(0,1fr))}.v313-red{border-left:4px solid #b42318}.v313-orange{border-left:4px solid #d97706}.v313-risk{white-space:nowrap;font-weight:800;font-size:.82rem}.v313-row-actions{display:flex;gap:5px;flex-wrap:wrap;min-width:260px}.v313-head{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.v313-head>div{background:var(--panel-2,#f7f7f5);border:1px solid var(--border,#ddd);padding:12px;border-radius:10px}.v313-head span{display:block;font-size:.75rem;opacity:.7;text-transform:uppercase}.v313-head b{display:block;margin-top:4px}.v313-section{margin-top:20px}.v313-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.v313-doc{display:grid;grid-template-columns:90px 1fr 150px;gap:8px;align-items:center;border:1px solid var(--border,#ddd);border-radius:9px;padding:9px}.v313-doc small{grid-column:2/4;opacity:.7}.v313-confirm-lines{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.v313-confirm-lines label{display:flex;justify-content:space-between;align-items:center;gap:10px;border:1px solid var(--border,#ddd);padding:8px;border-radius:8px}.v313-confirm-lines input{width:110px}.v313-events{display:grid;gap:7px}.v313-events>div{border-left:3px solid #7b8794;padding:7px 10px;background:var(--panel-2,#f7f7f5)}.v313-events b,.v313-events small{display:block}.v313-order-table small{white-space:normal}@media(max-width:900px){.v313-cards,.v313-head{grid-template-columns:repeat(2,minmax(0,1fr))}.v313-checklist{grid-template-columns:1fr}.v313-doc{grid-template-columns:80px 1fr}.v313-doc select{grid-column:1/3}.v313-doc small{grid-column:1/3}.v313-confirm-lines{grid-template-columns:1fr}}


/* V3.14 — Radar commercial */
.v314-dash-radar{border-left:4px solid #d89b26}.v314-kpis{margin-bottom:16px}.v314-action-list{display:grid;gap:10px;padding:14px}.v314-action{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid var(--line,#dfe5eb);border-radius:14px;padding:13px;background:var(--card,#fff)}.v314-score{width:62px;height:62px;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#172230;color:#fff}.v314-score strong{font-size:23px;line-height:1}.v314-score span{font-size:11px;opacity:.7}.v314-action-title{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.v314-action-main p{margin:5px 0;color:var(--muted,#64748b)}.v314-meta{display:flex;gap:8px;flex-wrap:wrap;margin:7px 0}.v314-meta span{font-size:12px;padding:4px 7px;background:#f4f7fa;border-radius:7px}.v314-buttons{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:255px}.v314-priority{font-size:10px;font-weight:800;padding:4px 7px;border-radius:999px}.v314-priority.crit{background:#fee2e2;color:#991b1b}.v314-priority.urgent{background:#ffedd5;color:#9a3412}.v314-priority.high{background:#fef3c7;color:#92400e}.v314-priority.normal{background:#e0f2fe;color:#075985}.v314-prob{font-weight:800}.v314-funnel,.v314-losses{display:grid;gap:8px}.v314-funnel>div,.v314-losses>div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line,#e5e7eb)}@media(max-width:900px){.v314-action{grid-template-columns:58px 1fr}.v314-buttons{grid-column:1/-1;max-width:none;justify-content:flex-start}.v314-score{width:52px;height:52px;border-radius:12px}}


/* V3.14.3 — Rentabilité + contrôle prix unitaire / total ligne */
.v3141-profit-status{display:inline-flex;align-items:center;gap:4px;width:max-content;margin:5px 0;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:900;letter-spacing:.02em}.v3141-profit-status.ok{background:#e8f7ee;color:#23683f}.v3141-profit-status.warn{background:#fff2d8;color:#8a5a00}.v3141-profit-status.pending{background:#eef1f4;color:#59636f}.v3141-missing{display:block!important;color:#8a5a00!important;margin:3px 0 6px!important;font-size:10px!important}.v3141-profit-cell{display:flex;flex-direction:column;gap:3px;min-width:150px}.v3141-profit-cell .v3141-profit-status{margin:0}.v3141-profit-cell b{font-size:12px}.v3141-meta-profit.ok{background:#e8f7ee!important;color:#23683f}.v3141-meta-profit.warn{background:#fff2d8!important;color:#8a5a00}.v3141-meta-profit.pending{background:#eef1f4!important;color:#59636f}.v3-margin-card .v3141-profit-status{margin-top:8px}.v3-margin-card .v3141-missing{min-height:14px}

/* V3.14.3 */
.profit-line [data-profit-warning] .btn{margin-top:5px;padding:4px 7px;font-size:11px}
.v310-edit-table select[data-v310-field="price_basis"]{min-width:125px}


/* V3.15 — Autopilot Affaire */
.v315-control{border-left:4px solid #6557c8}.v315-hero{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(240px,.7fr);gap:18px;padding:20px;border-left:6px solid #6b7280}.v315-hero.go{border-left-color:#2e7d4f;background:linear-gradient(100deg,#edf8f1,#fff)}.v315-hero.negotiate{border-left-color:#d69020;background:linear-gradient(100deg,#fff7e7,#fff)}.v315-hero.risk{border-left-color:#bd3b32;background:linear-gradient(100deg,#fff0ee,#fff)}.v315-hero.missing{border-left-color:#7b8794}.v315-decision,.v315-price{display:flex;flex-direction:column;gap:7px}.v315-decision span,.v315-price span{font-size:11px;font-weight:900;letter-spacing:.08em}.v315-decision strong{font-size:19px;line-height:1.35}.v315-price{justify-content:center;border-left:1px solid var(--line,#ddd);padding-left:18px}.v315-price strong{font-size:30px}.v315-kpis{grid-template-columns:repeat(6,minmax(0,1fr));margin:14px 0}.v315-sim{display:grid;grid-template-columns:220px minmax(0,1fr);gap:12px;align-items:center;padding:15px}.v315-sim input[type=number]{font-size:20px;font-weight:800}.v315-sim input[type=range]{width:100%}.v315-sim #v315SimStats{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.v315-sim-box{border:1px solid var(--line,#ddd);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:5px}.v315-sim-box.go{background:#edf8f1}.v315-sim-box.warn{background:#fff7e7}.v315-sim-box.risk{background:#fff0ee;color:#8f271f}.v315-table td small{display:block;opacity:.7;margin-top:3px}.v315-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.v315-stress{display:grid;grid-template-columns:1fr auto auto;gap:12px;padding:11px 0;border-bottom:1px solid var(--line,#e5e7eb)}.v315-stress strong{min-width:70px;text-align:right}.v315-risk-list>div{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid var(--line,#eee)}.v315-risk-list b{color:#b04432}.v315-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}.v315-reasons{display:grid;gap:8px;padding:14px}.v315-reasons>div{display:grid;grid-template-columns:150px 1fr;gap:12px;padding-bottom:8px;border-bottom:1px dashed var(--line,#ddd)}@media(max-width:1050px){.v315-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:800px){.v315-hero,.v315-two{grid-template-columns:1fr}.v315-price{border-left:0;border-top:1px solid var(--line,#ddd);padding:14px 0 0}.v315-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.v315-sim{grid-template-columns:1fr}.v315-sim #v315SimStats{grid-template-columns:1fr}.v315-reasons>div{grid-template-columns:1fr}}


/* V3.16 — Identification & Sourcing Produit */
.v316-search-panel{border-top:4px solid var(--accent,#2563eb)}
.v316-mode-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}.v316-mode-tabs button{border:1px solid #d8dee8;background:#fff;border-radius:999px;padding:9px 14px;font-weight:700;cursor:pointer}.v316-mode-tabs button.active{background:#101827;color:#fff;border-color:#101827}
.v316-photo-highlight{padding:10px;border:2px dashed #8cb5ff;border-radius:12px;background:#f7faff}.v316-engine{align-self:center;color:#667085;font-size:13px}
.v316-confidence{display:inline-block;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:800;white-space:nowrap}.v316-confidence.good{background:#dcfce7;color:#166534}.v316-confidence.mid{background:#dbeafe;color:#1d4ed8}.v316-confidence.possible{background:#fef3c7;color:#92400e}.v316-confidence.low{background:#fee2e2;color:#991b1b}
.v316-reasons{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.v316-reasons span{background:#f4f7fb;border:1px solid #e4e9f2;border-radius:8px;padding:6px 9px;font-size:12px}
.v316-product-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}.v316-product-card{display:grid;grid-template-columns:96px 1fr;border:1px solid #e3e8ef;border-radius:14px;overflow:hidden;background:#fff;min-height:180px}.v316-product-card>img,.v316-no-image{width:96px;height:100%;min-height:180px;object-fit:contain;background:#f6f8fb;display:flex;align-items:center;justify-content:center;font-size:34px}.v316-product-body{padding:13px;min-width:0}.v316-product-body h4{font-size:16px;margin:8px 0 3px;word-break:break-word}.v316-product-body p{font-size:13px;line-height:1.45;margin:7px 0;color:#475467}.v316-product-body small{display:block;color:#667085;margin-top:4px}.v316-product-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.v316-query-list{display:grid;gap:7px;padding:12px}.v316-query-list code{white-space:normal;background:#f6f8fb;border:1px solid #e4e7ec;border-radius:7px;padding:8px;font-size:12px}
@media(max-width:760px){.v316-product-card{grid-template-columns:76px 1fr}.v316-product-card>img,.v316-no-image{width:76px}.v316-mode-tabs button{flex:1 1 45%}}

/* V3.16.4 — Vision photo auto-diagnostic */
.v316-visual-panel{border-left:4px solid var(--accent,#2563eb)}
.v316-visual-panel .mini-card b{line-height:1.25}
.v316-photo-highlight{box-shadow:inset 0 0 0 1px rgba(37,99,235,.35);border-radius:10px;padding:10px}

/* V3.17 — CRM Prospection + performance */
.v317-kpis{grid-template-columns:repeat(6,minmax(0,1fr))}
.v317-web-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;margin-top:16px}
.v317-web-card{border:1px solid var(--line,#dce2e8);border-radius:14px;padding:15px;background:#fff;display:flex;flex-direction:column;gap:9px}
.v317-web-card h4{margin:5px 0 2px;font-size:16px}.v317-web-card p{font-size:13px;line-height:1.45;min-height:54px}.v317-contact{display:flex;flex-direction:column;gap:3px}
.v317-detail-head{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.v317-detail-head>div{padding:12px;border:1px solid var(--line,#dce2e8);border-radius:12px}.v317-detail-head span{display:block;font-size:11px;text-transform:uppercase;opacity:.65}.v317-detail-head b{display:block;margin-top:4px}
.v317-timeline{margin-top:18px}.v317-activity{display:grid;grid-template-columns:110px 130px 1fr;gap:8px;padding:10px 0;border-bottom:1px solid var(--line,#e6e9ed)}.v317-activity small{grid-column:3;white-space:pre-wrap}
@media(max-width:1100px){.v317-kpis{grid-template-columns:repeat(3,1fr)}.v317-detail-head{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.v317-kpis{grid-template-columns:repeat(2,1fr)}.v317-detail-head{grid-template-columns:1fr}.v317-activity{grid-template-columns:1fr}.v317-activity small{grid-column:1}}

/* V3.18 — Commercial PRO uniquement */
.v318-kpis{grid-template-columns:repeat(8,minmax(0,1fr));margin-bottom:16px}.v318-kpis .mini-card small{display:block;margin-top:4px}.v318-hot-kpi{border-top:3px solid #d97706;background:#fff9ed}
.v318-today{border-left:4px solid #d97706}.v318-action-list{display:grid;gap:10px;padding:14px}.v318-action{display:grid;grid-template-columns:68px minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid var(--line,#dfe5eb);border-radius:14px;padding:12px;background:#fff}.v318-title{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.v318-action-main p{margin:5px 0;color:#475467}.v318-action-main small{color:#667085}.v318-action-buttons{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.v318-sector-presets{display:flex;gap:7px;flex-wrap:wrap;margin:4px 0 14px}.v318-sector-presets .btn{border-radius:999px}.v318-hot-row{background:#fffaf0!important}.v318-hot-label{display:block;margin-top:4px;font-size:10px;font-weight:900;color:#9a5a00}.v318-hot-notice{border-left:4px solid #d97706;background:#fff9ed}.v318-score-detail{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:14px}.v318-score-detail>div{padding:11px;border:1px solid var(--line,#dce2e8);border-radius:12px;background:#fff}.v318-score-detail span{display:block;font-size:10px;text-transform:uppercase;opacity:.65}.v318-score-detail b{display:block;margin-top:4px;font-size:16px}
.v318-two{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:16px 0}.v318-two>section{border:1px solid var(--line,#dce2e8);border-radius:12px;padding:13px}.v318-two h3{margin-top:0}.v318-mini-list{display:grid;gap:8px}.v318-mini-list>div{display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:1px solid var(--line,#e5e7eb);padding:8px 0}.v318-mini-list small{display:block;margin-top:3px;color:#667085}.v318-call blockquote{margin:10px 0;padding:12px 14px;background:#f7f3ec;border-left:4px solid #17324d;line-height:1.55}.v318-call li{margin:8px 0;line-height:1.45}
.v318-analytics{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:14px}.v318-ranking{display:grid;gap:8px}.v318-ranking>div{display:grid;grid-template-columns:minmax(120px,1fr) 2fr 36px;gap:8px;align-items:center}.v318-ranking i{display:block;height:8px;background:#eef1f4;border-radius:999px;overflow:hidden}.v318-ranking em{display:block;height:100%;background:#17324d;border-radius:999px}.v318-ranking b{text-align:right}.v318-ranking span{font-size:12px}
@media(max-width:1200px){.v318-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.v318-score-detail{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){.v318-action{grid-template-columns:58px 1fr}.v318-action-buttons{grid-column:1/-1;justify-content:flex-start}.v318-two,.v318-analytics{grid-template-columns:1fr}.v318-score-detail{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.v318-kpis,.v318-score-detail{grid-template-columns:1fr 1fr}}


/* V3.19 — Cockpit & Sécurité */
.v319-kpis{grid-template-columns:repeat(auto-fit,minmax(155px,1fr))}
.v319-action-list{display:grid;gap:10px}.v319-action{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;padding:13px 14px;border:1px solid var(--border,#ddd);border-left:4px solid var(--border,#ddd);border-radius:12px;background:var(--surface,#fff)}
.v319-action.crit{border-left-color:#b42318}.v319-action.urgent{border-left-color:#d92d20}.v319-action.high{border-left-color:#f79009}.v319-action.normal{border-left-color:#667085}.v319-rank{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--soft);font-weight:800}.v319-action-main>b{display:block;margin:4px 0}.v319-action-main p{margin:2px 0 5px}.v319-action-main small{opacity:.78}
.v319-preflight-head{display:flex;justify-content:space-between;gap:15px;padding:12px 14px;border-radius:10px;margin-bottom:12px}.v319-preflight-head.blocked{background:#fef3f2}.v319-preflight-head.warn{background:#fffaeb}.v319-preflight-head.ok{background:#ecfdf3}.v319-issues{display:grid;gap:8px}.v319-issue{display:flex;gap:10px;padding:10px;border:1px solid var(--line);border-radius:10px}.v319-issue p{margin:2px 0 0}.v319-quality-critical td{background:rgba(180,35,24,.035)}
@media(max-width:760px){.v319-action{grid-template-columns:36px 1fr}.v319-action>.btn{grid-column:2;justify-self:start}.v319-preflight-head{flex-direction:column}}

/* V3.19.3 — WhatsApp Business intégré */
.wp3192-chat{display:flex;flex-direction:column;gap:10px;max-height:55vh;overflow:auto;padding:8px}.wp3192-msg{max-width:82%;padding:10px 12px;border:1px solid var(--line,#d8dee8);border-radius:12px;background:#fff;display:flex;flex-direction:column;gap:5px}.wp3192-msg.out{margin-left:auto;background:#f3fff7}.wp3192-msg.in{margin-right:auto}.wp3192-msg small,.wp3192-msg span{opacity:.7;font-size:12px}

/* V3.19.3 - Assistant connexion WhatsApp simplifiee */
.wp3193-steps{display:grid;gap:10px;margin-top:8px}.wp3193-step{display:flex;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--border,#dfe4ea);border-radius:12px;background:#fff}.wp3193-step>b{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#eef2f7;flex:0 0 auto}.wp3193-step>div{display:grid;gap:3px}.wp3193-step small{color:var(--muted,#687385)}.wp3193-step.done>b{background:#e9f8ef}.wp3193-step.active{box-shadow:0 0 0 2px rgba(37,211,102,.18) inset}.wp3193-connect-action{text-align:center;padding:22px 12px}.wp3193-connect-action .btn.big{font-size:16px;padding:13px 20px}.wp3193-connect-action p{max-width:720px;margin:12px auto 0;color:var(--muted,#687385)}.wp3193-advanced summary{cursor:pointer;padding:3px 0}.success-notice{border-left:4px solid #25d366}.wp3193-connect-card .v3-cockpit-head{margin-top:10px}

/* V3.19.5 — e-mails entrants lies */
.v3195-mail-link-note{font-size:12px;opacity:.78}

/* WP3250_RELIABLE_SOURCING_PRO_UI */
.v325-sourcing-pro .v325-product-cell{display:flex;gap:10px;align-items:flex-start;min-width:290px}.v325-thumb{width:76px;height:66px;flex:0 0 76px;border:1px solid #ddd5ca;background:#fff;display:grid;place-items:center;padding:3px;cursor:pointer;overflow:hidden}.v325-thumb img{max-width:100%;max-height:100%;object-fit:contain}.v325-thumb.noimg{background:#f7f3ec;color:#777;font-size:22px}.v325-thumb.noimg img{display:none}.v325-price{font-size:15px;color:#17324d}.v325-source{display:block;margin-top:4px;color:#777;max-width:190px}.v325-quality{display:inline-block;padding:4px 6px;border-radius:3px;font-size:9px;font-weight:900}.v325-quality.good{background:#e3f3e9;color:#21603f}.v325-quality.mid{background:#fff1cf;color:#835c00}.v325-quality.low{background:#f8dfdf;color:#8a2d2d}.v325-no-photo{font-size:11px;color:#777;text-align:center}
@media(max-width:900px){.v325-sourcing-pro .v325-product-cell{min-width:220px}.v325-thumb{width:60px;height:54px;flex-basis:60px}}

/* WP3251_DIRECT_PRODUCT_OFFERS_UI */
.v3251-buy{border-top:3px solid #ff5a3c}.v3251-stats{margin:10px 0 14px}.v3251-offer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px}.v3251-offer{border:1px solid var(--line,#ddd5ca);background:#fff;display:grid;grid-template-columns:150px 1fr;min-height:220px}.v3251-photo{min-height:220px;background:#f8f6f2;display:grid;place-items:center;padding:10px;border-right:1px solid var(--line,#ddd5ca);overflow:hidden}.v3251-photo img{width:100%;height:100%;max-height:220px;object-fit:contain}.v3251-photo.missing{color:#777;text-align:center;font-size:28px}.v3251-photo.missing small{font-size:11px}.v3251-offer-body{padding:14px;display:flex;flex-direction:column;gap:9px;min-width:0}.v3251-offer-body h3{margin:0;font-size:16px;line-height:1.25}.v3251-badges{display:flex;gap:5px;flex-wrap:wrap}.v3251-price{display:flex;flex-direction:column;padding:8px 0;border-top:1px solid #eee;border-bottom:1px solid #eee}.v3251-price strong{font-size:22px;line-height:1.15}.v3251-price small{margin-top:3px;color:#777}.v3251-seller{display:grid;gap:2px}.v3251-seller span,.v3251-stock{font-size:12px;color:#555}.v3251-seller b{font-size:15px}.v3251-seller small{color:#777}.v3251-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto}.v3251-known{margin-top:14px}.v3251-known summary,.v3251-tech>summary{cursor:pointer;font-weight:800;padding:10px 0}.v3251-tech-body{padding-top:8px}.v3251-tech-body>.panel{box-shadow:none;margin:10px 0;border:1px solid var(--line,#ddd5ca)}
@media(max-width:720px){.v3251-offer{grid-template-columns:1fr}.v3251-photo{min-height:180px;border-right:0;border-bottom:1px solid var(--line,#ddd5ca)}.v3251-photo img{max-height:180px}}

/* V3.25.1 — Sourcing achat strict */
.v3251-main-buy{border-top:4px solid #ff5a3c}.v3251-complete-offer{border:2px solid #d9e8dc}.v3251-photo-link{min-height:220px;background:#fff;display:grid;place-items:center;padding:10px;border-right:1px solid var(--line,#ddd5ca);text-decoration:none;color:#777;overflow:hidden}.v3251-photo-link img{width:100%;height:100%;max-height:220px;object-fit:contain}.v3251-photo-link.missing{background:#f8f6f2;font-weight:700}.v3251-title-link{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.v3251-ref{font-size:12px;color:#555}.v3251-open-seller{font-weight:900}.v3251-proof{color:#667;line-height:1.3}.v3251-partial{opacity:.92}.v3251-partial-grid{margin-top:12px}
@media(max-width:720px){.v3251-photo-link{min-height:180px;border-right:0;border-bottom:1px solid var(--line,#ddd5ca)}.v3251-photo-link img{max-height:180px}}

/* WP_MOBILE_V1_BEGIN */
/* ============================================================
   WORLDPARTS MANAGER
   TABLETTE + SMARTPHONE UNIQUEMENT
   Le rendu ordinateur > 1024px n'est pas modifié
   ============================================================ */

@media (max-width: 1024px) {

    html,
    body {
        max-width: 100%;
        overflow-x: hidden;
    }

    body {
        -webkit-text-size-adjust: 100%;
    }

    /* -----------------------------------------
       CONTENEURS
       ----------------------------------------- */

    main,
    .content,
    .page,
    .page-content,
    .container,
    .workspace {
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    /* -----------------------------------------
       FORMULAIRES
       ----------------------------------------- */

    input,
    select,
    textarea {
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    textarea {
        resize: vertical;
    }

    .form-grid,
    .form-row,
    .grid {
        max-width: 100% !important;
    }

    /* -----------------------------------------
       MODALES
       ----------------------------------------- */

    .modal,
    .dialog,
    .modal-content,
    .modal-box {
        max-width: 96vw !important;
        box-sizing: border-box !important;
    }

    .modal-content,
    .modal-box {
        max-height: 92vh !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
    }

    /* -----------------------------------------
       TABLEAUX
       ----------------------------------------- */

    table {
        max-width: 100%;
    }

    .table-wrap,
    .table-wrapper,
    .table-responsive,
    .data-table-wrap {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
    }

    table.data {
        min-width: 760px;
    }

    table.data th,
    table.data td {
        white-space: normal;
        vertical-align: top;
    }

    /* -----------------------------------------
       BOUTONS : TACTILES SUR MOBILE/TABLETTE
       ----------------------------------------- */

    button,
    .btn,
    a.btn {
        touch-action: manipulation;
    }

    .form-actions,
    .actions,
    .toolbar {
        max-width: 100%;
        flex-wrap: wrap !important;
        gap: 5px;
    }
}


/* ============================================================
   SMARTPHONE
   ============================================================ */

@media (max-width: 767px) {

    body {
        font-size: 14px;
    }

    /* -----------------------------------------
       PAGE
       ----------------------------------------- */

    main,
    .content,
    .page,
    .page-content,
    .container,
    .workspace {
        padding-left: 8px !important;
        padding-right: 8px !important;
    }

    h1 {
        font-size: 20px !important;
        line-height: 1.2;
    }

    h2 {
        font-size: 18px !important;
    }

    h3 {
        font-size: 16px !important;
    }

    /* -----------------------------------------
       FORMULAIRES SUR UNE COLONNE
       ----------------------------------------- */

    .form-grid,
    .form-row,
    .grid {
        grid-template-columns: 1fr !important;
    }

    label {
        max-width: 100%;
    }

    input,
    select,
    textarea {
        width: 100% !important;
        min-width: 0 !important;
        font-size: 16px !important;
    }

    /* 16px évite le zoom automatique de Safari iPhone */

    /* -----------------------------------------
       MODALES PLEIN ECRAN
       ----------------------------------------- */

    .modal,
    .dialog {
        padding: 0 !important;
    }

    .modal-content,
    .modal-box {
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100vh !important;
        max-height: 100vh !important;
        margin: 0 !important;
        border-radius: 0 !important;
        overflow-y: auto !important;
    }

    /* -----------------------------------------
       ACTIONS
       ----------------------------------------- */

    .form-actions,
    .actions,
    .toolbar {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 6px !important;
    }

    .form-actions .btn,
    .actions .btn,
    .toolbar .btn,
    .form-actions button,
    .actions button,
    .toolbar button {
        min-height: 38px !important;
        padding: 6px 10px !important;
        font-size: 12px !important;
    }

    /* -----------------------------------------
       TABLEAUX
       Pour la V1 ils restent horizontalement défilables.
       La V2 transformera certaines listes en cartes.
       ----------------------------------------- */

    .table-wrap,
    .table-wrapper,
    .table-responsive,
    .data-table-wrap {
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
    }

    table.data {
        min-width: 700px;
    }

    table.data th,
    table.data td {
        font-size: 11px !important;
        padding: 5px !important;
    }

    table.data .btn,
    table.data button {
        min-height: 30px !important;
        padding: 4px 7px !important;
        font-size: 10px !important;
    }
}
/* WP_MOBILE_V1_END */

/* WP_MOBILE_DEVIS_VIEW_BEGIN */
@media (max-width: 767px) {

    /* Fenêtre mobile réellement scrollable */
    .modal,
    .dialog {
        width: 100vw !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
        overflow: hidden !important;
    }

    .modal-content,
    .modal-box,
    .dialog-content {
        width: 100vw !important;
        max-width: 100vw !important;

        height: 100dvh !important;
        max-height: 100dvh !important;

        margin: 0 !important;
        border-radius: 0 !important;

        overflow-y: auto !important;
        overflow-x: hidden !important;

        -webkit-overflow-scrolling: touch !important;
    }

    /* Les barres de boutons ne doivent plus bloquer l'écran */
    .modal .form-actions,
    .modal .actions,
    .modal .toolbar,
    .modal .modal-actions,
    .modal .modal-footer,
    .dialog .form-actions,
    .dialog .actions,
    .dialog .toolbar {

        position: static !important;

        width: 100% !important;
        max-width: 100% !important;

        display: flex !important;
        flex-wrap: nowrap !important;

        gap: 5px !important;

        overflow-x: auto !important;
        overflow-y: hidden !important;

        white-space: nowrap !important;

        padding: 6px !important;

        -webkit-overflow-scrolling: touch !important;
    }

    /* Boutons sur une seule ligne défilable */
    .modal .form-actions button,
    .modal .form-actions .btn,
    .modal .actions button,
    .modal .actions .btn,
    .modal .toolbar button,
    .modal .toolbar .btn,
    .modal .modal-actions button,
    .modal .modal-actions .btn,
    .modal .modal-footer button,
    .modal .modal-footer .btn {

        flex: 0 0 auto !important;

        width: auto !important;
        min-width: auto !important;

        min-height: 34px !important;

        padding: 5px 8px !important;

        font-size: 11px !important;

        white-space: nowrap !important;
    }

    /* Aperçu devis / PDF */
    .modal iframe,
    .dialog iframe,
    .modal object,
    .dialog object,
    .modal embed,
    .dialog embed {

        display: block !important;

        width: 100% !important;

        height: 75dvh !important;
        min-height: 65dvh !important;

        border: 0 !important;
    }

    /* Zones internes du devis */
    .modal-body,
    .dialog-body,
    .modal-main,
    .preview,
    .document-preview,
    .pdf-preview {

        width: 100% !important;
        max-width: 100% !important;

        overflow-y: auto !important;
        overflow-x: auto !important;

        -webkit-overflow-scrolling: touch !important;
    }

}
/* WP_MOBILE_DEVIS_VIEW_END */
